New
The latest blog posts to take off on Hacker News. 1,517 posts.
That XOR Trick (2020)
There are a whole bunch of popular interview questions that can be solved in one of two ways: Either using common data structures and algorithms in a sensible manner, or by using some properties of...
GitHub Stale Bots – A False Economy
Stale Bot’s are a type of automated bot on Github, which locks issues which are “stale” (as in have no recent activity). This seems like a helpful tool at first, but in reality it’s terrible for all p
Tracking down a segfault that suddenly started happening
I wanted to share a story of a segmentation fault I helped track down this weekend. I thought the final root cause of the segfault was interesting because of how unrelated it was to the code I was trying to debug.
js;dr = JavaScript required; Didn’t Read.
js;dr = JavaScript required; Didn’t Read. Pages that are empty without JS: dead to history (archive-org), unreliable for search results (despite any search engine claims of JS support, check it yourself), and thus ignorable. No need to waste time reading or responding. Also known as, if it’s not curlable, it’s not on…
The values of Emacs, the Neovim revolution, and the VSCode gorilla
Comparing the core values of our text editors, describing the history of Neovim's development, and discussing the rise of VSCode.
Hecto: Build your own text editor in Rust
Welcome! This is a series of blog posts that shows you how to build a text editor in Rust.
Deno in 2020
Retrospect of what happened in Deno in 2020
Rust: Structuring and handling errors in 2020 (2020)
After working through “the book” on the Rust programming language and getting started with the first non-trivial, real-world application I found myself faced with a question I didn’t yet feel well-equipped to handle: “How should you structure error handling in a mature rust application?”
REST Servers in Go: Part 1 – standard library
This is the first post in a series about writing REST servers in Go. My plan with this series is to implement a simple REST server using several different approaches, which should make it easy to compare and contrast these approaches and their relative merits.
The Problem with Gradle
Or: How to Remain Sane when Approaching Gradle (with apologies to Hans Dockter).
Limiting Private API Availability in Chromium
During a recent audit, we discovered that some third-party Chromium based browsers were able to integrate Google features, such as Chrome sy...
The Apple goto fail vulnerability: lessons learned (2014)
Description of what we have learned
Building DigitalOcean's API Gateway
technology blog about ruby, scala, java, golang, software engineering and programming in general
Have the Tables Turned on NoSQL?
NoSQL was the next big thing in system architecture in 2011, but overall interest in it has plateaued recently. What is NoSQL, what does it have to do with modern development, and is it worth implementing in your project?
Rust is a hard way to make a web API
It is not just the borrow checker
Why Zig when there is already C++, D, and Rust?
If Zig code doesn’t look like it’s jumping away to call a function, then it isn’t. This means you can be sure that the following code calls only foo() and then bar() , and this is guaranteed without needing to know the types of anything:
Clojure Core
Earlier today Rich Hickey let the cat out of the bag that I’m joining the Clojure Core development team.
My preferred .NET console stack
An opinionated view on the boilerplate starting point of any .NET console application
Encoding Data in Dubstep Drops
[Warning: Those who can’t stand EDM/dubstep, oh boy do I have bad news for you in regards to this blog post]
How to join a team and learn a codebase (2020)
I have switched teams more often than I have had to implement an AVL tree, and you can guess which one of those two was taught in school. I wish someone had taught me how to join a new team! While learning a new codebase can be daunting, I've found a few things that work for me.
Maximizing Developer Effectiveness
To be successful at digital transformation you need to optimize the key feedback loops in your software engineering organization
Rebuilding the spellchecker
How I decided to write a spellchecker and almost died trying
Donut.c Without a Math Library
My little donut.c has been making the rounds again, after being featured in a couple YouTube videos (e.g., Lex Fridman and Joma Tech ). If I had known how much attention this code would get over the years, I would have spent more time on it.
Why can't I write code inside my browser?
Notes on rethinking browsers
Apple M1 Assembly Language Hello World
Introduction Last week, we talked about using a new Apple M1 based Macintosh as a development workstation and how installing Apple’s development system XCode also installed a large number of open s…
Smart contracts on Bitcoin
While Bitcoin is the gold standard in crypto, Ethereum has been the innovator, bringing new ideas, particularly smart contracts, to the table. Smart contracts allow developers to easily build things on a blockchain and we have seen a proliferation of new things built on the Ethereum blockchain as a result. But what if…