Topics /

Software Engineering

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

Any year
11464

Undefined Behavior != Unsafe Programming

Are you arguing that undefined behaviour should not be a thing in, e.g., C? It sounds like you’re claiming that the fabled sufficiently smart compiler could take code in a C-like language with no UB, and emit something equivalent to what a C compiler would produce given equivalent input in C that correctly avoids UB…

11466

Wild claims about K performance

Sometimes I see unsourced, unclear, vaguely mystical claims about K being the fastest array language. It happens often enough that I'd like to write a long-form rebuttal to these, and a demand that the people who make these do more to justify them.

11470

A beginner's guide to constant-time cryptography (2017)

For programmers new to cryptography, there are plenty of “known unknowns” – unfamiliar terms like “elliptic curves” and “random oracles”, and unnecessarily long acronyms (“RSASSA-PKCS-v1_5”, like really?). But what really gives cryptography its reputation is the unknown unknowns. The things that catch even experienced…

11471

Arc and Mutex in Rust

When writing concurrent Rust you will encounter Arc and Mutex types sooner or later. And although Mutex might already sound familiar as it's a concept known in many languages, chances are you haven't heard about Arc before Rust. What's more, you can't fully understand these concepts without tying them to the ownership…

11473

LeftPad and Go: can tooling help?

You’ve probably heard that story about NPM community and LeftPad package, that broke thousands JavaScript projects worldwide. There was a nice follow-up article titled “Have We Forget How To Program” and one guy even created left-pad.io - Left-Pad As A Service web service. People got a lot of fun discussing this story.

11479

What is Local first development

What is local-first software and why does it matter? This guide covers local-first architecture, offline-capable apps with automatic sync, data ownership, and how to build a local-first web app with Vue step by step.

11480

Can we do better than our C compiler?

Today, I wanted to see if I could out-compile my C compiler. I added a hand-compiled assembly version of echo from our previous coding exercise and added a new make target, make asm , that will assemble it. Let's look at our hand-compiled assembly and compare it to our C compiler and ask whether or not it was worth it.

11484

Bfs 3.0: The Fastest Find Yet

bfs is a tool I wrote to do b readth- f irst s earch through a filesystem. It started out simply enough, but over the years it’s grown to include almost every feature from every other find implementation I could find, plus many of its own innovations. The new 3.0 release series includes the biggest new feature so far…

11488

How Difficult is it to Write a Compiler?

Recently I was discussing Converge with someone, and mentioned how little time the core compiler had taken to implement (no compile-time meta-programming, limited error checking, but a functioning compiler nonetheless) - only a few days. The chap I was talking to looked at me and told me that he didn’t believe me. I…