Programmers who only code at work

・1 min read

What's your opinion on programmers who are not passionate about programming, have no side projects and only program at their jobs. Not senior devs either, just programmmers, who are not juniors anymore. Can they ever improve, write better code? Or do they stagnate.
Asking because my coworker said he doesn't enjoy programming at home.


This is a really interesting question. I guess it helps to reframe it by applying the question to other jobs.

What's your opinion on carpenters who don't build houses in their free time?

I've met a broad variety of developers in my time, and a large portion of them have been the type who have a skill that they use for work, and don't care to indulge in outside of business hours. Instead they use their free time to build boats, go surfing, paint, write, cook, raise families etc.

Some are tech leads, some are CTO's, some are juniors, the remainder are everywhere in between. Some of the best technical minds I've worked with have been superb at completely separating their work and home lives.

I noticed quite early in my career that there's an (in my opinion) undue amount of pressure on developers to be coding/reading/meetup-ing 24/7 lest they fall behind. The truth, as I've grown to understand it, is that 40 hours a week of writing software is plenty to facilitate growth and improvement, given an environment that supports that growth.

I've been lucky enough to work for organisations who take their employees growth very seriously, and as such provide ample opportunity (at work) to dabble in new technologies, learn and grow.

The idea that the only way you can avoid stagnation as a developer is to let your job consume your life* is pervasive, but very poisonous none-the-less.

Having said that, no-one's trying to stifle anyones passion here. If you love to code, do it at every opportunity you get. But be careful when passing judgement on the skill, growth and development of folks who don't share that same level of passion.

*maybe not your whole life, but a significant portion of it


Wow, what a GREAT response. I've struggled with this thinking to myself "I love to program at work -- but I am so TIRED when I get home, being a single dad, wanting to just unwind doing other stuff" and I've felt really guilty about thinking that way. You have just validated my home life with your post, though! Every developer's home situation is different. And I am also fortunate to work for a company (read: Boss) that fosters learning new technologies and improving skills. Thanks for packaging your reply in a fashion that echoes and validates my thoughts. I hope this helps other developers in similar situations!


Well said. I just wish more companies understood the need for personal growth.

I've worked with programmers who seem very passionate about programming, at least they spend all day and most nights coding, and do little to actually grow personally. In that case I'll take a dispassionate programmer who cares about improving his skills at work any day.


So it's a bad trait that I am passionate about my career and indulge in programming whenever I can? I even help moderate programming groups on facebook and mentor other younger people.. You can be both a passionate programmer and have a life. It is possible.

My original answer should be seen in the context of the original question. I was trying to find a more nuanced way of saying that I'd rather work with a good dispassionate programmer than a bad passionate one, not that all passionate programmers are bad. All I meant was that programmers with other interests may be able to bring something else to the table.

That also depends on what you mean by "have a life". Does your life include being married and having several children you are raising? Do you have any other activities that require an investment of time ( such as martial arts, dancing, writing music etc)? Are you part of a church (or other religious group) and invest time there? Do you volunteer in your local town or city to help clean greenways, rivers or feed homeless people? Do you do all the aforementioned things?
Or do you do primarily what you have listed? None of that is meant to be a criticism of you in any way btw. Just saying the term "have a life" can be amazingly broad. And the person you replied to seemed to be saying they would rather work with someone who invests in themselves outside of developing a work related skill set but is pleasurable to be around vs working with somebody who is a great coder, constantly works towards furthering said skillset but is a jerk to people.
The person NEVER said those things are mutually exclusive and it had to be one way or the other.


This issue always haunts me, I'm constantly afraid of falling behind if I don't code outside of my work hours. The response you just gave is a great deal of help for people in my position. Thank you! 💖


Just because most carpenters don't build "houses" in their spare time doesn't mean a lot of them probably don't indulge in the odd making of a birdhouse, or a canoe or something. A house is a huge undertaking. That would be like a programmer trying to create Linux in his spare time. Most don't. That being said, a lot do partake in programming outside of work (a lot of the devs I know). I think this stems from the fact most people who program (who I know anyways) do it because they love it, and are passionate about it. When you love doing something, it's not considered work. When I sit down and and start writing code, it puts me in a sort of altered state, where I am free to think and be my self. I love it. I do no consider it work at all, and is the reason I chose it as a career. Cheers!


That's a very good point. Houses and bird houses are very different things.

I think the flavour of the point I'm trying to make with this comment is that it's not necessary to program outside of work to be a great, passionate and successful developer.

No-one is suggesting that it's bad if you love to code and love to do it in your free time - I'm actually saying that's great! The issue is that I see a lot of young developers being scolded for not being "passionate" enough, because they'd rather go rock climbing than build a side project in their spare time.

I love that you love to code! There's nothing more inspiring than a person who gets true joy from their work 😊


I agree completely. The danger of coding in almost all of your time that isn't spent sleeping is that you become very one-dimensional in your life (and especially coding). It's amazing the number of people that don't realize the the key to interesting ideas and "out of the box" solutions is to ensure that you're interested in many things. Sometimes the most stupid idea from another field morphs into the most amazing solution in another field.
I see many young developers falling into this trap and all of their solutions to problems are always derivative of everything they have done in the past. The truely awesome ideas are rarely directly derivative of past work, they are usually applying an "outside" spin on something that will seem obvious afterwards.
Think of the people that invented Dependency Injection. Prior to that all solutions sucked (in hindsight now of course).


Well said. I'm one of them. Life and work must be balanced somehow. In my free time I enjoy trekking, reading and do things with my adorable soul mate. Nevertheless I'm a good developer and dev lead of an enthusiastic team of skilled developers


Great response Leighton. I am fully agree with you.


Thank you! As somebody who only codes at work I usually I feel alienated because tech culture somehow implies I should be coding 24/7, I like doing other stuff!


Well said sir! I think it's great to try to code outside of work and I try to do so myself. I also value my life outside the world of software development. I find coding (and learning about coding and new stuff) in my spare time tricky, especially with other hobbies, family and a social life, which most of us do have.

Compare to carpentry, I would guess that software development evolves much faster, and if you want to progress in your career and stand out, I think doing something outside of work helps. An example would be if you are using Knockout and want to get into React, then doing a side project in React should help you in securing your next move.

Maybe this might be less important to you if your work gives you good learning opportunities (e.g personal development time, personal budget, training, mentoring, etc..), you are comfortable where you are and have great job security, you are very talented, or work in a very specialised area where changes do not happen as often, and you are happy to stay in that job.


What's your opinion on carpenters who don't build houses in their free time?

Let's slightly re-frame this question (pardon the pun):

What's your opinion of architects or home-builders who live in apartments or homes that someone else designed or built, versus those who did their own?

Perhaps some or most would have very good reasons not to. But doesn't it just say more when someone lives their discipline? That's pretty exceptional, isn't it?

As programmers, we are knowledge workers in an information economy. No one else is going to learn for us. If we're not satisfied with our level of learning on the job, no one else is going to make us learn more. So then we have to do what we can when we're not at work to get the learning we think we're missing out on.

So when we see people doing side-projects and learning on their own time, they are signaling that they are improving at their work. It's a signal that we should look a little more closely at them and consider them for more responsibility and promotions, and when we have to let someone go, they may have a leg up over their competition, all else being equal.

It's your life. You can totally choose to do whatever you want in your free time - gaming, sports, partying, anything else, or nothing at all - and if you're already a programmer, you can probably continue without any relevant stuff outside of work. But if you want to rise to the top of your field, it gets competitive, and that's where you have to do more to differentiate yourself.


Yeah, great reply.

Separate work and home lives well is essential to make more creative works.


In France people can't be fired easily so they don't feel pressure to do coding out of work :)


Really great way to put it. Kudos to all the companies who care about their employee's growth😃


I love code, but I could envision a future where I only code at work. This weekend I did a bunch of photography, went to the farmer's market, the gym, wrote a tiny bit of code and I really could have done without. None of it had to do with whether or not I like to code.

I do code at home and like doing it, but in the future I could see putting my focus elsewhere and be pretty happy about it.


indeed we should do things in moderation if you are coding all time, you might as well stay in one place and have food tubes and water tubes, and start coding.


Two comments:

  1. Give me a competent colleage who only codes at work over an enthusiastic magpie developer, any day of the week

  2. Having brief experience with every new library and framework out there is equivalent to having 10x 1 year's experience compared to actually having 10 years' experience. The latter of those usually involves maturity and business sense, which is of far greater value.


I would be careful about assuming they're not passionate because they don't code in their free time. At one point I was a single mom and couldn't find time to code unless I was at work. That didn't mean I wasn't learning new things while I was at work, or that I wasn't interested in technology. :)

Passion to learn and strive to be better is what sets people apart from becoming stagnate.


That's absolutely right, coding only at job and barely on the free time doesn't mean somebody is not passionate, but it can mean there are other people, friends, family, kids who need you and you have to dedicate to them your time. Agree totally that what you do at work can give the same results in developing your skills than coding at work and after work, but that's really depend on the job


I often code significantly outside of work (several hours a week). And there are a few things I want to say about that:

  • I really enjoy coding. If I didn't enjoy it, I wouldn't do it on my own time, and I might not even do it as a career.
  • I learn a lot more from my side projects than I do on the job. The nature of a side project demands it: everything is up to you. You have to learn how to do everything from beginning to end, because (unless you're very lucky) no one else is going to do it for you.
  • My excitement about side projects ebbs and flows. Sometimes I'll go a couple of months without doing any coding outside of work. I would hate it if coding outside of work became a requirement or expectation at any job.
  • I have definitely been given advantage over other candidates in the job application process because I'm able to talk an interviewer's ear off about the side projects I'm working on and how awesome they are.
  • I don't have a CS degree, so I often feel like I have something to prove. My GitHub graveyard is one of the ways I demonstrate that I can kick it with the grads. I believe that every self-taught programmer must face the same existential challenge, although there are other ways to do it.
  • Programming experience, in my opinion, is pretty fungible. A guy that has four years of work experience plus six years of hacking around in his spare time is often comparable to someone who has 10 or so years of work experience.
  • Scientists and tradesmen (doctors, chemists, plumbers) aren't usually expected to "practice" in their spare time. Artists (actors, photographers, writers) often are. I see programming as somewhere between these two worlds. And I think either approach can be successful.

Side projects are just one way to prove that you're passionate about your work and willing to learn new things. If you'd rather surf outside of work, that's cool -- someday I hope to have a hobby as cool as that -- but you'll have to be prepared for competition from those who live, breathe, and poop code. Doesn't mean you can't win. :)


I love this attitude. I love to code as well and enjoy working on my side projects. How I keep sane is balancing my other hobbies, Specifically the nontechnical ones like music.


Great reply. I fully agree here.

Sometimes I feel ...guilty? that I love code so much that it's my main hobby.

I guess it depends on the individual, but for my personal development I feel that supplemental coding helps me stay up-to-date on the latest trends and practices and news, since I don't always get that in my job.


Great response. Since in your actual work you don't learn too much (because the nature of the projects), have you considered being a freelancer or get some revenue of your personal projects?


I don't want to commit my free time to a contract (since it's off-and-on at times) but I hope to figure out how to build things that are worth money now and then. I really believe the projects I build on my own are high-quality stuff, and it would be cool if they provided value to someone else.


This is exactly the same for me! I couldn’t have explained better than you. Thanks ;-)


The 'elitism' and the 'with us or against us' attitude in your message is why so many people who code majority of their waking hours are poor colleagues.

Software development is in itself a team oriented environment. You play with the team. In a proper, healthy work environment, you'll go as fast as your team goes.

There should not be any pressure to feel that you need to code outside of work. It's great that you're interested in a side project, but it's not mandatory. If you're not learning at work, then you're either too stubborn or think you know it all, or it's time to move onto your next job where you feel challenged.

Moreover, for all you know, that person, who is enjoying a sport (say volleyball), is learning the value of teamwork, team coordination and leadership. Important soft skills that, as recently discovered by many companies, are more important than the technical skills.

Just because you code outside of work day in day out does not mean you're better. Stop giving yourself the delusion that you are. A colleague with the learning mindset however - will always be successful as they are humble, curious, and easy to work with.


Strong words. I think you might have replied to the wrong comment? I expressed neither elitism nor "with us or against us" sentiment. In fact, I made it clear that while coding outside of work has been advantageous to me and made me a better coder, I don't think it's a requirement and I think other kinds of coders can be just as successful. I do it because I like it, not to exclude others or get ahead.


There is an underlying assumption that you don't have time to learn at work - if that is the case then I'd urge you to aim to find places to work that do encourage learning on the job. I recently took a week off for a course paid for by the company. I learned and implemented React & Redux in the last two years as well as given back by training people on testing tools, development process and so on inside the last year, on company time. In production, at scale.

At my previous company I learned a lot about the agriculture industry, mathematical modelling, Microsoft Solver, C#, ZeroMQ, Redis, and many other things all on company time and with company resources. On real projects. That were used at scale. Far better than any side project.

I would say that the worst developers I've ever worked with did the most out-of-work coding. I've got about 20 years experience at this point and I will not budge on that point as it has been routinely true in every place I've worked. The best developers worked 9-5 and sometimes a little more and the worst seemed to work at home every single night and weekends.

Now I don't think people that work a bit outside of work a bit from time to time all suck, that has just been my observation of those that code outside of work a lot. I'm not sure there is much to learn there except that I know a lot of people think they have unlimited capacity for coding but we're all human and you really do not. The most 'ninja' coders I've ever worked with had hobbies that were well outside of coding and tended to be the people that could synthesize between many disciplines easily.

In the end how fast you type, how quickly you navigate code bases, the number of languages and frameworks you barely know and even how well you can engineer solutions, refactor and so on are not the skills that will take you far in this game. Soft skills, business analysis, team work, restraint, self knowledge and understanding your own personality are all far more valuable once you get past the first five years.

If someone told me they read well known books on coding, management, team structures, or anything business related every month I'd take them over someone that codes and extra week a month.


Yes, I totally agree with this. The people that were absolutely the hardest to work with were the ones that spent all their outside time coding. They knew code and had solutions for problems, but they never seemed to have solutions that other people wanted.

(Note: I'm a game programmer.) The overwhelming problem is that you could strongly argue that being a good developer does not mean being the best coder. In my industry, you're a much bigger asset if you understand human interfaces, or gameplay flow or any number of other things that go into making good games. I'll TEACH you how to write code if I have to, but it's so hard to make some coders understand what makes good games.

I want to work with people that live and play in the real world because that's what comes back into the games we make.


We also have a perfect example of this in that we recently pulled a marketing person into our engineering team because she'd shown a consistent interest in the technology side of things. She'd coded up some partials in our static site generator and so on.

The fact that she has the marketing knowledge AND can now code means she is kind of a double threat.

Where I went to college in Australia you couldn't do just a law degree you had to do law and something else like science, medicine, whatever as they sort of realise you need some other background knowledge to apply to legal situations. I think software engineering is intrinsically the same. There is very little you can do, that is useful to people, without an understanding of a completely different domain.


Sometimes, if I'm really gripped by a particular problem, I might hack away while at home. But most of the time, I leave work at work and do very little coding at home. After a full day of work, I need to relax. I need to balance my daily activities, or else I would get burned out on coding entirely.


There are several different things at stake here.

The first is being passionate about your job and the other is putting extra hours into it. If you program at home, it's likely you are a passionate programmer, but you can be passionate without programming outside of your job.

I'm always weary of the philosophy that define "real programmers" as people programming during their spare time because I feel like work-life balance is not valued as much as it should in our industry.

On the other hand, I found that working with programmers devoid of any passion for this activity was lackluster because they usually didn't care about things like emulation, mentoring, challenging other's choice or defending theirs. Ultimately, I think this attitude leads to stagnation and makes things worse for the whole team.

But it has nothing to do with side projects or the lack thereof. I've met a lot of great programmers that didn't code outside of work hours. Attitude in the work place is what matters most.


While you are seeing it as a passion, your co-worker see his job only as his, well, job. He may like programming but want to keep it as a job and not as a hobby.

His vision may differ but in the end, through his professional projects and contacts, he will learn and hear about new techs or languages. So, I don't think that devs like him will only stagnate, maybe just learning slower than you.


My opinion is that it sounds like you and your company feel they have a right to an employee's non-work time, expect learning to happen outside of work hours, and are trying to extract as much as you can, and expect everyone to perform at this level.

People with supportive workplaces, given adequate time to train themselves, don't stagnate. People pressed to produce as much as they can without learning new skills then use their spare time to learn burn out or stagnate.

Some of the best programmers I have worked with don't do it for fun. Some of us have other things we prefer to do: write, cook, paint, draw, build communities. All of those things also feed into us being better programmers, and it's deeply short-sighted to think of folks who don't code "at home" as lesser.

On top of that, this works out to be sexist: people (read: women) who are expected to manage their families and households during their non-work hours are impacted by these attitudes disproportionately, and men who don't have to do this are often supported by women who are doing those tasks for them.


Zombie thread response, but I find this an offensively dated view on families.

I have managed my two young daughters on my own and still manage time to code, read and learn about technologies and many other hobbies.

Where do I get that time? Aside from the weekends (when I sometimes teach them), typically after my children go to bed. It's probably during the average 4-5 hours that other people spend watching TV.

I'm not saying that it should be mandatory, like anyone else; that was your leap.


Let's see...

If you work 40 hours/week and sleep 8hrs a day, you only have 8 free hours every day. Discounting the time that you spend going from/to work, the time you spend on meals, personal health (physical and mental), housework etc, how much time is left? In my opinion, very little.

So yes, I prefer to spend this time on my other hobbies. Of course I study by myself, take some online classes, read articles... but I don't allow this to take the most of my free time.

Getting other hobbies opens your mind. Socializing with your friends is important to be, more than a better employee/coder, a better person. If you have a family, even more important to spend time with them.

Life is too short...


I program at home for fun all the time. I don't work on work stuff at home, because that would defeat the purpose of destressing.

One of the things I enjoy doing is learning new languages. I try to learn a new one, every year. (This year had a bit of a detour, since I planned on learning for Swift 4, but have since had to shift gears and learn C++11 and C++14... lots of changes from the world of C++98.)


I like to learn other languages too! My main problem is that I don't commit enough time to different languages to make useful or interesting projects out of them.

I've been trying to learn Dart and Go for some time now.


If I had no other responsibilities I would certainly spend a lot more time coding (and I did back when I was more free -- before I was an elderly 26 yr old). However ever since my son was born there has been very limited free time for any hobbies, especially something as isolated (from my family) as programming.

All that is just to say that each person has different responsibilities and interests so I would never discount anyone who only codes at work. I would agree with other answers here: 40 hrs, well spent and focused, should be plenty of time to practice the software trade.


I identify as a programmer who doesn't program outside of work; save for the odd bit of tinkering once in a blue moon.

While you can call any given person in our line of work a "programmer", I believe there is an important semantic difference: "coder" vs "developer".

For a coder, programming is the job. It's a systematic routine; read spec, produce result.

For a developer, programming is only part of the job: Along with design, project planning, deployment, operation, support, etc.

Personally, I fall on the developer end of the programming spectrum. While I don't necessarily breath, eat and sleep code all hours of the day; I do take problems/ideas home with me mentally to mull over evenings and weekends. The time to put those thoughts into code, however, is at the office.

This is what works for me, but as with anything, we're all individuals, so my spin on things isn't necessarily something that will work for another (or that another will even agree with in principle).


I love programming, but I have other hobbies and I don't typically want to go home and do the same thing I just did for 8-9 hours at work. My brain can rarely being "on" for longer than that each day.

Every once in a while, a fun side project will come along, but with one real exception, it never sticks long.

For some added context, I'm a self-taught developer who turned programming as a hobby into a career.

Anyway, it really angers me when I see programmers being judged for not being waist deep in programming 24/7.


I have a wife, a plethora of hobbies, and a salary that lets me enjoy them comfortably. I used to code a boatload when I was in college, but once I graduated, I found that most jobs didn't give a crap what I could do with , they wanted to TRAIN ME to work within their code base.

Right now, I'm spending a ton of time at work ripping out a ton of random JavaScript framework junk that someone implemented "because they knew it really well", without any thought as to how the business would be impacted.

Stop pushing this disgusting thought process. We don't need to live and breathe code to be successful developers.


Not being passionate about your work is separate from having side projects. I don't really like working with people that aren't passionate about what they do. I don't want people to be overzealous crazed idiots, but showing at least respect, interest, and care for your work are important. This is especially true for fields like programming where there is too much freedom to just coast along and get good results.

As to side-projects, if I worked on my side-project full-time I wouldn't do programming on the side. But I do now, since it's a challenge and programming is what I like. You should make sure your side-project is something you like, that's far better than forcing yourself to do it just for learning sake.

Having any kind of hobby is important though. It makes you a more interesting person. Whether the hobby is programming, photography, or anything else, doesn't matter much, so long as it does something that enriches you, and those you interact with. (I'm also a masseur as a side-project, it's a great contrast to programming.)


Programmers are hard workers by nature, but we should stop judging people by their time work spending. Balance is health. Maybe for you coding at home is okay, maybe for others coding at home is toxic. It depends of the personality of each one. Personally i prefer do exercise, cook, read or fill another area of my interest. If some day i find an idea or project interesting i will programing at home.


I would love to be one of those programmers who code at home on a cool project. But the simple truth is that i have not come up with a good idea yet.

Apart from that, id prefer a colleague who has a working social life, does some sort of sport and has other interests than coding too.


They are doing a great job too, they are constant delivering tasks and fixing issues. They are patience and do not have to focus on the big picture. You need them in mature products. They usually (from my exp) do not want/or have time to improve their skills and knowledge, only if needed or are exposed to them (office workshops, new procedures and tech).

You also need devs that push the boundaries and search for future problems and find solutions for them, devs that try to optimize the product, processes and workflows.


I'm a "non-trad" programmer, as in I was a professional musician/teacher for a decade after I got my Master's degree in Jazz Studies.

TBH, I feel like I need to study/code outside of my job because

  1. I am by no means a master of my craft and have a lot to shore up for where I want to be professionally
  2. Competition is real

I really like coding, don't get me wrong, but I know there are plenty like me that don't LOOOOVE coding. It's an interesting job that pays a hell of a lot better than any other job I've had. That said, for me it's a job. I'm not trying to do my job 100 hours a week.


Tech moves FAST (from my perspective). Maybe I'm paranoid from my "starvation days", but I'm afraid of getting comfortable in a technology and getting left behind. I'm also curious where tech is going as an industry and want to be a part of that change. I'll tell you, though, learning new things at 38 is a far cry from learning new things at 23. It takes concerted effort and concentration, IME, which does not always happen 9-5.


I feel the same way. The fear of being left behind or being ineffective is real.


Do not forget the people who take work to home (it happened to me more than once)

I think that is nice to have passion for your job, but also relax is important. Stress could be a serious problem, and designing/coding/testing are complex tasks that demand too much patience and thinking, so you could burn out easy.

Enjoy coding, learn and work with the technologies that you like, but also take your time for your family and friends. More is not always better


Do I code outside of work? Rarely. Mostly it's just testing out some theories rather than full-blown side-projects.
Does that make my any less passionate about programming or the industry I'm in? Not in the least.

I'm at work surrounded by coding, design, architecture, business discussions all day, 5 days a week, most days over 8 hours. While I don't always have time to be dabbling in the latest and greatest, I'm always looking for how I can improve. I'm always testing out new ideas or finding a day here and there to work on some not-quite-necessary, but would bring benefit to our daily work types of tasks. This is what keeps me refreshed and recharged.

After sitting and staring at a screen all day, one of the last things I usually want to do when I get home is to sit back down at a computer and keep coding. More often than not I'm spending my time outside of work reading tech blogs such as these, searching for new concepts and soaking in the as much as I can. It's from this that I can then form my own ideas and my own theories and often try to put these into practice at work.

It's not about how much screen time you put in, it's about how much heart you have. Do you love your family any less if you don't see them every day? Probably not. It's because it's a part of you that you know you can always go back to. It's not escaping, it's just finding out what works best for you.


I used to enjoy coding at home, and I still have a lot of ideas I get enthusiastic about, but I rarely write anything outside the office other than a quick hacky script to automate something anymore.

This is partly because the things I want to write aren't significantly different to existing projects, partly because I know from experience that it's just going to be for my own amusement rather than anyone else.

What I do a lot more of is hang out on help forums, SO, places like that. I spend more time updating wiki pages and doing the sort of zero-friction documentation you can help out with while the pasta's cooking.


I really enjoy coding, it's why I went into a career as a coder, but to be perfectly honest, after 40(ish) hours of sitting at a desk coding in a week, I find it requires a supreme force of will to come home, sit down, and then do more coding, because it feels too much like work. (Tips on how to get around that are very welcome!)


IME the majority of people work to live, they don't live to work. Programmers who are passionate about programming are in the fortunate position to earn a living doing something they love. That's great. But there are millions of people in the software field. It's unrealistic to expect all of them to be passionate about programming.

A happy life usually means a balanced life. Doing the same thing 24x7 doesn't sound balanced to me.

That said, programming and related disciplines are not "just a job," they're a profession. Any professional has an obligation to keep up with new developments and keep their skills sharp. That means a professional programmer has to invest some personal time in career development. It doesn't have to be 24x7. There's plenty of space between the person who is bored at work and can't wait to get away from the keyboard, and the passionate developer who can't get enough programming.

I usually advise younger colleagues (who ask) to decide how much of their own time they're willing to invest in their own career growth, and plan to learn about specific new advances in the industry that they think will be of value to them going forward. It isn't necessary that they subordinate their entire lives to their work, but it is necessary that they do more than just show up at work.


Side projects are time and energy consuming, and they need funding. I mean side projects that are not just toy projects, but actual useful projects used by a lot of people in production, and maintained for a period of at least 3 years.

Most of the people lack the motivation of doing such a prolonged effort, beyond getting the next paycheck. And that's fine!

And yet we use tons of free OSS projects daily. But I'll tell you something - these projects are not free for everyone! Certainly not for the ones who create and maintain them.

But that's not the point either. It's about whether you want to contribute to the broader community in some meaningful way, without expecting anything in return.

The OSS side project rabbit hole is rather deep, you just have to open your eyes to see it.


I love coding and I love my job.

However, I'm not a huge fan of coding at home. I have tried but I get distracted by other things. I quickly jump to learning other things: reading about woodworking and tools, watching tutorials about Affinity Photo and then try use those techniques on random photos.

I have also started a music and video production company with my buddies so I often find myself writing the next song. Here is my shameless plug for our first music video

My wife and I love taking small random trips. We love food so we often try to find something new to try.

All of these things have played significant role in my personal growth. Oh and I am not a huge reader of books but lately I've been spending 15-20 mins reading Clean Code before going to bed.


I love to code. Deeply. At work, I experiment on things and do my job, i make things work: I code. So I guess I can be called a programmer. I love it, I read blog posts all the time. I try to keep myself up to date by knowing what's happening. New languages, new frameworks, new algorithms on github etc.. so I think I match the "passionate" tag you're talking about. Yet, at home, I don't code.. at all! I play/record music, I hang out with friends, I read..

So right from the start I think you're mistaken. You can be passionate, learn and progress daily at work and have a personal life unlinked to the programming world. That's what I do. One of my colleagues codes day and night. He's crazy good. Yet i teach him things as much as he teaches me things. I guess as long as you want to learn, you don't necessarily need to spent hours on your spare time to become a better programmer.


its mixed
one might compare programmers to other professions like carpernters, but amount of cognitive effort required daily for a programmer is higher, so it somehow becomes our “hobby”
it occupies our mind too much.

Personally speaking, all developers I knew who were not “involved” were weaker that their colleagues with comparable background and involvment. I was myself a weaker developer when I had a non-programming related hobby. On the other hand, I had a hooby back then, now I dont. This feelingg is also mixed, but in the end I like my new level of expertise )

On a final note, its doest have to be coding at home. For me its reading books and blog posts at spare time. Still keeps you pretty focused on work-related topics all the time )


"What's your opinion on programmers who are not passionate about programming, have no side projects and only program at their jobs"

That is the mistake, assuming people with side projects are the only "passionate" ones. It is an indicator but is never a correlation. The most passionate dev I've ever known has less than 5 green squares in his 2017 github timetable. Devs need free time to dedicate to other hobbies they have, or to programming but in a different way (for example, watching confs in youtube or reading security/programming posts)


I think the word "passion" is overused in our field. There are individuals who really love programming and want to hone their craft at every opportunity. Then there are those who don't really have feelings about the work, but it's what they learned to do and they need the job. The majority are probably somewhere in between those extremes. They're serious about doing a good job, but they're satisfied focusing on whatever their current employer asks them to learn and do. Frankly I don't see a problem with any of those categories. People need to do whatever they need to do. For some, the work is just a paycheck; for others, it's a serious vocation; for others, it's part of what makes them who they are. It's all good.


That is sad.

I enjoy my work, I like doing stuff, also at home. In matter of people who does not enjoy it, for me, seems like they are not learning as much as they can. Their skills can be easily extended, but they said, why to bother?

It depends on what project they belong to. If any old, not exciting stuff need to be handled, they are best devs for that. If you enjoy coding, you are looking for opportunities to participate in exciting, new, fresh stuff. You can sacrifice your private time to speed up projects. And vary appreciate if it finally works.

This is how I see it, what do you think about link between projects and this kind of devs?


Just my 2 cents. I am passionate at writing clean code, making things better and learning new tech, but I also have plenty of other hobbies that I love spending time on. In addition, spending time with my family, including our dog is high priority to me, after all, I spend more than 40 hours per week away from my family. I also spend a big chunk of weekend time volunteering at a local animal shelter as well. So given a limited time you have, you just have to decide what is more important to you. I agree with other readers, being passionate about programming is not highly correlated to having side projects :)


I think it's more about continued learning rather than coding outside work. I've worked with developers that would not try to learn anything new beyond what they minimally needed to do their job. They obviously did not code outside work and usually were challenging to work with. I've worked with other developers who were passionate about programming, reading about and trying new things. Although many of these folks also did not code outside work either, they were usually a joy to work with.

And frankly someone who spends all their free time outside work coding is probably not a well-rounded individual and in the long-term I think that makes for a poor employee and co-worker.


I'm a passionate about coding. Have more than 6 years of experience and still learning new stuff and I love it. I'm not a junior but neither a senior. According to my employer my rank is like a semi-senior.

I don't like side projects because I couldn't concentrate on another ones. Sometimes I do commits to a couple of open source projects. But to improve at home I like to read stuff about ood design, algorithms and projecteuler/hackerank/codingame exercises.

I would say yes, we improve as programmers and I dare to say maybe more than just freelancing projects at home. Tbh I don't study or practice all days! But I think the most important thing other than side projects is having a true authentic interest for improving your abilities as a programmer.


Coding pays really well, so I wouldn't be at all surprised if this were the case for the majority of programmers. If you're good enough at it, I don't care if you enjoy it. People who are not super-passionate are often more pragmatic and focussed on getting the job done.

I don't think it has an impact on learning. It's the employer's responsibility to allow and enable learning during working-hours, and take care of mentoring. If you do 2-4 hours of focussed productive work a day, you won't have much energy left in the evenings, after all.

(I personally learn new stuff at home all the time, but that's because I enjoy typing code, not because I feel obliged to improve in my spare time.)


You can be very passionate about programming and not have side projects, but the inverse can also be true. I have side programming projects, but I also have many other interests which compete for my time. When I'm already coding 40 hours a week, it's sometimes hard to justify doing even more when I have an array of other things I'd like to do.

That said, if you don't at least find joy in programming at work, that would probably show in your interactions with colleagues and cause you to stagnate somewhat.


My take on it is as follows,

For 13 years straight without missing a beat, I read every day. I practiced the exercises, even when I hit a sour point in my life (IE very sick) I still read. However I never felt that I was moving fast.

It was only recently that I realized that having a balance of home / work did I start to learn more and at a faster rate. I started to realize I only need to learn what I need to know to get the job done.

So I feel that to answer your question I fall somewhere in between. I will code when I feel and itch coming on, but other days I will spend my time having fun with my family.

I agree with the others that we shouldn't judge those that don't want to program 24x7 nor should we push for developers to do that unless we want to start burning people out at an accelerated rate


Two devs on my team have small children. How vile would it be for me to ding them at salary review because they don't have side projects to prove that they're "passionate"?

And as a team lead, how short-sighted and bad at my job am I if I don't give the devs on my team chances to improve their skills at work?


Work burns my brain out so damn much I can't do anything even remotely mentally-draining by the time I get home. Forced lack of sleep all week long doesn't help either. I have 9 side projects I want to do so far and counting, yet even gaming is too difficult! From time to time, I get a tiny bit of vigor back over the weekend that I manage to do a couple hours of side project work. It's just too much, when you're learning a completely new stack, new language, new architecture, new everything and doing it all at once, there's far too much learning and brain usage going on to allow room for anything else. Your brain needs rest too.

Needless to say, as soon as this project is over I'll be having my fun. Until then, I remain a slave making somebody else rich :(


The Pragmatic Programmer advocates investing in your Knowledge Portfolio. Most professionals do this - Doctors, Lawyers, Accountants. If you can do this in paid time great for you.

This is separate from having a passion about your line of work. If you don't enjoy what you do, plenty of people suggest changing profession. On the other hand, being content is good enough. We need people who are content and competent.

Simon Wardley often talks about Pioneers, Settlers and Town Planners which tells us that some personalities are more beneficial at various stages of product evolution.


There are a lot of things that are only possible coding at home, for example, the whole desmocene thing, most of the people that participate or just follow desmocene events have a work where they can't practice or create something related to the demoscene like intros, music, shader coding, executable graphics, etc... These things are learned and mastered at home.

What about the ludum dare? People participate in ludum dares from their homes, and that means that part of the team code a game at home (and propably they learned to do that coding at home first).

What about new projects published on github by individuals at their homes that eventually become well known production tools in companies (probably because someone tried it at home)?

What about people that wants to change their careers? I was coding for an insurance company for 5 years and I realized that I wanted to make videogames and get a job in the videogame industry, how do you thing I reached this dream? Coding pet projects at home of course.

If you don't code at home, you are a slave of whatever your job wants from you, you can not learn new things if your job doesn't require it, you can't improve your skills if your job doesn't demand for it.

For a lot of people coding just at work it's ok, and I'm ok with that, but coding at home It's a very valuable activity that even people that doesn't code at home get benefited from, and every time I will require to learn/try/practice/understand/master something that I can't do at work, I will code it at home.


It depends on how the company treats the employee. My old boss comes to me and says "why the fuck you don't read the source code at your free time, you just have 8 hours here to code, no one has time to teach you fully understand the source code, do it in the weekend!". Well, how I deal with that, I quit, that not the environment for me or everyone else to grow their love of coding and want to code wherever they want. But in another company, I dare to give my opinion, to ask the question, and with that motivation, I work and learning more than 8 hours a day and still have time to play games with my friend and visit my parent...


I don't enjoy programming at home, either. The reason being that at work I don't have to maintain my tool chain alone, I get inspired by my co-workers and get tasks from the business that are actually challenging.

Not coding at home doesn't mean I am not passionate about coding. I constantly learn: Reading blogs, answering on Stackoverflow, watching videos, attending user groups, unconferences and conferences - most of it in my free time, on my own budget.

I can completely relate to anyone who separates work from private life. It's just part of the contract: I get paid for my time at work, and my task is coding, so I code during work time. When work ends, I am free to do what I like. If I don't like doing more coding, that's fine. That however does in no way tell anything about passion.

Can people improve that are not passionate about what they do? Yes. It'll probably take more time, and maybe they don't reach the top level - but this can even happen to the most passionate folks if they have the passion, but lack the skill.


I see no reason why someone isn't capable of being an awesome programmer and also not being very into it.

But if I were hiring someone to build something for me and I saw one person who loved building those things and was genuinely passionate about it and another person who seemed more "meh, it's a job" about it... I'd pick the passionate person. Especially if I were creating a team and wanted to foster a culture of people who are passionate about building that thing.


I disagree with the question. There's no such thing as "just programmers"; we all have many other elements to our jobs. We interface with other developers, management, product, and clients. We balance the needs of users with legal constraints and budgetary requirements. We create a healthy tension with sales and marketing to make sure we only make promises we can deliver, but don't underpromise to lose customers/contracts.

Coding might take up the bulk of our time, but it sure as anything isn't the bulk of the important work we do. Past a certain point (which I believe is achievable for the average programmer within 3 years on the job, without too much outside learning), the gains become increasingly marginal when compared with the value in deepening empathy, business sense, familiarity with the company's industry, process optimization, and creating personal and collective senses of ownership and leadership.

So do they spend their weekend nursing a beer, reimplementing Conway's Game of Life? Or do they spend their time coaching Little League, or volunteering at a soup kitchen or animal shelter? Frankly, I consider all these things to be valuable experiences, even within the narrow business perspective, and I'd like a mixture of different types of people on my team.

Finally: Will they stagnate in their growth? I don't see any reason to think so. Here's a pillar of code quality in the Ruby community, Avdi Grimm, on why passion about programming is overrated and kind of ridiculous: I don't think his growth has stagnated due to his proclaimed lack of passion.


I can't imagine forming an opinion of a developer on this basis. I understand loving to code and think it's entirely reasonable to work on side projects outside of work. Sometimes there is no better feeling! But I also understanding having a family, friends, volunteering in a nonprofit, and having hobbies that are not coding. So while I'd never criticize someone for coding in off-hours (and I think the surgery analogy is unhelpful here), it is incomprehensible to me that we require that the only way to be respected in our profession is to want to code at night and on weekends and have a life arranged such that it is feasible to do so. Madness.


Well, people are heading towards simplifying just abt everything in computer science nowadays which makes it sooooo interesting to read beyond programming. I am a programmer and I enjoy building n reading abt devops solutions when I am not programming. Does this makes me bad programmer ? Dunno, but I enjoy what I do. Even of I am not doing anything, I read snippets abt all the cool stuff ppl r tweeting abt in computer science.


I personally love to code, but I don't want it taking up my whole life. I feel like there's a huge stigma that if you're not constantly coding, it means you're lazy to learn. I spent majority of 2016 learning new things, joining all the hackathons I could, and building up my portfolio hoping to get noticed. And I did--I landed a job at an amazing company while I was on my last year of school. But now, I feel like if I strive for the same amount of work I did last year, I would burn out.

Classic DEV Post from Nov 17 '18

Why is the software industry so competitive?

It seems like software developers are often pitted against one another in some ...

I am a CompSci student trying to get into the industry. My hobbies are Judo and fiddling with javascript.