Many developers today spend their free time working on non-commercial projects. They make some pet-projects, commit to open source projects, develop non-commercial projects in small teams. Talking about myself - I am working on my own game engines and games. Question is : why?
Why do we work more than necessary?
Do we get money from that? For absolute majority of us answer is no. Do we enjoy that? Maybe, but, let us be honest, there are things much more fun, than spending all the time programming. Do we find recognition for that? Very rarely, and even so, is that a good reason? Do we get promoted on a job? Maybe, but not for the cause we talk about, obviously. Employer usually does not care about our hobbies. Is it easier to find a job when you have experience working on some non-commercial projects? No. Or, more precisely, rarely it gives desired effect. Making up commercial experience is a much more efficient approach (think for yourself here, it is not an advice). What is left then? What reason? Nothing? We found a problem, I guess.
Waste of time
You may say - working on non-commercial projects in my free time gives development, that is necessary to stay competitive and grow. Well, is that so? Most of software developers are just people, and to overgrow averages is not difficult really. What do you need a development for? Do you have a plan? Do you have some real, I mean, REAL goal to achieve, which would cost you such efforts? If answer is no, then, maybe, you are wasting your time.
Enjoying programming
I can believe, that some mathematicians or people, who use programming for making own games really enjoy that. But not making websites, webapps, mobile apps or any kinds of "real-world projects". Web development and programming languages are overloaded with standards, frameworks, concepts, rules, idioms. It is similar to paper work from XX century, and I don't believe it may be fun for so many people.
Even fun from making games may be easily destroyed, just by bringing frameworks, object-oriented programming, object-oriented principles and other pointless restrictions.
Making portfolio
Many people say, that such work makes you portfolio, that will help you to find a future job. Is that really so? At least, my personal experience shows, that nobody cares about your portfolio. HR's don't even consider that as something any much significant. Programmers on interviews will also ask questions about your commercial experience, and, if you don't have that enough, nothing else helps.
To really get that effect people talk about, you must create by yourself a large trading platform, a popular social network app or a very much popular game. But, having such success, would you seriously consider visiting job interviews?
Developing skills to get a job
Anyway, why does anyone need to prove own quality sacrificing so much time and health? Can't we make some standard exams or bring more clarity in hiring process? Today being programmer is a worst career choice, you probably even won't get any job. You worked for five years with Angular JS, for example, but tomorrow people bring some new hype framework, and you have to invest time learning it or to forget about future career.
We really need changes in hiring system, or we end up racing in a hamster wheel (we are there already).
You don't know today, what will really help you getting a job as a programmer, and I don't believe so many people are comfortable with that.
My answer
I found a quite obvious, but not spread, answer on that question. People don't think. They don't really plan future, analyzing what would make them closer to their goal. They just repeat what others do. Some insane nolifers (with all respect to them) do write programs 24/7 (and then make YouTube videos about that), and others think it is the only way. Don't torture yourself, nobody really cares how much you code. Nobody will bother reading or running your code. So, why do you give away so much for nothing?
Any other reasons?
Altruism? Uhh...
Thanks
I would really love to get from you answers on that question, thanks for reading :)
Top comments (6)
There is also a small stratum of video game developers who just want to make the game of their dreams. Even if this activity didn't bring me a penny, I would like to continue doing it. But I understand that there are not many such people in this field, mostly people are interested in earning money or a career. That's why I want the video game industry to suffer a financial collapse, so that all the men with big wallets leave this niche and games become something cool again.
A very interesting point, I agree.
I didn't pay much attention to influence of money while writing this article. Yes, people who come to programming only to get money make everything worse for everyone, even for themselves.
I agree with your being true to yourself stance. But this year I spent a lot of time creating open source React components library. Of course there much more popular and advanced libraries on the market, but I enjoyed the process a lot. It’s like hobby watch making.
For me frameworks create the fun, not destroy it. The implementation needs to be reasonable, but since I’m the CTO of mine open source projects, I try to do my best.
github.com/morewings/koval-ui
*more fun
Thanks :)
I am programming with Lisp last 50 years and I will never quit!
Article is interesting