New
The latest blog posts to take off on Hacker News. 1,357 posts.
Serverless collaborative editor using CRDT
Previously I've worked on a collaborative tool, which worked like Google Docs. This project was called crepl . Because I stopped paying for hosting of its server, that project is now offline. That made me consider: what if a collaborative editor wouldn't need a server?
Xkcd-Style Plots in Matplotlib (2012)
Update: the matplotlib pull request has been merged! See This post for a description of the XKCD functionality now built-in to matplotlib!
Smooth Video Game Emulation in Emacs
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…
Zulip 2.0: Open source team chat
We’re excited to announce the release of Zulip Server 2.0, containing hundreds of new features and bug fixes. Zulip is the world’s most productive team chat software, used by thousands of teams as an alternative to Slack, HipChat, Mattermost and IRC. Zulip’s unique topic-based threading combines the …
The Kernel Programming Language
I'm developing a programming language called Kernel. Kernel is a conservative, Scheme-like dialect of Lisp in which everything is a first-class object.
Is C# a low-level language?
I’m a massive fan of everything Fabien Sanglard does, I love his blog and I’ve read both his books cover-to-cover (for more info on his books, check out the recent Hansleminutes podcast).
Deep Learning to Federated Learning in 10 Lines of PyTorch and PySyft
Update as of November 18, 2021: The version of PySyft mentioned in this post has been deprecated. Any implementations using this older version of PySyft are…
Deep Learning from Scratch to GPU: CUDA and OpenCL
We generalize the network code and run it on the GPU. On an Nvidia GPU with CUDA, and on an AMD GPU with OpenCL. Even more - we mix both CUDA and OpenCL, jus...
Simpson’s Paradox (2016)
A riveting tale of how good data can lead to bad decisions.
NASM Tutorial (2018)
This tutorial will show you how to write assembly language programs on the x86-64 architecture.
License Plate Detection Without Machine Learning
Learn how to detect vehicles license plates without heavy Machine Learning techniques, just standard image processing routines.
2FA on the command line
OTP: One-Time Password TOTP: Time-based One-time Password algorithm 2FA: Two-factor authentication There is no shortage of OTP 2FA apps availiable for your phone, such as Google Authenticator or Duo Mobile. These apps take an initial secret code, and create a TOTP anytime you need a 2FA code for login.… …
Implications of Rewriting a Browser Component in Rust
Since our first release in 2002, there have been 69 security bugs in Firefox’s style component. If we'd had a time machine and could have written this component in Rust from the start, 51% wouldn't have happened. That said, Rust is not foolproof. Developers still need to be aware of correctness bugs and data leakage…
The hard part in becoming a command line wizard
I've long been impressed by shell one-liners. They seem like magical incantations. Pipe a few terse commands together, et voilà! Out pops the solution to a problem that would seem to require pages of code. Are these one-liners real or mythology? To some extent, they're both. Below I'll give a famous real example. Then…
Hyperscan: A Fast Multi-Pattern Regex Matcher for Modern CPUs
I’m pleased to report that Hyperscan, the regular expression matcher that ate my life from 2008 through 2018, finally has a paper (pdf) – it’s being presented this week at NSDI &#…
Fundamental Algorithms III
Three more fundamental algorithms in the series. Today, recursive permutations, subsets of the given set and variations with repetitions. Th...
The art of writing eBPF programs
A blog about the process of writing Extended Berkeley Packet Filter (eBPF) programs and what’s going on under the hood at the kernel-level.
Running a Bakery on Emacs and PostgreSQL
Just over a year ago now, I finally opened the bakery I’d been dreaming of for years. It’s been a big change in my life, from spending all my time sat in front of a computer, to spending most of it making actual stuff. And stuff that makes people happy, at that. It’s been a huge change, but I can’t think of a single…
The Unscalable, Deadlock-Prone, Thread Pool
Paul Khuong's personal blog. Some Lisp, some optimisation, mathematical or computer.
Go 1.12 Released
Go 1.12 adds opt-in TLS 1.3, improved modules, and more.
Reed Solomon codes are cool
thoughts