Lessons Learned in early 2018

Normally, I write a “Lessons Learned” article each month. The last one was published in December 2017, which shows how busy I’ve been in the past months. To catch up, this article will contain detailed lessons learned for January 2018. Later in the text, there will be more general lessons about those busy past months.

This is what I learned in January 2018:

  1. Sometimes a weird Oracle database error costs hours and hours of research to be fixed, sometimes the first Google hit reveals that “ORA-30649: missing directory” just means that a “NOT NULL” has to be after a “DEFAULT”, not before.
  2. Sandra Parsick blogged about, a nice website to generate the content of gitignore-files. This can also be done using a plugin for IntelliJ IDEA.
  3. I heard about Mozilla DeepSpeech, an engine that can be learned with Common Voice and used with different programming languages such as Rust (RustAudio) and Go (Asticode)

In the past three months, I’ve been busy with the following:

  1. My team and I have been working on a different project for two weeks. We used a different technology stack and learned quite a lot quite fast. This was a hilariously fun time and I’m immensely proud of what we could accomplish together.
  2. My lectures at the university of Ostfalia started in March. Up until that time, I was busy polishing the course contents. Although the very most is finished now, I’m changing some things here and there, which results in an additional workload for me.
  3. Changes in my main project forced me to be more involved in some management issues. Things are really interesting, I learn a lot and am able to get involved in new situations.

Here are the lessons I learned from these situations:

  1. The little sidekick-adventure I took on with my team lead me to learn a lot about web-based frontends, in particular Angular. As always, I published everything I learned on Github. A couple of weeks ago, I stated that I explicitly don’t want to work on projects using web-frontends because I don’t like Java Script very much. However, after using Angular, TypeScript and JHipster, I’m impressed about how far the development world has come. With the help of the (only) right IDE and those frameworks / generators, we’ve been able to set up our project in no time. The main lesson learned: I’m getting more involved in web development and am very much looking forward to it.
  2. Because of the intensity of those two weeks, I began dropping my organizational guard. I began working on the urgent matters more often than on the important ones. That lead to missing out on some important, but not yet urgent tasks like being the goal buddy of a friend of mine. I wasn’t as persistent as I should’ve been, didn’t call / wrote every day and forced development on our project. The root cause for this was getting excited about the new project my team and I were working on. That’s not bad per se, but it must not lead to letting other things drop. It’s important to keep up with the regular tasks and the daily routine, even or especially when things get hot.
  3. In preparation for my lectures at the Ostfalia, I had a deeper look in already-known topics like Maven and Git. Only if a developer is able to teach a method or technology to somebody else, he truly knows it. Hence, the preparation forced me to think differently and view topics I work with for years with the eyes of a beginner.
  4. An additional very nice side-effect of the preparation of my lectures is that I began drawing my own pictures for slides. Dmitrij and Lisa, two coworkers and friends of mine, helped me a great deal with that.

(Photo: adrian825,