Sunday, June 18, 2017

Confessions of a young father programmer

This is a first blog entry after a long absence.
A lot of stuff was happening recently. Let me explain a bit why it was difficult to force myself to write.

Mostly, this is due to my son who was born in June 2016.
Before my sun was born I heard from many other young fathers that this will completely turn my life upside down and i have to admit - nothing is as it used to be anymore, but that's completely fine. Having a child is as much rewarding as exhausting sometimes :)

Anyway, I'm trying to get myself together and keep up with all the new techs that came to my ear since then but I did not have time to learn more, such as non-blocking, async servers ( e.g. ratpack), JavaRX, JavaScript frameworks (like React), Big Data ( Spark, Flink, Flume, .. do we have any more "F"-like fancy names here?) and Spring ecosystem (Spring Boot and latest Spring 4 new features).

This is an instant fight with self-discipline, planning and.. changing plans when all depends on our "Little Chief".

I know if I wanted to do them all I would do none, so I just thought to concentrate on a single thing first. Just by chance I heard about a contest called "Get Noticed!" (explanation in Polish:
The rule is simple. Each participant has to blog at least twice a week during 3 moths. Every week at least one post should be about the progress in open source project which author should contribute to on Github.
I decided to give it a try and started a brand new blog: where I'm going to write about Cloud related topics and describe my pet project - Servlerless Reservation System.

As I am working from home for over 1.5 year already, it is sometimes hard to sit down and concentrate when all the attention is dragged by a baby screaming in the second room or my wife dragged to tears by him and seeking help from me. What makes it ever worse is the kind of remote work I do which is very demanding (in CrossOver with a very special model of work, more about it in separate blogpost)
The new remote job is also another reason of why I can hardly find some spare time off-work to write anything.
In addition other non-programming projects has taken all my free time. That's it, enough of excuses :)

I wonder how other young fathers programmers went through this first period and keep on going, self-organize and stay productive.
I'm working on the best model now. When I find the silver bullet I will definitely write about it. Hopefully it would help other fathers like me.
I would also read with pleasure experiences and tips from others.
So far I came into the following things that seem to work, but I have problems to turn them into habits:

1. Get up at 6-7 am yet before the kid gets up and starts "catching in the rye". My kid usually wakes up around 9-10. That gives me 2-3h of undisturbed working. After that we usually play and go for a walk until 12.00 and then eat lunch.

2. Listen to podcasts
When we walk I usually listen to some podcasts on my mobile when my boy usually takes a nap, the same when I run.

3. I get back to work at about 1pm (after lunch) or sometimes I run before lunch, then eat a bit later and get back to work at about 2-3pm

4. I try to split my 40h work into 6h * 6 + 4h. It means I have to work on Saturdays and sometimes Sundays, but I noticed that working over 8h a day influences my motivation and clear thinking very much.

* 8h means real hours of work, no coffee, chats, lunch, playing ping-pong, etc.

5. Do sport
As I already mentioned, I run 5-6km twice a week + 1h swimming once a week.
Spreading it every second day in a week looks like a good proportion to cure myself from back and arm pains. It may be first symptoms of RSI but I need to find time to visit a doctor finally to look at it.
I found keeping to this plan very important. I used to have weeks without any move at all, but this only resulted in bad mood, nervousness, pains in body, deprived sleep.

6. Sleep
At least 6-7h of sleep is a minimum to sustain for me. Without it I'm depressed, slow-thinking and physically exhausted.
I've noticed that it is important to go to sleep and get  up in regular hours.
Before I was a night-awl. Recently I have an impression that I'm more productive if I go to bed earlier and wake up earlier.

However, I will repeat again, this plan is extremely hard to make it a habit so far. Sometimes it's enough to stay overnight on an important task to ruin whole week plan.
If I stay late, I cannot wake up early, then I start work later and stay late again (because there are always so many urgent tasks to complete that day) and go to bad late again.. and the circle goes on.

I know everyone has own tricks to stay productive and keep the right work-life balance. Please share yours in comments if you like.

No comments:

Post a Comment