Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 537 posts.
Developer ports iOS core to non-Apple hardware
Reecently, I achieved one of the core milestones of my personal project, porting the Darwinkernel to the ARM architec...
Insecurities in the Linux /dev/random
New paper: “Security Analysis of Pseudo-Random Number Generators with Input: /dev/random is not Robust, by Yevgeniy Dodis, David Pointcheval, Sylvain Ruhault, Damien Vergnaud, and Daniel Wichs. Abstract: A pseudo-random number generator (PRNG) is a deterministic algorithm that produces numbers whose distribution is…
Destructuring Assignment in ECMAScript 6
I have seen this question come up a few times, and unfortunately, people usually don't find an answer, give up, and don't test their source maps. However, testing source maps isn't too hard if you are using Node.js and the mozilla/source-map library. If you aren't using Node.js and the mozilla/source-map library, you…
You are not a software engineer (2011)
chrisaitchison.com is a descriptive 14-character .com domain available for buy. Listed at $195 — secure it before someone else does.
Deconstruction of Pinkie Pie's 64-bit Chrome exploit
Back in November 2012, a Chrome Releases blog post mysteriously stated: "Congratulations to Pinkie Pie for completing challenge: 64-bit exp...
Beautiful Native Libraries
A guide on writing beautiful native libraries in C or C++ that compile to native code.
Architectures that will inspire your programming
This is the Big 4. The architectures, that may help your work. They may influence the way you think about programming. 1. The Hexagonal Ar...
Two Star Programming
A Word Aligned article posted 2013-01-08, tagged C, Torvalds, Algorithms.
Your test suite is trying to tell you something
A few weeks ago I started wondering about 'the test that occasionally and randomly breaks' in a large test suite at my job. The test, calle...
MRI's Method Caches
One of MRI's big performance problems is that method cache expiry is global. That is, any time you make a change to any class anywhere, the entire VM's method caches get busted at the same time. This is why you'll frequently hear people saying that "calling Object#extend is bad".
How mitmproxy works
I started work on mitmproxy because I was frustrated with the available interception tools. I had a long list of minor complaints - they were insufficiently flexible, not programmable enough, mostly written in Java (a language I don't enjoy), and so forth. My most serious problem, though, was opacity. The best tools…
Real-Time Garbage Collection Is Real
Real-Time Garbage Collection (RTGC) tests the limits of what we typically think is possible in production software. You might hear “Real-Time” and “Garbage Collection” together and think “If you truly need real-time guarantees, why would you use a garbage collected language?” or “How is real-time Garbage Collection…
We Need More Operating Systems
A blog about computer science education. Projects, resources, and ideas for teaching, learning, and using computer science. By a teacher for teachers.
Dependency Injection is a Virtue
DHH recently made a claim of Dependency Injection not being entirely virtuous, and got support from Tim Bray . While both make good point...
Starbucks Does Not Use Two-Phase Commit (2004)
People often criticize asynchronous messaging solutions as too complicated and cumbersome
How to write a 48-hour game in just 2 years
Stumble upon great links shared by curious readers. Discover worthwhile stories, explore unexpected corners of the web, and find something new. Join free.
Logic Programming is Underrated
Mark Engelberg wrote a very interesting post titled Logic Programming is Overrated . I take issue with a quite a few points made in that post and I would like to address a couple of them here.
Git Tips
Aditya Bhargava's personal blog.
MongoDB is to NoSQL like MySQL to SQL - in the most harmful way
MySQL and MongoDB are both popular, yet poor representatives of their species
Applied Cryptography Engineering
Applied Cryptography taught two generations of developers what they know about crypto, and it is a dreadful instruction manual. The book to replace it with, and what you still have to learn after.
C and C++ Aren't Future Proof
My hope would be option 1 for application code (as opposed to the “systems code” that you have there): fewer and fewer people use these languages to write application code. Moreover, I think that’s probably happening to some extent.