The State of Agile Software in 2018
Agile Software Development may be mainstream, but much of what's done is faux-agile, and we need to push back.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,540 posts.
Agile Software Development may be mainstream, but much of what's done is faux-agile, and we need to push back.
I was introduced to Rust in 2018 and has been enamored since. Rust is a system programming language, much like C++. Unlike C++ though, being relatively new, its language design is more modern and sophisticated. Writing with can feel more like writing TypeScript or Haskell. Not surprising since, despite being a…
Successful contributions to open source projects are a kind of currency. GitHub in particular encourages this in a number of ways: by showing avatars of contributors on repository pages, by showing your contributions to your followers via the activity feed and by signalling contributions per day on the activity graph…
Issue: March/April 2000 | PDF
Creating a full-fledged API requires resources, both time and money. You need to think about the model, the design, the REST principles, etc., without writing a single line of code. Most of the time, you don’t know whether it’s worth it: you’d like to offer a Minimum Viable Product and iterate from there. I want to…
I spend an awful lot of my day in Unix terminals running shell commands. For some reason, the variance in efficiency between different people when using the shell is huge: I know people who can run rings around me, and I’ve come across more than one paid professional who doesn’t use the “up” key to retrieve the…
I had a vague idea that closures could have a variety of performance implications; I did not believe that so many of the chosen and potential designs for C and C++ extensions ones, however, were so…
NOTES: I have grouped the options such that the Boolean ones (read: on/off true/false) come first, then those with a short amount of "flags", and after that the ones with a very long value.
This article is about how programming for CP/M, usng a 40-year-old C compiler, differs from modern C development, even for console applications.
What UUIDs and ULIDs are under the hood, and how to encode and use them.
Zig is a very interesting language from an IDE point of view. Some aspects of it are friendly to IDEs, like a very minimal and simple-to-parse syntax (Zig can even be correctly lexed line-by-line, very cool!), the absence of syntactic macros, and ability to do a great deal of semantic analysis on a file-by-file basis…
Software engineer by day, software engineer by night also.
An under-appreciated Rust feature
This article contains a collection of resources for senior (or staff+) engineers exploring the use of LLM for collaborative programming.
Looking back at my year of Rust. Part reflection, part waymark.
React provides a better abstraction over the DOM than MVC frameworks ever can. React is the last piece of the puzzle for ClojureScript web frontend development.
Developing a Boids program from scratch without restarting it.
Learn Rust the Dangerous Way, Part 6
The nine nines. 99.9999999% of uptime. Whether the AXD301 actually deserves to be held up as a system of nine nines seems debatable. I am not particularly interested in that debate. Erlang has a strong record for reliability and a design intended to help you as a developer and operator achieve your nines. Maybe just…
We have seen in a previous post that switch statements are more complex than they seem. The compiler is able to implement them as a decision tree (even though maybe it shouldn't). Is that everything it can do?
In this tutorial, we are going to learn how to draw charts with Chart.js and how to customize them to suit our needs.
In the previous post, we established that as long as ruby/json wasn’t competitive on micro-benchmarks, public perception wouldn’t change. Since what made ruby/json appear so bad on micro-benchmarks was its setup cost, we had to find ways to reduce it further.
Flattening a single very hot vertical Redis node into a horizontal Redis Cluster at Stripe.
It turns out that finite state machines are useful for things other than expressing computation. Finite state machines can also be used to compactly represent ordered sets or maps of strings that can be searched very quickly.
A couple of days ago I encountered this article: How Shazam WorksThis got me interested in how a program like Shazam works… And more importantly, how hard is...