Retrospective September-October 2019

[315 words]
Goal: Getting back in shape with problem-solving

What I wanted to do: Lately, I’ve reflected on side projects and career growth in general. Often I want to start some side project without having a real problem that I want solved. In the long run, this deprives me of motivation and I end up giving up.

I want to stay open to start one project when I feel I’ve got something interesting to develop, but I don’t want to create yet another implementation of a solved problem (it was a markdown parser last time).

Programming contests offer problems that don’t require weeks of work but can be worked on in a single session (30-120 minutes). I’ll stick to them for a while.

Outcome: ❌ Haven’t solved a single problem. Lesson: if I don’t see value in this, I’ll never allocate time to do it. Open source still makes more sense.

Goal: Focused courses on PluralSight

What I wanted to do: I’m trying PluralSight because I’ve seen a very interesting and to-the-point course on Node. My experience with books has been pretty negative recently, so I want to see if it gets better with the course format. I’m going through the very thorough Learn Docker course and if feels like I’m learning valuable things that help me doing my day-to-day job.

Outcome:
✅ I have finished the Node course and gotten a better understanding of Node. I appreciate the instructor’s care about the learner’s retention and suggesting to go back to the lectures that I feel less confident about. I’ll try to do that but I’m pessimist about me actually managing to.

❌ I’ve somehow abandoned the Docker course for lack of interest but I might get back to it as Docker is a useful tool.

I implemented a Red-Black tree (part 1)

[928 words]

A Red-Black tree is a binary search tree (BST) that takes some action to try and keep itself balanced. We know that BSTs are great at storing nodes identified by some key for which an order relationship exists (e.g., integers). They have the property that the values in the left sub-tree of each node n have keys smaller-than n‘s key n.k, and those in the right sub-tree have keys greater-than n.k[^1].

Read More