Cryptanalysis of Meow Hash
The creators of Meow hash made security claims; we break them all.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,544 posts.
The creators of Meow hash made security claims; we break them all.
curl turns 25 years old and what better way to celebrate this than to join fellow curl friends, developers and fans online on the exact birthday? At 17:00 UTC March 20, 2023. We run an Online birthday party open for everyone to join. Consider muting yourself when you join, but feel encouraged to leave the … Continue…
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!
I have a lengthy TODO.org of things I might eventually implement for Emacs, most of which are not exactly useful, are challenging to do or fulfill both conditions. A NES emulator fits all of these criteria neatly. I’ve kept hearing that they can run on poor hardware and learned that the graphics fit into a tiled model…
In this article, I’ll try to explain how an image diff could be built using pure Ruby and ChunkyPNG.
I've created a set of install scripts for Windows that helps people install many different programming languages using standard tools.
Good developers’ caution about agentic development comes from knowing that built isn’t the same as working in production.
I’ve been playing with GitHub Copilot, an IDE extensions that uses GitHub’s vast knowledge of how people code to suggest what you probably meant to type next. I’m running it through Visual Studio Code, but it also runs in JetBrains and Neovim.
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…
Our most important goal in writing software is that it be correct. The software must do what the programmer wants it to do. It must meet the needs of the user. In the business world, double-entry bookkeeping is the idea that transactions are recorded in at least two accounts (debit and credit). One of the … Continue…
Or, about the virtue of exactly one phrase.
The blog of Seva Zaikov
The primary purpose of software testing is to detect any potential defects in a program before it reaches its intended consumers. This is typically achieved by establishing functional requirements which define supported user interactions as well as…
In a recent blog post entitled “Monorepos: Please don’t,” Matt Klein discusses the pros and cons - as it turns out, mostly cons in his view - of monorepos. The long and short of it is that he thinks that they are not a good fit for most teams. After thinking about this question for a few years I have come to the…
This is an experience report about a gotcha in Go that catches every Go programmer at least once. The following program is extracted from a larger version that caused my co-workers to lose several hours today.
I had never been a fan of devops/server-admin work. The sheer number of headaches involved in setting up the services, configuring them, automating them, and ensuring their reliability were just annoying and time-consuming. PaaS offerings like Heroku, AWS—and later—Railway, and Render, were appealing options out of…
The other day I was interviewing a developer for a position at Wallapop. The candidate was a little bit junior, but I enjoyed their technical assignment and the conversation was going great. One of the questions I had to ask was
EDIT: As pointed out on reddit (both in r/emacs and r/vim), many of my criticisms of Vim are unfair. Everything I posted about was based purely on my personal experience with the two, but much of m…
Every AI tool has its strengths and weaknesses, and the only way to discover what they are is by using them.
An deep dive into a pathological case.
A single-producer single-consumer (SPSC) queue is a great example of how far constraints can take a design. In this post, you will learn how to implement a ring …
On Monday, I was pleased to be an uninvited speaker at <a href="http://devwaterloo.pbworks.com/">Waterloo Devhouse</a>, hosted in <a href="http://postrank.com">Postrank's</a> magnificent office. After making some surreptitious alterations to their agile development wall, I gave a tongue-in-cheek talk on how C++ can…
Read candid takes on engineering culture: 10x myths, agile failure modes, and full-stack fantasies that quietly damage software teams at scale.
On efficient algorithms, the exponential time hypothesis, and losing the plot.
In a real world benchmark, the default musl allocator caused a 7x slowdown compared to other allocators. I recommend all Rust projects immediately swap to a different allocator in a musl environment.