How to write slow Rust code
I have recently published a blog post that, as I had expected (actually, hoped for, as that would attract people to contribute to the “study”), generated quite some polemic on the Internet!
The latest blog posts to take off on Hacker News. 21,828 posts.
I have recently published a blog post that, as I had expected (actually, hoped for, as that would attract people to contribute to the “study”), generated quite some polemic on the Internet!
The Algolia-powered Hacker News API returns nested comment threads that look like this: https://hn.algolia.com/api/v1/items/27941108
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
To my surprise, I recently found out about 2 new additions to the list of high-level commands: git restore and git switch
Some researchers in France put together a comparison showing lots of ways you could implement realtime collaborative editing (like Google Docs). They implemented lots of algorithms - CRDTs and OT algorithms and stuff. And they benchmarked them all to see how they perform. (Cool!!) Some algorithms worked reasonably…
For the past year, the [Sorbet](https://sorbet.org/) team has been working on an experimental, ahead-of-time compiler for Ruby, powered by Sorbet and LLVM. Today we're sharing the source code for it. It lives alongside the existing code for Sorbet on GitHub, mostly in the `compiler/` folder:
When M1 Macs were launched, a new GPU with iOS-like architecture started driving the external monitors. This meant that the old method for controlling monitors using DDC wouldn't work anymore. Apps like Lunar and MonitorControl had to find other ways to change the brightness of the monitors.
The C strcpy function is a common sight in typical C programs. It’s also a source of buffer overflow defects, so linters and code reviewers commonly recommend alternatives such as strncpy (difficult to use correctly; mismatched semantics), strlcpy (non-standard, flawed ), or C11’s optional strcpy_s ( no correct or…
A case study of how Elixir is being used at X-Plane.
Dwarf Fortress is one of those oddball passion projects that’s broken into Internet consciousness. It’s a free game where you play either an adventurer or a fortress full of dwarves in a randomly generated fantasy world. The simulation runs deep, with new games creating multiple civilizations with histories…
My list of “Probably Are Gonna Need It” security features for your web app – things that you should build up-front, not wait until you need them (when it’s already too late).
m4 is a macro processor, in the sense that it copies its input to the output, expanding macros as it goes
In this article, the author shares six command-line tools that can enhance productivity for programmers. These tools include `broot` for navigating...
Co-authored with Dr Paidi O’Raghallaigh and Dr Stephen McCarthy at Cork University Business School as part of my PhD studies, and originally published by Cutter Consortium’s Business Agility …
The git bisect command helps you identify the first commit in a range that broke something. You give it a good commit and a bad one, and it will do a binary search between the two to find the first bad commit. At each step, you say either git bisect …
In this blog post, we take a look at the Elixir programming language from the engineer/business perspective.
The creators of Meow hash made security claims; we break them all.
With Postgres, you don't need to immediately look farther than your own database management system for a full-text search solution. If you haven't yet given Postgres' built-in full-text search a try, read on for a simple intro.
Today we’re talking about ALF. It’s a surprising move for Nicole Express; we do not condone cat-eating. But neither did Alf, eventually. In any case, we’re n...
I have to admit, my research blog posts are getting longer and longer. From one side I find it genuinely encouraging, because if one gets so much information just by scratching the topic, imagine what’s hidden beneath the surface! One university professor once said “what could be interesting in databases?”, and it…
A mega-rant about all the things I find bad about Julia.
Three years ago I found a 32 GB memory leak caused by CcmExec.exe failing to close process handles. That bug is fixed, but ever since then I have had the handles column in Windows Task Manager ena…
So! Rust futures! Easy peasy lemon squeezy. Until it’s not. So let’s do the easy thing, and then instead of waiting for the hard thing to sneak up on us, we’ll go for it intentionally. That’s all-a...
Without psychological safety, respect, and trust, none of the following is possible. The way we work, the work we do, and the organizations within which we work are all part of a connected system. You cannot change anything without changing everything. You cannot improve a system by tinkering with the parts. Process…
Every software team says they do Agile and yet almost nobody is Agile. How did we get to this point? Where do we go from here?
The other week, I stumbled on the post Inserting One Billion Rows in SQLite Under A Minute , which was a funny coincidence, as I was just in...