Open sourcing all my private projects
blog.alexmaccaw.com
blog.alexmaccaw.com
What would make the world a better place? More well documented AND maintained examples of code that satisfies some need.
Sounds okay to me. He's basically putting up a portfolio of his existing work.
well documented AND maintained examples of code that
satisfies some need.
You're asking for the Holy Grail of open source.When I google for something really obscure, I'm always glad to find something old, ugly, and broken, over no results at all.
(Next problem to solve: discovering open source projects that are maintained.)
Do people find value in unmaintained codedumps? I registered a dedicated github account last year for all the small stuff I wrote during train rides (I do a lot of them, 5 hours apiece) and never really finished. The idea was that I put a README on each of those and just leave it there for anyone to look at. But most of them are just tiny experiments in Ruby, so I decided not to release them for precisely the reasons mentioned in the parent post.
I think the answer is "no" and that's why I'm having such a hard time learning Smalltalk.
Admittedly it doesn't happen often, but it does, so you may as well put them out there :).
For really small tests/examples, I have a playground directory: https://github.com/albertz/playground
Everything else which is slightly more than a single file or has some other justification to be an own project, I just created a repo for it. https://github.com/albertz http://www.az2000.de/projects/
I think the big difference between the two sites is that it's much easier for these types of projects to gain momentum and continue being updated on GitHub.
On SourceForge, a project would linger with no activity, bugs and feature requests would pile up, and creating a new project for a fork was a pain. I've checked out project CVS/SVN trees from SourceForge to fix things and since the projects looked dead, I never contributed the patches anywhere. I certainly wasn't going to create a new SourceForge project just to host my one patch. The few times I've created bugs for the patches, they never got any attention.
With GitHub, it's much easier to fork a repo, fix a bug, and push the fix back up for everyone to see, even if it never gets turned into a pull request or accepted upstream, lingering in your own git repo never to be touched again. Since GitHub shows your fork on the original project's fork tree, it's easy for other users to find your fork with your bugfix and continue that momentum by forking your fork, fixing their own bug, and so on.
In case there's any doubt, the above statement is 100% sincere and includes no sarcasm.
And, given this, there is no reason not to release your little projects. Let the rest of the world back them up for you ;).
This is seriously one of the cooler things I've seen any engineer do. Thank you!
I'm starting to open source some office tools that I use on innovafy. The kind of tools that most offices could use, but no one ever bothers to build.
Anyhow, open sourcing is more of a gain than a loss.
I never regretted that decision. ;)
And you never know who might want to take over or what kind of great new enhancements someone else might contribute that make you proud that you started the project to begin with. Even if the code languishes on github or sourceforge at least there's the possibility for someone to pick it up. What's more, you never know who's picking up abandoned projects and using them privately. Just because there's no cmaintainer or community activity that doesn't mean there isn't the odd person here and there who finds an abandoned project and uses the hell out of it. Contributions from the open source community isn't the only measure of a project's success or usefulness. Individuals finding a use for abandoned projects without contributing back is still a great thing in my book.
I don't know about everyone else but I do it for the love of the game, not to see my name in the source code of another project that uses my code. As far as I'm concerned, unless I'm planning to make a profit (in which case I wouldn't publish the source), you can fork, close, distribute and charge whatever you want with my code.
I like Alex's style on this one a lot.
(And just to be clear, I'm not trolling -- I'm actually asking.)
[1]: http://code.google.com/p/js2-mode/
Then somebody cloned it on GitHub[2], changed the indentation, fixed some bugs and added some features. In the past, using JS-2 mode was a bit of a compromise--intelligence at the cost of weird behavior. Now there is no compromise at all.
Do you also count partly finished projects? I listed some projects [here](http://news.ycombinator.com/item?id=3713240). Most of them were extended/improved a lot, e.g. by porting them to other platforms, etc.
Quick, someone tell RedHat - they're doing it all wrong! [0]
[0]: http://opensource.com/business/12/3/billion-thanks-open-sour...