- Are you saying, "why not pay yourself to spend many hours working your codebase into something that can be, at a minimum, copied down and installed successfully on hardware that you don't control" that doesn't violate any IP and only includes code you are legally permitted to open source
- Or are you saying: "Just open up the repo as-is and see what happens!"
It seems the latter option (just dump everything) is the only feasible option for a business who cannot afford additional development, but is probably immoral and illegal (you likely don't have all the rights to ALL of the code).
The first option sounds great but if moot doesn't have money in the business to pay himself to do all of that work... are you suggesting he just volunteer a large amount of his personal time to do a bunch of free work for a failing business? I can understand why a developer would prefer to get paid for their effort (and the type of developer who wishes to work for free, by default, wouldn't be in this position and would have open sourced the project from the get go...)
However, I don't think I've ever worked at a web startup that didn't require all employee and contractor-contributed code be granted irrevocably and without limitation to the company, and the last few companies I've worked at have also required that all third-party dependencies be licensed in such a way that the company could use them in an unlimited commercial or non-commercial manner.
Everything I've worked on in the last 5+ years could, I think, be open-sourced with the flip of a switch without IP or legal issue provided the company decide to do so. In a few cases I know about, projects I worked on were open-sourced after I left without even notifying me.
Do I think it's a bit irritating and potentially somewhat immoral? Sure. I'd have liked knowing that my code was open-sourced retroactively, if for no other reason than to add it to my OSS resume.
But I've never worked in a web startup where my employer wasn't effectively free of IP-debt, or one where the "flip the switch and-open source it" method wasn't legally viable.
I think I agree with your point, though: "just open source it when it dies" is a naive argument that ignores how much work putting code out there can really be.
That's a very solid general criticism of my "well X has been true for me" style of post. I'm not trying to imply that my experience is comprehensive by any means - it certainly isn't.
I did find it quite interesting that the concept of open-sourcing a web company's software was fraught with legal concerns, because to the best of my knowledge other people could freely open source my last six years of work output without a single IP qualm. I'm obviously not inclined to think that my experience has been entirely out-of-the-ordinary, although that absolutely may be the case.
Certainly not 'and have it just work', but I'm really skeptical that many web apps have such complex api dependencies that you couldn't just fudge a new one in.
Even app-engine apps have been successfully run using an isolated stack.
...and certainly most 3rd party APIs really wouldn't care; just another end user. Nothing special.
There is quite a trail of minor problems:
Eg.
Legal implications with investors/shareholders/etc
(Unlikely but) Potential security issues
Fixing the code to a level that other people can run it
Documenting the code to a level that other people understand how to run it (eg dependencies on services around it)
And i am pretty sure there are many more.
All solvable problems but in most cases come in a moment when a founder has already ran too far and is out of cash/time/energy to tackle those.