This is what I learned in April 2020:
- Working on both private and business projects, I often commited changes in my private repositories with my business mail-address. That doesn’t pose a real problem, but I want my contributions to have the correct identifier. The solution that works best for me is to manually add my user information to the config-file in the .git folder in each project, as described here.
- In these times of Corona, we use quite a lot of tools for remote working. I added Jitsi to my list of video-conferencing-tools, which includes Skype, Skype for Business, Microsoft Teams, Google Hangout (years ago), Lync, Signal and Zoom.
- Two developers from Brunswick set up open-infrastructure.de, a platform to use Jitsi for free and without having to set up anything. Contacting the maintainers of the side also provides access to BigBlueButton, another collaboration software.
- Currently, I’m reviewing a lot of code and pair-program on a daily basis. In one of these always fruitful disucssions, I found a nice article on why “instanceof should be your last resort” when working with types in Java.
- I learned that the automatically implemented methods in Spring Data JPA Repositories can contain “top”. That allows for extracting the first x objects found by the query, for example findTop10Articles().
- I found out how to expose additional headers in requests to Spring MVC so that they can be used in Angular.
- During the last few weeks, my team and I tried to apply pair-programming to every task we work on. Here’s an article about that experiment.
- Harvard University offers a free “Introduction to Computer Science” course.
- New version of IntelliJ IDEA, yeay!
- The new version of my favorite IDE brings a nice feature. Hovering over “throws” in a method signature, the code that actually throws exceptions is highlighted. Neat. Until now, I allways temporarily deleted the throws-declaration to see where the exceptions are thrown.
- Watching some Youtube tutorials from Jetbrains (here and here), I actually found some shortcuts I didn’t know about. Pressing F2 brings you to the next error, warning or suggestion. That’s a very nice feature for me. When doing code reviews, I “play compiler” when going through the code for the first time. I open each changed file and have a quick glance on the yellow square in the top right corner. If it’s yellow, I search for the warnings. Only having to press F2 speeds this process up quite a bit. Also about speed: Pressing Ctrl + Shift + F10 will run the code under the cursor. If positioned in a test, it will run this test. If positioned in a test file but outside a specific test method, it will run the whole test file. Because quick navigation is king, my new friend is Ctrl + Alt + left/right. I didn’t know about this very old shortcut. It will jump to the last / next line the cursor was before the last navigation action. So imagine being in a method and navigating to the definition of another method by pressing Ctrl + B. Repeat that three times and “dig into the code”. With Ctrl + Alt + left, you can easily go back where you came from.
I read the following books:
- “Influence” by Robert B. Cialdini. Comprehensible psychology with real-world examples. I think I’ll write a dedicated blog post for this marvel.
- Re-read parts of “Cloud Native Java” by Josh Long and Kenny Bastani because I used HATEOAS in the IT Hub.
This is what I’m working on right now / planning to do in the near future / other stuff:
- Still not finished enhancing the IT Hub by connecting events to groups. Learning about HATEOAS slows me down, but it’s worth the time.
- Although I’m in a luxurious situation regarding Corona, the virus still manages to interfere with some plans and projects. However, there are positive aspects about being forced to stay home. For instance, I’m developing skills in wood working. Never thought I’d be the guy who has fun building tangible things, but it’s very rewarding to create something useful with your own hands. Guess that’s my midlife-crisies saying “Hi” …
(Photo: adrian825, http://www.istockphoto.com/photo/monthly-management-reports-36658768)