Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 14,538 posts.

Any year
5465

Generating Voronoi diagrams using Fortune's algorithm

This article is about using Fortune’s Algorithm to generate Voronoi Diagrams in O(nlogn) time. If I’d known how hard it would be I wouldn’t have started it. If you are intending to implement it with the intent to actually use it, rather than as an exercise, I would recommend not using Fortune’s. Unless you are doing a…

5475

The beauty of finished software

Let me introduce you to WordStar 4.0, a popular word processor from the early 80s. WordStar 4.0 As old as it seems, George R.R. Martin used it to write “A Song of Ice and Fire”. Why would someone use such an old piece of software to write over 5,000 pages? I love how he puts it: It does everything I want a word…

5476

Make your program slower with threads

Years ago, while taking a numerical methods course, I wrote some code to calculate the expected number of shared birthdays in a group. The code is very simple: each attempt constructs a vector of N birthdays, then counts the duplicates. The outer loop runs millions of attempts, and calculates the mean number of shared…

5477

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…

5484

Turbo Rascal Syntax Error

TRSE (or its full original name “Turbo Rascal Syntax error, “;” expected but “BEGIN”) is a complete suite (IDE, compiler, programming language, resource editor) intended for developing games/demos for 8 / 16-bit line of computers, with a focus on the MOS 6502, the Motorola 68000, the (GB)Z80, the M6809 and the X86…

5485

5NF and Database Design

Author: Alexey Makhotkin squadette@gmail.com, (~3900 words) One of the goals of this publication is to deconstruct the traditional ways of teaching basic topics in relational databases. Previously we discussed the fourth normal form (4NF): “Historically, 4NF explanations are needlessly confusing”. Let’s discuss the…