New
The latest blog posts to take off on Hacker News. 423 posts.
Systems Past: software innovations we actually use (2014)
Note: This is a position piece, not a technical article. Hat tip to Jake Skelcy for requesting such a piece. Computers didn’t always have operating …
Quoting command line arguments the wrong way (2011)
Access to this page requires authorization. You can try signing in or changing directories .
What was the role of MS-DOS in Windows 95? (2007)
Practical development throughout the evolution of Windows.
Golang data races to break memory safety
Go is becoming more and more popular as a programming language and getting more scrutiny from a security point of view. You might remember m...
The Road to 2M Websocket Connections in Phoenix (2015)
If you have been paying attention on Twitter recently, you have likely seen some increasing numbers regarding the number of simultaneous connections the Phoenix web framework can handle. This post documents some of the techniques used to perform the benchmarks.
Getting Started with Tokio
If you're interested in writing servers in Rust, Tokio is a project that should definitely be on your radar. It promises to leverage the exciting new work on futures in Rust to make it easy to build extremely efficient networked servers with natural, composable code.
The State of Linux Security
This is the state of Linux security. With the most important updates around Linux and open source security. From conferences to self-protection.
Update on Multi-Process Firefox
About four months ago, we launched multi-process Firefox to a small group of Firefox 48 users. Shortly after the carefully measured roll-out, we increased to approximately 50% of our user ...
Linux Container Internals
This post was the basis for a joint event with the grokking engineering community in Saigon.
V8: Behind the Scenes (December Edition)
Personal website of Benedikt Meurer, JavaScript Engine Hacker and Programming Language Enthusiast.
Reducing the maximum latency of a bound buffer in Erlang
Recently I came across two great articles on the Pusher blog: Low latency, large working set, and GHC’s garbage collector: pick two of three and Golang’s Real-time GC in Theory and Practice . The articles tell the story of how Pusher engineers reimplemented their message bus. The first take was done in Haskell. During…
System loads web pages 34 percent faster by fetching files more effectively
"Polaris" system from MIT's Computer Science and Artificial Intelligence Lab accelerates website load-time by decreasing network trips.
Making SQL Server run on Linux
This post was authored by Scott Konersmann, Partner Engineering Manager, SQL Server, Slava Oks, Partner Group Engineering Manager, SQL Server, and Tobias Ternstrom, Principal Program Manager, SQL Server. Introduction We first announced SQL Server on Linux in March, and recently released the first public preview of SQL…
Haiku booting in UEFI mode
As some may have noticed, my UEFI branch got merged in November, purely by accident too! However, until now, we still haven't been able to boot to the desktop. Whilst still in development, the addition of a simple framebuffer driver and a crucial fix …
SQL Server on Linux public preview
This post was authored by Tiffany Wissner, Senior Director of Data Platform Marketing Today, we are excited to announce the public preview of the next release of SQL Server on Linux and Windows, which brings the power of SQL Server to both Windows – and for the first time ever – Linux.
Why is .NET reflection slow?
It’s common knowledge that reflection in .NET is slow, but why is that the case? This post aims to figure that out by looking at what reflection does under-the-hood.
I've been writing ring buffers wrong all these years
So there I was, implementing a one element ring buffer. Which, I'm sure you'll agree, is a perfectly reasonable data structure.
Haskell in the Datacentre
Bluesky: @simonmar.bsky.social Github: simonmar Email: marlowsd@gmail.com LinkedIn: Simon Marlow
How Discord handles over a million requests per minute with Elixir’s GenStage
This is the story of how we assessed and refactored two video players into one, cut the player code each product maintained by up to 94%, and swapped to the new player without disruption to any users.