Live data from Hacker News

Turning a side project into an open-source project

reaktor.com

21–30 of 41 posts

Re: Turning a side project into an open-source project

#21
post #18

Earlier quoted context omitted.

Only because so much FUD has been spread about the GPL

The GPL advocates say it is FUD, but as any BSD advocate will tell you the concerns are real. Note that GPL advocates spread FUD about the BSD license In my experience the GPL advocates completely ignore the concerns of the BSD people. The BSD people understand the GPL concerns they either don't think they are very real world (they will acknowledge some exceptions when forced to); or more pragmatically think that the…

> Note that GPL advocates spread FUD about the BSD license. In my experience the GPL advocates completely ignore the concerns of the BSD people

Um ... people who advocate for GPL are not a uniform group.

> Calling the concerns of the other side FUD is in fact not helpful.

I fully agree with that statement, though.

Re: Turning a side project into an open-source project

#22
post #14

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 gi java > .gitignore 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…

This idea sounds like a good use for ‘choose’ [1]. It’d be a bash script that uses curl to get a list of the languages with gitignores, pipes to choose to let the user choose one, and pipes it into curl again to get the gitignore contents and sends to stdout.

[1] https://github.com/sdegutis/choose

Re: Turning a side project into an open-source project

#23
post #16
post #8

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.

Unless you don't mind a hostile take-over don't make it too permissive though. GPL is a good license if you want good protection while still allowing people to fork, share and profit on your work.

Are there any stories/examples of MIT-licensed projects being subject to hostile take-overs?

Also if it's you are the originator of a project what's stopping you from using the GPL license but not disclosing your own source while you commercialize?

Re: Turning a side project into an open-source project

#24
post #14

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 gi java > .gitignore 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…

Hey, thanks for the site! I use it all the time! Great tool to have!

Re: Turning a side project into an open-source project

#25
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.

Re: Turning a side project into an open-source project

#26
post #25

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…

Yep. Anything more and you’ve turned it into a side job that doesn’t pay.

Re: Turning a side project into an open-source project

#27
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.

Re: Turning a side project into an open-source project

#28
post #8

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.

You have to have a license to attract contributors. https://choosealicense.com/ and github make it easy; there's zero excuse to not have a license. Permissive licenses attract the broadest range of contributors, so if you're looking to build a large community, they are the way to go. GPL tends to have a smaller overall, but very strong pool of contributors, so if copyleft makes sense for your technology, by all means…

The chance of a personal project building a large community are quite slim regardless of the license.

Chances are a personal OSS project will only attracts a few dozen users and maybe a handful of contributors (contributing mostly small bug fixes) with the creator as the only real developer/maintainer.

There is also a good chance that the maintainer will only contribute from time to time after the initial "dev sprint", if it doesn't abandon the project all together.

Basically the bus factor for such projects is 0. If you are relying on one of them, you should be aware that you may have to maintain a fork on your own in the future.

Given this state of things, I prefer having permissive licenses (ex: MIT) on my projects. It's a way for me to give complete freedom about what you do/want to do with my piece of code (piece of code that I may have abandon but is still useful to you). You can fork it and keep the fork OSS or you can include it inside the source tree of your product and maintain it that way, the later being generally easier.

Re: Turning a side project into an open-source project

#29
post #14

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 gi java > .gitignore 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…

This idea sounds like a good use for ‘choose’ [1]. It’d be a bash script that uses curl to get a list of the languages with gitignores, pipes to choose to let the user choose one, and pipes it into curl again to get the gitignore contents and sends to stdout. [1] https://github.com/sdegutis/choose

That looks cool. Most of the time I was running into problems, I was on a remote server with no access to a GUI, but this does look like a cool integration.

Re: Turning a side project into an open-source project

#30
post #19
post #14

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 gi java > .gitignore 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…

A little feedback - it seems a bit mixed up. If I put in "Node" it assumes I want suggestions for files that you'd typically ignore on a Node project. That's useful. But if I enter "Web" it gives me a list of web file types to ignore (*.html etc). Rather than assume I'm working on a web project (as it does for Node) it's doing the opposite of that, and making suggestions to ignore all the "Web" files. Clearly this is…

The history on this is that originally, templates like Web, Compressed, Audio, Video, etc... were added to ignore an entire domain's tele tapes instead of assuming that you're working on any of those types of projects. Right now, there isn't anything that differentiates the domain specific templates from a language, IDE, or operating system template. Not sure how to improve the experience off the top of my head but I'll think about it.

Good feedback.

Post reply on HN