An analysis of the Rabbit R1 APK
Emerge Tools analysis of the Rabbit R1 APK.
Emerge Tools analysis of the Rabbit R1 APK.
In this article I describe the DEFLATE algorithm that GZIP implements and depends on. The DEFLATE algorithm uses a combination of LZ77, Huffman codes and run-length-encoding; this article describes each in detail by walking through an example and developing source code to implement the algorithm. My aim is to…
Using a game use-case to motivate and explain PIDs
LMAX is a retail financial trading system that can handle that can 6 million orders per second on a single JVM thread. The business logic runs in-memory surrounded by disruptors using event sourcing.
A compelling idea in the Transient UI package is the ability to craft interfaces where commands specific to a context can be discovered and used. Such contextual interfaces enable a user to...
In 1890 Giuseppe Peano discovered a square-filling curve , and a year later David Hilbert published his variation . In those days people did not waste readers’ attention with dribble – Peano explained it all on 3 pages, and Hilbert on just 2 pages, with a picture!
PyPy v7.3.16: release of python 2.7, 3.9, and 3.10 The PyPy team is proud to release version 7.3.16 of PyPy. This release includes security fixes from upstream CPython, and bugfixes to the garbage col
Last weekend I wanted to get some inspiration to write some TLA+ spec and I got my hands back on the paper Time, Clocks, and the Ordering of Events...
Print good, not bad!
Given that events play such a central role in event-driven architecture, there’s an astonishing lack of agreement on what should be contained in an event. This may be rooted in the fact that, depending on your perspective, events fulfill different purposes.
deadcode is a new command to help identify functions that cannot be called.
Good development practices for modern Python
learning a lot about sed, awk and other commands by making a spotify statusbar widget
Arroyo 0.10 has an entirely new SQL engine built with Apache Arrow and DataFusion. It's much faster, smaller, and easier to run. Read on for why and how we're making this change.
Smaller programs that do less work.
UPDATE MARCH 2025: This post, and the template attached, were written for Typst v 0.11 – Typst has upgraded twice since then, and this template will not work with the newer versions of Typst. Please see the new post (Mar 26, 2025) at A New Typst Template for Pandoc
Many years ago, Kragen complained about the implementation and performance of Java regexes , and suggested that an implementation that emitted JVM bytecode could perform better. It's been a minute, but I'm happy to report that complaining on the Internet has served its purpose.
For the past months I’ve been keeping a list of things I encountered in PHP that I’ve found to be problematic, or in other words things that annoy me.
author, Eric Holscher& the Write the Docs community,. Documentation as Code ( Docs as Code) refers to a philosophy that you should be writing documentation with the same tools as code: Issue Tr...
The seedy underbelly of gRPC.
An investigation into the internals of Sidekiq, one of the most popular Ruby background job processors.
Last time we counted CPU instructions, let’s look at syscalls now!
A whistlestop tour of the cool bits of DuckDB
The personal website of JT Archie. Includes a blog, work ethic, and projects they have worked on.
As a side-quest I recently decided to write a branchless utf8 decoder utilizing the pext or "parallel extract" instruction. It's compliant with rfc-3629 , meaning that it doesn't just naively decode the code-point but also checks for overlong encoding, surrogate pairs and such. Compiled with gcc -O3 -march=x86-64-v3…
We discuss streaming and vectored I/O in Postgres 17. This is an important step towards implementing asynchronous I/O in Postgres. In Postgres 17 we do not yet have asynchronous I/O, but we do see a performance benefit from what is essentially a refactoring work around the internal APIs.