Guard your architecture by ArchUnit

There are a bunch of tools that help in delivering a better, cleaner code. I guess most of us use Sonar for the static analysis of the code. That is awesome, especially if we integrate that with the build process or at least with the Jenkins pipeline for our development branch. Just to fail the pull request once the code does not meet a quality gate or introduces new issues. Can we go further with the fast feedback? Sure, we can configure SpotBugs (FindBugs) to support Sonar with finding subtle bugs and code smells or Checkstyle to validate whether the Read more…

Time management tips for a happy developer – part 2

Other posts in the “Time management tips for a happy developer” series: 1. Time management tips for a happy developer – part 1 2. Time management tips for a happy developer – part 2 In the first post, I have written a few tips that help me organize my time better. It took me a while to finalize a second post, still here are my few tips and tricks! Meetings Consider declining some meetings and do not work in a background Nothing is worse than waisting a time in a meeting we do not need to attend. It is pretty Read more…

Time management tips for a happy developer – part 1

Other posts in the “Time management tips for a happy developer” series: 1. Time management tips for a happy developer – part 1 2. Time management tips for a happy developer – part 2 Effective time management tips and courses are usually pretty popular in the fast-paced world today. I guess we all have so many things to do but so little time. I have read and finished a bunch of them and here is the list of my favorite tips from a dev point of view. Some of those courses advise how to be productive to do more (and Read more…

A little hero – the U2F key!

Nowadays, it is difficult to count the services we have accounts on. They leak regularly and we often hear even the biggest companies are hit by severe security incidents. Big dumps of databases with unsalted password hashes go public a few times a year. We cannot prevent those incidents from happening in any way but we can mitigate risks connected to those leaks. The first wise thing to do is to use the password manager. A rule of thumb is to use unique and strong passwords per site. If a password leaks from a particular website, we are still safe Read more…

Dev tips no. 4 – Know who you are

We all know there are lots of people unhappy with their work. It is not that easy to find something that meets all Ikigai criteria. I heavily believe that doing something meaningful, fulfilling yet financially rewarding is achievable for lots of people, maybe even most of them. One of the best things when starting searching for a “dream” job or occupation is to understand who we are and what our souls want to achieve. It is so common we fall under a well-established way of thinking about what a good job or a career path is or what can give Read more…

Dev tips no. 3 – No-hello policy

This is another productivity advice that I do not hear often. It is easy to apply and makes a difference for others as well. It is a “No-hello policy”, pretty well described here: No-hello Policy: How not be annoying. The rule is simple – if we want to ask someone a question via chat, we should not say “hello” and wait for the “hello” response. Saying “hi”, “hello”, etc. is not a particularly bad thing, of course :). We should use that. It shall be immediately followed by the rest of the message, though. We do not want to distract Read more…

Dev tips no. 2 – type faster!

The second productivity tip for a programmer is so obvious that I almost never hear about that. I guess we all have read tons of posts about mastering our toolset, languages, time management, and so on. Maybe you have a different experience, but I almost never hear about the need to master just the typing. I am not talking here about remembering shortcuts or doing things without a mouse but just typing. This sounds so trivial and so obvious, still makes an incredible difference. Let me share my story. Before I learned how to type correctly For more than twenty Read more…

Dev tips no. 1 – get a trackball!

There are lots of tips and tricks that can make our life and work easier. I love them because thanks to simple things I can save lots of time and effort every day. Therefore, I am going to share a few things that work for me. I can be the only person in the universe for whom those things work, nevertheless maybe they will (or already are) work for you! Tip #1 – replace your mouse with a trackball! I have used a mouse for decades. Of course, from time to time I changed them as the technology evolved. A Read more…

Jenkins for the smart and lazy

I guess nobody likes creating Jenkins jobs. And probably their maintenance is even worse if done manually. There are a bunch of tools that come to the rescue and I will describe them in a nutshell. Create your local Jenkins in less than a minute To achieve this pretty tight deadline, let’s just use a Docker. I am showing commands for Linux here, I suppose in Windows things can be slightly more complicated, but I can be mistaken of course. To get the docker, let’s install a Docker Compose: Now, let’s pull the Jenkins and configure it (in this example Read more…

Java’s guy journey to GitHub pages

Update: I have moved my blog and personal page to WordPress (and that is why dawidkotarba.github.io is not accessible). Still, GitHub pages together with the Jekyll are a great alternative. While it needs more work to customize the page than using WordPress, this option gives fantastic flexibility and ease in terms of hosting. Therefore I am leaving this post for readers who might want to consider using GitHub Pages for their personal sites. Recently I have seen a couple of personal pages and they were pretty awesome. They were mostly designed by front-end folks who showed off their great design Read more…