Ask HN: Developers with kids, how do you skill up?

589 points by fatherofone ↗ HN
I recently had one of my colleagues comment on my GitHub account graph - 'There won't be many green boxes in your account once you have a kid'. This was in response to my suggestions on how we should all keep learning.

I argued many good programmers have family with kids and still manage to keep up. They brushed me off saying it's just not possible or they don't look after their kids.

When i look up the internet I find people doing full time job delivering products while having a family and some still find plenty of time to blog or write books. How is this possible? Are these people super-human? How are you all doing or managing if you have kids/family?

529 comments

[ 3.3 ms ] story [ 416 ms ] thread
the advantage of having young kids is generally they sleep very early which means you can have the early evenings to yourself (assuming they stay asleep).

they also take lots of naps in the afternoon which equals down time for you.

so as a rule, when they sleep you have some free time.

True to a point, but I almost sacrificed my mental health, and I did sacrifice my marriage by not sleeping when the kids are sleeping.

As a single parent, now, I have to go to bed right after the kids do. The unexpected benefit is that I'm much healthier and happier. Also I have several full evenings a week with no kids to use for e.g. learning.

how did it sacrifice your marriage?
I would stay up very late after the kids were in bed, because I was unwilling to give up on the day. This meant I was never around to help in the mornings, and would routinely sleep in 'till 11 or so on weekends, while my ex-wife got up with the kids at 6 am.

This, coupled with reduced income due to bootstrapping a business created too much relationship damage to recover from.

Children spell love as t-i-m-e, so one hour of my time every weekday evening was family time. Weekend evenings were the same but usually added reading a story from Winnie-The-Pooh or the like in the younger days. I did not make this their rule for them, it was my rule for me. It worked for us, and strangely helped me intellectually rather quite a lot.
The nice thing about having kids is that it forces you to think about time management. Think about how much time you waste chit chatting, eating lunch, watching TV, surfing the Internet, etc. After kids, you'll want to rethink how you spend time and cut down on non-productive activities. That's exactly what I did - I reconfigured my time around productive work and kids. On week days, I allocate 7-8 hours for my day job, 2-3 hours for kids and family, and 2-3 hours for myself - blogging, writing, learning, etc. Weekends is more flexible. So think hard about how you spend your time and cut down on things that aren't important for you - you'll find more time than you think you had.
This. Part of the adjustment is working in pockets of time rather than decent stretches with time to get into "the zone". I did well during the young kids era by keeping a text file of exactly what I wanted to do next. At the time I was using a paren-prefix language (Scheme) that made it easy to come back to half-finished code and see where I was going with it. In other languages you might want to write a bunch of one-line comments describing what the code is going to do, then fill in the code under the comments.
The nice thing about having kids is that it forces you to think about time.

It's the time that rolls on whether you are present or not. It's the time when you said something to your kids and you realized you are becoming your father or your mother. It's the happy times and the sad times, it's the times of intense passions and times of gentleness. It's the time of living fully, without regrets, the time with the people you love, walking the path with purpose.

Time management, to me, is a more powerful "skill up" than anything that could keep your GitHub green. When you know you have limited hours in the day and you have hard time commitments, you have no choice but to learn and work efficiently.
Cut down on TV. Wake up super early on Saturdays and get about 3 hrs of skill building time. Occasionally take a day off work to do a straight 8 hr skill session for self. Find a friend at work to do a class with and make a plan with your significant other for one hr a week to dedicate to the class. You and your friend can keep each other motivated!

I feel this is a super important question. I've published it on LinkedIn with my thoughts. Hopefully, you will get some feedback there as well! https://www.linkedin.com/post/edit/6245042931087007744 Good luck!

> Wake up super early on Saturdays and get about 3 hrs of skill building time.

You never know what kind of kids you'll get. Mine wake up every day at 5:55 to 6:30. Otherwise, generally good suggestions.

Kids have a great property, they have a bed time. I structure my day so that I come home from work at the same time every day and spend time with the family. My skill building happens when they go to sleep. You can get a good 2-3 hours in a day this way if you need to.
This. Although how dedicated you want to be with this is up to you, e.g. you didn't mention this, but I assume your relationship with your spouse is important as well. This is what works for me for my relationship with my kids as well as my wife:

- Evenings after work is family time. Focusing on kids if necessary.

- Wednesday evening after kids go to bed, as well as early Saturday morning, is skill building time for me.

- Every other evening after kids go to bed is time spent with my wife.

This tends to be a good mix that keeps everyone happy.

I've been battling with this exact sentiment. I want to spend time skill-building, but my wife is a definite priority.

You're right, 3 hours on Wednesday, and getting up early on a Saturday morning is plenty of time to learn something new, or apply the skills you have to a side-project.

I have a 12-year-old step-daughter. That is how my schedule has shifted -- doing more after her bedtime.

I am lucky though. I am working for an early-stage startup, and there are a lot of opportunity to step up and skill build, not for its own sake, but because we need to.

I was lucky in that my natural schedule allows a lot of quiet thinking time without having to short shrift the family time or time with the wife.

I'm up by 430 every morning and in my office by 6, with gym time before I get in. I get a good 2-4 hours of 'me' time every single work day for learning or exploring- and it's also my most creative time of day. The gym lifts the early morning head fog and I get a lot of stuff done.

I'm almost always home by 4:30 or 5 and get a few hours of play time with the kids which usually rejuvenates me more. If I'm having a good day I may get a little exploratory work done after the kids go down, but usually I just let the mind rest a little or read some HN.

Where does time with the wife fit into your schedule? Presumably you must go bed quite early to rise at 0430 everyday.
I usually go to bed about 10, usually at the same time as her. We get a few hours every night to just us.

Mind you, I'm not forcing myself up at 4:30 with an alarm or anything. I'm up when I'm up and it's nearly always before or at 5.

Sometimes. My kids bedtime is also my bedtime. My 4 yr old sleeps for 9 hrs as do I!
Yes.

But there are two things more important for me: 1. relationship: you have to spend time together to have one... 2. health: sports is a must- not daily ofc but twice per week.

How dedicated are you to becoming a 10xer? You don't have to sacrifice your relationship with your kids to level up your skills – you need to cut out the distractions that are holding you back.
Not worrying about Nxer but careful not to become a furniture in the team and certainly don't want to come to work only for next paycheck !
Data scientist here. It is 100% possible to do things with kids, but you really have to be motivated to do it, AND it really helps if you have a support system of other people to help take care of your child. I wrote about the dangerous deception we have in American culture, and particularly tech culture, of people who "have it all," but in reality have a bunch of help in the background here[1] and here[2].

If you work full-time and you want to go above and beyond, you're essentially working three days: work, before school + after school, and then your third day is learning or development.

Whatever that means for you in terms of reshuffling energy and other commitments will vary on your personality, energy level, etc, etc.

When you have a small child, it is extremely hard to multitask. So I wait until she is asleep. All after work time and weekends are for her.

Here is the way my schedule works: I pick her up from daycare, do dinner, playing, and then she goes to bed. I then take half an hour break, and delve into whatever I have going on, for about three hours.

I'm currently taking a Java class, writing technical blogs, and working out some Python. So I'll usually do an hour of reading/Java homework, then start a blog post, then finish off with whatever else I was working on.

Over the past three weeks, I developed this talk on big data[3]. That was probably the hardest because I needed a lot of time to write the code, test the code and concentrate, and all of my energy was just sapped.

All of this is to say that you can do it. For me personally it takes a lot of reshuffling and work and giving up things, but that's how kids work.

[1]http://blog.vickiboykis.com/2015/09/we-are-not-getting-the-f... [2]http://blog.vickiboykis.com/2012/07/sheryl-anne-marie-and-ma... [3]https://veekaybee.github.io/data-lake-talk/#/

At first, it will be hard. You may not have any spare time. After the newborn phase, the amount of spare time you have will slowly start to go back up again. Enjoy it, they aren't little babies for long. You will be well aware of how precious that time is, in a way that your pre-parent self could not comprehend.

I usually have about 4-5 hours of time after the kids go to bed. During this time I either program, talk with my wife, work on mixing records for clients (I'm also an audio engineer), compose music, rehearse with my band, research interesting things, etc.

If you are with a partner, try offering to watch the kids and suggest they do something enjoyable for themselves. This not only gives some quality time with the kids, it also makes it a lot easier to ask for time to do the things you want, or even have your partner reciprocate.

3 under 5 here; evenings and random hours here and there on a weekend. Also, one of my hobbies is hacking on random software and hardware things... strangely I find it's a way to de-stress. I put all my random side projects on GitHub. Every once in a while one gets FP'ed on HN, even! But I only maintain a few of the projects I set up.
At first, it will be hard. You may not have any spare time. After the newborn phase, the amount of spare time you have will slowly start to go back up again.

Interesting... My experience has been the opposite, the first ~6 months they sleep so much that there is plenty of time to do things. Then you get a phase where they start to crawl and then walk around. In that phase, you have to be attentive all the time to ensure that they don't harm themselves or break stuff :). That really changed when our daughter was ~2, when she knew what she can and cannot do and they can basically play more by themselves. She is now ~3, sometimes she plays alone (she likes Duplo) and sometimes we play together. Since she usually goes to bed at 19:00 and is a good sleeper, we usually have a couple of hours every night for ourselves.

What I learned: your time does get reduced drastically, but you spend the remaining time with more focus/direction. Also, you use your time smarter. E.g., I used to do sports (indoor climbing), but now I just cycle every day from/to work (~1 hour) to stay fit. It takes approximately the same time as going by train or car.

Exactly the same with me. Only that I have another 2 years old son :)
There are various phases that I've observed:

1. They can't move stage. Depending on their sleep schedule, this is easy, or it's still tiring.

2. They can move. They still have the baby sleep schedule. No sleep, no time.

3. They have a normal sleep schedule. You can sleep.

4. They can play with other kids. A chance to save time, if you can use it!

5. They go school. You have time.

6. They are teenagers. You wish they spent more time with you.

7. They move out. You miss them a lot.

8. They move far away. You miss them even more.

> 3. They have a normal sleep schedule. You can sleep.

For all you new parents out there, this bit might seem like it will never happen, but it will, eventually. It might take longer than your friends kids, it might take longer than the books say, but don't despair - you'll get there

> 6. They are teenagers. You wish they spent more time with you.

My kids are only 1 & 3, but I'm very conscious of having learned the lesson of others on this. I believe spending time with your kids while they're happy to spend time with you is far more important than putting in extra hours at work or fixing bugs in your hobby projects

> 2. They can move. They still have the baby sleep schedule. No sleep, no time.

Phew, this list resonates. Never thought the time would come that my wife and I would get an uninterrupted night's sleep but sure enough time passes and we're at point 3.

Alas points 6 onwards are in the back of my mind. Tough balancing work and family but it's also such wonderful fun.

A crucial truth about parenting is that every kid and every family is different.
Yeah, I think this is the only true fact.
> the first ~6 months they sleep so much that there is plenty of time to do things.

They sleep a lot, but they don't sleep at a stretch. It's hard to motivate yourself to do something when you get six hours of sleep in 45 minute increments.

> When i look up the internet I find people doing full time job delivering products while having a family and some still find plenty of time to blog or write books

When I think of those I follow in similar situations, it seems they tend to eschew learning for learning's sake, and even those who were successful programmers learn to delegate. (Rob Walling comes to mind) So whether it's running a product, or learning new skills, I think it's a matter of avoiding shiny object syndrome.

27 - Father of a 4 1/2 year old and a 7 month old. I really don't have time to program in the evenings much, but guess what? That's ok! You'll come to learn that there are more to life than "skilling up." I'm enjoying taking my oldest to after school activities and teaching her math a few years ahead of her age.

Programming couldn't bring me any of the happiness that being with my children could.

This was the specific comment I was scanning in the thread hoping to find! Well put.
I appreciate the sentiment here, but for a lot of people I suspect it wouldn't actually be ok to stop learning outside of work. I know there's a lot of pushback on this idea for very good reasons, but if you have a job and want a different one, sometimes evenings and weekends are the times you need to teach yourself the skills you need.

I also want to push back a little bit on the idea that "programming couldn't bring me any of the happiness that being with my children could." I see what you mean—that you enjoy time with your kids more than time with code. However, I can't help thinking that programming enables that free time. It's because of the programming that you can be with your children instead of working a second job to make ends meet. That's why "skilling up" is so vital. If you're already skilled enough to get the jobs you want, then yeah, maybe you're all set.

I would be worrying about the nature of the job I had if it wasn't allowing you actual career growth from doing your job. Maybe this is the exception, but the challenges I've had to solve at work dwarf anything I've done outside work.

It feels like people get too hung up on keeping up with the new shiny when honestly, it is all about fundamentals. Anyone can pickup a new technology if they understand the design and architecture of systems/software.

I agree with you about the need to remain buzzword compliant for jobs, but are we "skilling up" or spinning our wheels? There is some worthwhile learning, but a lot of it is just BS status signaling. Learning another SPA framework that solves the problems of the last framework, while introducing new problems? Learning yet another way to bundle your web content? A new transpiled language to patch the holes in JavaScript?

A lot of what we regard as "skilling up" is just a product of our immature dev culture-learning stuff for the sake of buzzword compliance that doesn't improve anything in the long run. And the high failure rate of software projects shows that we aren't gaining a lot from this culture anyway.

Buzzword compliance is the tech world equivalent of sexual signaling that led to peacocks getting extravagant tails. Developers are stuck in a feedback loop with employers...the more pointless garbage they learn, the more employers value the pointless garbage, and the more developers are forced to learn more pointless garbage. Until they break down, and leave the field to younger men, who perpetuate the cycle.

Fundamental good practices should be learned early on, and honed at work. For the rest, we should work to break the cycle.

>Learning another SPA framework that solves the problems of the last framework, while introducing new problems? Learning yet another way to bundle your web content? A new transpiled language to patch the holes in JavaScript?

I understand that HN is (probably?) pretty web-centric, but this portion of your comment makes me wonder if it's just the web that's fucked. I'm not hearing a ton of complaints re: burnout or being left behind from the server-side, database, BI, or embedded spaces. Or maybe I'm not listening.

You're right, it is pretty fucked up. A rat race, really.

I appreciate what parenting has done to me, it's re-prioritized things for me, but it's also shown me that I should make an exit in the next five years, to save myself some sanity.

Every now and then, things go haywire in the web world.

The last time I recall feeling this way was 2005-ish, when Java frameworks took off. Previously, small to medium sized java apps used servlets, jsp, jdbc, and something along the lines of the "java cookbook."

It was, in fact, inefficient, with lots of typing, and it was difficult to manage dependencies. I think the work that went into dependency injection, ORMs, MVC frameworks, and so forth was undertaken by smart people.

The result, unfortunately, was close to fatal for java as a language for small to medium sized web applications. Spring, Pico, Struts, Struts 2, Spring MVC, iBatis, Hibernate, Spring JPA, Wicket, Stripes, Tapestry... just to be clear, I understand that Java frameworks are no longer this chaotic, so I don't mean fatal in the sense that it never worked. I mean fatal in that this was the moment that I, and a lot of people who quietly enjoyed java and felt embarrassed when people made fun of java devs (blub programmers) here on HN reluctantly joined the chorus and gave up on it, never to return.

People complain about the complainers, asking why choice is such a bad thing. The problem was, getting any of the choices to work nicely together was a challenging. All of a sudden, something as simple as a crud front end became extremely challenging. I lost a lot of time and become, not exaggerating, very unhappy during this time. It made me not want to be a developer anymore.

I believe we are now in a similar time with javascript frameworks. It's not that these frameworks aren't addressing an important problem, intelligently. It's simply getting a basic crud app up and running is tough, and making the inevitable modifications to test, alter, implement business logic, and so fort, is vastly more complicated in SPA frameworks with some other backend than it is in, say, Rails. That doesn't mean these frameworks are the product of poor design or bad developers, it's the opposite. These are the product of exceptional people working on hard problems. But if you don't need it, you're putting yourself in the path of tremendous complexity and churn, for very little benefit.

If I learned one lesson from 2005, it's to have the conviction to stick with old, outdated technology, for longer, even when people are telling you it's wrong and out of date. I knew in 2005 that writing your own jdbc and routing around through Servlets wasn't going to be the right way to do it for much longer, but that doesn't mean you have to use the first round of frameworks that addresses this! Eventually I hopped over to Rails (a lot of people here on HN think rails developers picked it because they were magpie developers, I'm not sure how many people realize a lot of us picked it reluctantly, only after it really became clear that the time invested in a new framework would pay off).

And that would be my advice now, if you're free to make this choice. Stick with integrated systems, and pick one that is clear and well researched. If this isn't a possibility for you because of your requirements, then yes, by all means, do use (what I heard Ember described as) a rapidly evolving hack pad for brilliant developers working on extremely difficult problems.

Otherwise, watch, observe, try things out, but I'd stick with a better researched and integrated system like Rails, add javascript as needed but sparingly, Just because you know you won't be doing it like this forever doesn't mean you have to stop doing it like this right this moment!

And be aware, the solution to the java churn for many of us (myself included) wasn't that a winner emerged, it was that with a loud crashing noise, a different solution that addressed these problems swept them off the table.

I wouldn't be at all surprised if something like that happens here. The existing MVC approach is still a bit deficient with highly synchronized apps. Current advances in Rails 5 make...

Hey, thanks for this in-depth response. I've generally felt that thinking high-level and not getting bogged down in implementation details is a great idea, but I do try to keep up, only really investing in a technology when it seems established (for instance, Angular a couple years ago, and VueJS now). Occasionally I get restless, and I do feel that tying myself as much as I have to .NET has limited me in some ways, but I guess there's a balance to be sought.
This is such a great comment, I had to say thank you. I'm extremely reluctant right now to hop on the JS frameworks bandwagon. I played around with Ionic 2 for a bit and while its nice, they (and Angular 2 and TypeScript) release updates every few weeks. This results in me having to go through code all the time – or leave it untouched for a year. But if I do the latter, I'll run into almost unsolvable problems later.

I wrote my web app in a small self-made PHP framework 8 years ago and it's still running to this day, with only minor adjustments. The advantage is: I understand the entire "stack". In comparison, the current JS madness feels extremely fragile. I feel like it's impossible to write good code in it that'll be around for the next 8 years, when all of those dependencies are either updated to something entirely different – or simply disappeared.

I'm way late to your response, but just wanted to thank you for taking the time to write this out. It's probably the most convincing argument against "BS status signaling" I can remember reading.
Most people on HN spend 8 hours or more a day writing code, myself included. I enjoy programming, but there's things I'd rather be doing with my time after I've clocked out most days.

Being with my daughter is probably one of the reasons I love my job, I get to work from home and my wife and daughter stay at home with me so I get to hang out with them on break/lunch, and there's no time lost with them on a commute. I don't work for the sake of work, but so that I can enjoy the other ~67 hours a week I'm awake with my family.

Well, I think many of us on HN would not mind too much spending 8 hours a day writing code, but actually end up maybe if we're lucky spending 2 hours a day maximum writing code, and the rest is meetings, rebooting computers, trying to reproduce ill-written bug reports, reviewing others' code, reading docs, watching a test suite run flawlessly and then cursing because it's not catching a bug we know is there, installing software updates, reading some awful wordpress plugin code that the boss installed on the team blog to figure out why it broke on firefox but not IE8...

Coding is quite fun. A lot of the related guff that is part of software engineering in 'the real world' is quite frustrating.

I almost entirely stopped watching TV and movies. I work after they go to sleep, 2-3 nights per week.

Startup culture preaches move quickly, pivot when something doesn't work. I apply that to my development. In the past I might hammer on a bad design for two days until finally figuring out I was on the wrong path. I am much more focused now. I'd say I'm a more productive developer than I was without kids because I avoid a lot of dead ends and wasted time.

My tolerance for friction and pointless bullshit is also much lower. The main project is difficult to build and test due to lots of state? I create scripts to automate or I spin up a test project, investing an hour up front because I know it will pay off over time. In the past I wasted too much time doing things manually because it felt like extra work to automate it. There is a delicate balance here and it just takes experience to figure it out.

first of all its hard, really hard. (at least for me)

and then when you find some time it comes at a cost.

waking up early is an option, works well for me. but the catch is you get tired easily and then in long term it affects health.

my advise is to pick things very carefully, time is very limited.

Founder, big data startup 4 kids in 4.5 years Lots of patents and nerdy stuff.

I have no hobbies. I don't go to networking/startup events. I don't watch TV,Netflix, etc and I don't have cable. Rarely go on vacation, unless a family obligation to visit grandma.

Tactics: Office with 24/7 access outside house (worth the rent) Coffee shop open at 6 am/closes at 1 am with wi-fi.

Basically I work every morning at coffee shop before kids get up. Partner works late after kids go to bed at 8 pm. We work at the office lab every weekend, taking turns, with a sitter, or we just bring kids to office with coloring books, games etc.

Doing this you can work about 35 - 50 hours a week, but obviously it's not for everyone!

I'm the father of 2, ages 3 and 2. My wife is due with number 3 in May. My son (3) was diagnosed about 18 months ago with level 3 ASD. I have a beautiful family that I adore. I'm a software engineer, and I was just promoted a couple months ago. I'm definitely not superhuman. I have several unpublished blogs, but haven't been able to get to them lately. I open source more projects than contributing to existing ones, and most of my contributions are in some way work related.

It's very challenging, but at the same time, much more fulfilling. I find myself more focused and therefore more efficient with my time. I learn but don't spend time going down rabbit holes. I ponder philosophy as I play with my children, and I often learn so much from them. And, their bed time is 2-3 hours before mine, so naturally I'm able to spend quality time with my wife, enjoy a hobby (I'm a guitarist, thinking of picking up piano), or get in some extra work or side projects.

Mine will be 3 and 7 this summer.

Congrats on number 3, too!

I also play guitar, but unfortunately, haven't given it the attention it deserves.

I think that sometimes, new parents or non-parents can forget that kids are human, too. They're experiencing everything for the first time, literally, and it provides an opportunity for us parents to remember how incredibly compelling the world can be, tech or not.

PS - I have soooooooo many unfinished/unpublished blog posts!

And a guitarist too.....jeez....what a legend ! Hope to read your blogs some day, can you provide a link?
Ha, not really. I don't play gigs or anything like that. :)

My blog's in my profile, although I converted to a static hosted blog on github recently and haven't written anything since (classic!). I'm working on open sourcing something I think is pretty cool that I did at work, but it's pretty in-depth (mid-tier load balancing algorithm and design), so writing it up takes a bit of time!

This is the winning comment for me.

You won't have as much time. But you will learn to make that time really count.

TL;DR - I'm successful in my dev job and family life because I have learned to write everything down, set parameters for the things I do, and have surrounded myself with positive people who care about me and my family. This combination of factors results in spare-time to learn new skills, exercise old ones, and my company allows me to experiment.

-- The Whole Story --

First, a little about my current, professional role; I'm one of 3 backend/web developers and the primary dev for our flagship i/e enterprise offering. I don't deal with architecture or design unless I request to do so. I am responsible for writing the majority of our tests, choosing and implementing the tools we test with, and participate fully in code-review, QA, and bug reporting/fixing. Like many devs, I attend weekly meet-ups, code side-projects, and do my best to stay abreast of developments in, well, development.

Personally, I have 2 children, 1 of pre-school age and the other in an early elementary school grade. I'm able to -

* help my oldest daughter with homework * attend school functions * pick them up from daycare often * do activities, like dress-up, painting, and building forts * each night: give them baths, read them bedtime stories, and sing them lullabies

Our sitter, a family friend, recently asked me "how do you do it?" and followed up with "I'd be exhausted!" Her question caught me off guard. I don't necessarily think I'm doing anything special. In fact, I often find myself worried that I'm not doing well enough. Luckily, there are people like her in my life who remind me that I, and my wife, do a pretty damn good job.

-- How is this possible? --

Well, for one, it's because of people like her; the people in my family's lives who care about us. Another contributing factor is the company I work for, an organization that actually cares about me. Our team is willing to pick up the slack when a member needs help. Being based in Chattanooga makes a difference, too, and although commute times can reach ~45 mins, it's a fairly low ceiling, especially when compared to SV commute times. Lastly, if you work on a team, and that team doesn't give you the opportunity to grow your own skill-set within your professional-role, then that team is failing you. There's a reason that professional athletes are given access to training facilities and musicians are allotted time for rehearsal; you need to exercise your dev muscles. If it weren't for my team sometimes giving me the opportunity to explore rabbit holes, and knowing when to pull me out, I wouldn't be half the dev I am today.

PS - yes, when you first become a parent, your education/productivity/effectiveness takes a hit; that's just how it is. Otherwise, you'd be leaving your significant other/partner to do it all, and I've seen how that can affect a relationship. It's important to acknowledge this drop-off, plan for it, and make up at least a portion of that lost ground over time.

Good luck!

If you haven't already streamline your learning skills usually developers with kids are more a bit older and have a lot of practice learning.

Kids do require a lot of energy/time but it is often shared with other family/friends who are parents so it helps to have a good network.

Get resourceful in finding time like early in the morning or on the train.

Don't be afraid to use your "working" hours, good companies understand the value of skills development so your learning is really a win win for them and you assuming you are planning to stay there in the immediate future.

The company I work for pays for Safari Online. They also have mobile apps that allow you to read content or even download videos for offline viewing. This evening on my train ride home I watched a video on how to use webpack.

The best time for me to get extended learning is after my kids go to sleep. I have a 10 and 8 year old, they're usually asleep by 9. It was harder with very young kids. Now at this age its somewhat easier.

That's what I had to say, pretty much to a T! (My kids are 11 and 8 1/2, and go to bed around 9 as well). I watched a video on bash scripting on the way to work today. My daughter is into robotics and programming, so we do get to have a lot of fun together. It was very hard to find the time to learn something new when they were younger.
My advice, fwiw.

Do whatever you decide you want to do to "keep up" with github, open source, etc. But keep it absolutely as separate as possible from your family time.

When you have a day with the kid, make sure that you disconnect and get yourself as fully as you can into the right mindset. "My job today is to enjoy my time with my son/daughter, to be there for them, to be present with them." Leave your phone at home when you go to the park. Disconnect.

If you find yourself thinking that your parenting time is an annoying distraction from the coding problem you're trying to solve, you're in dangerous territory and need to re-calibrate.

This is a hard lesson that I constantly try to re-learn. When I'm successful, everything is much, much better.

> If you find yourself thinking that your parenting time is an annoying distraction from the coding problem you're trying to solve, you're in dangerous territory and need to re-calibrate.

I'm not a parent, but surely this is a little off; either can be a distraction from the other, the thing is to balance which the primary task is and when.

For example, say you get a phone call at work to inform you that your child's got into some kind of trouble at school (for example - I'm sure yours are great and this will never happen!) and that you need to pick them up. This could absolutely be a distraction from some coding/work problem you're trying to solve, but you're hardly in 'dangerous territory'.

With kids, my commute is my 'me time'. And nearly only me time. Once home I am a human trampoline. :)

I hack away for an hour each way, especially on my home journeys. I actually appreciate the long train journey. Thankfully it is all one journey without changes. And train delays once I am on the train I don't actually mind. Though I go first class so I have a guaranteed seat with table and comfort. Otherwise, I'd be a miserable sod.

Though I also had to cut out all time wasting like tv watching, time sinks like free newspapers on the train, and ban myself from any gaming before 11pm.

With one kid it felt like I hardly had any spare time for hacking or anything, and I was so envious of my previous childless me with all that spare time I had then. Now with two kids I am envious of all the spare time I had with just one kid!

Agree with this. I too have a 2 hour commute daily and treasure this alone time.
One thing with having kids and therefore very little spare time is that now I really understand and appreciate the value of focus and doing things straight away. No postponing and dragging things out in my private life as well.

I no longer add paragraphs to potential blog posts over a long time. Blogs have to be published as a draft the day I get the idea. Otherwise, over time my opinion changes and the post would be rewritten over and over again and then inspirations dwindles to another mothballed blog idea.

The same goes for hobby projects though with a slightly longer time frame. I force myself to concentrate on only one project and insist on reaching at least some sort of basic MVP before I jump onto the next shiny thing. On my http://code.flurdy.com some projects have a demo site, others where I lost focus do not.

Essentially these same principles are important at work as well :)

No TV ever (except when it is about watching a movie with my son, and he choses what we watch), less hobbies (reading tech books instead of novels, etc.), and especially optimizing my time around family: for example I'll drive my son to his ice skating lesson and will watch a technical talk on youtube or read a technical book during 1h while he practice. Another things is living close to my work: little commute time means less waste and more time at home. Biking during my commute (~20min) is also giving me my daily physical exercise!

Also, some people have the ability to get into work and focus efficiently even for a 10 min slot, which can happen multiple time during the day.

It depends. Some people have children that go to bed at 8pm and wake up at 8am.

We have a 14 month old that wakes up 3 to 4 times every night. Even using strategies with my partner to take turns, it weighs down on us and sleep becomes the priority after the kid and work.

I have no idea how people with more than 1 kid have any time to do anything, unless you have access to babysitters, of course.

When they get older they sleep better! Our kids woke up a lot too, now they go to bed at 7 and wake up between 6 and 7.

Also, two kids spend time with each other! Sometimes I can get a bit of work done while they are playing legos. That's pure bliss.

Nobody on their death bed will ever say "I wish I had more green boxes on my github page". Enjoy spending time with your family.
Kids learn fast. Teach them what you want to learn. Before you know it, they will be teaching you stuff you don't know.

48, son in university now.

Father of four with one on the way.

As mempko said, kids can go to bed at a structured time. Kids getting enough sleep is really good for them and really good for you. After work I spend about three hours with the whole family, including supper and housework. Then the kids go to bed, and I get an hour of learning coding in, then hang out with my wife for an hour. Usually I get about theee straight hours on a project somewhere in the weekend.

Newborns are something else though. It's prudent to plan on being a sleep deprived zombie for three months. If you are in the lucky 33% that escapes this, rejoice!