As a Software Crafter, I have two interesting parts in my brain. One is the compiler. I use it to read code, interpret it, and infer what it’s doing. It’s important for reviewing, for identifying bugs, but also for writing it. The other one is the designer. It scans the structure of the code without caring about what it’s doing. No need to understand the names or the algorithm. It just scans for…
I was trying to get an LLM to perform TDD first when ChatGPT 3.5 was released in 2022. They added the possibility for the LLM to execute Python code back then. And you could create “GPTs”, agents that use your own system prompt kinda. Back then I created a Software Crafter GPT. It could do simple katas. But its capabilities were limited. In the following months I did not witness a lot of…
I recently attended GeeCon Prague, an event I had never been to before. While it wasn’t as grand as the big Krakow event, I still found it a worthwhile decision to attend. Here are some highlights and things that resonated with me: What I Discovered and Deepened My Understanding On Availability Bias: While I’ve always felt its presence, I now have a formal term and understanding of it. The Big…
I was recently following an interesting discussion of the Vienna software crafts community with the title: “How to facilitate a conversation between people, where the byproduct is code?”. The discussion is in German and contains interesting ideas about how to code well together, and how to facilitate it. I tried to give an answer, which got longer and longer. In the end, I chose to write this blog…
I recently felt the urge to experiment with my TDD workflow and improve it. It had too many manual steps, like running the tests, starting a commit, writing a commit message, pulling changes, and pushing it. It felt boring and wasteful. I want to automate this stuff and eliminate all the waste. We’re not aiming high enough with the continuous part in CI/CD. “Integrate at least daily” … Come on!…
Two years ago, in 2019, I ran the first Coding Dojo at my company EBCONT. Corona wasn’t a thing back then, so it happened to be an offline event that lasted 4 hours on a Thursday afternoon. All the brilliant people came together to practice programming and enjoyed it. How awesome is that? A lot has changed since then. When the pandemic happened, I had to adapt and move it online. So I decided to…
Here I am working on the Expense Report Refactoring Kata. I like it because of its small size. For me, the kata is about making focused refactorings. In this episode I have already completed the challenge of the kata, and refactor the code even further. I am tackling primitive obsession. It is the final video in the expense report series.
Here I am working on the Expense Report Refactoring Kata. I like it because of its small size. For me, the kata is about making focused refactorings. In this episode I test drive the change and add the new Lunch Type. After that I continue refactoring the code, as there are lots of things I can still improve.
Here I am working on the Expense Report Refactoring Kata. I like it because of its small size. For me, the kata is about making focused refactorings. In this episode I start to refactor the code. My refactoring is very focused so I only make those changes that make the task of adding a new ExpenseType easier.
Here I am working on the Expense Report Refactoring Kata. I like it because of its small size. For me, the kata is about making focused refactorings. In this episode I finish testing the code using ApprovalTests for Java.