New

The latest blog posts to take off on Hacker News. 14,544 posts.

Software Engineering
Any year
9723

Compiler Optimizations are Awesome

Another reason for optimizing compilers: It allows us to write simple and obvious code expecting that the compiler will do the optimization. This both reduces the initial defect count and makes the code more maintainable in the long-run. Note that these are also often the simplest optimizations (e.g. a calculation…

9727

How to Improve a Legacy Codebase

It happens at least once in the lifetime of every programmer, project manager or teamleader. You get handed a steaming pile of manure, if you’re lucky only a few million lines worth, the original programmers have long ago left for sunnier places and the documentation - if there is any to begin with - is hopelessly out…

9731

Unicode is hard

In the last couple of months, I've been seeing the ú symbol on British receipts. Why? 1963 - ASCII In the beginning* was ASCII. A standard way for computers to exchange text. ASCII was originally designed with 7 bits - that means 128 possible symbols. That ought to be enough for everyone, right? Wrong! ASCII is the…

9736

Principles of TLA+

TLA+ is a formal specification and verification language intended to help engineers specify, design and reason about complex, real-life algorithms and software or hardware systems. We explore its motivation, application and principles of design.

9738

UIDebuggingInformationOverlay

Update, December 9, 2017: This overlay still exists, but this post’s instructions don’t work on iOS 11 and later. In an update to his excellent book, Advanced Apple Debugging and Reverse Engineering, Derek Selander describes how to get the panel working in iOS 11. He’s generously posted the chapter for free here.While…

9746

How a 64k intro is made

The demoscene is about producing cool real time works (as in “runs on your computer”) called demos . Some demos are really small, say 64 kilobytes or less, and these are called intros . The name comes from “crack intros”. So an intro is just a demo that’s small.