Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,544 posts.
Tips for more effective fuzz testing with AFL++
Fuzz testing is incredibly effective for mechanically discovering software defects, yet remains underused and neglected. Pick any program that must gracefully accept complex input, written in any language , which has not yet been been fuzzed, and fuzz testing usually reveals at least one bug. At least one program…
Curl 8 Is Faster
First: performance is tricky and bechmarking even more so. I will talk some numbers in this post but of course they are what I have measured for my specific tests on my machine. Your numbers for your test cases will be different. Over the last six months or so, curl has undergone a number of … Continue reading curl 8…
I built my own CityMapper
We've all used a public transit router to find a quick route from A to B, such as Google Maps or CityMapper, but how do they actually work?
The Basics of Arm64 Assembly
Just one instruction at a time!
Mill: Better Scala Builds
Mill is a new build tool for Scala: it compiles your Scala code, packages it, runs it, and caches things to avoid doing unnecessary work. Mill aims to be better than Scala's venerable old SBT build tool , learning from it's mistakes and building upon ideas from functional programming to come up with a build tool that…
Implementing a LLVM Micro C compiler in Haskell
In this series, we will explore how to write a compiler for a small subset of C to LLVM in Haskell. Our language, Micro C, is basically a small subset of real C. We'll have basic numeric types, a real bool type, pointers, and structs. At the end of the series, we'll have a beautiful executable, mcc (Micro C…
Debugging with intelligence via probabilistic inference
Debugging with intelligence via probabilistic inference Xu et al., ICSE’18 Xu et al. have built a automated debugger that can take a single failing test execution, and with minimal interactio…
Do-It-Yourself OpenJDK Garbage Collector
Aleksey Shipilёv, JVM/Performance Geek, Shout out at Twitter: @shipilev Questions, comments, suggestions: aleksey@shipilev.net
No more JetBrains products for me
The personal website of Matthew Kosarek
Working with Tailwind CSS every day for 2 years
For more than two years, I've been using Tailwind CSS almost every working day for company projects and a lot of weekends for my side projects.
Where Everything Went Wrong: Error Handling and Error Messages in Rust (2020)
Today you are frustrated.
I hate almost all software (2011)
It's unnecessary and complicated at almost every layer. At best I can congratulate someone for quickly and simply solving a problem on top of the shit that they are given. The only software that I like is one that I can easily understand and solves my problems. The amount of complexity I'm willing to tolerate is…
How to think about software quality (2022)
Not a weighty meandering 300 page Zen dialogue on Motorcycle Maintenance. Merely a meandering blog post in which one contemplates /Quality/ of software products.
Why does musl make my Rust code so slow?
Software engineer specializing in query engines and distributed systems
Floats Are Weird
Compute this limit more accurately with one weird trick!
I Wrote an Activitypub Server in OCaml: Lessons Learnt, Weekends Lost
It was way back in the summer of 2019 when I first became a member ( i.e. a Fedizen!) of the Fediverse, the distributed social network formed by various Free and Libre servers communicating using the Activitypub protocol.
Tar Files Created on macOS Display Errors When Extracting on Linux (2024)
tar.gz files seem to include extra files starting with ._. When these are extracted on Linux, a bunch of errors are displayed.
The pervasive effects of C's malloc() and free() on C APIs
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…
Compiler Development: Rust or OCaml?
The question of which language suits best for compiler development is a frequent one amongst language enthusiasts (e.g., see discussions here , here , and here ). Sadly, most of the commenters either 1) just answer with their language of choice without any explanation, or 2) provide a vague explanation without any…
You Should Compile Your Python and Here’s Why
write Python that’s faster than C by optimizing your code, adding standard type annotations, and using Mypyc.
Parameterized types in C using the new tag compatibility rule
C23 has a new rule for struct, union, and enum compatibility finally appearing in compilers starting with GCC 15, released this past April, and Clang later this year. The same struct defined in different translation units (TU) has always been compatible — essential to how they work. Until this rule change, each such…
Understanding the BeagleBone’s built in microcontrollers (2016)
The BeagleBone Black is an inexpensive, credit-card sized computer that has two built-in microcontrollers called PRUs. While the PRUs provi...