I poked fun at LLMs in a previous post, so it's obviously time to contradict myself (:-)) Trying Pull Requests with CodeRabbit One of the things I think LLMs can do well is compare my text with a whole body of other people's work. In that vein, CodeRabbit now offers to review git pull requests… Continue reading Contrarily, Rabbits!
Epic Fail
In the search for true artificial intelligence, large language models are a horrible failure... which look like a success. The Good With large language models, we have statistical predictors for human language. They do an amazingly good job of sounding like the humans whose words were used to train it. They're so good we can… Continue reading Epic Fail
Hey, I get to do a talk!
This is for October 23rd and 24th, hosted at p99conf.io Queues are both wonderful and horrible. They allow people to make credible predictions in an area of computer science that contains a lot of Scientific Wild-Ass Guesses. At the same time, whenever you develop a queue, it means you're overloading something. This talk looks at… Continue reading Hey, I get to do a talk!
Choosing What to Measure
That's me on top, fanning the ear and thinking "maybe my team should measure fan performance". We've just got a new service, and we're wondering what to measure to see if it's performing well. Introduction Everyone has a different idea of what's important, but the real question is how well is the elephant doing it's… Continue reading Choosing What to Measure
A Boring Cowboy Company
I used to work for Sun, where we could try almost anything, but releases quietly rolled out each quarter like clockwork, each with a few more features and a few less bugs. Introduction I also worked for a big European publisher's MVS shop, where "Everything not forbidden is compulsory". Deployments were scary times, and often… Continue reading A Boring Cowboy Company
Capacity Planning (and application performance)
One of my smarter colleagues once described capacity planning as not so much telling us when the house is burning down but rather telling us when there’s a small gas leak. Introduction That’s different from performance engineering, where you’re trying to tell if you’re going to burn the house down or not. The latter was… Continue reading Capacity Planning (and application performance)
Cruelty in Load Testing
As you probably know, I have a record-replay program that I have used for load testing for some years. This year, I had what looked like it might be a "thundering herd" problem, way too many packets hitting a REST service at the same time. But how could I find out? Perhaps by artificially hitting… Continue reading Cruelty in Load Testing
The Linker Aliens Live!
http://www.linker-aliens.org/ I used to spend a week a quarter with these folks, learning furiously. I though they'd been lost in the mists of time
Why Have a Time Budget?
In my last post, I showed how the Go built-in benchmark program make it easy to do time budgets. But what is a time budget, and why would I want one? To Save Effort! Tony Hoare famously said "premature optimization is the root of all evil" , a saying which was popularized by Donald Knuth.… Continue reading Why Have a Time Budget?
Go makes time budgets cheap
I usually get push-back when I say "your programs should have a time budget", because making what amounts to a reusable benchmark sounds hard. Folks don't want to spend the time (meaning money). Surprise: golang's micro-benchmarking facility makes it dead simple. What is a time budget, anyway? I have lots of services that need to… Continue reading Go makes time budgets cheap
