RxJS learning cliff and developers mental health.

Alexander Poshtaruk
5 min readJun 6, 2019

How to keep your mind sane while learning new programming approaches.

Photo by Matthew T Rader

When I decided to change my carrier path and move from Senior Support Engineer role to Junior developer — imperative programming and OOP was something that I know and understand quite well. And at the beginning, everything was quite good until I get to the project that heavily used RxJS — something totally new for me. And while I was climbing that cliff and later on when I already decided to create even a video course about that library — I found out that learning hard can cause such effect that you may not feel good mentally. Someone calls it mental issues.

And here are some preventing things that I found useful while I was learning RxJS (or just learning something new a lot).

#1 Start with a limited number of topics

If you start learning something new you can be overwhelmed with a variety of thing you have to read about. In case of RxJS there a re many functions and operators you can learn — so sometimes you may think ‘I can never learn all this stuff!’ and feel upset about it.

But the rule of thumb here is — limit the scope to some of core topics (up to 5–7) and start learning only them.

In RxJS case it can be:

  1. What are Observables
  2. map, filter, distinctUntilChanges operators
  3. combineLatest and withLatestFrom functions

Thas it.

#2 Repeat and continue learning by small parts

Don’t think you learn everything by swallowing some video-course in one sitting. Although I learned a lot with this approach — RxJS was not an easy fish to catch. So just keep going and learn by small steps.

#3 One coffee cup a day

Well, possibly it is very subjective advice but more your drink coffee to swing your mental activity — the more you feel exhausted at the end of day. And at some point, I found out that it's not worth it and can cause emotional instability. Now I drink 1 coffee cup a day and feel quite good. If I am tired — I need rest but not a new cup of coffee.

Photo by Charlize Birdsinger

#4 Change the context

Usually what helps to me if I am totally in coding and cannot stop thinking of it — I have to do something else: talking with someone, jogging, playing with children, social volunteering activity (you switch to other people issues and it frees your mind from being stuck in coding), walking on the street. What helps the best is jogging and some handwork (also I have housework todo list — something not very critical things that you can do if you have time — repairing, cleaning, etc..)

Running at least 3kms totally removes any mind-stuck states and I feel energy to continue coding.

Photo by Alexander Redl

#5 Don’t change the context … too often

It may seem controversial but it is not :-)

Except being a developer I also practice mentorship on codementor.io and reading and writing articles of Angular and RxJS. So there was a day that you have work to do, two different mentorship debugging sessions and that means you have to switch a lot. After third such switch, my mind stuck with the headache. So now I plan not more than 2 such big activities a day. If I have work to do — not more than 1 additional mentorship session.

Another thing that can harm your internal stability— trying to read all the messengers on your smartphone. I deleted some of them and often turn on a silence mode — and the whole world’s off its axis.

#6 Driving in silence

I have about 7–8h commuting per week now and being able to drive in silence is part of my mental health self-therapy. Just drive — nothing else matters.

Actually sitting in a forest with no human around, drinking tea from thermos and just staring in front of me in total silence helps even without driving :-))

#7 Allow yourself not to know something

It was a psychological trap I stepped into: a panic that tech is evolving so fast that I have to learn more or I lost my qualification!

It caused some level of permanent anxiety until I found a good article od Dan Abramov: “Things I Don’t Know as of 2018”.

Spend a week with leaning nothing. See? Earth is still rotating, you still have a job. Own tech and don’t let tech own you.

‘I don’t know’ from Wokandapix

#8 Community is good, but don’t overestimate its meaning

One more thing I met — I found that Twitter is full of interesting people posting many interesting things about Front-end. I spend a lot of time to read all of them — but then realized that reading it starts swallowing me totally. Use community wisely — you have to work, you have to learn and if you meet problem — ask a community. Don’t spend all your time trying to read everything. Not reading makes you a pro — coding makes you a pro.

#9 Be thankful

Life is good even without coding :-) Coding is an intermediary goal but not a sense of life.

Have other methods to keep your mental health in a good mental state? Share in comments!

Did you like the article? Follow me on Twitter!🤓

--

--

Alexander Poshtaruk

Senior Front-End dev in Tonic, 'Hands-on RxJS for web development' video-course author — https://bit.ly/2AzDgQC, codementor.io JS, Angular and RxJS mentor