New
The latest blog posts to take off on Hacker News. 14,540 posts.
Things I hate about Rust, redux
Two years ago, I wrote a post with a handful of grievances about Rust , a language that I then (and still) consider my favorite compiled language.
Appeal to Ruby Community from Kharkiv Rubyist
I write to Ruby community in days of war Russia leads against my country.
Accurate Image Alignment and Registration Using OpenCV
The image alignment and registration pipeline takes two input images that contain the same scene from slightly different viewing angles. The picture above displays both input images side by side with the common scene (object) being the painting Las Meninas (1656) by Velázquez, currently at the Museo del Prado in…
Sending notifications programmatically: let me count the ways
Code level discussion of web scraping, gray hat automation, growth hacking and bounty hunting
Bugs in Hello World
A blog by sunfishcode
WebGPU – All of the cores, none of the canvas
WebGPU is an upcoming Web API that gives you low-level, general-purpose access GPUs.
The most important thing to understand about queues (2016)
You only need to learn a little bit of queueing theory before you start getting that ecstatic “everything is connected!” high that good math always evokes. So many damn things follow th…
HTML comments work in JavaScript too
Some weird legacy behavior in JavaScript
Request Coalescing in Async Rust
As the popular saying goes, there are only two hard problems in computer science: caching, off-by-one errors, and getting a Rust job that isn’t cryptocurrency-related. Today, we’ll discuss caching!...
Building a web app with no framework
Is it as hard as you think?
Damn Cool Algorithms: Levenshtein Automata
Posted by Nick Johnson | Filed under python , tech , coding , damn-cool-algorithms
Go’s major versioning sucks – From a fanboy
I'm normally a fan of the rigidity within the Go toolchain
The decline and fall of Java on the desktop
Java was originally touted as "the killer" desktop language, but the early 2000's saw steady march towards obscurity.
Parsing bitstreams with Nom
How to use Nom to parse binary protocols at the level of individual bits
Single binary executable packages
In support of software packages that come in the form of a single binary executable (statically linked or portable), that one can just copy anywhere in `${PATH}` and execute, without needing `sudo`, or downloading half the distribution's packages as dependencies.
SPAs Were a Mistake
For years, a trend in our industry has been to build single-page apps, or SPAs. With an SPA, the entire site or app lives in a single HTML file. After the initial load, everything about the app is handled with JavaScript. This is, in theory, supposed to result in web apps that feel as fast and snappy as native apps…
Hugo is awesome, its documentation is not
This site is built using the Hugo static site generator. Hugo is awesome. Its documentation is not. That is my personal opinion :) This post explains why I find the existing documentation so frustrating and how it could be improved.
Solid.js feels like what I always wanted React to be
I'm sold on Solid.
CSS as the back end – Cascading Server Sheets
Here we go again! Another one of these, and promise, you will be questioning my sanity after this...
Wordlexpr: Compile-Time Wordle in C++20
Not participating in the hype around Wordle seemed wrong, and what better way to do it than to create it cleanly at compile time in C++20? Introducing Wordlexpr!
Year 2038 problem is still alive and well
Largely because of a single code snippet used by many.
Win32 is the stable Linux userland ABI (and the consequences)
This post was inspired by some controversy with Valve and their support for Linux, but the bulk of it comes from long-term observation. One of the biggest impacts with the viability of Linux on the desktop was Valve’s Proton, a… Continue reading →
Practical guide to solving hard problems
I sometimes find myself in a position of needing to write some code that I’m just not sure how to write. Been there have you? Here are the steps I take when I’m stumped. No huge revelations here, just hard-earned advice.