That short life-affirming quote structured like a pithy aphorism is hiding the true debate that motivates it.
The real discussion before that quote is this:
Some employers prefer programmers that like programming outside of work. For the other programmers that would rather constrain coding work to 40 hours a week, they feel that employer preference is unfair.
So yes, of course it's fine to want to do non-coding activities outside of work... but that's not what the real frustration is about.
Unfortunately, there's nothing you can do to prevent some employers for preferring coders who code outside of work. It's been that way for decades. On the other hand, some employers don't care about personal coding projects so that culture may be a better fit.
Engineers that are steadily growing and continuing that professional growth may work on things outside of work. But they definitely ensure that whatever they do at work, in those 8 hours a day when they're on the job, is in large part contributing to that.
IMO, that's 99% of it. Engineering off the job or on a side project? It indicates a certain degree of intrinsic fascination. But if that's targeted in the wrong direction, it can result in someone being distracted and building the wrong thing really well. It varies.
I have talked to startup founders who were very explicit that they only hired developers who coded obsessively outside of work. One was very clear: If you didn't have a public Github profile showing a track record of frequent commits on personal project outside of work hours, you would not be hired at his firm.
> I've mostly found that working on software outside of work has minimal correlation with productivity.
Same. That doesn't mean everyone is hiring based on that.
If they make that public it would be good, it would save me the bother of applying for a job with them.
How did I do?
I feel like I have to sneak around when coding after work.
What's the sales rep supposed to do in their spare time to study and practice? Or the finance person?
Do I want my surgeon to be studying the latest techniques outside of his work? YES
Do I need a surgeon who dissects animals and removes tumors at home as a hobby on weekends? NO
I think the dangerous thing about people thinking you have to code all the time is that they're just assuming that it makes you a better coder without any real reasoning. And that's the kind of assumption that is very prone to confirmation bias.
I'm not sure why it would hold that, if you do something for 40 hours a week, you'll necessarily improve if you do it for an even greater amount of time. And, besides, effectiveness as a developer is not just about coding anyway. A lot more goes into creating products and services than lines of code.
And as for things like programming or any mental/intellectual skill like that? I highly doubt it.
As a general rule, you're going to see heavy diminishing returns on time invested. By the time you've spent 40 hours doing it, a few more hours on the weekend is unlikely to have any real benefit, and to the extent it causes burn out or takes the place of something that helps you stay healthy, it's likely to be a net negative.
In reality, most people that code outside of work do so to learn new things; new stacks or languages, or take on projects that are orthogonal to their day job.
I think the argument should probably be framed around "learning outside of work" rather than "coding outside of work".
What I do appreciate is them being honest and upfront about it so that I don't waste time pursuing a job that might not fit me.
Many employers prefer programmers that keep current with new technologies, and programmers will generally have better opportunities for job switching the broader their skills are. Many employers also don't provide much opportunity for breadth development in working hours, leaving programmers in a narrow lane if they restrict themselves to programming at work.
It's not that employers specifically prefer you programming outside of work, programming outside of work is a way of avoiding getting sick in a rut defined by you your present role with your present employer.
There are, also, employers that use “your life is coding” as a filter, probably because they are looking for people whose preferred lifestyle wouldn't change if they were in nearly 24/7 crunch mode. Unless you are one of those people, even if your actually do like to code outside of work, you should probably avoid those firms like the plague.
But during my spare time, which I would like to designate to my own projects, life kicks in. Something breaks, an old friend is back in town, I don't feel well, there is a recipe I want to try or my girlfriend and I want to have a day outdoors because we didn't have enough quality time together during the week. Then Sunday evening comes and I become sad because I'm far behind my own plans.
But the most important thing I was missing is thet I actually enjoy stuff beyond coding. I was so concentrated on it that I stopped being thankful for all of the detours that make my life complete and meaningful. Tonight I'm going to change the mixer tap at my folks home, and I'm glad I'll make them happy and life a bit more comfortable. My buddy is back, so latter were going out for drinks, we're gonna have a ball. And I actually love those things, it's refreshing. Yes I would like to brush up on some fresher skills or try out the latest AWS Blazefeather. And I will eventually. But I realized that other stuff in life makes me also a calm and enjoyable person, and personality and temper is also a part of an engineers value.
That’s certainly a choice; there’s nothing wrong with it.
OTOH, if you enjoy coding (as I do), there’s also nothing wrong with coding at home or doing the occasional extra work from home (and conversely, dicking off in the office now and then when there’s an opportunity).
Many find that being flexible like this yields a better outcome for all parties.
However, as you suggest, I also generally will do a bit of work here and there if something comes up and tend to checkin on email now and then at home. Conversely, I'll run out and do a few errands on weekdays if I need to pickup groceries, etc. I know a lot of people have trouble setting boundaries for various reasons (with faults on both employer and employee sides) but overall I find flexibility can be a better deal for everyone.
But sometimes I don't want to code at home - I have other hobbies, a wife, friends, .. that I'd rather do something with. But I do find that after a certain time I'll miss programming for fun.
It used to bother me when I lost motivation to work on side-projects or to learn new things. But after losing and regaining the motivation often enough, I now figure it's just a cyclical thing. I might be on a day out with my wife and suddenly think of something I want to learn and continue spending several weeks learning or building it. Only to find myself without a project again for several weeks and enjoying going to the movies, gaming, citytrips...
The only thing which I do believe is that if you have absolutely no interest in learning new things - in your own time or in paid time - it's going to be hard to keep up with the evolving industry. But I could be wrong, we still have the cobol cowboys... :)
As a coder, you have the ability to create almost anything. How can that knowledge not tempt you to create something yourself?
(I actually do some unrelated personal writing but not a huge amount.)
There are also people for whom coding really is just a job. It puts food on the table. They enjoy/tolerate it well enough for what it pays. But it's not something they want to do as a hobby.
ADDED: People can do whatever they want in their spare time. But, not to pick on you, the belief in many corners of tech that writing software must be some all-consuming passion is unhealthy.
To add to this, it’s not only unhealthy but leads one away from the concrete reality we live in and this results to out of touch thinking.
Oh, it definitely does, but...
The stuff I wrote during school, in Turbo Pascal, is just too old and completely unrelated to what I do for living now.
I also have hobbies other than programming. Since I started spending 8 hours a day coding at work, I usually spend my afternoons doing the other things that interest me. When else should I be doing them?
And now I have small kids, so there is almost no free time anyway.
The projects I did in previous jobs, I don't own the code. I was never paid to work on an open-source project.
...and this is why I don't have anything to show you on Github. Not because I don't care about programming, but because I also have a life. (Perhaps that is a competitive disadvantage. Well, I can still find a job regardless.)
Yeah, I could choose to just ignore everything for a few weeks or months, and build something on Github instead, just to get that extra point at an interview, but it would feel like building a Potemkin village. Unless really necessary, I would prefer not to do that. I hope this makes sense.
My greatest accomplishments were all done as paid work for other people and I'm very proud that they could build a successful business with the things I've created.
I'm not terribly interested in going into business for myself because A) I suck at it and B) it's just not that interesting for me. I'd rather someone else take on the risk of having a cool idea and the knowledge to run a business and let me help them get the technical side under control. That's what I'm good at.
You cannot create "almost anything" with coding, it's not like I can bake fries by typing some code.
I do not write this in jest, I just find that people tend to overestimate coding.
I believe you can create anything with coding. You can automate home routines. You can figure how the best dose of vitamins and supplements. You can optimize finances. It’s pretty limitless. Not to mention staring at a screen, giving it commands and seeing the result for hours just being fun. In both a meditative way and a discovering secrets way.
But for many people, it’s a job and not interesting in and of itself.
Someone mentioned painting and there are painters who make art and do it for expression. And there are painters who paint houses. They are both fine professions and really just a choice or an orientation. I don’t do either, but I think the artist painter will do lots of side projects outside her studio while the house painter is less likely to paint too many houses pro bono.
This doesn’t mean programmers who code outside of work are superior humans. I think any company who has this as a binary hiring decision is missing out that there are great programmers who don’t do it out of passion. I once worked with a programmer who didn’t own a computer (in 2005) and he was good. And there are hobby programmers who suck at work even though they have lots of personal projects.
> But for many people, it’s a job and not interesting in and of itself.
I am one of those people who want to only code at work. I also enjoy programming a lot.
My problem with "coding for fun" for me is that anything interesting that I want to build gets tedious after the initial, easy and fun parts are implemented. I end up trying to fix edge cases and debug hard to fix bugs.
At that point it feels like a chore to do.
> This doesn’t mean programmers who code outside of work are superior humans. I think any company who has this as a binary hiring decision is missing out that there are great programmers who don’t do it out of passion. I once worked with a programmer who didn’t own a computer (in 2005) and he was good. And there are hobby programmers who suck at work even though they have lots of personal projects.
Exactly. People who want to do something else don't go around demeaning people who code in their free time. But the opposite does happen.
I mean, you'd need hardware, but cooking based on software is obviously a very real thing.
If you can code a bartender, why not a baker? https://www.youtube.com/watch?v=2DopvpNF7J4
Don't assume every developer loves coding. I didn't meet any developer who hated coding, usually they like it, but loving it as a hobby is a different thing.
If I was interviewing a person who told me they have never created anything that wasn't for school or a paycheck, it would definitely bother me-- but I would still do my best to look objectively at the quality of their work. After all, there are many skilled electricians and plumbers who don't use their skills in their own homes unless they have an annoying problem they can fix easily.
Take a good productive software developer 30 years ago, and time travel him/her here today and they will be productive with very little ramp-up. A bad software developer from 30 years ago will be bad today too.
Learning for its own sake is great, but don’t actively try to create and get on an unnecessary treadmill.
And that's any kind of way to talk to someone?! I don't think so.
I was very surprised that the only downvoted comments on this page currently are by people who apparently don't understand how if you love programming, you never do it outside work. On Hacker News! Repeatedly on this page I've seen the total straw man response like yours of "requires participants to be all-in 24 hours a day". No-one's suggesting that. I don't understand how that seems an appropriate or adequate reply.
>And this sort of attitude discourages a large swath of the population from bringing their talents to the field.
I don't know what you mean there.
I think the attitude being expressed is one of the problems with tech culture. If the person honestly holds that attitude, does that not make him part of the problem? There's not a lot of nice ways to describe people who hold problematic views.
> I've seen the total straw man response like yours of "requires participants to be all-in 24 hours a day". No-one's suggesting that.
It's a metaphor. Nobody may be suggesting literal 24 hour days, but plenty of people are suggesting that you should code outside of the standard work week.
> > And this sort of attitude discourages a large swath of the population from bringing their talents to the field.
> I don't know what you mean there.
Not the guy you asked, but I think I know what he was getting at. Some people have commitments (family, children, etc.) or health issues that makes this sort of commitment infeasible, or come from different backgrounds. Expecting a github profile with a lot of personal projects does filter out a lot of people who might be very capable of showing up, doing the job, and going home.
I'd just add that, on the subject of strawmen, I'm pretty sure not a single person on this thread has suggested that people shouldn't do software-related things on their own time if that's what they want to do--with the only caveats being care about burnout and possible employee agreements around IP rights. They just shouldn't be de facto required to do so.
And, yes, I do think the view as expressed is extremely toxic. The underlying attitude is bad enough but to basically say if you don't have time/interest to be working on Github repos on nights and weekends you should GTFO of tech is... well, problematic is a nice way of putting it.
I haven't read anybody saying you should be required to if you don't want to. Yet a lot of the responses are angry as if that's exactly what was suggested.
The line I quoted about "people like you", I was mainly objecting to reading one sentence from someone, responding with "people like you.." and thinking that's ok. You don't know anything about them, I assume. Imagine someone speaking to you like that? Or maybe that's how people routinely speak to each other in your world, and it's perfectly fine. I hope not.
If people that do not want to do it shouldn't be in the field, it's pretty damn close to a requirement.
You make it sound like the guy is your boss, making it a requirement for employment that people do programming they don't want to do outside work hours.
The guy said "probably" and "is how I look at it", but that wasn't enough–the words are still treated like he'd said "definitely" and "I'd make this a legal requirement" or something. Ah anyway.
That's extremely rude? Deeply insulting? I don't understand. So touchy. The guy isn't allowed to have that opinion, or express it? Why not allow people to have their own opinion? ..What if you read, say, Stallman or Linus or [insert your programmer hero here] saying the same thing, would you think it was extremely rude and deeply insulting?
It’s not “touchy” to be offended when someone says that the thing you do for a living, the thing you’re best at in the whole world, the thing you spend more time doing than anything else except sleeping, is something you shouldn’t even be doing at all, that you’ve somehow fundamentally fucked up a major part of the last couple of decades of your life.
Your question about Stallman and Linus is bizarre. These are people who are famous for being rude, almost as much as they’re famous for their achievements. If either one of them told me that I shouldn’t be in this field because I don’t do much programming in my spare time, I’d tell them to fuck right off.
In fact, I've seen friends that decide to do something in a weekend side project that's super impressive, but it doesn't mean they're doing it every or most weekends. They're usually relaxing or living a balanced life, which in turn makes it possible for them to do their best work during the week.
Think about it this way. If a bodybuilder didn't take off enough days to rest in between really intense workouts and then prematurely plateaued at a certain point because they haven't respected the ideal rest/load balance, is that an obsession that enables or gets in the way of their fitness goals?
We shouldn't think that mental fitness is an exception.
And to help protect that, I carefully limit the amount of programming I do outside of work hours. The last thing I want is to burn out and stop enjoying my job! And also, there's an enormous number of enjoyable things in life (family, friends, crafts, etc.). Diversifying my hobbies is win/win.
I don't judge people who focus purely on programming, but I do suspect that they may find their views change over time.