Introduction: Asher Haig (Asher-)

76 views
Skip to first unread message

Evan Schoenberg

unread,
Dec 10, 2019, 7:53:02 PM12/10/19
to Adium Development List
I’d like to introduce to you all my cousin Asher Haig. He is one of Adium’s longest-term and heaviest users. I’ll never forget redesigning the Events system with his help while visiting him in Berlin over Spring Break circa 2004. He has a PhD in artificial intelligence, and is a skilled programmer, with a primary background in C and C++.

He uses Adium daily and is interested in helping maintain and improve it. I’ve added him directly to the GitHub team and to the committers list. There’s nobody active enough right now to provide useful and timely code review if we were to follow the “traditional” patch process. I’ve been working with him to get him acclimated to the code, though that often takes the form of “Hm, I do remember when we wrote that hack 14 years ago…” or “Yeah, that was a workaround for a bug in Mac OS X 10.2.” Good times.

Best,
Evan

Asher Haig

unread,
Dec 10, 2019, 7:59:05 PM12/10/19
to Adium Development List
Hey Everyone!

*Looks Around* … Echoes?

Somehow, after two decades and plenty of bit rot, Adium still manages to be not only functional but IMO still the best chat option around (kudos to Evan and others for doing such an outstanding job writing sustainable code).

That said, it seems there has been quite a bit of inevitable creep, particularly in repository organization. I’m going to work on cleaning that up as well as updating the code base. While doing so, I’d like to avoid stepping on any toes as much as possible— but given how much needs to be moved around, that may be inevitable.

So in the interest of coordination, could anyone that is still active or would like to participate in this process (even if only by way of dialogue) please sound off?

If I can get a sense of who is still interested in participating in Adium it will help figure out the best way to approach things.

Thanks!

Asher

Robert Vehse

unread,
Dec 11, 2019, 8:30:55 AM12/11/19
to Adium Development List
Hi folks, and welcome, Asher. :-)

I'm excited to see someone willing to work on Adium!

I'd very much like to participate. Even in recent years with little to zero development activity, I've thought about Adium a lot and I've been working on a proposal on how to move forward once we have a release out with the Catalina auto-scrolling fix. I'd be happy to talk about it here soon.

I'd also like to offer guidance to Asher (or any other new contributor). Even though I cannot read or write code, I think I am quite familiar with many, many things relating to the Adium Project that are important to know, for example what the different development branches contain and what state they are in.

Speaking of branches: Asher started development on Adium's Github account. While it's great to see him being eager to get to work, I too think it would have been good to get feedback for a move to Github here – even with the lack of activity on this very list. It's just quite a fundamental change. With its popularity Github lowers the barrier not just for Asher but also other potential contributors which is obviously a good thing. But I wonder whether are other questions to consider: Will it make updating libpurple harder? What happens to commit history?

Onwards and upwards!

Kind regards,
Robbie


Asher Haig

unread,
Dec 11, 2019, 9:00:58 AM12/11/19
to Adium Development List

> On Dec 11, 2019, at 8:29 AM, Robert Vehse <rober...@fastmail.fm> wrote:
>
> Hi folks, and welcome, Asher. :-)

Thanks!

> I'm excited to see someone willing to work on Adium!

Evan has done so much wonderful work, I’m happy to have the opportunity to make some contributions to continue the App’s already rather amazing longevity.

>
> I'd very much like to participate. Even in recent years with little to zero development activity, I've thought about Adium a lot and I've been working on a proposal on how to move forward once we have a release out with the Catalina auto-scrolling fix. I'd be happy to talk about it here soon.

Great! It sounds like you’ve been doing a great deal on the non-code side, which is very much appreciated. I’m hoping that as we get the code side back in good shape we will be able to breath some life back into the app, and all of the non-code details are incredibly important in that regard.
>
> I'd also like to offer guidance to Asher (or any other new contributor). Even though I cannot read or write code, I think I am quite familiar with many, many things relating to the Adium Project that are important to know, for example what the different development branches contain and what state they are in.

I welcome any input or guidance.

> Speaking of branches: Asher started development on Adium's Github account. While it's great to see him being eager to get to work, I too think it would have been good to get feedback for a move to Github here – even with the lack of activity on this very list. It's just quite a fundamental change. With its popularity Github lowers the barrier not just for Asher but also other potential contributors which is obviously a good thing. But I wonder whether are other questions to consider: Will it make updating libpurple harder? What happens to commit history?
>

Commit history has been 100% imported and all but I think 5 of the previous contributors have been mapped to corresponding GitHub accounts. The remaining few were difficult to isolate from other individuals with the same name.

Literally no one uses hg. I know of no projects other than Pidgin and its kin. Not only does everyone use git, but GitHub provides amazing tools and networking on top of git’s features. In particular, the visual branch comparison and merge tools are extremely convenient and allowed me to make quick work of a number of old branches that had nothing in them. A few branches remain with traces of ancient work that is probably irrelevant, but which I have not pruned until we can fully determine that to be the case.

I don’t know of any reason that projects that Adium utilizes (such as libpurple) would have any repository based relationship. If you see a reason, please enlighten me. Not intended to be combative, I just haven’t yet conceived of a reason.

I haven’t touched the “Adium2" hg mirror that you set up, as I figured that would require discussion before modifying.

The simple fact is that I can visualize what’s going on much better in git, and insofar as I’m the only one apparently working on code (and working on a general overhaul of the code), that is extremely important. The arguments that you provide regarding other people’s ability to participate are also not minor.

Asher

Gary Kramlich

unread,
Dec 11, 2019, 9:28:32 AM12/11/19
to Adium Development List
On Wed, Dec 11, 2019 at 8:00 AM Asher Haig <as...@strong.ai> wrote:

<snip>

> Commit history has been 100% imported and all but I think 5 of the previous contributors have been mapped to corresponding GitHub accounts. The remaining few were difficult to isolate from other individuals with the same name.

Not to be that guy.. but github claims there's 590 commits. hg sees a
few more...

$ hg log -T '{date}\n' | wc -l
6020

> Literally no one uses hg. I know of no projects other than Pidgin and its kin. Not only does everyone use git, but GitHub provides amazing tools and networking on top of git’s features. In particular, the visual branch comparison and merge tools are extremely convenient and allowed me to make quick work of a number of old branches that had nothing in them. A few branches remain with traces of ancient work that is probably irrelevant, but which I have not pruned until we can fully determine that to be the case.

> I don’t know of any reason that projects that Adium utilizes (such as libpurple) would have any repository based relationship. If you see a reason, please enlighten me. Not intended to be combative, I just haven’t yet conceived of a reason.

As I mentioned in IRC. Both projects are under the legal umbrella of
Instant Messaging Freedom. There's no reason why the hosting needs to
be the same and the project is free to do as it wishes. However, it
makes sense to shares resources when appropriate.

> Asher

Thanks,

--
Gary Kramlich <gr...@reaperworld.com>

Chris Forsythe

unread,
Dec 11, 2019, 10:51:34 AM12/11/19
to Adium Development List
On Wed, Dec 11, 2019 at 8:01 AM Asher Haig <as...@strong.ai> wrote:

> On Dec 11, 2019, at 8:29 AM, Robert Vehse <rober...@fastmail.fm> wrote:
>
> Hi folks, and welcome, Asher. :-)

Thanks!



 
> I'm excited to see someone willing to work on Adium!

Evan has done so much wonderful work, I’m happy to have the opportunity to make some contributions to continue the App’s already rather amazing longevity.


A lot of people have made some fantastic contributions to the project, heck I was even emailing with Laura about things a month ago. I'm always glad to see someone interested in continuing the work so many others have before them. If you have any questions about decisions made I'm also happy to help try to answer them.

 
>
> I'd very much like to participate. Even in recent years with little to zero development activity, I've thought about Adium a lot and I've been working on a proposal on how to move forward once we have a release out with the Catalina auto-scrolling fix. I'd be happy to talk about it here soon.

Great! It sounds like you’ve been doing a great deal on the non-code side, which is very much appreciated. I’m hoping that as we get the code side back in good shape we will be able to breath some life back into the app, and all of the non-code details are incredibly important in that regard.
>
> I'd also like to offer guidance to Asher (or any other new contributor). Even though I cannot read or write code, I think I am quite familiar with many, many things relating to the Adium Project that are important to know, for example what the different development branches contain and what state they are in.

I welcome any input or guidance.

> Speaking of branches: Asher started development on Adium's Github account. While it's great to see him being eager to get to work, I too think it would have been good to get feedback for a move to Github here – even with the lack of activity on this very list. It's just quite a fundamental change. With its popularity Github lowers the barrier not just for Asher but also other potential contributors which is obviously a good thing. But I wonder whether are other questions to consider: Will it make updating libpurple harder? What happens to commit history?
>

Commit history has been 100% imported and all but I think 5 of the previous contributors have been mapped to corresponding GitHub accounts. The remaining few were difficult to isolate from other individuals with the same name.

Literally no one uses hg. I know of no projects other than Pidgin and its kin.

Someone correct me if I'm wrong here, but others do in fact use mercurial. However that's not relevant to adium in and of itself other than if you consider Adium a place for people to learn and build up skills before they go on to work on other, bigger things then using the "popular" version control system might be a good idea.

I didn't see any discussion about switching repositories, I have two questions about using git and one about github:

1) I know in mercurial (and I believe the reason it was chosen for Adium) you cannot delete commit history, while at the same time with git you can do so with multiple options (rebase, filter-branches, git reset, etc.). For a public project to have the ability of one of its committers to be able to destroy commit history on a whim or by mistake seems like a risk nobody has discussed during this transition and was a big reason for choosing it if I recall correctly (it has been years though).

Is this still the case? 

2) Are there any other feature disparities between mercurial and git which have, or have not, been discussed on this list or in the irc channel?

3) Were any other hosting providers considered, such as bitbucket? Why was github chosen over the others if so?

 
Not only does everyone use git, but GitHub provides amazing tools and networking on top of git’s features. In particular, the visual branch comparison and merge tools are extremely convenient and allowed me to make quick work of a number of old branches that had nothing in them. A few branches remain with traces of ancient work that is probably irrelevant, but which I have not pruned until we can fully determine that to be the case.

I don’t know of any reason that projects that Adium utilizes (such as libpurple) would have any repository based relationship. If you see a reason, please enlighten me. Not intended to be combative, I just haven’t yet conceived of a reason.

At one point adium was pulling code directly from libpurple for the dependency. This I think was after the renaming of pidgin from gaim and libgaim to libpurple, but I could be wrong. Hope this helps.

 

I haven’t touched the “Adium2" hg mirror that you set up, as I figured that would require discussion before modifying.

The simple fact is that I can visualize what’s going on much better in git, and insofar as I’m the only one apparently working on code (and working on a general overhaul of the code), that is extremely important. The arguments that you provide regarding other people’s ability to participate are also not minor.

https://www.sourcetreeapp.com/ makes viewing everything pretty easy in both if that helps. And a previous adium developer works on it (or did).



Asher


--
Chris Forsythe

Asher Haig

unread,
Dec 11, 2019, 11:17:29 AM12/11/19
to Adium Development List

 
> I'm excited to see someone willing to work on Adium!

Evan has done so much wonderful work, I’m happy to have the opportunity to make some contributions to continue the App’s already rather amazing longevity. 


A lot of people have made some fantastic contributions to the project, heck I was even emailing with Laura about things a month ago. I'm always glad to see someone interested in continuing the work so many others have before them. If you have any questions about decisions made I'm also happy to help try to answer them.


I’m sorry, I didn’t read how that statement likely scans to other contributors. 

Adium is a great project and has had outstanding contributions from many people, and I’m glad to be able to contribute to the continuation of that. 

 
Someone correct me if I'm wrong here, but others do in fact use mercurial. However that's not relevant to adium in and of itself other than if you consider Adium a place for people to learn and build up skills before they go on to work on other, bigger things then using the "popular" version control system might be a good idea.

This is why all of the services that offer version management including git have removed direct support for mercurial?


I didn't see any discussion about switching repositories, I have two questions about using git and one about github:

1) I know in mercurial (and I believe the reason it was chosen for Adium) you cannot delete commit history, while at the same time with git you can do so with multiple options (rebase, filter-branches, git reset, etc.).

I see this as a major weakness to hg, particularly given its known tendency to muck up history with empty commits and other noise. The features you name in git permit restructuring of a repo, but they are never irreversible unless you go out of your way to overwrite all existing copies of the repo. 

For a public project to have the ability of one of its committers to be able to destroy commit history on a whim or by mistake seems like a risk nobody has discussed during this transition and was a big reason for choosing it if I recall correctly (it has been years though).

That’s really not how those tools work, and simply having an automated backup of snapshots would ensure that even if that were the case it is entirely reversible. 


2) Are there any other feature disparities between mercurial and git which have, or have not, been discussed on this list or in the irc channel?

Mercurial lacks the powerful visual collaborative tools provided by GtHub. it is also non-standard. 


3) Were any other hosting providers considered, such as bitbucket? Why was github chosen over the others if so?

GitHub offers powerful and useful tools that make assessing the state of code much easier. If you want a bitbucket repo that can easily be set up as well. None of this is exclusive. 


 
Not only does everyone use git, but GitHub provides amazing tools and networking on top of git’s features. In particular, the visual branch comparison and merge tools are extremely convenient and allowed me to make quick work of a number of old branches that had nothing in them. A few branches remain with traces of ancient work that is probably irrelevant, but which I have not pruned until we can fully determine that to be the case. 

I don’t know of any reason that projects that Adium utilizes (such as libpurple) would have any repository based relationship. If you see a reason, please enlighten me. Not intended to be combative, I just haven’t yet conceived of a reason. 

At one point adium was pulling code directly from libpurple for the dependency. This I think was after the renaming of pidgin from gaim and libgaim to libpurple, but I could be wrong. Hope this helps.

That sounds like a terrible pattern. 


 

I haven’t touched the “Adium2" hg mirror that you set up, as I figured that would require discussion before modifying. 

The simple fact is that I can visualize what’s going on much better in git, and insofar as I’m the only one apparently working on code (and working on a general overhaul of the code), that is extremely important. The arguments that you provide regarding other people’s ability to participate are also not minor. 

https://www.sourcetreeapp.com/ makes viewing everything pretty easy in both if that helps. And a previous adium developer works on it (or did). 


I’ll check it out. 

Mathuaerknedam !

unread,
Dec 11, 2019, 11:19:20 AM12/11/19
to Adium Development List
Hello, Asher.

Don't read much into the lack of activity here; I think all of us that have been active over the last year have used other channels for communication. At least after a few pings to see who was actually interested in continuing the effort... At this point, 99% of our efforts have been towards the infrastructure, so that we can actually use the resources we already have (tickets, documentation, code, xtras, etc).

Matthew

--

Matthew

Mathuaerknedam !

unread,
Dec 18, 2019, 3:12:16 PM12/18/19
to Adium Development List
Asher,

Could you give us a little introduction from  "community engagement" perspective? For example: 

When did you start using Adium?
What protocols (in or out of Adium) do you use most?
What's your favorite messagestyle?
Which xtras do you use?
Have you written any xtras?
Are you on the forums?
What other open source projects have you contributed to?
Do you like pineapple on pizza?
Do you know Swift?

I think those are all questions I've heard asked of Adium devs over the years. 

Thanks!


Matthew



--

Matthew

Asher Haig

unread,
Dec 20, 2019, 3:53:53 PM12/20/19
to Adium Development List
Hey everyone :)

I’m Asher. I live in Atlanta, GA, moved here about 12.5 years ago for grad school at Emory, where I completed a PhD in Artificial Intelligence and Psychoanalysis in the department of Comparative Literature. 

Comparative Literature is an unusual discipline– it used to be defined as the comparison of two “national literatures”, but contemporary departments now define it as the study between domains of difference, performed through the application of philosophy, semiotics, and psychoanalysis. I was able to define one of my foreign languages as C++ and work at the intersection of programming and engineering from applied theory (and working on the theory to produce the engineering). 

My dissertation question started out as: if we outline the logical requirements for building artificial general intelligence, where are the major barriers? I expected to find distinct, unresolved problems, but instead I found problems that had treatments available in the works I had been studying (perhaps not solutions, but ready to be applied in systematic ways). In the end, I focused my dissertation on the intersection of Turing with the philosophical thought I was exploring, thinking that I was going to be introducing the thought to Turing. I discovered that, in fact, it was Turing’s work that had produced the impetus for the core organizations of the philosophical work! As I came to understand this, the theoretical understanding developed into a concrete architecture— basically a new type of database architecture designed to handle natural language. 

Since finishing my degree, I’ve been spending days working on a startup based on implementing this architecture. I’m currently in the 98% stage where the database is nearing readiness for practical use. It’s not currently open source, but I’m working to figure out by what means I want to do so. 

On Dec 18, 2019, at 3:10 PM, Mathuaerknedam ! <mathuae...@gmail.com> wrote:

Asher,

Could you give us a little introduction from  "community engagement" perspective? For example: 

When did you start using Adium?

I’ve used Adium every day for ~ the past 20 years, before Adium X. 

I was heavily involved in a lot of interface design and conceptual flow discussions with Evan during the 2003-2007 period. One area that stands out was the heavy overhaul of the event system at the end of 2005, which we redesigned together during a week in Berlin. 

I also wrote the original build scripts. 

What protocols (in or out of Adium) do you use most?

Google (currently Hangouts), IRC @ Freenode #ai, #hackintosh

What's your favorite messagestyle?

Smooth Operator

Which xtras do you use?

Frodo Adiumy, Asher Coloring, Asher Layout, Contact Bubbles to Fit

Have you written any xtras?

Not published.

Are you on the forums?

Not currently, but if there are active forums I am happy to become active. 

What other open source projects have you contributed to?

Mostly I’ve been working on prototyping my own work, which has taken a number of different forms as it has progressed.

Most of that is now published on GitHub, here: https://github.com/RidiculousPower 
A number of these projects were maintained as Ruby Gems for a while. 
Of particular interest: 

Here’s a Cocoa utility lib I published: https://github.com/RidiculousPower/RPLayout 

Do you like pineapple on pizza?

No good comes of that question unless you’re ordering pizza!

Do you know Swift?

I have not worked in it at all, but I can easily pick it up as needed. 

I’m deeply versed in C++/C/Obj C/Ruby, familiar with others. 
Reply all
Reply to author
Forward
0 new messages