Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
Developing a Beautiful and Performant Block Editor in Qt C++ and QML
How I developed Daino Notes block editor from scratch.
Make: Theory and Practice
make is a widely used and valuable development tool. It's a "build" tool: it builds programs and documentation according to a "recipe". It could really be used for anything where someone edits some files, and then runs a series of processing steps to generate some other form from the edited files. For the most part…
Good coders borrow, great coders steal
Copying and pasting can be dangerous, but then again, so can many aspects of software development when done incautiously. In this post, I’ll take a look at what code copying actually means for software development, what good code theft means, and the pitfalls of copying badly.
A Crash Course on ML Modules (2015)
I was having lunch with a couple of Haskell programmers the other day and the subject of the ML family came up. I’ve been writing a lot of ML lately and mentioned that I thought *ML was well worth learning for the average Haskeller. When pressed why the best answer I could come up with was “Well.. clean language, Oh!…
Long Read: Lessons from Building Semantic Search for GitHub and Why I Failed
Made in Notion, the connected workspace where AI agents and teams organize docs, projects and knowledge together.
Red Hat ported OpenJDK to 64-bit ARM: A community history
Find out how Red Hat engineers and a community of open source enthusiasts created the standard OpenJDK implementation for AArch64.
The Error Model in Midori
Joe Duffy's Blog | Adventures in the high-tech underbelly
Enum of Arrays
A popular data-oriented design pattern is a Struct of Arrays. Is an Array of Enums also useful? Yes! But let’s do a refresher on struct of arrays (SoA) first:
Apple's new Processor Trace instrument is incredible
The new Processor Trace instrument has flown under the radar with this years WWDC announcements but many developers will find it truly indispensable.
Automate Everything - the hacker way
<p>Performing manual, repetitive tasks enrages me. I used to think this was a corollary of being a programmer, but I’ve come to suspect (...
Speed Up Git Pull
Note: Results may vary, depending on distance from your Git servers. In my completely unscientific benchmarks using time, after the following steps, …
We were not accepted into Google Summer of Code. So, we started our own
Introducing Qdrant Summer of Code 2024 program. GSoC alternative.
A new way to build with Large Language Models
Ultravox is a real-time voice AI infrastructure layer that powers fast, natural, and scalable voice agents.
Shadama: A particle simulation programming environment for everyone
We present a prototype of a programming system called Shadama. Shadama is designed for writing programs that create, control and visualize large numbers of objects. The basic execution model follows the tradition of StarLogo and its "turtles and patches" abstraction. Turtles, Termites, and Traffic Jams: Explorations…
Type inference
Type inference is a major feature of several programming languages, most notably languages from the ML family like Haskell. In this post I want to provide a brief overview of type inference, along with a simple Python implementation for a toy ML-like language.
Ruby 2.4.0-preview1 released
We are pleased to announce the release of Ruby 2.4.0-preview1.
Lessons learned from a successful Rust rewrite
I have written about my on-going rewrite-it-to-Rust effort at work: 1 , 2 , 3 . And now it's finished, meaning it's 100% Rust and 0% C++ - the public C API has not changed, just the implementation, one function at time until the end. Let's have a look back at what worked, what didn't, and what can be done about it.
I Will File Bugs for You (2014)
This post prompted by Aaron Klotz’s Diffusion of Responsibility and Sumana Harihareswara’s Inessential Weirdnesses in Open Source .
Cohere's First Model for Developers
Meet North Mini Code, Cohere's first open-source agentic coding model: a 30B MoE that codes strongly on minimal hardware.
Extending Emacs with Fennel (2024)
After watching this year’s EmacsConf and seeing Guile Emacs being resurrected I thought to myself - why limit ourselves to Guile? Sure, Guile isn’t just a Scheme implementation, thanks to its compiler-tower-based design. Other languages exist for Guile VM, such as Emacs Lisp, and Guile manual lists the following…
A lowering strategy for control effects in Rust
The Rust language has incrementally grown a set of patterns to support control-flow effects including error handling, iteration, and asynchronous I/O. In The registers of Rust , boats lays out four aspects of this pattern shared by Rust’s three effects. Today these effects are typically used in isolation, or at most…
The gap between learning code and producing usable software
One of the unspoken areas about software development is building usable software.