New
The latest blog posts to take off on Hacker News. 21,828 posts.
An Intuition for Lisp Syntax
Every lisp hacker I ever met, myself included, thought that all those brackets in Lisp were off-putting and weird. At first, of course. Soon after we all came to the same epiphany: lisp’s power lies in those brackets ! In this essay, we’ll go on a journey to that epiphany.
Manifest v3 Update
Manifest v3 support for Firefox extensions is coming in late 2021. See a high-level summary of changes to the platform.
V8 Sparkplug – A non-optimizing JavaScript compiler
In V8 v9.1 we’re improving V8 performance by 5–15% with Sparkplug: a new, non-optimizing JavaScript compiler.
Functional Programming in Go with Generics
Functional programming is an increasing popular programming paradigm with many languages building or already supporting it. Go already supports some of these features such as first-class and higher order functions and enabling functional programming.
Why and how GitHub is adopting OpenTelemetry
Building on top of OpenTelemetry empowers us to provide integrated and opinionated observability solutions for our application engineers.
Have you ever hurt yourself from your own code?
Have you ever accidentally caused harm to yourself or others from your code? I have.
Neovim 0.5 is overpowering
Home page and blog of David Zhang (@crispgm), a minimalist programmer, photographer, and lifehacker.
Let's Build a Regex Engine (2019)
How to understand the language of <\/?[\w\s]*>|<.+[\W]>
Understanding Multiple Neighbourhood Cellular Automata
Multiple Neighborhood Cellular Automata (MNCA) produce complex and robust emergent structures not commonly seen in simpler models
Should we rebrand REST?
What's wrong with the term "REST API", and what should we use instead?
ClojureScript 1.10.866 Release
We’re happy to announce a new release of ClojureScript. If you’re an existing user of ClojureScript please read over the following release notes carefully.
It's probably time to stop recommending Clean Code (2020)
It may not be possible for us to ever reach empirical definitions of "good code" or "clean code", which means that any one person's opinions about another person's opinions about "clean code" are necessarily highly subjective. I cannot review Robert C. Martin's 2008 book Clean Co...
WASM SYNTH, or, how music taught me the beauty of math
TL;DR: I built a synthesizer using C++ and WebAssembly. Check out the finished product (browser compatibility table), the source, watch the talk or keep on reading the article! The Presentation Intr
Magit 3.0
Blog of Jonas Bernoulli
Need Something Sorted? Sleep on It
An unexpected paradigm journey into sleep sort
Replit now supports every programming language in Nix
At Replit, we want to give our users the most powerful, flexible, and easy-to-get-started coding environment. However, it has been limiting because we only support a fixed set of languages and OS packages, some of which are outdated. Ideally, users should be able to use any language and install any package with…
Uber's crazy YOLO app rewrite, from the front seat
I've worked on many projects throughout my career as a software engineer. However, Helix - Uber's Rider app rewrite in 2016 introducing Swift and RIBs - stands as the craziest project by a margin. This is my story and some of my journal entries from the time. Prologue It's
Writing Pythonic Rust
Over the past several weeks I have been attempting to reimplementthe API of an existing python library as a wrapper for an equivalent library inRust.
Methods for Array Initialization in Rust (2018)
Arrays in Rust are fixed size, and Rust requires that every element in an array is initialized to a valid value when the array is initialized. The result of these requirements is array initialization in Rust is a much deeper topic than it would seem.
Complexities of e-mail validation logic
Nope, you don't know how to validate an email address. Even if you think you'd get the domain part right, fuggeddabout the local part. Seriously.
In praise of --dry-run
See how we improve software reliability with --dry-run modes. Learn best practices for tool development with insights from our expert, Patrick Stevens.
Temptation of the Apple: Dolphin on macOS M1
From the announcement made on November 10th, 2020, users have had high hopes for the new Apple M1 devices. With its powerful Apple Silicon processor smashing benchmarks all over the place, users and developers were both asking if a native Dolphin build would be possible. Now we have the answer. Apple's M1 hardware is…
Rustc_codegen_GCC can now run libcore’s tests and pass most of them
Antoyo's Personal Blog
Preparing your game for deterministic netcode
A post about lockstep, rollback, and what it takes to prepare your game for future netcode integration. Continue reading →