I’m pretty sure I could have not done this at an “actual job”
If there's one thing that's gone wrong in my career is that it's been split between the occasional project where I figure out the math for something that is absolutely unique (and not paid) in which I get more done in two months than I'd usually get done in two years vs projects I get paid to work on where the results I get are basically average. I've never been able to split the difference and not for lack of trying really hard. Having the possibility of getting paid for something I was working on for free last year ended up with me not working on it at all.
You are not alone. I have experienced this my entire life and it has caused me to question everything people say about motivation, such as the idea that profit and wages are the only way to get things done. Then I came across Karl Marx's theory of alienation and things started to make a lot more sense. He started from the observation that work is the main thing that (healthy) people do, but that this should not be confused with working for other people and being alienated from the product of one's own labor.
https://en.m.wikipedia.org/wiki/Marx's_theory_of_alienation
I've started trying to be more specific about what I mean by "work", "hard work", and "play" when I think about stuff.
"Work" is anything that must be done regardless of whether it is enjoyable. That includes things I do for myself as well as other people. Doing the dishes is work, even if I enjoy the zen of it. Automating a repetitive process at work is work, even if I enjoy the flow of it.
"Hard work" is anything that must be done even though mind and body say "this is bad for you, keep doing this only if it's really important" using the vocabulary of pain, exhaustion, boredom, resentment, anxiety, and so on. What's hard work for me might not be for someone else, and what's hard work for them might not be for me. What's hard work for both of us is likely to be a source of struggle to get the other person to do it.
"Play" is anything that doesn't need to be done, regardless of whether it is enjoyable. If you want a "hard work" equivalent of play, maybe striving play? Either way, it is worth distinguishing from work because the condition of not needing to succeed relaxes inhibitions on creativity, experimentation, and novel behavior.
There's a bunch of dimensions in all of these that I need to untangle. But one thing I really like is the detachment of enjoyability from whether or not something is work or play. I have to go to a party to bond with coworkers. I might enjoy it, it might involve games and feelings of connection, but it is work because I need to do it to maintain my security of food and shelter and yada yada, and I will be putting a face on.
One of work's important dimensions is "are you being paid?" which can be generalized to "I'm doing this because of some external factor" such as in "clothes don't clean themselves."
"do what you love and you'll never work a day in your life" doesn't take into account that external factors have some influence on what you do whenever they are present.
I guess it should be "be rich, do what you love, and you'll never work a day in your life" but that kinda kills the vibe.
I've long thought this saying was very dubious at best. In my experience, doing what you love in order to make a living tends to turn "what you love" into work.
"Work is what you're doing when you'd rather be doing something else."
What I like about hobby projects is the fast feedback loop around decision making. Decisions at companies are sooo slow, and you also need to prove yourself and fit in.
This means on a hobby project you can drop one hit and work on another because you damn well feel like it.
At work you need to run it past someone. Because Kanban and Scrum and weekly and quarter goals it will be frowned upon. A lot of cpu cycles used up for people and process stuff.
I think the freedom is what makes working for free great.
Not about the money.
I did free work for a charity once to help someone out and I hated the work. Knee deep in bad PHP and a task that needed to get done. I liked being helpful but it wasn’t fun.
If you build rapport at your company, you don't have to run much past anyone.
I just do stuff at work. Always have at every company I've been at. I've done stuff from infra changes to doing art design, even in a massive company with 15,000 employees.
Then after it's done, I show the relevant parties. They are happy. They don't have any changes to suggest.
As you said, not about the money. Your hobby project can do something that doesn't make practical sense from a production standpoint, or a growth standpoint.
My wife reminds me frequently that my projects don't have to have any more value than that I wanted to do them. It's okay if my dumb robot exists, and takes up space in the house, so long as I'm enjoying making it.
I get way more done when i'm self motivated but, the things that I'm doing at work actually need to be done. They are tedious but someone needs to do them.
Say you work on an OS like MacOS, iOS, Android, Windows. tens of thousands of tests need to be written so that you know that updating the OS doesn't break all of your users. Writing those tests, managing the infrastructure to run them all on the various hardware, tracking all of that etc is a huge amount of work. Few people would be self motivated to do it for fun. So, profits and wages it is.
Most software does not need to be written
A lot of software is actively harmful for the world
(with that said, your specific examples are valid, i'm glad people are paid to work on operating systems)
All of my most rewarding/impactful work was for little or no pay, yeah. It feels like an unavoidable thing at this point and definitely makes working in software a little depressing.
The upside though is that you are usually well paid in this field so a lot of us have the choice of doing less paid work and do impactful work without getting paid. (But yeah, I hear you, it does feel like the system is rigged for depressing results as a whole)
This (developers having significant time to work on hobby/side projects) seems to be pretty common among experiences I read about online (i.e. Hacker News, blogs) but basically unheard of among people I work with/talk to IRL. I'm very curious how people manage to carve out this time? Personally I find it very difficult. It was virtually impossible when I had a full time job - I guess that's what full time means. But now I work freelance, and while I'm able to spend some of my "work" time doing things I want to do vs need to do, I still have a lot of actual work to do and thus find it very hard to do anything meaningful with my "extra" time.
Do you make more than you need as a freelance? Can you say no to more projects?
The trick is owning stuff and renting it out. That's the essence of what makes SaaS attractive. You own the software, you rent out access to it, so you get paid without having to spend time working.
I've never really had a problem finding the time. Like everything else, it's a matter of what tradeoffs you want to make. For instance, I also don't watch TV/Netflix/etc. -- I work on my hobby projects instead. A couple of hours working on something every day yields results far more quickly that you'd think.
But I'll admit, I apply time management lessons I learned from being a single parent. Doing that taught me how much stuff you can really cram into a day.
Project management is the death of all that sort of stuff.
Some places have a good system where there are firebreaks where anything can be done for a week or two, which help solve this.
Yeah I agree with this. Especially with stuff that's more experimental/exploratory, project management, deadlines and 'deliverables' kill my motivation.
A lot of the best work I've done has been a bit under the radar. It's easier to ask for forgiveness than to get permission.
One analogy that i made is that :
"My employer is paying for Ferrari and is using it to go grocery shopping."
I think this is a pretty interesting phenomenon, and I think it mostly comes down to team size and the need to make money.
On a passion project you're not getting paid which means expectations are low, you're not obliged to do anything and you're basically free to work on what you want, so you pick things which are interesting and impactful for you e.g. exploring a new technology or tool you're interested in.
As soon as there's money involved you introduce expectation from the person paying you, which means trying something novel is harder because there's a good chance it'll fail.
This is all just a long way of saying that when there's money involved I think people prefer an outcome which is predictable, even if there's a potentially much better solution but it comes with more risk.
Same.
None of the best or most interesting work I've done has been for pay.