Horrible Code, Clean Performance
A short tale of how horrible code yields clean performance.
A short tale of how horrible code yields clean performance.
Even though I don't respect podcasts as an information delivery system, I recently listened to a podcast that felt like having an epiphany.
img {border-style: groove; border-width: 1px;} I love Autohotkey so much that it keeps me on Windows. It’s the best GUI automation tool out there. Here’s a shortcut that opens my current browser tab in the Wayback Machine: #HotIf WinActive("ahk_exe firefox.exe") >!^s:: { Keywait("RControl") Keywait("RAlt")…
How to give GPT access to large amounts of data
Learn how Nix Flakes improve the composability and reproducibility of builds in Nix and Devbox.
This is the latest release of Enlightenment. This has a lot of fixes mostly with some new features.
If you have ever used JavaScript in the past, there is a high chance you have encountered the async / await syntax. async / a
I thought it would be fun to go outside of my comfort zone of web development topics and write about something completely different and new, something I have never written about before. So today, I'm…
I've written tens of thousands of lines of code with Remix and I want to tell you why I love using this framework.
Some time ago I was using Logic Pro to record some of my music and I needed a way to start and stop the recording from an iPhone, so I found about Logic Remote…
If you are anything like me, you appreciate solving your every day simple tasks directly from the command line. Creating crafty single shot command lines or a small shell script to solve that special task you figured out you needed and makes your day go a little smoother. A fellow command line cowboy. Video…
The result of my exploration of Elixir clustering and automating global network discovery and connection over Tailscale.
How to speed up a ubenchmark 300x Static Hermes: How to Speed Up a Micro-benchmark by 300x Without Cheating This is th...
A few months after my contract with Haiku, Inc. began, I rewrote the implementation of the Haiku kernel’s condition variables (as opposed to our userspace condition variables, which are from POSIX.) As this new implementation has run in Haiku …
This is the second post in the series about effortless performance improvements in C++. Check the first post to get the full story!
write posix shell 2023-03-10 /\ {.-} ;_.-'\ { _.}_ \.-' / `, \ | / \ | ,/ [0] \|_/ what is shell? most people in tech are familiar with shell scripts. but shell is a language! ... shit. actually. wait, let me rephrase- most people _use_ shell. most people _avoid_ shell. but mostly most people _hate_ shell. but should…
In C++20, string and vector are marked constexpr, which means they’re somewhat usable in compile-time programming. For example, we can write:
We're launching the next major version of Lit
This is the story of a clever trick that's been around for at least 35 years, in which array values can be left uninitialized and then read during normal operations, yet the code behaves correctly no matter what garbage is sitting in the array. Like the best programming tricks, this one is the right tool for the job…
Premature optimisation might be the root of all evil, but overdue optimisation is the root of all frustration. No matter how fast hardware becomes, we find it easy to write programs which run too slow. Often this is not immediately apparent. Users can go for years without considering a program’s performance to be an…
This critical role would not be possible without funding from the OpenSSF Alpha-Omega Project. Massive thank-you to Alpha-Omega for investing in the security of the Python ecosystem! Python ...
We’re happy to announce the first release of Topiary, a formatter for many languages that leverages Tree-sitter.
This post describes the design and implementation of a runtime benchmark suite for measuring the performance of Rust programs, which was recently added into the Rust compiler suite. I have recently blogged about how the whole benchmark suite works, so feel free to read that post first if you want to gather a bit more…
We describe a graph-theoretic analogue of vector calculus. The linear operators of vector calculus (gradient, divergence, laplacian) correspond to the matrices naturally associated to graphs (incidence matrix, adjacency matrix). This analogy is useful for formalizing the discretization of some problems in image and…
I’ve been writing a pubsub listener for work recently and had this silly “shower thought”: the ideal queue should be empty. Why? If the queue is not empty, it means that whatever job is consuming from the queue is not keeping up with messages coming into it. Ok, then if queues are supposed to be empty, then what are…
Fixit is dead! Long live Fixit 2 – the latest version of our open-source auto-fixing linter. Fixit 2 allows developers to efficiently build custom lint rules and perform auto-fixes for their codeba…
Explore the risks associated with unaligned pointer accesses in GCC. Understand how these assumptions can lead to unexpected program behavior and potential security vulnerabilities. Learn best practices to mitigate these risks and write secure code.
There's been a bit of a brouhaha these last weeks as parts of the Internet suddenly woke up to the realization that most Single Page Apps are slow and overcomplicated, and — shock horror — it turns out that Facebook, the lovable scamps that brought us React and QAnon, have conducted themselves badly! Refreshingly…
bfs is a tool I wrote to do b readth- f irst s earch through a filesystem. It started out simply enough, but over the years it’s grown to include almost every feature from every other find implementation I could find, plus many of its own innovations. The new 3.0 release series includes the biggest new feature so far…