Effective IntelliJ: Part 2
Have you already read part 1?
Have you already read part 1?
There are some features in IntelliJ that I consider rather foundational, but I often see the average developer not using them and doing things the hard (and ...
There are two keyboard shortcuts that I recommend to other developers all the time. You don’t need to know every keyboard shortcut, and for things you rarely...
I learned about EqualsVerifier from a technical coach I know. A few months ago we met (not for the first time) at a conference we both spoke at, and after a ...
Mutation testing is a technique for analyzing the quality and effectiveness of your tests. Despite being very simple to set up (at least in Java) and able to...
Following are some thoughts I recently had about cargo cult and Brandolini’s Law in software development.
Every time I see someone advocating for inverting the test pyramid, or testing everything with slower, more flaky higher level tests, it’s well intended but ...
This article is based on a LinkedIn comment I wrote in response to a comment mentioning the following two problems in relation to Git Rebase:
Intuition: “Integrating more frequently causes more merge conflicts.”
A DevOps team is a development team that practices DevOps. It is not an operations team that handles deployments and build pipelines, monitoring, infrastruct...
People refer to all kinds of changes to existing code as refactoring, which is a common case of semantic diffusion.
In this series, we will look into what games and game engines do to create those neat graphics effects that add to a game’s realism and/or aesthetics: Effect...
Intro
Originally posted on Code Review Stack Exchange on 07.09.2021. Question asked by user “DexMax” and licensed under CC BY-SA 4.0. Answer provided by me and lic...
This post is based on an answer I posted on Stack Overflow. The code example was submitted as part of the question by Bruno Rozendo under CC BY-SA 3.0. Note:...
Did you know that IntelliJ can render documentation directly within the IDE? I discovered this a few weeks ago and have used it since. I think it’s a vastly ...
The phenomenon of cargo cult is very common in the software industry. With this article I want to raise awareness for the problem of cargo cult and provide s...
People in the tech industry infamously like acronyms. So much indeed that they sometimes turn perfectly normal words into something that looks like an acrony...
The term is sometimes used to refer to a specific and opinionated way of writing code, the one described in the popular book “Clean Code” by Robert C. Martin...
First of all, I don’t advocate for getters and setters at all. Don’t use them (especially setters) if you find an alternative. There usually is a better desi...
The SOLID principles for software design can be a helpful thinking and communication tool of a software developer, even if perhaps just as a reason to think ...
We all have to start somewhere. For most of us, our Git journey begins with about 5 commands and the mental model of a file-sharing tool like Dropbox or OneD...
The terms CI (continuous integration), CD (continuous delivery), and the umbrella term CI/CD are often misunderstood and misused. Many think that continuous ...
In the past, my advice for effective code reviews was something along the lines of:
Imagine this scenario: A restaurant cook learned from their grandmother the secret of her tasty soup. “Always put a tablespoon of salt in your soup”. And so ...
Based on my observations and experiences others told me about regarding different kinds of technical leads or lead developers (including myself in some small...
After a long time, I once again did a few code reviews on Code Review Stack Exchange. One of them (a beginner’s implementation of a rock-paper-scissors game)...
The Single Reponsibility Principle (SRP) is commonly misunderstood1. Often you might hear explanations like “a class should do only one thing”, sometimes eve...
Your team is doing feature branching and pull requests, but the code quality is still subpar? What many people don’t know: The code reviewers are simply appr...
I discovered some nice features in JUnit 5 that I haven’t really seen before in the wild, so I thought I’d share them with you.
If you use Git in the command line, when using commands like git diff and similar ones, it does a line-by-line diff by default. This is also what most pull r...
No more “pressing up arrow 20 times”!
You recently ran a long shell command that you need to run again, like mvn -D test -lots-of-more-options?
CI/CD is something you do, not something you have.
This is a misconception that I’ve seen or heard many times, sometimes almost in those exact words.
Intentional commits is the term I use for habits and workflows that help with creating Git commits1 exactly the way we intend to. The opposite are incidental...
Intro
Technical empathy is one of those concepts that seemed so obvious once I was aware of them, and yet it was quite a revelation when I first heard of it from M...
This is probably one of the most common narratives against TDD (test-driven development) that I hear. It’s often stated by developers who may have shortly tr...
When pair programming, I occasionally see software developers with a full inbox. Like, literally hundreds or even thousands of unread emails amassed over mon...
At the beginning of a new project, when the team (or the team lead) chooses a coding style, a common approach is to use a popular style guide for the program...
Did you know that roughly 1 in 12 men are affected by red-green color deficiency? That’s about 8 percent of men and between 4 and 5 percent of the population...
Many developers are unaware that there is a quasi-standard convention for commit messages originating from Git itself and the Linux kernel. Following this co...
Commits should be atomic, but the common advice to only separate refactorings from new functionality does not cover the whole spectrum. I use four main categ...
“Git,” the name of the popular version control system, is not an acronym but an English slang term chosen by developer Linus Torvalds. Many incorrectly spell...
You might be familiar with the Single Responsibility Principle (SRP), one of the SOLID principles coined by author Robert C. Martin. The SRP states that “A m...