To Master Vim, Use It Like Language
A comprehensive Vim tutorial that teaches Vim as a language rather than memorizing commands. Learn movements, text objects, visual mode, and advanced techniques.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,540 posts.
A comprehensive Vim tutorial that teaches Vim as a language rather than memorizing commands. Learn movements, text objects, visual mode, and advanced techniques.
I came upon a very interesting and cryptic snippet of code somewhere nameless , and I can’t decide if it is brilliant or completely insane. It is a very obscure way of accomplishing the required task, but it’s around four times faster than the alternatives I’ve tried, so I have to admit that it’s not completely…
A few weeks ago I had the questionable pleasure of diving into the math exception handler of WIN87EM.DLL, the Windows 3.1 math emulator and FPU support library. Actually WIN87EM.DLL appears to have been first shipped with Windows 3.0, and the version in Windows 3.1 is more or less identical. The version shipped with…
Hi, I'm Kenneth. I’m a Swiss transplant in San Francisco. I’m an angel investor, and an engineer at AngelList & CSC. Previously, I was co-founder of FreshPay and the architect behind Chartboost. When I'm not working, you can find me either photographing some remote corner of the world, or hacking away on an…
As a 13 year old, my dad’s advice on internet presence was: “Everything you post will be used against you in the future. So you should never associate your name with anything on the internet”. As a rebellious teenager my view was the opposite: “Everything you post on the internet will get lost. You should associate…
Applying the type-driven mindset to rust via the "Parse, don't Validate" pattern
Hello there! This is my personal website and it is allergic to SEO.
Personal website of Doğaç Eldenk.
I spent years building one of the most popular LED strip visualizers on GitHub. It's the kind of project that's easy to get started but diabolically hard to master.
This is the original 1978 source code of Microsoft BASIC for 6502 with all original comments, documentation and easter eggs: M6502.MAC (1978-07-27, 6955 lines, 161,685 bytes) This is currently the oldest publicly available piece of source written by Bill Gates.
Parallax scrolling – creating an illusion of depth in a 2D scene by having the background and foreground move at different speeds – is pretty much a staple of platformers and other 2D g…
Hi! It feels like I did one of these posts just the other day, but it was a month ago? Time sure does fly… Since there’s a round number in the title of this blog post, perhaps I should …
I think I first heard about the Zstandard compression algorithm at a Mercurial developer sprint in 2015. At one end of a large table a few people were uttering expletives out of sheer excitement. At developer gatherings, that's the universal signal for something is awesome . Long story short, a Facebook engineer…
Today, we’re going to look at the many ways of implementing user-to-kernel transitions on x86, i.e. system calls. Let’s first quickly review what system calls actually need to accomplish.
Delightfully useless epiphany: Suppose the null-byte is an electron. Then, /dev/zero provides an infinite supply of electrons and /dev/null has an infinite appetite for them. Let's call these devices Vss and Vdd , respectively.
I have recently looked at Julia , a new programming language developed at MIT that promises to be a dynamic programming language that is sui...
I made this today while experimenting with cellular automata parameters , and I found it uniquely beautiful. After a while the patterns stabilise and start to look like a kind of constantly-moving circuit diagram. I call it Chip . The source is on GitHub if you're that way inclined.
We sill start off by walking though the different parts of a GIF file. (The information on this page is primarily drawn from the W3C GIF89a specification .) A GIF file is made up of a bunch of different "blocks" of data. The following diagram shows all of the different types of blocks and where they belong in the…
This post is my attempt to write an easy to understand introduction to the main ideas behind building a real-time col...
my website is one binary 2022-04-06 ---------------------------- a.k.a. this one weird trick that inspires me to program creatively i have struggled for years to figure out a website framework that feels good to me. i tried all of the classics, including but limited to: - ghost - hugo - jekyll - sr.ht + tarball …
C is, today, a unique programming language. Surprisingly few people can really program in C and yet many of us have quite strong opinions about it. Buffer overflows, stack smashing, integer overflows — C has many well publicised flaws, and these terms are often bandied about confidently, even by those unfamiliar with…
Note: me telling you up front that these are trick questions rather gives the answers away in most cases, but oh well. Questions Question 1 What's the fastest way to sort a jumbled array, given that the array has length N and contains all the integers from 1 to N inclusi...
Update (Feb 17, 2026)—I no longer agree with many statements made in this blog post. I am leaving it here unmodified. See my follow-up: AI can sort of code, can't write .
Why I worry about the effect GitHub Copilot is having and will continue to have on the accessibility of the web at scale.
Up Enter Up Up Enter Up Up Up Enter
[Hacker News discussion, LinkedIn discussion, Twitter thread]
Kal is a highly readable, easy-to-use language that compiles to JavaScript. It's designed to be asynchronous and can run both on node.js and in the browser. Kal makes asynchronous programming easy and clean by allowing functions to pause and wait for I/O, replacing an awkward callback syntax with a clean, simple…
At the end of January of this year, I switched to a new job, almost exclusively because I was enticed by the idea of being able to write Haskell. The concept of using such an interesting programming language every day instead of what I’d been doing before (mostly Rails and JavaScript) was very exciting, and I’m…