Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 1,508 posts.
Deno 1.0
Dynamic languages are useful tools. Scripting allows users to rapidly and succinctly tie together complex systems and express ideas without worrying about details like memory management or build systems.
MacOS Catalina: Slow by Design?
In episode 379 of ATP both Marco Arment and John Siracusa described noticeable delays and stalls after upgrading to macOS 10.15.
The Day AppGet Died
The story of how Microsoft embraced and then killed AppGet.
Goodbye, Clean Code
Let clean code guide you. Then let it go.
What's SAP?
What's SAP? And why is it worth $163B?
CRDTs are the future
I saw Martin Kleppmann’s talk a few weeks ago about his approach to realtime editing with CRDTs, and I felt a deep sense of despair. Maybe all the work I’ve been doing for the past decade won’t be part of the future after all, because Martin’s
On Apple's Piss-Poor Documentation
On this week's Under the Radar, Marco and Dave eloquenty discussed Apple's piss-poor documentation.
Can't you just right click?
In 2012, Apple added Gatekeeper to Mac OS X (now macOS). When you try to run Mac software downloaded from the internet, Gatekeeper checks whether the software was signed with a valid Developer ID certificate. If not, then Gatekeeper refuses to run the software. Over the years, Gatekeeper has become more strict…
Write Libraries, Not Frameworks
Normally when I write about something on here I take the time to fully think-out a point, make a case, address all the major sides of the issue that I can think of, etc.
Data structures and algorithms I actually used while working at tech companies
Do you actually use data structures and algorithms on your day to day job? I've noticed a growing trend of people assuming algorithms are pointless questions that are asked by tech companies purely as an arbitrary measure. I hear more people complain about how all of this is a
You've only added two lines – why did that take two days?
It might seem a reasonable question, but it makes some terrible assumptions: lines of code = effort lines of code = value all lines of c...
Systems Design for Advanced Beginners
This post is part of my Programming for Advanced Beginners series. Subscribe now to receive specific, actionable ways to make your code cleaner, every other week, entirely free.
Software Disenchantment (2018)
Everything is going to hell and nobody seems to care
TailwindCSS v2.0
Today we're finally releasing Tailwind CSS v2.0, including an all-new color palette, dark mode support, and tons more!
A half-hour to learn Rust
In order to increase fluency in a programming language, one has to read a lot of it. But how can you read a lot of it if you don’t know what it means? In this article, instead of focusing on one or...
Single Page Applications using Rust
Easy to follow guide to building SPAs using Rust, WebAssembly and Yew
Zig cc: A drop-in replacement for GCC/Clang
If you have heard of Zig before, you may know it as a promising new programming language which is ambitiously trying to overthrow C as the de-facto systems language. But did you know that it also can straight up compile C code?
Write code. Not too much. Mostly functions.
There’s a well-known quote by author Michael Pollan: “Eat food. Not too much. Mostly plants.” I like it because it doesn’t attempt to be dogmatic: it encapsulates some basic guiding principles that get you 90% of the way there 90% of the time. Wikipedia describes the book the quote is from (emphasis mine):
Fastly hires entire Wasmtime team from Mozilla
We announced the Bytecode Alliance nearly a year ago, and since then it has been… quite a year 😬
.NET 5.0
.NET 5.0 includes many enhancements, including single file applications, more capable JSON APIs, new versions of C
New Grad vs. Senior Dev
A student who I used to tutor in CS occasionally sent me a meme yesterday which showed “NEW GRAD vs SENIOR DEVELOPER”; the new grad is all caps yelling NO! YOU CAN’T JUST USE BRUT…
Ruby 3.0
We are pleased to announce the release of Ruby 3.0.0. From 2015 we developed hard toward Ruby 3, whose goal is performance, concurrency, and Typing. Especial...
Crafting “Crafting Interpreters”
It took three years and 200,000 words more than I expected, but my second book, Crafting Interpreters , is complete. I finished the third draft of the last chapter today, marking the last of around 1,400 days of continuous writing.
Awk in 20 Minutes (2015)
Awk is a tiny programming language and a command line tool. It's particularly appropriate for log parsing on servers, mostly because Awk will operate on files, usually structured in lines of human-readable text.