1-Click GitHub Token Stealing via a VSCode Bug
My blog, mostly about programming
The latest blog posts to take off on Hacker News. 1,421 posts.
My blog, mostly about programming
When we first announced the transition to Plasma Wayland, one of Martin's slides from stated, "It's done when it's done!"
Apple rejected WhisperPad under Guideline 2.4.5 for using the accessibility API to paste transcribed text. After an appeal that ended in another rejection, I split it into two versions — a compliant one on the App Store, and the original auto-paste version, direct.
I never thought it could happen to me. I mean, parentheses? In this day and age? But for the past couple years, my go-to programming language for fun side projects has been a little Lisp dialect called Janet. (print "hey janet") I like Janet so much that I wrote an entire book about it, and put it on The Internet for…
We’ve always found strace useful but somewhat hard to work with. Its output is often inscrutable, it’s hard to follow subprocesses or threads, and if you wan...
Let’s say you’re writing an image processing program. The program takes in an image, converts it to floating point, does some processing and finally saves the modified pixels to disk as 8-bit colors. The question today concerns how exactly the integer-to-float conversion should be done. There are two approaches which…
I’m having a lot of fun with reverse engineering lately, so when I was looking over the service manual for my guitar amp, a Yamaha THR10c, and saw references to a UART header in the schematic, I got excited. I wondered if anything cool was hiding in there. Next to it was a JTAG header. I knew next to nothing about…
The Only Programming Language Built on Mathematics, Not Fashion
While Claude Code and Codex have significantly accelerated the automation of software development, limitations in the context window of a…
Hot takes and cold truths on software, startups, and the lies we tell ourselves.
VideoLAN announces dav2d, an open source AV2 decoder — continuing the work started with dav1d for AV1.
The trick that makes GHC’s ApplicativeDo optimization faster is structurally identical to how biologists predict RNA folding.
Today we will pour one out for the vaunted technical interview process, which is on its last leg. And we’ll talk a little about what’s…
A technical deep dive into how we built the @pierre/diffs package and CodeView component for zero-blanking diff rendering.
DBOS recently argued that Postgres is all you need for durable execution: if you already trust your database, you do not need a separate orchestration tier. I a…
An accidentally fast variable-length integer encoding
By Terts Diepraam Almost exactly one year ago, we announced Roto, a JIT-compiled embedded scripting language for Rust applications. A lot has happened since then that we'd like to tell you about! 💡Along with this post, we published Roto v0.11.0! You can check out the changelog
The first batches of Quake executables, quake.exe and vquake.exe were programmed on HP 712-60 running NeXT and cross-compiled with DJGPP running on a DEC Alpha server 2100A. In June of 1996, having shipped their title but concerned with NeXT stagnation, id Software switched their development stack.
Hook fields that rewrite commands mid-flight, persistent agent memory, auto-mode rules in plain English, self-improving dream loops, and every example is copy-paste ready.
Empowering everyone to build reliable and efficient software.
In the 2010 film Tron: Legacy , there's a scene where the main character Sam Flynn sits down at a computer in his father’s study, and types some commands to try to figure out what Flynn senior had last been working on, before mysteriously disappearing.
Looks like this ended up on the HN front-page: HN Thread Late last year I started writing a math blog and decided to use LLMs to polish/enhance my writin...
net/http/httptrace has been in the standard library since Go 1.7 and most Go developers I talk to have never used it. It exposes hooks for the points in an outgoing HTTP request that you usually cannot see from outside the transport: DNS resolution, connection acquisition, TLS handshake, the moment bytes go on the…
In software programming, the product between two integers is often computed to a fixed number of bits with overflow. Consider 8-bit integers. If you multiply 127 by 127, you get back the number 1 as an 8-bit unsigned integer, with an overflow. The actual full product is 16129. To represent 16129, you typically use 16…
_posted by Stephen De Gabrielle and John Clements_ We are pleased to announce Racket v9.2 is now available from https://download.racket-lang.org/. As of this release:: The `match` form checks that when non-linear patterns (patterns where the same vari...
Interestingly enough, at least two of them were specifically about performance!
I recently jailbroke my 7th generation Kindle Paperwhite. While my motivation probably should have been "breaking free from Amazon's clammy and tightening grip", the truth is I wanted a way to use it as a clock on my nightstand. I found this project and figured I could just make some adjustments to the code. And that…