Here's a thread from the community a little while back:
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.
I wanted to share this wonderful top comment:
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
Us humans put a lot of pressure on one-another and there are a lot of competitive, unhealthy environments that cause us a lot of pain. We also each have different personal contexts which ultimately guide our lives a lot more than 1's and 0's.
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.
If you want to code in your spare time, go for it, but this career is an absolute marathon and being able to take yourself away from your computer more often is a strength as far as I'm concerned.
@_patrickgod has a lot of good posts on maintaining healthy habits and they all touch on balance.
I'm getting ready to escape into a bit of nature for the weekend and wanted to take a minute to share some great tips from the community on the subject of escaping. I hope it helps someone out there.
Happy coding!
Oldest comments (54)
P.S. I'm going to be making more posts like this. If you want to embed a comment, take its ID code and write it in a post like this:
I think it's a great way to boost interesting things I read around site and will look to build features to make doing so ergonomic.
I think what would be great as well as the ability to preview your comment if you embed stuff like twitter or a devcomment. Also, can you include tags in comments? Testing #meta
Yeah that's all definitely in the future.
Looking forward to it. Keep up the great work Ben and Co.!
You can't include tags but you can include people in comments @nickytonline !
That's a great addition, I'll have to find a way to use this in future posts!
🙌 I think it will be a lot of fun once the subtleties of the UI/UX of the behavior are worked out
In my experience the people who spout this are the ones that like blogging, tweeting etc. I.e. The loud developers. In reality I don't think this is as wider held belief as it might appear.
Also as someone that has spent over 20 years working with computers, I can tell you it is bad for your body to spend so much time in front of a screen.
Finally you are more likely to find a problem to solve if you mix with people from outside the software development trade.
Because companies never, ever want to see the code you already wrote, right!?! What do you say when they ask for your GitHub account?
If you don't have a track record of work, coding outside of work is your work. If you do have previous work experience you should be good. Plenty of great devs don't have public code available and companies aren't so obsessed with this as much as folks sometimes think or worry.
Yeah, I wasn't looking for a solution.. I was making fun of the premise.
As Developer, sometimes I work in personal projects as a hobby apart from my regular job... but sometimes we need to take a time out of that to give a break to our brains so, I think that a balance is always necessary; going back to the main topic my opinion is that if you really like what you are doing at work, and you just want to focus on that because that makes you feel happy, then there's no problem.
Just do what you like :D
I think this topic is definitely worth being addressed, as it depends a lot on the various approaches and perspectives that developers have towards programming.
As someone with a previous background in music who has had the pleasure of spending time with some really gifted musicians, I know that there are many musicians who love to play and so they devote a lot of their free time to practicing their craft, but there are also many talented musicians that primarily only play during rehearsals, gigs, ect... and feel that doing other activities in their free time helps them to prevent their playing from getting stale or burned out.
So in my opinion, there really isn't a need to feel pressured to constantly be programming, instead, developers should do what they feel will help them live balanced, productive and healthy lives.
I’ll try and wrap this all into hopefully a cohesive comment which will probably go on a tangent or two and may or may not ruffle some feathers. This probably should be a blog post as it already feels lengthy in my head, but I’m not in a headspace to write a blog post right now.
I’ll preface this with I do enjoy coding outside of work, I do contribute to OSS, enjoy blogging etc. I consider myself a passionate developer and I enjoy my craft. I have mixed feelings about all this.
I don’t think you need to contribute to OSS and just because you don’t, doesn’t mean that you’re not a great developer.
However…
Unless you're super gifted and never have to put any effort into anything, if you want to improve your skillset or add a new skill, there’s no other way than putting in the extra time. Maybe it’s just the places I’ve worked at, but none of my employers have ever given me free time at work to learn tech that we weren’t using unless there was a need to incorporate this tech. So, if I want to learn something new, I have to put in the time outside of work.
We weren’t using React at work at a previous job, but I wanted to learn it in the hopes of using it at a future job. I started reading up on it, doing some tutorials etc. Once I started coding, I decided that a great way to keep learning would be to contribute to an OSS project. I could learn from others and potentially help others. I was glad I did because I’m enjoying working with React in my professional tool belt at the moment. To get there though, I had to go the extra mile.
Liquid error: internal
This doesn’t just apply to software. It applies to anything, even carpentry. Apologies in advance, but it’s so easy to relate this to sports. When I was playing rugby in university, we practiced 2 hours each day, Monday to Friday and had games on Saturdays. Aside from practices, myself and others would do additional practices on our own to better ourselves. It could be passing a ball to hit a target consistently, going for an extra run and/or hitting the gym to become stronger to be able to take and give a beating on the field. I did all this because I loved the game, didn’t want to let my team down and I just always wanted to be better. Alright end sports analogy.
Liquid error: internal
Having said that, I must admit that I struggle with work life balance on a daily basis, but I still try to find time to do other things. Family, hanging with friends, 5 à 7’s, snowboarding, camping, going to the gym and a few moons ago, rugby (which I miss a lot, but my body is done with getting beat up 💪). The easiest way for me to clear my head these days is getting into a squat rack at the gym. Anything that’s bothering me big or small, just vanishes when I exercise.
Everyone is different. Just try and find what works for you and at the same time keeps your sanity.
If you’ve made it this far, thanks for listening to my ramblings. Now it's time to head to a friend's birthday 🍰. Ciao for now.
Hello!
I can relate to not ever working on a place where they give you time to study, unless is something worth for them - and even that was rare. I recall one time a former boss said to me I was wasting time studying. His exact words were: "Don't you think you should stop reading and do some work?".
So, when I was out of the office, I was, usually, studying stuff for my job - not improving skills the way I wanted, not earning knowledge for my mid term goals.
So, after one event where I got burnt out and lost interesting on almost everything - including playing as a scrum half -, I decided I would dedicate less time into "work" and enjoy more my free time.
Nowadays, sometimes, I do feel guilty for not having side projects or studying that much. But on the other hand, if I'm tired after a stressful week, I just spend the weekend doing things I like (which, until last year, playing rugby was part of it).
Having that in mind, I do agree with the sports metaphor as in putting extra effort for self and collective improvement. However, if the said improvement comes in the spent of your mental health and creating impossible standards of performance, I believe a step back is a better choice.
Be that just plyaing touch or beach rugby for leasure, be that not worrying about you are not committing to any side project.
Cheers!
just don't let Hoolie catch you
Though I think this is true, there are ways to incorrectly interpret or apply this idea.
Consider the carpenter analogy, it's a different domain of work and the range of specific skills is much narrower than programming. It's quite possible as a programmer that you're stuck in a job that doesn't developer a range of skills, and you become highly specialized. In this case, like in many jobs, you'll actually need to do outside education to break out of the mold.
Some people like programming and it is their hobby. Most of the people I know that write software in their spare time are not doing it as a continuation of their work. They have side projects, or hobbies, that just happen to also involve code. Technology is a diverse domain, and code is an amazingly adaptable tool. There's no reason somebody should actively avoid a hobby only because it uses similar tools to their jobs. To continue the analogy, that'd be like a carpenter that avoids taking up wood carving as a hobby.
As to passing judgement on skills, well, it gets tricky here. Somebody that write software day in/day out is more likely to know more things -- it's not a guarantee, but it's likely. However, somebody that just does their job 12hours a day is likely to be burnt out, undermotivated and locked into specific skills. It'd be foolish for an employer to not recognize achievements outside of work. This is true of anything though, not just coding.
I really like this response. You're absolutely right that this idea can very easily be interpreted to mean "you should never code outside of work". Which I believe to be equally as poisonous to a developer as "you must always code outside of work".
Everything in moderation, as they say.
I also mostly agree with your perspective around judgement of skills. More practice definitely makes a higher skill level more likely. But I don't know that someone who just works their day job is likely to be any of the things you describe. My experience (as described in my initial comment) certainly doesn't indicate that. Granted, that's not a massive sample size, but it's enough to challenge the assumption.
I'm certainly not suggesting that employers should not recognise achievements outside of work. They should. But they also shouldn't immediately dismiss a candidate for lack of recent github activity (or similar extracurricular activity indicators), which I've seen a little too much of lately.
I just meant to say there are positions where you'll end up stuck in a mold needing outside education to break out. There are many jobs where this does not happen, but there are many where it will happen. There's a large range of job quality in terms of career development.
Considering that most dev work still isn't done in the open, I also find it questionable that people judge others by their public contributions, like on GitHub, or open source projects. You can't really expect that everybody works in the open, or that even their public work reflects their business work.
I think the post-title says it 💯
I'd like to add that…
…if you don't get a chance to learn/grow at work, go work somewhere else.
…if you feel like not being treated right in general, go work somewhere else.
…if you do overtime more often than occasionally, go work somewhere else.
As long as there are more open positions than devs, we have the leverage and should use it.
True and I understand people who do this. I just find it sad that something I have this much passion for is regarded as "just a job".
I like the carpenter analogy because it helped me get to the core of my understanding of this topic.
I agree that carpenters don't spend their off hours building houses just to build them. However, when something needs fixing I'm willing to bet that they are doing it themselves - since this is their wheelhouse. Also, when they go to their favorite home/building supply place they will check out new tools and occasionally talking shop with friends. All this to say they are not building houses, but they are honing their base skills continually (knowingly and unknowingly).
The base skill of a programmer is problem solving. This can take the form of building your own accounting system (because the available software just didn't do it for you - yes, I have control issues) or doing a jigsaw puzzle.
I agree that as programmers we should seek out employers who help us grow 'on the clock' because that makes us happy and therefore a better employee. However, I would be wary of a programmer who refuses to 'walk the aisle' at Home Depot or who doesn't challenge their own approach/thinking to scenarios.
Who am I: I've been coding for over 20 years and during that time have worked as plumbing/heavy repair for a large pool company (believe it or not - just for fun).
I've only once met a pretty good developer that didn't have pet projects on the side and didn't do things like reading up on new technology in their free time. Not saying it's impossible, but am gonna say it's rare.
Full disclosure; have been a developer for most of my working life which means some 30 years now. Not a year has gone by that I haven't started (and killed of) a new project.
This is a very good article. I study Computer science masters degree and work a as a software developer (part time while studying).
My time is occupied by doing homework assignments for my courses per semester and doing my job. Of course I have free time, but i don't want to spent my little free time on doing programming stuff again, that would burn me out.
I see a lot of people at university who don't do anything besides programming and gaming, and they mostly seem not to have any other life, i.e. a social life.
Many people put an indirect pressure one you by saying that lifespan learning is the goal, and you have to program in your free time. I'd like to, but part time work and university are keeping me busy most of my time...
I think the important bit is in the sentence, "40 hours a week of writing software is plenty to facilitate growth and improvement, given an environment that supports that growth".
It's unfortunate, but I think fewer work environments support developer growth than don't. It just gets talked about so much on social media that we think it's the norm, and it makes us sad that our jobs aren't like that.
Of course, it shouldn't be the case that people feel they have to do anything outside the office that they don't want to.
I thought exactly this as I wrote that sentence. I've been immeasurably lucky in that every organisation I've worked for has made the professional and technical growth of their employees a top priority.
It never fails to make me sad that this is nowhere near the norm for the industry at large. As a consultant, it's this type of culture that I try to take with me to every client I visit, and in most cases our clients catch on pretty quickly that giving people time and space to grow makes everything better, for everyone.
While I generally agree with this sentiment I’ve been concerned that this also sends the wrong message to boot camp grads about just how much they have to learn still. I’m not saying that means you need to grind every night, but if you aren’t working to improve your skills at that junior level you aren’t doing yourself any favors in the job market.
So my bottom line is YES, let’s encourage balance but let’s be really careful not to give the impression that there isn’t a whole lot more work and learning to do as our careers develop.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.