Would you make your hobby code public?

edited in General
If you're using git you could be hosting your repository on GitHub (which is public by default) or publicly on BitBucket (which has free private or public repositories); but the question is would you make your hobby projects (i.e. projects you don't intend to make money from) public?<div><br></div><div>I'm guarded against it because I don't want people judging my code, design decisions or running away with my ideas (the last being irrational I know, but there you are).</div><div><br></div><div>Would you make your hobby code public?</div>


  • I have finished exactly 1 (very small) project in the past and basically only my friends played it (for that reason the large majority of this post is hypothetical) and I didn't make the code for that public. Come to think of it though, I don't really have much of a reason not to though. I don't mind people judging my code or decisions (at least for that project).<br><br>On the other hand if I'd done a project that I had never tried to earn money from and I was "finished" with it in the sense that I didn't plan to do any more development on it, I don't think it'd hurt much to make the code public.<br><br>Probably the main reason I wouldn't make code public is more emotional than logical, it's my code and I spent all that time and hard working writing it.<br><br>I didn't gain anything but knowledge and experience from writing that code and if somebody took it and put a new name on it and called it theirs, well then great..they have now missed out on the only thing I got out of making that game. If they want to put it up for sale then they can, my game is still out there for free. I think the chances of somebody learning from my code is higher than the chances of anybody gaining money or anything out of it "unfairly."<br>
  • edited
    <font face="Arial, Verdana" size="2" style="font-size: 10pt; ">I would.</font><div style="font-size: 10pt; font-family: Arial, Verdana; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; "><br></div><div><font face="Arial, Verdana" size="2" style="font-size: 10pt; ">Here's why:</font><div><ul style="font-size: 10pt; "><li><font face="Arial, Verdana" size="2">You may get feedback about the way you do things, even a bug-fix or two.</font></li><li><font face="Arial, Verdana" size="2">Making code public provides extra incentive to WriteGoodCode (and not wrtAnUnrdblMss).</font></li><li><font face="Arial, Verdana" size="2">It will help you use better maintenance systems (version control, for instance).</font></li><li><font face="Arial, Verdana" size="2">It will help you deal with code-deployment issues (dependencies, versioning, etc.). (It's surprisingly difficult to deal with issues of code built on top of code / libraries / other systems that may change).</font></li><li><font face="Arial, Verdana" size="2">If somebody use your code, you may get credits in other projects (games, or web toys, or even articles and a thesis or two), which is quite cool.</font></li><li><font face="Arial, Verdana" size="2">You will be more likely to be able to recover it if something has gone wrong (from a thief, for example).</font></li><li><font face="Arial, Verdana" size="2">It's very nice to be able to show a link to public code when looking for a job.</font></li><li><font face="Arial, Verdana" size="2">You may be able to establish yourself as a semi-expert on some topic (as opposed to someone just talking out of his ass).</font></li><li><font face="Arial, Verdana" size="2">Code that gets a lot of attention, can also be an intimidating experience. So it also helps deal with criticism, and be a bit more realistic and humble about your abilities.</font></li><li><font face="Arial, Verdana" size="2">People ask weird things about your code - you will get the opportunity to look at your code from different angles and perspectives.</font></li><li><font face="Arial, Verdana" size="2">People will also want to know how they can use your code to do slightly different things than it did originally. This forces you to think about wider application, generalisation, and again, looking at your code from more angles.</font></li></ul><div><font size="2"><br></font></div><div style="font-size: 10pt; "><font face="Arial, Verdana" size="2">In short, it will make you a better programmer.</font></div><div style="font-size: 10pt; "><font face="Arial, Verdana" size="2"><br></font></div><div style="font-size: 10pt; "><font face="Arial, Verdana" size="2">(Of course, it is also quite likely that your code will be completely ignored, in which case not all of the benefits listed will be realised).</font></div></div></div><div style="font-size: 10pt; "><font face="Arial, Verdana" size="2"><br></font></div><div style="font-size: 10pt; "><font face="Arial, Verdana" size="2">There are also of course a few bad things that can happen, and in certain circumstances that may overshadow the benefits.</font></div>
  • Sure, I've made things I've written in the past available when I know that I'm not going to be turning them into specific games - or when a system is so general that it's simply fun/interesting for others to mess with.<br><br>Did that with my horrible GM networking framework.<br>
Sign In or Register to comment.