Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,834 posts.
WebAssembly doesn’t make unsafe languages safe
WebAssembly is all the rage these days. And for good reasons. It’s pretty exciting to see many compiled languages adopting a common intermediate represe...
Infinite work is less work
The first task of last week's Weekly Challenge was to print the first ten strong and weak primes. A prime p n is "strong" if it's larger than the average of its two neighbouring primes ( i.e. p n > (p n-1 +p n+1 )/2 ). A prime is "weak" if it's smaller than the average of its two neighbours.
Reading Simple Haskell
-> is right associative, The function definitions from the previous slide will be parsed like this:
The lost malloc()
Prompted by another project idea that popped into my mind, I did some Unix archaeology and looked at the original sources . This is the most fun I've ever had reading someone else's code - probably due to the historical significance. But also because of how delightfully approachable it was, compared to modern…
CUDA vs. ROCm: A case study
A simple, whitespace theme for academics. Based on [*folio](https://github.com/bogoli/-folio) design.
Never patterns, exhaustive matching, and uninhabited types in Rust
One of the long-standing issues that we’ve been wrestling with in Rust is how to integrate the concept of an “uninhabited type” – that is, a type which has no values at all. Uninhabited types are useful to represent the “result” of some computation you know will never execute – for example, if you have to define an…
A simple hash table in C
A simple hash table implementation in C, by Leo Robinovitch.
SOLID Go Design
This post is based on the text of my GolangUK keynote delivered on the 18th of August 2016. A recording of the talk is available on YouTube .
Some useful regular expressions for programmers
In my blog post, My programming setup, I stressed how important regular expressions are to my programming activities. Regular expressions can look intimidating and outright ugly. However, they should not be underestimated. Someone asked for examples of regular expressions that I rely upon. Here a few. It is commonly…
Inverting a binary tree using x64 assembly
While browsing twitter, I came across this tweet:
"The worst algorithm in the world?"
You know the Fibonacci numbers: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … Each number is the sum of the previous two. Let’s say the zeroth Fibonacci number is zero, so: $latex \begin{array}{r@{\…
Benchmarking coding agents on Databricks' multi-million line codebase
Databricks shares results from its internal coding benchmark, evaluating coding agents on a multi-million line codebase to optimize engineering cost and performance.
Multimodal Neurons in Artificial Neural Networks
We’ve discovered neurons in CLIP that respond to the same concept whether presented literally, symbolically, or conceptually. This may explain CLIP’s accuracy in classifying surprising visual renditions of concepts, and is also an important step toward understanding the associations and biases that CLIP and similar…
Static Type Checking in Common Lisp
There is a misconception that Lisp is a dynamically typed language and doesn’t offer compile-time type checking. Lisp being the…
MySQL vs. MariaDB: Reality Check
Choosing between MariaDB and MySQL? In this blog, we provide an overview of the key differences between MariaDB vs. MySQL and explore their unique use cases.
Developer Preview: RethinkDB Now Available for Windows
We’re pleased to announce today that RethinkDB is now available for Windows . You can download a Developer Preview of our Windows build, which runs natively on Microsoft’s operating system.
Using time travel to remotely debug faulty DRAM
The story of debugging a mysterious Julia segfault.
General Availability of the AWS SDK for Rust
We’re excited to announce that the AWS SDK for Rust is now generally available and supported for production use. The AWS SDK for Rust provides an idiomatic, type-safe API, along with the benefits of the Rust language such as performance, reliability, and productivity. The SDK supports modern Rust language features…
Adding syntax to the CPython interpreter
Now lets's change the grammar so that if we don't have an else condition we default to None .
Optimizing a ring buffer for throughput (2021)
In this article I will take a look at the classic concurrent ring buffer and how it can be optimized to increase throughput.
Branchless Coding in Go
So, I was recently inspired by a coworker’s design to pack what would have been JSON (JavaScript Object Notation) data into a bunch of bit fields in an array of 64-bit elements. Binary arithmetic, bit-packing, and high performance are fun for me, so I thought of some ways to improve it, for learning purposes. Then I…
Erlang/OTP architectures: Cowboy
Cowboy is the most popular Erlang framework for writing web servers. It is really impressive to see what cowboy accomplishes with such…
Dolphin Progress May and June 2020
We've got a lot to get through the past two months. Headlining it all is that we're happy to announce support for a new compressed disc format developed specifically for Dolphin: RVZ. This lossless format allows for near top of the line game compression without compromising the integrity of ISOs,…
Node 5.7.0 (stable) released
Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.
Patterns for Building Realtime Features
Realtime features make apps feel modern, collaborative, and up-to-date. The features predominantly require sharing changes triggered by one user to other …
On Python security amidst recent Rails/YAML vulnerabilities
The Rails community has had a few high-profile security issues this week. They are well-summarized, with an alarming list of what follow-ons to expect, by Patrick McKenzie: What the Rails Security Issue Means for Your Startup.