RSSAmplifier

Blog

Rock and Null

Tech, software and whatever comes to mind.

paleblueapps.comRSS feed ↗15 posts

Latest posts

The future might not have source files

For decades, we wrote code for humans. As AI becomes both the author and the primary reader of software, developers may spend less time writing code and more time verifying that it matches their intent.

The age of deterministic software engineering is over

Software engineering has entered a probabilistic era. As LLMs replace deterministic workflows with uncertainty, the challenge is no longer eliminating variability; it's building systems that deliver both high quality and high development velocity despite it.

LLMs changed writing. But our submission processes haven’t caught up.

LLMs are changing how we write, communicate, and evaluate information, but many submission and proposal processes are still designed for a pre-AI era. If AI generates documents and is later summarized by AI, maybe it’s time to optimize for clarity, bullet points, and essence instead of length.

Promies Code Distribution: A hassle-free way to manage app giveaways

A smarter way to manage and distribute your app promo codes with the all-new Promies. Effortlessly build customizable promotion pages, protect your codes from bot abuse, and get free organic exposure to kickstart your app's growth.

Pale Blue Spring Admin: Now you can actually edit stuff (and custom UI snippets)

Read-only is great, but editing is better. The latest update to Pale Blue Spring Admin introduces full CRUD functionality and custom UI snippets, making your Spring Boot admin panel as powerful as your favorite Python tools.

Promies Feedback Board: A simple way to collect user feedback in your apps

Promies Feedback Board gives you a single, vote-protected hub to see exactly which features your users actually want.

The rise of abandonware

AI allows us to ship software instantly, but it’s also fueling a surge of "disposable" projects. The team behind the code matters more than the code itself in the age of AI generation.

The danger of the "ok" project

Most projects don't fail spectacularly; they just linger in the "middle." In a fast-moving AI era, deciding if your current traction is enough to keep going, or if it's time to move on.

Who is going to train the juniors?

Junior engineers can get instant answers and working code, but risk skipping the hard-earned understanding that comes from struggle. AI is a powerful multiplier for experienced engineers, but without intentional training, it can quietly erode how the next generation is built.

How We Fixed SQLite Database Locks in Spring Boot (And Got a 5x Performance Boost)

Struggling with intermittent database locks in your Spring Boot and SQLite setup? Learn the specific HikariCP and JPA configurations we used to eliminate production hangs and increase throughput by 6.5x.

Cog in a great machine VS building one from scratch

Working in a big tech company feels like being a cog in a powerful, well-oiled machine, while launching your own startup means building a smaller machine from scratch and owning every decision. Both paths are exciting, challenging, and valuable, but in completely different ways.

Introducing Pale Blue Spring Admin: auto-generated admin UI for Spring Boot

Pale Blue Spring Admin brings Django-style auto-generated admin power to Spring Boot. Built in Kotlin, it offers an intuitive UI for exploring your JPA entities.

The rewrite dilemma in software engineering

Rewriting software can be tempting, but understanding the hidden value of accumulated fixes and system stability is key to making the right decision.

T-Shaped engineers: the blueprint for building with AI

As AI transforms how we build software, the T-shaped engineer has become essential. With broad technical fluency and deep domain expertise, these engineers bridge human judgment and AI capabilities—building faster, safer, and smarter systems.

Automatic resource cleanup in Jetpack ViewModels using AutoCloseable

How to automatically manage and clean up resources in Android ViewModels using Kotlin’s AutoCloseable interface. This simple yet powerful pattern eliminates boilerplate onCleared() code and helps prevent memory leaks in your apps.