3 ms·
Thanks for writing this. It lists many reasons why I don't open source my side projects. Open sourcing is meanigless without considerable additional work in f
by chvid 10y ago
Thanks for writing this.
It lists many reasons why I don't open source my side projects.
Open sourcing is meanigless without considerable additional work in form of quality assurance, documentation, project management, marketing.
As a developer you should weight whether it is worth the cost for the return of exactly what? Getting your stuff out there? Developer street credits? Maybe a consulting gig down the road?
Or is your time better spent doing other things?
- syoc 10y agoI don't see how open sourcing is meaningless if you don't do the things you listed. It may be meaningless to you, but you can never tell if someone else will be able to benefit from your work.
- chvid 10y agoIn theory yes. In practice no, your project will just be burried amongst the million other github projects.
- cm3 10y agoBut it's more useful to the ecosystem as an unmaintained code dump than being kept closed. If there's interest, someone will pick it up partially or fork it. In the worst unmaintained, unused case, it's still potentially valuable for code archiving/history purposes.
- ultramancool 10y agoNot in my experience. I've pulled some very useful things out of tiny projects on GitHub, most recently a friend and I fixed several performance issues in a great voip.ms SMS client for android. Tiny, obscure project but it was just what we needed, after a few fixes for our use cases.
- detaro 10y agoI've found quite a few interesting and useful things in inactive zero-star github repos. As long as title and description are useful for search and it is not something that is totally done to death your project might be surprisingly easy to find.
- decwakeboarder 10y agoSure, but it may be the only one that's doing exactly X with Y in Z language, especially when you step outside of Java, .NET, and the other "enterprise" languages or working with hardware devices.
- clarry 10y agoDepends on the project. I've seen the argument from game developers (e.g. dwarf fortress) that open sourcing the game takes a lot of effort. I wholeheartedly disagree. You flip the switch, make sure there's an appropriate license, and the community can do whatever they like with it, and if it's well-known enough, they will. Native source ports for example. Which just happen to be the biggest reason I want the source to games. I don't know how much clean-up id did on doom's source before releasing it, but my understanding is that they didn't do that much. And I wouldn't be playing Doom today if it weren't for that source dump. I'm not playing dwarf fortress. I kinda would like to, though.
- ghughes 10y agoI have to disagree as well. Years ago I open-sourced a little utility on GitHub and stuck the GPL on it. I had to stop working on it and soon forgot all about it. I checked on it recently and discovered that it was forked by PhoneGap and is now a critical dependency of their product. I don't recall doing anything to promote it.
- nekitamo 10y agoThank you for Fruitsrap. We use it every day, as do dozens of other teams you probably have never heard of :)
- tzs 10y agoOpen sourcing can be useful to others without taking any non-trivial time on your part. For example, in the early '90s I wrote a tool to pull a small newsfeed from an NNTP server. I called this tool "suck". It was written entirely for myself. When I finished adding new features that I had not realized initially that I needed, and finished fixing all the bugs that I new about, and had used it for a while without encountering any new problems or discovering any new features I wanted, I made the documentation presentable, made a tar ball of the source and documentation, put it on my public FTP space at the University of Washington, and made a single post to usenet announcing its availability and location, stating that it was public domain, and stating that it did everything I wanted and I'm not going to be doing any further work on it and would not be doing bug fixes or enhancements unless they were fixes or enhancements I needed. So aside from the small time spent cleaning up the documentation and putting it up on the FTP server and writing that one announcement post, open sourcing it took no time of mine. A year later I had some enhancements I wanted. I made them, and then like last time I put it all in a tar ball and put it up for FTP. I then went to usenet to post an announcement that suck2 was now available, on the same terms as suck, and to my surprise I found that someone else had just announced suck2. They had found suck, and it did much of what they were looking for, and had used it as a starting point to make the tool that they wanted. They were actively maintaining and developing their suck. I kept using my suck2, since it did exactly what I wanted, but from then on if I had occasion to recommend pull feed software I recommended the other suck2. Their suck made it into several Linux distributions. By then they had changed enough that I doubt there was any code of mine left, but it was still cool to see something that had started from something of mine there. As long as your side projects aren't in a state that could harm someone who tried them, why not release them? Just make it clear and prominent what level of post-release interest you have (and "none at all, including ignoring all communications about this project" is fine).
- flohofwoe 10y agoI don't quite agree, there doesn't have to be a compelling reason to write and store your code in the open. I put all my 'weekend stuff' under MIT license on github by default, unless there's a really good reason to keep it closed. I really don't care about the cultural or political aspect of Open Source, and in the end I don't care if the code is used by others or not, even if it feels good if the code is useful to others. I accept, reject or ignore pull requests without feeling good or bad. The chances that any of my code becomes successful and a burden are very slim. The thing is simply: it is easier, cheaper and less risky to make the code open than keeping it closed on my home machine or in paid private repositories.