"Orphaned" Scripts

fronobulax

Developer
Staff member
There are several script writers who seem to have left the game - Bale, Bumcheekcity and Winterbay come immediately to mind. Yet their scripts, perhaps with local modifications, remain in use.

Is there any community process that we want to consider to pass the baton on maintenance? Clearly forking and rehosting is the obvious solution although there also needs to be some kind of reassurance that the original author is no longer available or maintaining the script.

As a maintainer I'm already using SourceForge for a repository and Kolmafia.us for support. But Github clearly works as well and there is at least one script out there that is getting updates from several contributors at Github. My concern would be support. I have stopped using several scripts that were announced on Kolmafia but the authors were unresponsive to comments made here and I was not willing to get a Github account so I could post comments and requests or join a clan forum to make reports there. So in my perfect world, a fork that has the "blessing" of the community would also monitor and respond to support issues on Kolmafia.us.

Thoughts? Comments?

Thanks.
 

fronobulax

Developer
Staff member
This was posted on April 1st and I can't tell if it is an Apple [sic, I'm not fixing it] Fools joke or not.

It was not intended as an April Fools comment. Indeed if I had remembered what day it was when I posted it, I might have put a disclaimer in. I just assumed the silence was because no one cares.
 
It was not intended as an April Fools comment. Indeed if I had remembered what day it was when I posted it, I might have put a disclaimer in. I just assumed the silence was because no one cares.

Fair enough. When I took over snapshot, it was after being prodded about it by other players for over a year. I made a few attempts to contact bumcheekcity about it but never heard back from him, I think I gave him 2 months (it was more of me sending him a kmail or seeing if a clannie knew how to contact bumcheekcity every so often when prodded by players who wanted the script working again).

My own personal experience is that no one is actually concerned whether or not the original author is available or maintaining the script.

So, I'll actually make a comment regarding repos as well. Github has an advantage in that you do not have to make your code open-source. In fact, that is potentially an issue when trying to take over scripts. I moved all of mine over to Github (except snapshot) because of Sourceforge's open-source requirements and due to how others in the community have treated me in terms of my scripts.
 

fronobulax

Developer
Staff member
My reason for mentioning this is that there are scripts than need to be maintained. If the original author is not maintaining it then I would like a way to pass the baton to someone else and do so in a manner that does not feel like "stealing" from the author. I get open source licensing but some times what is legal is not what is right. I know there are people making local mods. I would like it if all concerned were comfortable with sharing. I'm lazy. If someone else has done they work then I would rather use their work, and thank them, than do it myself.

Point about Githib licensing noted and I will keep that in mind next time the discussion comes up. My pain point comes from authors who will only interact with their users at Github or a clan board or anywhere else that is not kolmafia.us. I suppose if it bothers me enough I'll take over Bale's script repository listing and only add scripts if the author agrees to support users here.

My experience with authors is different from yours. Possibly before you joined, dj_d had written a suite of scripts that included one of the first automated ascension scripts. EatDrink was was part of the suite and still widely used. NetWorth and Make.Meat.Fast are the ancestors of a couple scripts still in use. dj_d originally sold the scripts for a Mr. A. He thought that by doing so he was helping Asymmetric because people would donate $10 to get a Mr. A. He made a clear distinction in his own mind between the virtual KoL economy and the real world so he did not see himself as profiting from the activity although other people saw it differently. dj_d started backing away from the game because of real life (and last I heard he had started a company that Google had bought). That left users relying on other users for support. Eventually I became the support, in practice and I talked him into releasing the scripts into the wild. I stopped maintaining a couple and someone else took over some of the others. But my focus, then and now, is on support for scripts that need it. Perhaps the world is changing and I am just trying to stop the migration from a KoLmafia and scripting community to just a Kolmafia community?

For your amusement you might want to look at https://kolmafia.us/showthread.php?3209-Someone-trying-to-profit-from-my-work. One of dj_d's customers was reselling dj_d's scripts. The discussion wanders all over, equates the in game and real economy but there are some comments about this community that I believe should still apply almost 10 years later.

:)
 
My reason for mentioning this is that there are scripts than need to be maintained. If the original author is not maintaining it then I would like a way to pass the baton to someone else and do so in a manner that does not feel like "stealing" from the author. I get open source licensing but some times what is legal is not what is right. I know there are people making local mods. I would like it if all concerned were comfortable with sharing. I'm lazy. If someone else has done they work then I would rather use their work, and thank them, than do it myself.

Very true. My general stance is, as long as the original author hasn't explicitly said no, that with a sufficient good-faith attempt to contact (of course, what qualifies as sufficient and good-faith) is probably reasonable. There are further issues involving if a fork is a dramatic change rather than just trying to continue to maintain it (which are the two issues I dealt with). I generally oppose the dramatic change unless there is sufficient reason to warrant it as it not only "steals" from the author but makes it more difficult to unify changes - this only matters if the original author is still around though, however, it can be a disservice to rebrand an fork/continuation of a script, it is certainly insulting.

Point about Githib licensing noted and I will keep that in mind next time the discussion comes up. My pain point comes from authors who will only interact with their users at Github or a clan board or anywhere else that is not kolmafia.us. I suppose if it bothers me enough I'll take over Bale's script repository listing and only add scripts if the author agrees to support users here.

There isn't any uniformity in interaction. I wanted players to contact me via kmail. I avoided making a forum post on kolmafia.us because of it and didn't really like that players were posting on our clan forums with questions because of how infrequently I would check things.

I haven't had to deal with interacting with other authors much so I don't really know how bothersome it can be.




My experience with authors is different from yours. Possibly before you joined, dj_d had written a suite of scripts that included one of the first automated ascension scripts. EatDrink was was part of the suite and still widely used. NetWorth and Make.Meat.Fast are the ancestors of a couple scripts still in use. dj_d originally sold the scripts for a Mr. A. He thought that by doing so he was helping Asymmetric because people would donate $10 to get a Mr. A. He made a clear distinction in his own mind between the virtual KoL economy and the real world so he did not see himself as profiting from the activity although other people saw it differently. dj_d started backing away from the game because of real life (and last I heard he had started a company that Google had bought). That left users relying on other users for support. Eventually I became the support, in practice and I talked him into releasing the scripts into the wild. I stopped maintaining a couple and someone else took over some of the others. But my focus, then and now, is on support for scripts that need it. Perhaps the world is changing and I am just trying to stop the migration from a KoLmafia and scripting community to just a Kolmafia community?

I heard about that script but had no idea who had written it (I thought it was bumcheekcity actually) and it was before my time because I am just a high-skill noob. That is an interesting take on the selling of scripts though. Are you saying that you think the scripting community is fading away? I'm not quite sure if I'm reading you correctly. If I did, from my own experiences, it seems like the scripting community grew a lot over the last few years. It's interesting in some ways because I think it puts additional pressures onto the KoLmafia devs that appeared less significant to me back when I was scripting HR or Ed. I still, and shouldn't, feel like it is difficult to put features forward although I've seen more of that happen recently and I really should sort out my mafia diff to things that would be useful to everyone (someone please finish spading ensorcel!).

For your amusement you might want to look at https://kolmafia.us/showthread.php?3209-Someone-trying-to-profit-from-my-work. One of dj_d's customers was reselling dj_d's scripts. The discussion wanders all over, equates the in game and real economy but there are some comments about this community that I believe should still apply almost 10 years later.

:)

Does this mean I could have gotten paid for my scripts? :D I'll just keep selling that delicious snapshot metadata! That thread is an interesting read. I find it sad that a lot of the participants in it are no longer around (I also enjoyed Veracity's interaction with Richard Stallman). It also hits a bit close to home for me, aside from the charging thing (I should send out an invoice).
 
Why not just fork them? I know newlife, WHAM, Chit, and universal recovery need updating.

At least one of those, CHIT, is actively updated (it updated today actually). At least ask first. And if you are going to fork them, try not to make them incompatible with the original.
 

ckb

Minion
Staff member
I am all for others taking over scripts for maintenance. And the current SVN model should allow multiple contributors easily. The problem mainly is that once an author leaves, they may be very hard or impossible to contact.
I semi- took over slyz's Nemesis script, and it took weeks for him to log back in, see my kmail, then add me to the repo. And while I liked that script, it is tricky to really own someone else's work unless it is just simple updates and maintenance. I know some of my scripts are in near constant flux, so making updates and posting them is not something I want to do unless I want more testing and feedback.

Maybe a good start to this would be to create a list of the high-use scripts that you had in mind, who the original author was, and when it was last updated.

As was mentioned, ChiT is still actively maintained by multiple scripters, despite the absence of others.
Also, I miss Bale.
 

AlbinoRhino

Active member
In fact, ChIT has been orphaned twice. But, SVN repos for scripts happened, and some of us still have commit access to it. (Thank Bale for the foresight.) I'm not sure who you would ask if you did want permission to use it for something. Maybe, like real orphans, the scripts eventually mature and become independent? :p
 

fronobulax

Developer
Staff member
Not going to try and quote everything which means this will be disjointed.

A couple dormant authors did not grant access to the repository to anyone who is currently active. Thus a fork would involve a new repository.

I believe several people are updating scripts and not sharing. Anecdotal information suggests to me that some of them just don't want to share and others don't want to fork for fear of being accused of theft. Maybe the discussion will change some behaviors?

I personally am not going to fork something unless I understand it well enough to maintain it. I am lazy.

I feel like the scripting community is getting smaller. Perhaps that is because I have a long list of names of people who had contributed but no longer seem to be active. It may also be that the activity I am missing on kolmafia.us has migrated elsewhere. Perhaps I would think differently if I monitored Github discussions instead of complained about them.

NewLife, EatDrink, WHAM, OCD, UR, some of Bale's relay scripts and bccascend come immediately to mind as things I wish were "more" up to date. Theraze (EatDrink) may still be active. While there are better ascension scripts, bcca did not rely on ITOMs and was less likely to do things like abort and tell you to find stone wool yourself and run again.

cheesecookie - again you mention your changes to KoLmafia. Veracity has already said she'd be glad to look them over. I'll do you the same, giving you a choice between a starter and a benchwarmer to interact with. We can go to PM if you'd like.
 

Rinn

Developer
IMO my ideal would be to put everything on git with a very permissive license, let people fork it and hopefully make reasonable pull requests that get merged back in to the original repo, and if the original author disappears then someone else's fork can become the primary version.

Personally I've never really been bothered by something forking my scripts and running with them, I have a number I did a bunch of work on early on then got too busy to maintain them and fortunately for the more used scripts someone else stepped up to take it over. IMO I think generally massive incompatible changes (like renaming everything etc., I really really don't want to derail this discussion with that but I understand where you're coming from) in a fork is a bad idea, but if the forks are public least you can follow the commit history if on the same source control platform. I've been meaning to migrate all my stuff to github to make that easier as I really don't like using sourceforge but it's pretty low on my priority list. I don't want to speak for anyone else but personally while I've put a lot of work into scripts over the years I don't have a lot of attachment to the code I write but maybe that's just because most of the code I've written professionally is owned by the companies I've worked for.
 
Not going to try and quote everything which means this will be disjointed.

A couple dormant authors did not grant access to the repository to anyone who is currently active. Thus a fork would involve a new repository.

I believe several people are updating scripts and not sharing. Anecdotal information suggests to me that some of them just don't want to share and others don't want to fork for fear of being accused of theft. Maybe the discussion will change some behaviors?


I personally am not going to fork something unless I understand it well enough to maintain it. I am lazy.

I feel like the scripting community is getting smaller. Perhaps that is because I have a long list of names of people who had contributed but no longer seem to be active. It may also be that the activity I am missing on kolmafia.us has migrated elsewhere. Perhaps I would think differently if I monitored Github discussions instead of complained about them.

Maybe that is why I feel like the scripting community is quite large as I'm privy to hearing from unshared maintenance. I never did bother to check though.


NewLife, EatDrink, WHAM, OCD, UR, some of Bale's relay scripts and bccascend come immediately to mind as things I wish were "more" up to date. Theraze (EatDrink) may still be active. While there are better ascension scripts, bcca did not rely on ITOMs and was less likely to do things like abort and tell you to find stone wool yourself and run again.

cheesecookie - again you mention your changes to KoLmafia. Veracity has already said she'd be glad to look them over. I'll do you the same, giving you a choice between a starter and a benchwarmer to interact with. We can go to PM if you'd like.


The way players bring up issues (referring to the stone wool thing) is not always conducive to getting those things fixed. I didn't know there was an issue until I was finishing my code for the Vampyre path. Sometimes you get just a "this happened" and no follow-up. I had enough situations where it wasn't even my script that was causing the issue that if I can't get follow-up, I often have to disregard an issue.

I didn't realize Veracity said that since there wasn't a response to my post. That being said, since you are explicitly offering, I will put some time into cleaning up my diffs (I need breaks while packing stuff anyway). PM need at some point about it so I have something to reply to.



IMO my ideal would be to put everything on git with a very permissive license, let people fork it and hopefully make reasonable pull requests that get merged back in to the original repo, and if the original author disappears then someone else's fork can become the primary version.

Personally I've never really been bothered by something forking my scripts and running with them, I have a number I did a bunch of work on early on then got too busy to maintain them and fortunately for the more used scripts someone else stepped up to take it over. IMO I think generally massive incompatible changes (like renaming everything etc., I really really don't want to derail this discussion with that but I understand where you're coming from) in a fork is a bad idea, but if the forks are public least you can follow the commit history if on the same source control platform. I've been meaning to migrate all my stuff to github to make that easier as I really don't like using sourceforge but it's pretty low on my priority list. I don't want to speak for anyone else but personally while I've put a lot of work into scripts over the years I don't have a lot of attachment to the code I write but maybe that's just because most of the code I've written professionally is owned by the companies I've worked for.

The massive incompatible changes are my major point of ire in the two forks of my ascension script. I still think I prefer sourceforge's commit history but I've moved over to Github for privacy. It might be overkill, or excessive bureaucracy, to try to establish a license that scripters can use (of course, they wouldn't be required to use).

I have generally felt that there is not a lot of collaboration amongst the scripters so I can't imagine the situation with forking and merging pull requests. All I know is that the way members of the community handled a script of mine has led me to dramatically reducing my public scripting contributions.
 

Veracity

Developer
Staff member
I didn't realize Veracity said that since there wasn't a response to my post. That being said, since you are explicitly offering, I will put some time into cleaning up my diffs (I need breaks while packing stuff anyway). PM need at some point about it so I have something to reply to.
I thought I replied, but perhaps it was only in my own mind. Assuming I didn't, in fact, reply, I assume it's because I can only put in KoLmafia work on the weekend, these days, and have been under a lot of extra stress recently, so wan't sure I could commit to working with you in a timely fashion.

I am certainly in favor of bringing in work that is generally useful - high quality, solves a problem that more than just the author has, and so on. Although I have been guilty of adding new built-in ASH functions for the benefit of a script I was personally working on, I hope that they've more general relevance. :)

I'd like to see your code fixes and features so that we can import them, as appropriate, into the main code. Just as for everybody, I reserve the right to adjust them to fit style standards, use built-in functionality (which you may not have noticed) to simplify things, and so on. When holatuwol let me join the project, seems like every commit I made for a good long while had a follow up commit by him which did exactly that.
 
I thought I replied, but perhaps it was only in my own mind. Assuming I didn't, in fact, reply, I assume it's because I can only put in KoLmafia work on the weekend, these days, and have been under a lot of extra stress recently, so wan't sure I could commit to working with you in a timely fashion.

I am certainly in favor of bringing in work that is generally useful - high quality, solves a problem that more than just the author has, and so on. Although I have been guilty of adding new built-in ASH functions for the benefit of a script I was personally working on, I hope that they've more general relevance. :)

I'd like to see your code fixes and features so that we can import them, as appropriate, into the main code. Just as for everybody, I reserve the right to adjust them to fit style standards, use built-in functionality (which you may not have noticed) to simplify things, and so on. When holatuwol let me join the project, seems like every commit I made for a good long while had a follow up commit by him which did exactly that.

Make sense, real life stuff is always a priority.

I'm guilty of similar, it does provide that push to get stuff done.

Thanks, I appreciate the response! I completely understand the need for a code review and will get my stuff sorted out for you to look at.
 
Top