New
The latest blog posts to take off on Hacker News. 1,013 posts.
Libtls – New TLS API from LibreSSL
tls_init , tls_config_new , tls_config_free , tls_config_error — initialize TLS client and server API
An easier way of using polyfills
Polyfills are a fantastic way to enable the use of modern code even while supporting legacy browsers, but currently using polyfills is too hard, so at the FT we've built ...
Improved Error Handling in Rust
Overview of how to handle errors in the current version of the Rust programming language.
Proxygen, Facebook's C++ HTTP Framework
Visit the post for more.
Building C Projects
C is a compiled language, and as such, C programs need to be converted to executables in order to use them. Typically, programmers do this with some sort of build system, rather than running the necessary commands manually, because the compilation process for a large project tends to be quite complex.
How I reverse-engineered Google Docs to play back any document's keystrokes
How James Somers reverse-engineered Google Docs to play back any document's keystrokes
AngularJS: The Bad Parts
Hey! If you do front end development, you should know about CatchJS. It’s a JavaScript error logging service that doesn’t suck. Below is a graph over the amount of searches for AngularJ…
PyPy IO improvements
Hello everyone! We've wrapped up the Warsaw sprint, so I would like to describe some branches which have been recently merged and which i...
Creating 3D worlds with HTML and CSS
An experiment in creating a 3D environment using HTML elements and CSS transforms featuring lights, shadows and collision detection.
IntelliJ IDEA 14 Released
Discover IntelliJ IDEA 2026.3 with JetBrains Air, Java and Kotlin for Cursor and VS Code, the Hibernate debugger, Git worktrees, cross-database queries, DuckDB, any LSP server, a libghostty terminal, and Java 28.
Principles of Rich Web Applications
7 actionable principles for websites that want to make use of JavaScript to control their UI and deliver the best performance
Coding, Fast and Slow: Developers and the Psychology of Overconfidence (2013)
I’m going to talk today about what goes on in inside developers’ heads when they make estimates, why that’s so hard to fix, and how I personally figured out how to live and write software (for very happy business owners) even though my estimates are just as brutally unreliable as ever.
Please grow your buffers exponentially
If you record every heap allocation and re-allocation done by Firefox you find some interesting things. In particular, you find some sub-optimal buffer growth strategies that cause a lot of heap churn.
Hacker's Guide to Neural Networks
Musings of a Computer Scientist.
2D gaming using Processing.js
We had a look at some of the basics of making a game using the Processing.js game library, so let's kick it up a notch by just getting down and making our own Super Mario game. When we're done with this part of the tutorial, we'll have a game with koopa troopers, platforms that we can jump up through but not fall down…
Massive: The asm.js Benchmark
asm.js is a subset of JavaScript that is very easy to optimize. Most often it is generated by a compiler, such as Emscripten, from C or C++ code. The result ...
Porting rr to x86-64
(TL;DR: rr from git can record and replay 64-bit programs. Try it for yourself !)
The Hypercard Legacy
Apple’s forgotten software gem was a last breath for democratized computing. Can it be revived?
Introducing SIMD.js
SIMD stands for Single Instruction Multiple Data, and is the name for performing operations on multiple data elements together. For example, a SIMD add instruction can add multiple values, in ...
A taste of Rust for C/C++ programmers
If, like me, you've been frustrated with the status quo in systems languages, this article will give you a taste of why Rust is so exciting....
A Quick Intro to Rust Macros
Note : This article is for an obsolete version of Rust, and has been superceded by the slightly less misleadingly named "A Practical Intro to Macros in Rust 1.0" .