Java’s String.indexOf can be slow (quadratic)

lemire.me

In Java, you find the location of a substring using indexOf . String haystack = "The quick brown fox jumps over the lazy dog" ; String needle = "fox" ; int index = haystack . indexOf ( needle ); Naively, you might implement indexOf by a loop inside a loop, like so. int naiveIndexOf ( String haystack , String needle ) { for ( int i = 0 ; i m String haystack = "a" . repeat ( n ); String needle = "a" . repeat ( m ...

Optimizing memory use in a Markdown parser

blog.kowalczyk.info

I’m porting gpui-component (a Rust UI component library built on GPUI) to C++ as gpui-cpp . By which I mean: my friend Claude does the porting, I’m just directing. It uses markdown-rs (a CommonMark + GFM parser) markdown parser so I ported it too. Then I optimized it. This post describes what I did with the intention of teaching other how to optimize C++ code. The starting point There are 2 kinds of markdown parsers: those that stream nodes as they pars...

Sam Wilson’s thought of the day

www.rubenerd.au

Sam posted this on his blog ( RSS feed ) in the context of “AI” code review comments, but is broadly applicable: I wish people would just go back to being themselves. By Ruben Schade in Sydney, 2026-08-22. Sam posted this on his blog ( RSS feed ) in the context of “AI” code review comments, but is broadly applicable: I wish people would just go back to being themselves. By Ruben Schade in Sydney, 2026-08-22. Sam posted this on his blog ( RSS feed ) in the conte...

Concurrent Servers: Part 8 - Go

eli.thegreenplace.net

This is part 8 in a series of posts on writing concurrent network servers. In this part, we'll switch to Go and see how it tackles the challenges described earlier in the series. All posts in the series: Part 1 - Introduction Part 2 - Threads Part 3 - Event-driven Part 4 - libuv Part 5 - Redis case study Part 6 - Callbacks, Promises and async/await Part 7 - Rust Part 8 - Go (this part) This post assumes a basic familiarity with the Go programming language. Sequential ...

seasons

jamesg.blog

poems embody Nature, of seasons (for)ever- changing; living in time. poems embody Nature, of seasons (for)ever- changing; living in time. poems embody Nature, of seasons (for)ever- changing; living in time.

Getting Better Performance in Livelymerge

www.inkandswitch.com

Introduction In the Livelymerge project, Dan Ingalls, Peter van Hardenberg, and I (Alex Warth) are building a Lively Kernel-like system whose heap is an Automerge document. (See the earlier notes in this series for the object model and support for local state .) One of the challenges I listed at the start of this series was performance : can programs whose objects live in an Automerge document run fast enough for authentic use? For a while the answer was no. Here’s the example th...

A Tale of Two Flink Autoscalers

netflixtechblog.com

Samuel Yeboah , Francesco Di Chiara and Mingliang Liu Today, Netflix runs two Flink autoscalers. That is exactly one more than we want. We built the first one in-house years ago, when there was no mature option suited to our platform. The second came from the Apache Flink community, and it can scale workloads our homegrown system was never designed for. We now run both in production and are steadily converging on the open-source one. Along the way we learned some hard lessons about metrics, c...

Pitfalls of Benchmarking on Modern Systems

stefan-marr.de

Modern computer systems are quite fascinating. They are highly complex, run a lot of software, and their performance characteristics are hard or impossible to predict. Earlier this year, I gave a lecture on benchmarking, which for lack of generic and always-applicable advice, I started with a brainstorming session about its pitfalls. Since systems have become so complex that we rarely know what happens exactly. We are prone to simply guess what’s going on. Or rather, we should hypothesize a...

Reading List 08/22/26

www.construction-physics.com

View of Haarlem with Bleaching Grounds , by Jacob van Ruisdael, via WikiArt . Welcome to the reading list, a weekly roundup of news and links related to buildings, infrastructure, and industrial technology. This week we look at Los Angeles’ ADUs, electrical transformer manufacturing, gas turbine power plants, how water in the Colorado River is used, and more. Roughly 2/3rds of the reading list is paywalled, so for full access become a paid subscriber. No essay this week, but I have a very lon...

the figure of the earth

computer.rip

Brigadier Martin Hotine is not quite the image of a decorated officer. His name is styled with trailing acronyms that make it no surprise that there is an official portrait, yet in that painting he appears disheveled, his tie far off center in the collar of his jacket. He leans off to one side, not quite like he is sitting for a portrait, but more like he was caught in the middle of something. Photos of the man are often similar: he's distracted, looking down at his desk or staring into space. H...

s21e24: What if they’re all right?; I didn’t make this; I write because

thingsthatcaughtmyattention.com

0.0 Context Setting Friday, 21 August 2026 in Portland Oregon where the timer continues to tick down to Skynet Sentience day. A busy day today: the 9am show, and then a couple calls, along with making sure that I get some proposals and overviews out to people. 0.1 Events That’s a wrap on How People Work, Live! ... with Marcin Wichary. You can go watch the recording now , or you can look at the playlist , or even (deep breath) subscribe to my channel . Next up! How People Work,...

A Syncthing and SQLite Gotcha

borretti.me

So, I have this little app, Epoch , that I use to keep a journal. It’s a tiny Rust web app that runs as a systemd service and uses SQLite as the database. I use a desktop and a laptop regularly, and use Syncthing to synchronize them, including Epoch’s database. That way I can use the app on both devices without needing a server to synchronize them, the tradeoff being that I have to make sure the sync is finished before performing any mutations. But I had this bug. Say I edit today...

You should never be angry at work

seangoedecke.com

I try not to give a lot of prescriptive advice about working in tech companies 1 . There are many ways to be successful, and every company works differently. If you’re shipping projects and your management chain is happy, it doesn’t really matter how you’ve accomplished it. However, there’s one thing that I do think is solid advice: you should never be angry at work . Anger in the workplace Anger in the workplace is toxic. An angry colleague immediately becomes a new problem to b...

On values, morals, and doing business

manuelmoreale.com

I caught wind of the news that MacStories is back posting on X, the “everything platform”, and that seems to have caused some backlash. I am not a reader of MacStories (because tools are tools and I don’t read about new computers the same way I don’t read about new washing machines) and I’m also not on X. So why do I even care about this news? Well, the short answer is that I don’t. But after the move (I guess because of the backlash?) Federico Viticci, MacStories’ Founder, posted ...

Shield AI’s X-BAT named official autonomous aircraft of the Army-Navy Game

shield.ai

RENO, Nev. (August 20, 2026) — Shield AI, the defense-tech company building the world’s best AI pilots and next-generation aircraft, today announced its X-BAT has been named the Official Autonomous Aircraft of the Army-Navy Game presented by USAA, one of the most storied rivalries in American sports. Shield AI also joins as an Associate Sponsor of America’s Game. The 127th meeting of the United States Military Academy at West Point’s Army Black Knights and the United States Naval Academy...

Rust Glancer

matklad.github.io

Rust Glancer Aug 21, 2026 Rust Glancer , a functional LSP server for Rust which uses two orders of magnitude less RAM, is incredibly cool. Go check it out! This post started as a comment on lobste.rs, but I figured it out that it’s better to publish it somewhat more prominently. Don’t expect polished writing though! Some thoughts: rust-analyzer uses rowan for syntax tree representation Yeah, rowan is garbage :P I was really thinking about incremental parsing, i...

IBM Employee Statistics 2026

www.makerstations.io

IBM employed 264,300 people across IBM and its wholly owned subsidiaries at December 31, 2025, down from 270,300 a year earlier. The company reported $67.5 billion in 2025 revenue with a smaller workforce than in any of the three prior years. This post collects the verified workforce numbers IBM published in its 2025 Annual Report, its 2026 proxy statement, and its own responsible business data summary. IBM Employee Statistics 2026 264,300 Employees at IBM and wholly owned subsidiaries, ...

Fast and Hard Code

lucumr.pocoo.org

One of the memes on Twitter is that “programming is solved now.” I’m not sure to what degree it is, but one thing is pretty clear: the act of familiarizing yourself with a language no longer matters and some of the friction that mattered for humans does not matter for agents. As a result, LLMs make language choice much less consequential than it used to be. If you don’t like the choice, you can seemingly rewrite it in another language and you can make it pick a language that you, as ...

‘Huge Breakthrough’ in the Math of Imbalance

www.quantamagazine.org

One does not need a doctorate in mathematics to split 12 eager trivia buffs into two competitive teams. But consider that each person arrives with unique strengths and liabilities: One may be a geography obsessive with no ear for music, another could be a naturalist who doesn’t own a television, and another could be a cinephile who never reads. Balancing traits between two camps becomes a lot… Source One does not need a doctorate in mathematics to split 12 eager trivia buffs into two comp...

Skyroot Vikram-1, the least worst case scenario for India’s launch crisis

jatan.space

First launch of Skyroot’s Vikram-1 rocket from ISRO’s Sriharikota launch complex. Images: Skyroot Aerospace The successful launch of Skyroot Aerospace’s small Vikram-1 rocket on July 18 , sans the mixed outcome for payloads , has been hailed as a revolutionary launch success for India by the company, ISRO, the Indian government, various media outlets, industry executives, and people at large. That it’s rare globally to achieve orbit on first attempt bolstered said outlook and emot...

Permanent Reference Media

nate.mecca1.net

See, I told you I’d get tuckered out writing about vehicles and be back to protocols soon enough. “The internet is forever” is a great warning against the inability to unshare content, but completely irrelevant in regard to linkrot and long term preservation. Links I save or share here often are offline or significantly altered on a scale of months or years, much less over the course of decades. Http is efficient; “go get that file from that server” is fast, but does a rather poor job ...

Interesting links - August 2026

rmoff.net

In the UK August is known in the press as "silly season" (because nothing of note happens, so the only stories published are nonsense ones). Turns out this doesn’t apply to the world of data and AI blog posts - still over 50 interesting ones for me to share with you this month. In the UK August is known in the press as "silly season" (because nothing of note happens, so the only stories published are nonsense ones). Turns out this doesn’t apply to the world of data and AI blog posts - s...

Getting the Steam Deck LCD working on a Raspberry Pi

www.jeffgeerling.com

The BOE TV070WXM-TV0 LCD used in the original Steam Deck can be had for around $30. It's a serviceable 7" touchscreen with 400 nits of brightness and a resolution of 1280x800 (for a sharp 216 ppi). The specs are a lot nicer than the Pi 7" Touch Display , which costs twice as much, with giant bezels and half the resolution! Until today, the Steam Deck LCD didn't work with a Raspberry Pi. But the folks at Scandent were trying to standardize on a mass-market touchscreen for one of the...

Random Old Posts

TitleDate
Entertaining Exadata FUD from HP
rmoff.net
April 11, 2011
Importing VMWare and VirtualBox VMs to Proxmox
rmoff.net
June 07, 2016
Daylight Savings and the Case for the Pre-Julian Calendar
theluddite.org
March 01, 2024
Koh Phangan is the Disneyland of Partying
levels.io
May 19, 2013
How I do, and don't, use AI on this blog
rmoff.net
March 12, 2026
HTML event handler attributes: down the rabbit hole
notes.eatonphil.com
April 26, 2022
Appreciating Duolingo
blog.singleton.io
April 11, 2020
Serious fun
www.scattered-thoughts.net
October 20, 2024
All feelings mean something but it might be something dumb
anniemueller.com
December 07, 2025
Artemis III, test like you won’t fly?
jatan.space
June 15, 2026
Miscellaneous ideas
www.scattered-thoughts.net
March 23, 2024
Don't delegate understanding
stephango.com
August 13, 2023
Search
rmoff.net
January 01, 0001
Taming Your Infinite Queues
taylor.town
October 30, 2023
go big or go small or go home but don't go medium
taylor.town
August 01, 2023
Management Basics: Determining a Performance Rating
www.elidedbranches.com
May 29, 2021
My latest Termius and tmux setup for every site
levels.io
May 22, 2026
Impromptu disaster recovery
fasterthanli.me
March 28, 2025
Generalized Language Models
lilianweng.github.io
January 31, 2019
Use Chameleon templates in the Robyn web framework
mkennedy.codes
March 19, 2026
Meta is allegedly building its own search engine so its AI queries don't train Google's models
levels.io
August 06, 2026
The 100 Thing Challenge – From 200 to 20 things in 3 months
levels.io
July 20, 2013
Poem: Back to the Moon..
jatan.space
April 18, 2026
How fast do I talk?
www.hillelwayne.com
October 28, 2019
Vegetable stock: my secret lover
blog.andymatuschak.org
July 26, 2011
Things That Is Wood
samhenri.gold
December 26, 2024
Book Review: The Developer's Guide to Content Creation
healeycodes.com
March 08, 2020
First-timer tips for Oracle Open World
rmoff.net
October 08, 2014
An Elixir based payment processor for the Coinparty hackathon
www.jonashietala.se
November 30, 2020
The End of the Tunnel
www.jonashietala.se
October 19, 2011
“So what do you call a phone that's bigger than plus size?”
www.youtube.com
January 08, 2023
Appreciation of automated IX Quarantine LAN testing
blog.benjojo.co.uk
February 01, 2024
My deleted review of this restaurant
kinduff.com
December 13, 2024
Day 23 of Learning 3d 🎮 Filling up the street and adding shadows
levels.io
February 25, 2016
📷 Biiiiiig stretch!
moonbase.lgbt
November 26, 2024
Patchwork 03 · Dynamic history
www.inkandswitch.com
February 22, 2024
Monitoring OBIEE with Elasticsearch, Logstash, and Kibana
rmoff.net
October 21, 2014
User-Agent: moz://a
steveklabnik.com
December 12, 2017
Estimate Solar + Storage Market Share
austinvernon.site
July 22, 2021
Debezium & MySQL v8 : Public Key Retrieval Is Not Allowed
rmoff.net
October 23, 2019
📝 Rachel’s iPod
moonbase.lgbt
July 21, 2025
Becoming
taylor.town
September 15, 2018
Book Review: Antimemetics
benjamincongdon.me
December 06, 2025
Hiring Content Writers: A Guide for Small Businesses
mtlynch.io
September 30, 2019
email encryption
computer.rip
July 19, 2026
Deploying Oracle Business Intelligence Enterprise Edition on Sun Systems
rmoff.net
November 12, 2009
SampleApp v406 - Automatic startup of OBIEE
rmoff.net
June 17, 2014
Writing a minimal in-memory storage engine for MySQL/MariaDB
notes.eatonphil.com
January 09, 2024
Ember Data: ‘DS’ is not defined
steveklabnik.com
July 05, 2015
Baby's first wasm compiler
www.scattered-thoughts.net
August 28, 2023
I installed Cloudflare Tunnel to secure my VPS even further and block all inbound traffic on Hetzner
levels.io
May 06, 2026
Current 2024 - 5k Fun Run (or Walk)
rmoff.net
September 02, 2024
Exalytics - TimesTen and OBIEE connectivity
rmoff.net
July 23, 2012
Imp: live repl
www.scattered-thoughts.net
September 04, 2021
I glued an AirTag to a yogurt box to track if recycling is real
levels.io
December 23, 2025
UKOUG TEBS 2009
rmoff.net
December 03, 2009
Kitty Pryde & Riff Raff - Orion's Belt
levels.io
February 13, 2013
Extrinsic Hallucinations in LLMs
lilianweng.github.io
July 07, 2024
Everything you should know and track about NASA’s Apollo-style Artemis rejig in its chase of China to the Moon
jatan.space
March 02, 2026
Metrics For Your Web Application's Dashboards
sirupsen.com
March 19, 2022
Building my ultimate keyboard
www.jonashietala.se
November 26, 2024
Don't Fight Customers
taylor.town
July 25, 2023
J Notation as a Tool of Thought
www.hillelwayne.com
August 14, 2020
Finding memory leaks in Postgres C code
notes.eatonphil.com
March 27, 2024
Go allocation probe
www.scattered-thoughts.net
July 18, 2025
0040.1: meta in myanmar
www.scattered-thoughts.net
September 29, 2023
Hunting down the stuck BGP routes
blog.benjojo.co.uk
April 21, 2021
How to use your iPhone as a better Apple TV alternative (with VPN)
levels.io
January 12, 2016
How Binary JSON Works in YDB
laplab.me
June 08, 2022
Recovering My Mom's Gmail Password
mlajtos.mu
March 20, 2021
Chicken Tikka Masala
blog.singleton.io
September 01, 2020
Vibe Coding for Beginners: Build your First App with AI
nmn.gl
April 16, 2025
Up like a Sun, Down like a Pancake
www.jonashietala.se
August 25, 2012
A Practical Guide to Modular Monoliths with .NET
chrlschn.dev
January 14, 2024
Starting a minimal Common Lisp project
notes.eatonphil.com
March 05, 2018
The Rise of the Electric Scooter
blog.codinghorror.com
September 12, 2019
Using Graph Analysis with Neo4j to Spot Astroturfing on Reddit
rmoff.net
December 01, 2025
HYTRADBOI 2022 postmortem
www.scattered-thoughts.net
May 02, 2022
Learning Apache Flink S01E05: Installing PyFlink (with some bumps along the way…)
rmoff.net
October 25, 2023
Starring Jessie
ohhelloana.blog
December 11, 2019
A dive into the world of MS-DOS viruses
blog.benjojo.co.uk
January 04, 2019
The Great Aboveground Empire
ascii.textfiles.com
May 22, 2023
Stop using device breakpoints
adamsilver.io
March 28, 2017
Seriously: numbers: use them!
steveklabnik.com
September 27, 2012
Rich and anonymous is the new rich and famous
levels.io
October 06, 2021
The Revenge of the Data Scientist
hamel.dev
March 26, 2026
0053: consulting, go tips, benchmark_mode, niri, linkrot, sea of nos, llm outsourcing, books
www.scattered-thoughts.net
May 31, 2025
Unexplanations: sql is syntactic sugar for relational algebra
www.scattered-thoughts.net
March 18, 2024
Things that go wrong with disk IO
notes.eatonphil.com
March 27, 2025
Zest: dialects and metaprogramming
www.scattered-thoughts.net
February 28, 2024
Kyle Explains "Legacy Software" to the Aliens
taylor.town
May 20, 2024
AI inference is obviously profitable
seangoedecke.com
June 26, 2026
Artificial
www.inkandswitch.com
June 19, 2026
Making a const version of Rust's array::from_fn - How hard can it be?
gendignoux.com
June 17, 2024
Matz is nice so we are nice
steveklabnik.com
August 19, 2011
Regulation Works
third-bit.com
June 16, 2026
What is Color Banding? And what is it not?
simonschreibt.de
December 02, 2015
The ideal place to start a startup is not necessarily in Silicon Valley
levels.io
October 27, 2014
2012 in Review
www.jonashietala.se
December 31, 2012
Minimal architect sketches turned into renders with Interior AI v2
levels.io
December 04, 2023

About

I couldn't find a RSS reader that I liked so I decided to build my own.I thought it would be neat if it was public and formatted kind of like a magazine or a newspaper, so here we are.This is a feed of all the feeds that I want to keep up with. I try to keep it independant and keep out things likeenigneering blogs that are just advertisements, but its all up to my discretion.

This page updates daily at 8:11ish AM Mountain Time. The following blogs are featured on the page currently:

For the full list of feeds that are followed see the raw list here.