This is a great guide. I followed the similar steps for https://gitignore.io
I was doing a lot of development work and going to github.com/github/gitignore to copy templates from GitHub's website to my own file system was getting tedious. What I wanted was a simple command line tool like
So I built it over the course of a week while at Mammoth CA. I was on a snowboard trip so I would ride during the day and code at night. I was thankful to have a great designer (who worked at GitHub) help me design the site. And today the project is almost 5 years old and gets nearly 80,000 MAU's.
gi java > .gitignore
I was just worrying last night that I've released my side project too early, so glad to hear someone encouraging imperfect-but-usable releases. If anyone has advice on finding users, testers, and contributors besides posting on Show HN, please let me know.
I think that adding a (permissive) license is the missing step from this "tutorial". If you want people to use your project you are going to need to give them permission to do so.
Call me old-fashioned, but the only thing necessary for turning a side project into open source is to grant anonymous access along with a license. Well, that, and either too much disposable time or a strict policy how to deal with users or contributors. Making this policy clear to your users/contributors is IMHO the most important thing - it allows you to tell people to GTFO if they disagree; after all, they already get more than they paid for.
Nice work! I especially appreciated the emphasis on writing a good README… but I think it's missing the most crucial thing you need on top your README. That's the motivation aka why the project exists at all, why it's better than the alternatives, etc.
On the subject of OSS projects on the side, I'm really interested in the dual licensing model - I'd like to have my code licensed under a strict copyleft license so people can see the code, but a more permissive license so businesses can use it.
Based on articles like http://www.mikeperham.com/2015/11/23/how-to-charge-for-your-... I've figured out the following:
OSS license - AGPL - I'm building web services distributed as docker containers, so AGPL makes sense because it forces businesses to buy a license even if thy just deploy an instance of the service without modification.
Commercial license - this is where I'm stuck. MIT / BSD isn't a good fit because the business is then free to make and sell their own version of the service. What license will allow a business to run my service, and customize it for their own needs if necessary, but not re-license or redistribute it? Based on https://choosealicense.com/appendix/ it seems like the Mozilla Public License comes close, but it forces businesses to disclose the changes they've made - which I doubt they'd want to do.
I don't want to write my own license - anyone know of a good existing license or template? Don't mind buying it if it's less than $100, but getting a lawyer to write one is much more expensive.
Hey, I'm the author of this blog post. Hit me with questions if you got some!
i love the idea of just finishing - anything - and doing another. this is the only way to go, in any endeavor. try, fail, learn, fix. repeat.