Storing UTC is not a silver bullet
Note: this is a pretty long post. If you’re not interested in the details, the conclusion at the bottom is intended to be read in a standalone fashion. There’s also a related blog post …
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 3,470 posts.
Note: this is a pretty long post. If you’re not interested in the details, the conclusion at the bottom is intended to be read in a standalone fashion. There’s also a related blog post …
Protecting the security and privacy of individuals is a central tenet of Mozilla’s mission. While we continue to make extensive use of both sandboxing and Rust in Firefox to address ...
Microsoft Excel the programming language is evolving. With the recent release of LAMBDA, users can now define new functions in the program’s formula language. Learn about the capability and its role in the transformation of spreadsheet formulas.
In 2013, I spent 6 months converting 0install's 29,215 lines of Python to OCaml (learning OCaml along the way). In this post, I'll describe the …
It’s been about a year since our last update regarding Manifest v3. A lot has changed since then, not least of which has been the formation of a community group ...
“The Implementation of Functional Languages” is a book about implementing functional programming languages using lazy graph reduction, and it divides into three parts. The first part describes how to translate a high-level functional language into an intermediate language, called the lambda calculus, incuding detailed…
Manifest v3 support for Firefox extensions is coming in late 2021. See a high-level summary of changes to the platform.
Lest you think that this is a fluke that was quickly corrected, here is the /bin/true program from AT&T's Sys/V libraries as of 1990:
How many times are words, names or functions found in the Linux kernel source code? Browse an example or write your own comma-separated list to find out! You can use * for wildcards, foo|bar for sums, and a word is defined as \<[[:alnum:]_]+\> (ignoring case, considering accents).
Nano How-To explaining how to setup a root file system with only emacs.
People I work with recognize my computer easily: it's the one with nothing but yellow windows and blue bars on the screen. That's the text editor acme, written by Rob Pike for Plan 9 in the early 1990s. Acme focuses entirely on the idea of text as user interface. It's difficult to explain acme without seeing it…
Over the past four years, we've been working hard on rebuilding our desktop client's sync engine from scratch. The sync engine is the magic behind the Dropbox folder on your desktop computer, and it's one of the oldest and most important pieces of code at Dropbox. We're proud to announce today that we've shipped this…
On the 1st of January, 1998, Bjarne Stroustrup gave an interview to the IEEE’s ‘Computer’ magazine..
Time for a pop quiz. 1. Code Reuse is: a) Goodb) Bad 2. Reinventing the Wheel is: a) Goodb) Bad 3. The Not-Invented-Here Syndrome is: a) Goodb) Bad Of course, everybody knows that you should always…
It was seven years ago today when everybody was getting excited about Microsoft’s bombastic announcement of Hailstorm, promising that “Hailstorm makes the technology in your life work t…
Free downloads for building and running .NET apps on Linux, macOS, and Windows. Runtimes, SDKs, and developer packs for .NET Framework, .NET, and ASP.NET.
Phoenix LiveView is an exciting new library which enables rich, real-time user experiences with server-rendered HTML.
Back in the good old days-- the "Golden Era" of computers-- it was easy to separate the men from the boys (sometimes called "Real Men" and "Quiche Eaters" in the literature). During this period, the Real Men were the ones who understood computer programming, and the Quiche Eaters were the ones who didn't. A real…
Name the most widely used bytecode interpreter or virtual machine. Sun's JVM? Adobe's Flash? .NET and Mono? Perl? Python? PHP? These are all certainly popular, but there's one more widely used than all those combined. That bytecode interpreter is Henry Spencer's regular expression library and its many descendants.
Most career ladders define a single, uniform set of expectations for Staff engineers operating within the company. Everyone benefits from clear role expectations, but career ladders are a tool that applies better against populations than people. This is particularly true for Staff-plus engineers, whose career ladders…
The typestate pattern is an API design pattern that encodes information about an object’s run-time state in its compile-time type . In particular, an API using the typestate pattern will have:
Changing schemas in distributed software is hard. Could adopting bidirectional lenses help?
If you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Use tools that give you...
It’s been 3 months since I first wrote about our efforts to scale Git to extremely large projects and teams with an effort we called “Git Virtual File System”. As a reminder, GVFS, together with a set of enhancements to Git, enables Git to scale to VERY large repos by virtualizing both the .git folder […]
Pagination without OFFSET has many benefits but one problem: there is no tool support. Please help changing this.