Learn to Code

Video Capture

Slides

Insights

  • Estimations are difficult: I regularly underestimated the time I need to fix a "small" problem with my code. Maybe there are no small problems?
  • Existing code is hard to understand: I started from scratch with one exercise seven times. Everytime I looked at my previous written code I felt that it would be more effort to make sense out of it than to write it from scratch. Now imagine looking at the code that was written by a guy you have never met and who left the company five years ago.
  • Coding is frustrating and fun: Things don't always work as expected (in fact they almost never do). So I was often frustrated when my code didn’t work. I wonder how the office space is not filled with screaming, yelling, and cursing. but when it finally worked it felt awesome.
  • Clean up needs discipline and culture: I felt so great when my code finally worked. I wanted to jump directly to the next exercise or tell the world how awesome I am. But I didn’t want to refactor all this code. It is easy to blame engineers to write crappy code which increases tech debt. But at least I would benefit a lot if somebody told me to refactor this before going to the next thing. But in reality business is pushing towards the next feature - blind to the impact. So it is even harder to be strong and refactor before moving on.
  • Stay humble: If you think it is easy than you probably haven't invest enough time yet. Be aware of the Dunning-Kruger-effect: "If you're incompetent, you can't know you're incompetent. (David Dunning in the NY Times)

Links

Let's learn together

I think it is much easier to stay on track if you are not alone. So please let me know if you want to join the journey.