Apache Otava - Change Detection for Continuous Performance Engineering
I guess everyone has this running in a non-standardized way, as soon as there are daily benchmarks.
@spinscale
Husband, dad, enjoys working distributed, likes distributed databases & search engines, the JVM, Basketball/Streetball fan, gulps coffee, lives in Emsdetten/Germany, occasionally blogs at https://spinscale.de
Apache Otava - Change Detection for Continuous Performance Engineering
I guess everyone has this running in a non-standardized way, as soon as there are daily benchmarks.
Just uploaded the slides of my talk about Apache Lucene yesterday, along with a GitHub repo to check out the code samples.
Thanks a ton for the JUG MΓΌnster for having me and see you next time!
speakerdeck.com/spinscale/un...
Final reminder for my talk this evening at the MΓΌnster JUG talking about more than 25 years of Apache Lucene. Quick introduction, what makes it fast, how it interacts with the OS, code snippets left & right, running within the presentation.
See you there!
www.meetup.com/de-de/java-u...
My favourite Java web framework got a new major version.
Still lightweight, still easy to debug and deploy, still requires sometimes more code to add certain features compared to other frameworks, i.e. for OAuth/pac4j.
javalin.io/news/javalin...
Halving node.js memory usage
Interesting post about pointer compression in node, using 32bit pointers instead of 64bit. Note that V8 had supported this already, but node had to find a way to properly integrate this.
blog.platformatic.dev/we-cut-nodej...
For tech I can go back to books, for other topics I just drop them again. How do others deal with this? Do you find nice channels within all the others for your favorite topics?
The boredom is palpable. The uniqueness is lacking. The artificial tension in the titles and intros. Any kind of forced useless rankings. Everyone is still highly dependent on the manufacturers.
I'm trying to follow a bit the german electric car bubble, but it's hopeless. One person talking > 10 minutes about his car being stolen. Every youtuber is literally doing range tests in the cold, cold winter. Surprise, it's less, even if you test it on every single car on the planet.
I have essentially given up on learning anything new on youtube. The pressure for creators to keep creating content seems so high, that for them, information for the viewer is not the primary goal. Any video at the beginning: you will hear 'watch till the end' to get any usable information.
zerobrew - a drop-in, 5-20x faster, experimental Homebrew alternative
With brew having more changes recently than in previous years (parallel fetching, nicer colorful UI), I guess some competition is good here.
github.com/lucasgelfond...
Stoolap a high-performance embedded SQL database written in pure Rust
Drivers available for node and python. Uses MVCC. The documentation is doing a fantastic job not only listing features, but also taking the time to explain them really well, go take a look!
stoolap.io/docs/
Java Evolved: 112 modern patterns Β· Java 8 β Java 25
TIL: You don't need to create an object within try-with block, but can just do `try(var) {}` and var will be closed after. Should probably take a closer look a the other 111 patterns.
javaevolved.github.io
Migrated my blog (a static website) from AWS to BunnyCDN. Using terraform. DNS, bucket setup, logging. Super simple setup, a hundred lines of code, takes a second to run.
As Bunny also recently introduced magic containers and libsql databases, I am relatively sure what I will test next.
bunny.net
Time to resharpen my talking and presentation skills a little. At the 4th of March I'll talk at my local JUG in MΓΌnster about Apache Lucene.
Will cover different data structures, codecs, disk persistence, performance and whatever seems interesting.
www.meetup.com/de-de/java-u...
Native Geospatial Types in Apache Parquet
With introducing such types you also get the advantages like column statistics to skip row groups. With links at the end that contain a fair share of parquet files ready to use.
parquet.apache.org/blog/2026/02...
Efficient and ACID Compliant Vector Search Indexes in Firebolt
Nice long & technical read about the path to integration, another implementation using usearch (like ScyllaDB, ClickHouse, DuckDB), slowly becoming the defacto vector search standard for C++ applications
www.firebolt.io/blog/technic...
I read it a while back. Given its size itβs very concise and less code samples (the one above has quite a bit of python in there). Not too well suited if you are completely new to the topic, but should be fine with a bit of background.
Finished: Machine Learning - kurz & gut
A short (well, relatively) 300 pages, german reference guide about machine learning using python. If you know what you are searching for, this is a quick reference for ideas, but not so much for beginners.
Vector search using only Parquet and DataFusion
Interesting idea and accompanying implementation using DataFusion, aligning Parquet pages with a single vector and no compression.
blog.xiangpeng.systems/posts/vector...
boxlite - Local-first sandbox for AI agents
The sandboxing trend continues, nice to see. This one is written in Rust, works on all platforms, can keep state and apparently they need to few resources you can run hundreds. Waiting for CLI tools to natively integrate
github.com/boxlite-ai/b...
the mathematics of compression in database systems
Nice post about understanding compression tradeoffs and when to implement which kind of compression. Also follow the leaderboard github repo link where different compression implementations compete for best impl
www.bitsxpages.com/p/the-mathem...
Book cover of "Designing Data-Intensive Applications, 2nd edition". It has a similar wild boar on the cover as the first edition, but it uses O'Reilly's new cover design, and the boar is now slightly colourised.
The second edition of Designing Data-Intensive Applications, by myself and @chris.blue, is finished and sent off to the printers! Ebooks should be available in the next week, and print books in 3β4 weeks. Sigh of relief. π
(BTW, this is a good opportunity to support your favourite local bookshop!)
AI fatigue is real and nobody talks about it
Fantastic read. Really like the summary at end. "The tool is new, the patterns are still forming, and the industry is pretending that more output equals more value. It doesn't. Sustainable output does."
siddhantkhare.com/writing/ai-f...
vibe - Easy Linux virtual machine on MacOS to sandbox LLM agents
Only for ARM, written in Rust, uses a Debian Linux base image. Guess these kind of mechanism will keep popping up until they standardize as well. Let's see if the AI vendors come up with something.
ttl - Fast, modern traceroute with real-time TUI, a better mtr
Always interesting to see how a tool from almost 4 decades ago gets replaced due to modern requirements.
LibSQL JDBC driver
libsql is a sqlite fork from Turso to move to more modern technologies and implement more of a community model. I was always missing a JDBC driver, but apparently dbeaver, a company creating a database management tool has stepped in.
How Kubernetes Broke the AWS Cloud Monopoly
Interesting take on why a vendor neutral orchestration layer made it much harder for AWS to keep their cloud dominance.
raft-ebpf - RAFT consensus implementation in eBPF with Rust using Aya library
Uses tc classifiers to intercept Raft packets before going through the whole kernel networking stack and sends to a ringbuffer for processing. Wondering why XDP wasn't used here.
think very hard if you consider this a downgrade, being a quality gate from a business perspective. Also I am exaggerating here, but you get the point.
TLDR; If you want to accelerate AI adoption, make sure, there is also support for the boring parts.
, maintaineability, Monitoring & Alerting, on-call documentation, dashboards, the corner cases, etc.
Removing the most interesting parts might mean a less interesting job for some engineers, if they consider themselves downgraded to work only on those second-step parts or become merely reviewers