The Software Development Monthly is a monthly blog post that shares interesting or useful content which I consumed during the previous month. This blog post is always published on the eight day of the month.
Let's begin!
AI
Vulnerability Research Is Cooked argues that a substantial amount of vulnerability research will be replaced with AI agents which will scan code bases for zero day vulnerabilities.
Claude Is Not Your Architect. Stop Letting It Pretend. explains why we shouldn't let Claude (or any other AI agent) to sit on the driver's seat.
AI Use Appears to Have a "Boiling Frog" Effect on Human Cognition summarizes the results of a research which claims that AI improves short term performance, but this improvement comes at a heavy cognitive cost.
AI-Assisted Java Application Development with Agent Skills describes how we can optimize the context size by leveraging agent skills.
Spring AI Agentic Patterns (Part 6): AutoMemoryTools — Persistent Agent Memory Across Sessions explains how we can give our AI agents a long-term memory that can be accessed by different sessions.
Spring AI Agentic Patterns (Part 7): Session API — Event-Sourced Short-Term Memory with Context Compaction provides an introduction to Spring AI Session which adds support for storing the conversation history to a short-term memory.
The Software Factory: Why Your Team Will Never Work the Same Again explains how the rise of software factories is changing the way we write code.
The AI Great Leap Forward argues that the current AI boom is a 'Great Leap Forward' that destroys software quality by prioritizing quantity and speed over human expertise.
Total Skill Collapse Is How AI Makes Idiocracy a Reality argues that AI model collapse is accelerated by the fact that no one has incentive to publish original content on the internet.
Agentic Coding is a Trap explains that agentic coding is a trap because over time developers lose both the ability to write code and the deep system understanding required to maintain complex software.
GitHub Copilot is moving to usage-based billing announces that GitHub Copilot moves from flat-rate subscriptions to usage-based billing.
Cloud
S3 Files and the changing face of S3 introduces a new AWS feature called S3 files which allows us to use S3 as a network attached file system.
Software Development
"What’s In It For Me" Architecture argues that a good architect has excellent soft skills and provides three tips that help architects to convince other people to implement their designs.
A Year Long Rewrite describes the challenges the author faced when they decided to rewrite the code of their text editor.
Things you didn't know about indexes provides an introduction to database indexes and identifies some pitfalls which make our queries slower than they could be.
No one owes you supply-chain security argues that open-source developers aren't responsible for the supply-chain security of the companies who profit from the open-source software.
The Danger of "Modern" Open Source examines the risks of the modern open-source ecosystem where companies exploit open-source maintainers for free.
Java Is Fast. Your Code Might Not Be. argues that the performance issues of Java applications are caused by inefficient coding patterns.
One Method Was Using 71% of CPU. Here's the Flame Graph. explains how we can investigate the performance of a Java application and demonstrates how the implementation of one method can lead to a massive bottleneck.
When You Can Safely Leave Sprints Behind argues that the traditional time-boxed sprints are useful when we are trying to build good habits, but we can move forward to continuous flow models once our workflow is stable and predictable.
Spring Boot Configuration Properties at Scale describes how we can manage complex Spring Boot configurations which are used by huge applications.
The Spring Team on Spring Framework 7 and Spring Boot 4 highlights the architectural and functional improvements introduced in Spring Framework 7 and Spring Boot 4.
Ghostty Is Leaving GitHub explains that Ghostly is leaving GitHub because of GitHub outages.
Before You Judge, Get Curious describes why we should ask questions instead of judging people who disagree with us.