DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Jan
Jan

Posted on • Updated on

Programmers who only code at work

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.

Update, 2 years later. So, I appreciate all of your responses and since I started developing full time ( not a student anymore ), I can see how people don't have much time to polish their skills outside of their work. However, I want to become better, so I rather sleep less, and try to learn about framework specific things I do not understand in detail yet. Sometimes i even work on work projects in my free time, because i like how they were developed and i want to ingrain those practices into my mind, so when I'll have to make a project from scratch, I'll predict what pitfalls to avoid and how the data should be organised. I really want to show my manager and my mentor that I am capable of not just being a code monkey, but also coming up with inventive solutions to unique problems i'll face along the way.
Now, I understand that my eagerness to work in my free time will slowly fade, but, lately I don't even feel the desire to party because I'm tired/ have work tomorrow and to be honest, I don't even miss going out. Of course, I go out for the occassional coffee, date, hangout, but sometimes i'd rather just stay at home and code πŸ˜…

Top comments (140)

Collapse
 
leightondarkins profile image
Leighton Darkins • Edited on

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

Collapse
 
mquagliotto profile image
Max Quagliotto

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!

Collapse
 
nicolasjengler profile image
NicolΓ‘s J. Engler

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! πŸ’–

Collapse
 
antero_nu profile image
Antero Karki

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.

Collapse
 
ug0th4x3d profile image
hyperbole

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.

Thread Thread
 
antero_nu profile image
Antero Karki

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.

Thread Thread
 
vitalcog profile image
Chad Windham

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.

Collapse
 
ameliagapin profile image
Amelia Gapin

Perfect response.

Collapse
 
ug0th4x3d profile image
hyperbole

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!

Collapse
 
leightondarkins profile image
Leighton Darkins

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 😊

Collapse
 
orask profile image
Oras Al-Kubaisi

Couldn't say it any better. Well said!

Collapse
 
millebi profile image
Bill Miller

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).

Collapse
 
georgeoffley profile image
George Offley

Agreed, well said.

Collapse
 
sergiopicciau profile image
Sergio Picciau

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

Collapse
 
thanniab profile image
Thannia Blanchet

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!

Collapse
 
tomaszsiwiec profile image
Tomasz Siwiec

Great response Leighton. I am fully agree with you.

Collapse
 
hatsrumandcode profile image
Chris Mathurin • Edited on

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.

Collapse
 
aaronchall profile image
Aaron Hall, 🐍 Professor, NYC, πŸ‡ΊπŸ‡Έ

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.

Collapse
 
sunbingfeng profile image
sunbingfeng

Yeah, great reply.

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

Collapse
 
jdrichardstech profile image
JD Richards

Very well articulated! Totally agree.

Collapse
 
lepinekong profile image
lepinekong

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

Collapse
 
napoleon039 profile image
Nihar Raote

Really great way to put it. Kudos to all the companies who care about their employee's growthπŸ˜ƒ

Collapse
 
manuelph profile image
Manuel Flores

Very well said!

Collapse
 
kaydacode profile image
Kim Arnett ο£Ώ

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.

Collapse
 
mattblack85 profile image
Mattia Procopio

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

Collapse
 
isaacdlyman profile image
Isaac Lyman

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. :)

Collapse
 
georgeoffley profile image
George Offley

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.

Collapse
 
geoff profile image
Geoff Davis

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.

Collapse
 
dariojavierrick profile image
Dario Javier Rick

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?

Collapse
 
isaacdlyman profile image
Isaac Lyman

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.

Collapse
 
pavonz profile image
Andrea Pavoni • Edited on

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

Collapse
 
isaacdlyman profile image
Isaac Lyman

Here's an inventory of all my side projects, for anyone who's interested:

Collapse
 
roderickfung profile image
Roderick Fung • Edited on

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.

Collapse
 
isaacdlyman profile image
Isaac Lyman

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.

Collapse
 
ben profile image
Ben Halpern

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.

Collapse
 
ponach profile image
rachid el kedmiri

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.

Collapse
 
alainvanhout profile image
Alain Van Hout • Edited on

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.

Collapse
 
ozzyaaron profile image
Aaron Todd • Edited on

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.

Collapse
 
vjgoh profile image
Calamity Jan

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.

Collapse
 
ozzyaaron profile image
Aaron Todd

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.

Collapse
 
tvanantwerp profile image
Tom VanAntwerp • Edited on

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.

Collapse
 
christopheml profile image
Christophe Michel

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.

Collapse
 
aredridel profile image
Mx. Aria Stewart

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.

Collapse
 
davehillier profile image
Dave Hillier

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.

Collapse
 
thatianaferoli profile image
Tatiana Fernandes • Edited on

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...

Collapse
 
pbouillon profile image
Pierre Bouillon

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.

Collapse
 
evanoman profile image
Evan Oman

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.

Collapse
 
eljayadobe profile image
Eljay-Adobe

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.)

Collapse
 
jvarness profile image
Jake Varness

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.

Collapse
 
vgrovestine profile image
Vincent Grovestine

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).

Collapse
 
niclake profile image
Nic Lake

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.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.