Side projects
swombat.com
swombat.com
Although in this case, what it really comes down to is what you hope to achieve. Some side projects are good as an outlet for creativity where you don't have any deadlines or things you want to accomplish or anything else. Others are more focused. The important thing is to be clear about what you want.
- Some do it for side income.
- Some do it to learn a new language/framework.
- Some do it because it solves a particular problem they have.
- Some do it to test their ideas.
- Some do it to have some projects in their portfolio.
- Some do it full time and call it a side project hoping it to be a successful startup while playing safe calling it a side project.
Whatever may be the reason, whether it is a side project or a full time project or a startup, the original goal is what matters the most. If the project developer achieves his/her goal by doing this side project, it is successful, else it is a failure with some addition to his experience and knowledge.
1. You had fun (which was your goal) and probably you learned something new which you can use in some other more serious projects. So, relax and let it be incomplete. If possible, release it as open source so that someone else can work on it.
2. Find motivation in the fact that by completing it you can make something that may be useful to someone else. You can also look it as an opportunity to practice some self-discipline of completing things you take charge of. It is hard to get in good habits and we should make efforts for it. After all everything isn't fun and fun isn't everything.
Personally I have done both but I want to take the second path and I am making an effort for that. I'm choosing side projects that 1) are interesting 2) will help me learn something new 3) may help me earn some bucks. For example, my current side project is a wordpress theme for building personal website/portfolios targeted for hacker/designers. It is fun and I can use it for my own site. It allows me to learn something new - wordpress theme development/underscores and practice design. It may help me earn some bucks. I will post about it on HN in couple of days once I complete the boring bit - documentation.
Edit: Oh wait. I just noticed I have that.
None of my side projects even entertain the ideas of being profitable. I can't help but feel this is why I feel better about side projects than the author.
If the motivation is to try something new and the goal is to have fun. It does not matter if you do it for two years and then end up not doing it. But if the goal and the motivation for the side project is to start earning money on it or do start a business, then I think he is right. Then they need well defined goals, a plan and an agenda to succeed.
So it is all about the reason you do it.
Besides, if you are familiar with the concept of iteration. Even if you fail you will improve with every iteration of failure.
One cannot decide for everybody else, if they need side projects. Personally I find side projects a nice break from the 9-5 corporate job, to try something new and different. It gives a good learning opportunity and opens up chances for some extra income.
By the way, if you are afraid of failure. I'm not talking about big risks. But if you absolutely have problems with failing. And if you are asking these kind of questions before trying anything, you are likely to do nothing substantial in life.
Or perhaps it would better be worded as: be aware that some day you MAY want to graduate to definite goals.
But even that sounds pretty condescending and limiting. Why should I have a goal in mind when I create? Why should I have deadlines? Why should I sprint? What's the hurry, anyway?
When I started writing a 68000 emulator, I did so because it posed an interesting challenge. When I finally got it to the point where I could plug it into MAME and play Rastan Saga on it, I was thrilled. When I got its speed to the point where it rivaled the existing assembler core, I was stoked. And then eventually it reached a point of accuracy and performance that it supplanted the old core and became the standard 68k core in most emulators in use today. Did I have a plan? Not really, other than to try my hand at emulation. Did I have deadlines? Hell no. Did I have metrics? Well, if accuracy and speed counts, then sure. Did I make any money off it? Nope. And you know what? I don't care. I created something of beauty using the skills available to me at the time.
That was over 10 years ago. Now I create different things and post them to github, but my motivation remains the same.
http://2012.dconstruct.org/conference/armitage/
"Toys are not idle knick-knacks: they allow us to explore otherwise impossible terrain; fire the imagination; provide sparks for structured play. They do not just entertain and delight; they stimulate and inspire. And always, they remind us of the value - and values - to be found in abstract play."
I wish I'd treated more of my side projects as toys instead of putting off shipping them because they lacked obvious value.
http://sachagreif.com/side-projects-from-idea-to-launch/
I think there's a place for small-scale, non-commercial side projects. I've personally learned a lot from them.
Be mindful of feature creep.
First, what is the first thing that a person learns about being wealthy? Diversify. That's one of the most basic principles of financial common sense. Yet it's extremely frowned upon for working people to do the same with their time. If your primary asset is money, you're allowed to diversify. If your primary asset is time and you try to diversify and get caught having a side project, you're "not a team player".
For most corporate jobs, the work itself could be accomplished in 2 to 3 hours per day. People simply don't have enough productive time to fill a corporate workday, a schedule that is based more on availability (often, availability for low-margin uses like worthless meetings) than productivity.
The corporate workday is an international plane ride (8 to 12 hours, mostly sequestered in one location) five times a week. Is this about productivity? No. It's about required loyalty. Even though people only have 3-4 hours of productive time per day, the purpose of the midday plane ride is to dominate so much of someone's time as to maximize the probability of capturing those hours. It's to make it so that the person's side efforts are unlikely to be able to compete, so that diversification isn't (for most people) an option.
Therefore, if you specialize, you'll be able to trade your time for more money/bread/whatever. If you want, you can do a little bit of programming and a little bit of ditch digging, and a little baking, and be terrible at all of them, and get paid consequently.
It's not some plot of the "corporate ruling class", whatever that is. Ordinary people diversify their investments as well, mostly via things like index funds, which can be had at very cheap prices.
Somehow only grass root level employees are asked to make these concessions.
Edit:
> Somehow only grass root level employees are asked to make these concessions.
So you'd call someone who has spent years becoming a neurosurgeon 'grass root level'? Most people out there specialize in something.
P.S: Its the same with every/any profession that exists on earth.
I've had several experiences investing huge amounts of time and emotional energy into companies and projecots that didn't deserve it. Total loss. Skill growth and career advancement I can get behind. Unrequited loyalty means you piss away the only resource that actually matters: time.
Computing is highly specialized, but what we need to tackle that is a real profession. Professionals have ethical obligations that supersede managerial authority, and are both allowed and expected to devote half their time or more into career growth and continued learning, rather than dropping 40-50 hours on short-term, managed work. Are software engineers really professionals? I'd argue that, across the industry, the answer is a resounding "no". But it would be a better world if we were.
Now that's a problem for most managers. Side projects give your ordinary every guy a chance to do something big both in terms of growth and success, in a way the manager can never control.
Its little to do with rationality, or any other economic factor. It has a lot to do with jealousy.