Masha Reko - Apprenticeship Blog

What we have to learn to do, we learn by doing. (Aristotle)

Day 10: A Step Backwards

I spent this Monday morning sitting at my desk with a huge cup of coffee, staring at a blank screen and silently contemplating my next move. I do this quite often; for me, preparation is just as important as execution - and is by no means a waste of time.

I knew that I had to continue with Scala, but something just didn’t feel right. Even though I learned a lot over the past week, I somewhat had the impression that this knowledge was basically a huge unstructured pile of theoretical stuff. Solving problems still didn’t come naturally, as I always had to dig through that pile in the hope of coming across something useful. That made me way too slow for my liking. I wondered why that was the case. Am I doing it all wrong?

I may sometimes be impatient, but I don’t think that I am stubborn. When I feel that a way of doing something is wrong, I am certainly not afraid to change it.

Therefore, I did a quick Google search and found another book titled Scala by Example by Martin Odersky. The title instantly attracted me; I suddenly realized why I wasn’t happy with the previous book. It’s examples were simply too abstract for me. I am a practical person, and when I study, I tie every theoretical thing I learn to an example. With Functional programming in Scala I simply wasn’t able to do that, so I ended up with a bunch of definitions and rules without being exactly sure when to apply them. Which is not to say that this is a bad book. Maybe it simply didn’t reason well with me.

So I put my coffee down and happily dived into the new book. Its language was simple and easy to understand, while the examples were many and concrete, slowly gaining in difficulty. I ended up reading one third of the book in one afternoon. Everything that was more or less unclear in my head suddenly found its meaning. Many blanks got filled, even those I didn’t know I had. And that huge pile of random Scala-related stuff finaly started to gain a form.

At the end of the day, I was pretty proud of myself. Instead of stubbornly continuing with the same thing and expecting different results, I wasn’t afraid of going back and changing the approach. People tend to regard a step backwards as a failure, but that is such a closed-minded view.

If you feel it’s right, don’t ever be afraid to take it.