Monday, July 20, 2026

Bullshit Asymmetry in Software Development or Why is Software recunstructing so expensive

Bullshit Asymmetry in Software Development means that is very easy to develop a new system on a green field. You can easily go on putting new features into the code  but over time, often faster then slower, you have to put more and more effort to add new features until you reached the culminating point. At the software development culminating point your resources (developers) are exhausted, no new feature can be implemented in acceptable time. Next the development team is wearing out and then I'm appearing.

  1.  Software reconstructing is more expensive then writing the software. The costs are asymmetric. Build a new software is much cheaper then reconstruction/rescuing legacy software. 
  2. But software reconstructing lowers the risk of a complete miss. The improvements are coming at a constant speed. No new teams are needed. Reconstructing software can be realized by the origin team, maybe extended by some external experts. 

 There is a third way, re-implementation of an existing system. This way combines low risks, like software reconstruction with the low costs of building a new software.

  


Write new software Reconstructing software Re-implementation
cost low high low
risk high low low
results after long time immediately, slow flow of improvements after not so long time
team new team needed + one insider existing team + some external experts Only some seniors needed
new features are implemented slow but steady, accelerating no, but faster after release

Wednesday, June 17, 2026

Easy Ways to increase efficiency in software companies: Meetings


 

The efficiency in many software companies are low. You may know it, endless meetings with to much people never needed. Presence counts more then results. But here some simple things that increasing the efficiency are really easy to implement:

  1. One meeting free day a week (Meeting-frei Freitag)
  2. No back to back meetings, at least 5 min break between
  3. Time boxed meetings
  4. Regular breaks in long meetings 

This ideas will not fix every thing but they are simple and easy to implement. And these ideas could be a turning point to more focused, result focused work. 

 

Fun fact, after introducing a meeting free Friday, after some time, a lot of meetings appears on the meeting free Friday, because there was a lot of free time. But now the Thursday is now meeting free. 

Monday, June 8, 2026

AI, LLM create vulnerable software

First: AI, LLM are a very powerful tool for software developers. 

The following lines will indicate a limit of LLM in software development. 

So you aware of it and can handle it right. 

I found this problem by incident. LLM like qwen3-coder:30b generating code that uses outdated libs and frameworks containing CVE's. 

 

Conclusions 

  1.  LLM's are not perfect writing code but don't drop it.
  2. Many (Most, All) LLM's living in the past.
  3.  LLM's  generate projects with outdated vulnerable dependencies. Be aware of it.  This will time problem will affect all ideas the LMM is generating.

Test

 The task: create a Spring Boot web app with qwen3-coder:30b (ollama, aider) 

  1. pom.xml contains Spring Boot Starter Parent 2.7.0, uh that's a little bit outdated
  2. Release date was May 19, 2022
  3. contains at least 10 CVEs
  4. Select Java 11 

Ok, I give a helping hand 

  1. Task: create a spring boot web app, spring boot 4 
  2. pom.xml contains Spring Boot Starter Parent 3.2.0, uh that's a little bit less outdated
  3. Release date was November 23, 2023
  4. contains at least 2 CVEs
  5. Select Java 17

Looks that the model is living in the past, at least 2 years. So I give are more modern model a try: qwen3.6:27b 

  1. Task: create a spring boot web app, spring boot 4  
  2. pom.xml contains Spring Boot Starter Parent 3.3.0, best I can get but still far away, gives me a hint to 4.0.0-M1 
  3. Release date was May 23, 2024 
  4. contains at least 7 CVEs 
  5. Select Java 17 

 

Sunday, May 24, 2026

Expect the Unexpected: Some Words about Errors

     For all ‘Happy Path’ developers, proper error handling is a fundamental feature of software, and it is quite possible that error handling is for half of your code.

 

Expect the unexpected: not all English postboxes are red. This Victorian one stands in Dublin.
 

There two types of errors:

  • Retryable Error
  • Permanate Error

Retryable error: a temporary issue has occurred. a retry is likely successful. Example causes: firewall reboot, db maintenance, HTTP 5XX.

Permanent error: error where a retry will always end-up with an error. Example: HTTP4XX, NPEs (Null Pointer Exceptions).

After a retry sequence, Retryable errors should become permanent errors.

And at last, don’t forget Logging and Monitoring of errors.

Sunday, April 19, 2026

Will AI aka LLM replace Software Developers?

Question

Will AI aka LLM replace Software Developers?

Short answer 

No. The rising of LLM will increase the demand of software developers. 

 


 

Longer Answer

A LLM can generate text based on the training data. That's brilliant if you  doing you homework or writing a message a teacher (South Park episode "Deep Learning"). If you search for information, LLM are brilliant, comparing things, aggregate information that the jobs LLM can help you a lot.

 But Coding, writing software; is not writing text. If you want to learn a programming language, a LLM is great. If you searching for boiler plate code or a strange configuration property, LLM is my tool of choice. That's not coding. That's a advancment over Google or Stack Overflow. A LLM can improve autocomplete in my IDE (Kai Lentit on Y). LLM can't write software that is correct, that is fast, that is reliable, that is save, that is robust, that you and your business can rely on. So far, LLM has never been able to handle any programming task for me that went beyond the beginner level. And believe me, I tried it hard and I found out this a general limitation of LLM. I can explain it, but it's an other story.

LLM is great of doing Bullshit jobs. It will free people for better jobs. LLM increase the efficiency of software development in general. 

LLM is a good new tool, but a fool with a tool is still a fool, with brand new legacy code. LLM is a just a tool like Excel or the Internet, LLM is just a high sophisticated tool (2026). 


 

Summary

  1. LLM increase the software development efficiency
  2. LLM lower the entry level for software development
  3. IMHO LLM will create a Rebound Effect on software development
  4. LLM will help to create more Software faster
  5. Software Developper will be more important than before. 

 


Saturday, January 31, 2026

How to Fix NPEs forever

Null is biggest flaw of Java, saying some developers. Null causes NPEs causes crashing software. IMHO this is the same vibe as C vs Rust and I totally disagree. Crashing software is caused by developers and not by the programming language.

The easiest and best way to prevent NPEs is … proper exception handling. It is as simple as it sounds.

Bye the way, NPEs are often a side effect of OOP. All Objects are unsafe until you checked them. But checks are unsafe so go with exception handling.