GitHub removes 5 years of One Hour One Life designer's work
twitter.com
twitter.com
His latest game, "One Hour One Life" [3], is a massively multiplayer online game where your character has only one hour of life. You start off as a baby and are dependent on others for shelter and heat before you're able to be autonomous. Eventually you die of old age but your impact on the world/server persists.
I recommend anyone interested to purchase the game [4] or at least look at video stream of gameplay [5].
When I purchased the game, the source code came with it and as far as I could tell was dedicated to the public domain. This was client code so I'm not sure if the server code is released anywhere (maybe this was what was taken down at GitHub).
[1] https://en.wikipedia.org/wiki/Jason_Rohrer
[2] https://en.wikipedia.org/wiki/Passage_(video_game)
[3] https://en.wikipedia.org/wiki/One_Hour_One_Life
[4] http://onehouronelife.com/
[5] https://www.youtube.com/watch?v=Hu7kXKuShks&list=PLcA1QDRup-...
The article on Rohrer, which included this anecdote, theorized that his court appearance proved his gardening choices to be a matter of principle and not just negligence, thus changing the perception of him by the neighbors.
Meanwhile, his ‘Passage’ is in MOMA's initial videogame collection, and he's had a solo exhibition at The Davis Museum.
So something like: “I always thought of you as a good neighbour, because of your beautiful garden, but is complaining about your neighbours garden something a good neighbour would do?”
Usually they never bother you again then.
No, you aren't. https://en.wikipedia.org/wiki/Affirming_the_consequent
> You are simultaneously reaffirming your neighbor's standards for themselves, and rejecting them for yourself.
Yes, because we are complex, subjective, multidimensional humans, and we can judge each other based on different referential systems. If I don't care about your subjective perspective, I don't have to prove myself in your eyes. And if I don't care what your referential system is then I'm only a hypocrite in your eyes.
- You have a clean yard, you must be a good person. I have a messy yard, but I like it / I don't care. I can still be a good person for other reasons, but I don't care to be that person in your eyes. I do care that you're pestering me with comments, so please stop.
2. You don't necessary have to agree with the premise, but you're proposing it because you think the other person agrees with it.
I have an allotment, and you'll certainly get frowned at if you let your dandelions seed all over a neighbouring plot.
I kinda enjoy both and I've found the hybrid model works best for me and my family (no complains from the neighbours, yet;).
And fortunately it's even possible (though pretty hard) to 'turn' people.
Couple of years ago I slowly started explaining in detail why pretty much anything is better as far as nature goes than a short lawn consisting of only grass, and also explaining that the idea that such lawn is the summum of gardening is purely a cultural and economical thing without much real benefits but just costing money for the owners of the lawn. This year my neighbour proudly said he would not be mowing a small piece of his fairly huge lawn because he wanted to see more bees and butterflies (which are abdundant in my own meadows) and he might not try to remove the moss this year. So now we're both happier than before. And my neighbour will spend less time and money. Sometimes life is simple yet good.
Like us.
Not to mention helping to reduce the risk of rodent problems. Pest control and fire risk are the reasons why, in my city, your are legally required to keep your jungle down to a certain level.
[1]https://www.amazon.com/Second-Nature-Gardeners-Michael-Polla...
Intriguing “fact” if true; I can’t reconcile this with so many animals eating grass. They’re both directly cutting it in their mouths, and also inhaling the volatiles from the part they leave connected to the plant.
Is there some problem common to all grazers? Something like the way koalas are proposed to be as languorous as they are because the eucalyptus leaves they eat are acting in a drug-like manner on them?
Or, alternately, is there some adaptation all grazers have in their bodily response to chemical volatiles released by the cutting of grasses, that other animals species don’t have?
I recommend everyone to read this regarding that matter:
https://www.reddit.com/r/gamedev/comments/ay0w64/one_hour_on...
I don't think Jason really understood what public domain means when he released the game into public domain. Once people started using his work as PD work, he started to complain, file DMCA requests, etc.
Just to be clear, it looks like Jason Rohrer is still very much committed to putting his work in the public domain and, as far as I can tell, has been consistent in his commitment to keeping the work he's dedicated to the public domain in the public domain.
What looks to be happening is more of a trademark issue. I think Jason Rohrer might be backpeddling on that. It looks like he clearly indicated to people making a port that the "One Hour One Life" name was also in the public domain and could be used but that they shouldn't, essentially making an ethical argument. When the iOS port that was similarly named ("One Hour One Life for iOS") and became more popular than his released game, that's when he started to push back. [1]
It looks like a big point of contention for Jason Rohrer is brand confusion as many people don't realize the iOS port of "One Hour One Life" has nothing to do with Jason Rohrer. I sympathize with him but I wish he had taken a bigger stance on his trademark.
Free/libre/open source organizations have understood this and use trademark to brand themselves and make sure others don't dilute that brand without permission. This is how the Open Source Hardware Association essentially does their certification and why you can't use "Free Software Foundation" in your open source project's name without permission.
"This work is not copyrighted.
Do whatever you want with it, absolutely no restrictions, and no permission necessary."
If you care about your fame, don't pick a license that literally states you are happy for people to do whatever they want.
I have no sympathy for somebody who writes a license himself (what's wrong with MIT), reassures people that they're allowed to base their livelihood off his work, then changes his mind once they start making more money than him.
He's of course welcome to have whatever restrictions he wants on his work. But don't claim to have some moral high ground when you're litigating against people who trusted you to be honest. At best he's doing it to satisfy his ego, at worst for money.
He's appealing to ethics, not the law. He says right there that his objection is to the naming of forks. If that looks to you like violation of the public domain promise, you must think the name constitutes the body of the work.
I'm not sure what to make of the DMCA filings, though, since those should obviously rely on copyright in the first place.
From his twitter, it seems he's also convinced by now that the trademark law provides perfect solution for this problem, and has apparently filed an application for a trademark on the OHOL name.
How often do we have these articles? Averaging once a month? Maybe more?
How often does it need to happen before people realise that your $10/mo means jack shit to a multi-million dollar company, and "accidents" like this are just a cost of business to them. Solving the problem properly would cost a lot more than just letting people fall through the cracks of automation.
BTW as was made clear by multiple HN commenters in other discussions about this incident, nothing was actually deleted, the customer's account was suspended for 30+ hours.
This is the way development using git is supposed to work anyway.
On the other hand this is like not backing up your hard drive. Having a single point of failure and expecting anything less is...
Like you said, he's big enough to shout into the abyss and get a response, while others have to accept that a single point of failure is exactly that.
If we changed the headline to hacker deletes '5 years worth of work', the response would be different; two-factor should have been enabled, should have used a strong password, one password per account, yubi-key, etc. The onus would have been on the developer.
There are plenty of free hosting services for repos, so there's no reason IMO to not maintain a mirror.
> Actually, it seems like this "report" to discord came on the heels of us banning a member for posting offensive content. That member then, to seek revenge, reported the entire server to Discord, and told us about it. Nice.
I've experienced similar immature behaviour in the Minecraft community back when it was at its popularity peak.
[1] https://twitter.com/jasonrohrer/status/1119751548542652416
Naturally, nowadays they have online forums that _cater_ to this kinds of individual (4chan, some subreddits, etc). Nature, um.. finds a way.
A tiny sliver of the population is effing nuts.
You can also enable options for it to act as a mirror or to make GitHub act as the mirror for Gitlab. I'm not sure whether there is a mode to keep the issue threads synced as well without manual intervention. That'd be full data portability.
Sure, there are exceptions and optimizations for specific services but overall it did increase portability of server applications quite a bit. Maybe the times were you just need that legacy windows 2000 server encapsulated with 7 firewalls and proxies are finally over.
I usually prefer to host my stuff on private servers, but people unreasonably want to put as much software as possible into cloud providers. I think the reason for that is more often cocaine abuse and wanting to be hip instead of technical/financial arguments, but it is what it is.
I also found this comment on his site:
Tarr (1,819.0 hours on record) Posted 42 hours ago
"Can't recommend the game to anyone who either doesn't have 15+ years of game development or doesn't know Jason personally. Game dynamics are too rich for a filthy casual like myself. If you want to make a suggestion please learn to read spaghetti code and hope the copypasta is as delicious as it is hard to untangle."
Which is interesting, because Jason's C++ code is one of the very best I've ever read. I normally hate C++, but his code is beautiful and very readable. Like out of a book or tutorial. E.g. https://github.com/jasonrohrer/OneLife/blob/master/gameSourc...
Also his dischord game support channel is filled with hate about him. Not only by this guy, but by many seemingly childish individuals. Looks like another gamer gate to me.
if( !relaunched ) {
printf( "Relaunch failed\n" );
setSignal( "relaunchFailed" );
}
else {
printf( "Relaunched... but did not exit?\n" );
setSignal( "relaunchFailed" );
}
Instead of simply: if( !relaunched ) {
printf( "Relaunch failed\n" );
}
else {
printf( "Relaunched... but did not exit?\n" );
}
setSignal( "relaunchFailed" );
?Such copy-pasta style redundancy does count as somewhat sloppy in my book.
And do C++ books or tutorials recommend cramming over 20 KLOC in a single file? https://github.com/jasonrohrer/OneLife/blob/master/gameSourc...
I don't have any bone to pick with the guy, whom I don't know and who I'm sure may be very talented.
I only fail to see why code quality, beauty even, would be considered a forte of this particular project.
Of course he's only human, but it wasn't me who picked this little (80 LOC) file, of all the codebase, as an example of code being like "out of a book or tutorial" :)
And what about stuff such as 20 KLOC in a single file? This is spaghetti, no matter how you spin it. I wouldn't want to work with such codebase.
If I were trying to reduce redundancy, it would become more like this:
printf("Relaunch%s", relaunched? "ed... but did not exit?\n" : " failed\n" );
setSignal("relaunchFailed");> Sincere apologies Jason. We will investigate what happened here and learn from it.
"We collect and preserve software in source code form, because software embodies our technical and scientific knowledge and humanity cannot afford the risk of losing it.
Software is a precious part of our cultural heritage. We curate and make accessible all the software we collect, because only by sharing it we can guarantee its preservation in the very long term. "
In ~80% of cases, there is more to the story than meets the eye. For example maybe a legal complaint came in, or someone was DoS attacking that repo and it put the whole GitHub service at risk.
Maybe they tried to call him but he rejected the call?
Only the stories that sound unreasonable get viral attention.
But it's true that each company probably need to think for themselves and their circumstances, and do at least a mental computation every six months: do I need offsite backup, a second cloud provider in cold standby, in hot standby, should I look at a colocation, should I look at square meters and ethernet crimping tools?
This is an alarming trend, and highlights how decentralization and, at the same time, more accountability for this sort of action from these providers is necessary (through regulation?). Sadly it seems like at least the EU is currently walking in the opposite direction, which favors large corporations and the content industry :(
This has always been the case, ever since BBS operators. Data on other people's machines is data on other people's machines.
If there's a DoS, inform the party about it.
He licensed his work at "Do whatever you want with it, absolutely no restrictions, and no permission necessary.".
Then when someone started making money off his work, he turned around and started litigation.
Maybe none of the Github features are useful to you in how you use it, but I find Github the most productive way to work with a distributed dev team that I've ever found by a large margin. It's an amazing system for productivity of large dev teams and a dream to work with if it fits your use case.
The biggest feature for me is the whole Pull Request flow with integration between filing the original issue, the code changes to fix it with inline code reviews and tracking everything through to a release all with a few clicks. And all of it is in a format you can link to in an email or drop into a chat, even referencing the specific lines of the diff you care about. It's really an amazing system that most of us take for granted.
Different people have different needs. And for a lot of people, git itself is just the (excellent) engine but really they want a whole car.
Add to that the user permission system which Bitbucket like services provide out of the box (I don't know about GitHub), for example a certain team in your company can access certain repositories, interns can access other repositories etc.
Add to that when you want one of your customers to have a read-only access to a repository, so you not only have to manage user permissions, but your whole IT structure needs to provide outside access to a certain part of your network, in a secure way.
This is achievable but it certainly wouldn't take just minutes. Services like Github and Bitbucket provide all these features for a reasonable price, and they have dedicated sysadmins working on providing a secure service 24/7, who would do a better job than a lot of companies can do with their 1-2 person team doing sysadmin things in their free time, besides their main daily workload.
I think ease of contribution and discovery shouldn't be underestimated. I find it hard to believe that our little project [1] would have had 90+ contributors, of whom ~8 made very substantial contributions, if we'd self-hosted it. The project would have been far lesser without those contributions, and I probably would have abandoned it out of lack of interest.
That said, most other projects I see around have much more uneven contribution levels, with typically 100:1 ratios from the core developer to the second biggest contributor. Maybe we're just weird.
[1]: https://github.com/tridactyl/tridactyl/graphs/contributors
Another sad fact of life nowadays is that github issues reduce friction but a lot of "hardcore" developers prefer email or some other offsite system that has lots of friction to people getting involved(i see this a lot in gitlab/bitbucket/sourcehut hosted projects). which means an open source noob is going to look at another project instead of getting involved with yours(again not an issue with you). for better or worse github is king here.
most open source projects don't bother and tend to rely on interest levels to keep them afloat. this works for the popular ones but tends to sink niche projects
I think the the “Fediverse” will become more popular over the next few years.
[1] https://store.steampowered.com/app/595690/One_Hour_One_Life/
Everything's right there waiting for you.
doesn't have a backup
can't be that important
But come on people, "in the cloud" doesn't mean it is safe. If you care at all about what you're storing in the cloud, make copies to store locally and offsite.
OP assumed GitHub would hold his code (and make it available) forever, seemingly a good assumption. Now he's massively inconvenienced.
Time for me to look around, consider all my big assumptions....
Don't put all your eggs into one basket.
Use something that you can run your own instance of (like GitLab) and make the cloud version a shadow copy of your local one. That way if they pull the rug out from under you, you actually have some way of dealing with the issue.
And... Use Gitlab
Just backup your repos once a year, lets not be paranoid.
The point was that nobody does that for backup purposes in advance, and maintaining local Gitlab along with supportive infrastructure is not trivial task.
Local copy may have been deleted. Developer may have just got a new laptop and traded the old one. Argue at length over having multiple redundant backups perhaps, but the simple truth is his work was deleted, and it's only by luck (or foresight) he has a local copy.
That it even happened is a huge problem, whataboutism aside. My trust in the longevity and stability of the service offered by GitHub is significantly eroded by this news.