Technical Debt Is Like a Tetris Game
Expressive code in C++
The latest blog posts to take off on Hacker News. 21,833 posts.
Expressive code in C++
I recently wanted to take a hierarchy of items and draw them in a nice tree structure. For example, a Family Tree. At the time, I thought “This will be easy, I’ll just Google for an alg…
A guide on how to compile the X Window System for iOS
Git 2.25.0 includes a new experimental git sparse-checkout command that makes the existing feature easier to use, along with some important performance benefits for large repositories.
We look at how to utilize both, views and materialized views, within Ruby on Rails with a real-world sized dataset of hockey teams and their top scorers.
The Khronos Group announces the release of the Vulkan 1.2…
A guide to effective pair-programming
I would like the jury to know that I am, for the most part, a TypeScript fan but I do have some nagging doubts that I would like to discuss in this post.
Today, we’re going to look at the many ways of implementing user-to-kernel transitions on x86, i.e. system calls. Let’s first quickly review what system calls actually need to accomplish.
v1.2 - added comments from HN v1.3 - added “What does fits mean ?” v1.4 - added the conclusion When something very basic goes wrong, I have this hierarchy of potential culprits: the compiler buggy hardware OS vendor last and least me, because I don’t make mistakes :) So what...
When I read that Google is forcing developers to migrate from Google Sheets API v3 to v4, I was mad. Here's why.
Yesterday I pleaded, Bug #915: please help! It got posted to Hacker News, where Robert Xiao (nneonneo) did some impressive debugging and found the answer.
Design principles for writing software meant to survive decades of changing requirements and technology.
<p> <i>Python</i> haters always say, that one of reasons they don't want to use it, is that it's <i>slow</i>. Well, whether specific program - regardle...
What do OT (Operational Transformation) and CRDT (Conflict-free Replicated Data Type) really mean? And which one should you use in your real-time collaboration solution?
Take a look at some of the new features in the latest Git release.
Mercurial 5.2 was released on November 5, 2019. It is the first version of Mercurial that supports Python 3. This milestone comes nearly 11 years after Python 3.0 was first released on December 3, 2008.
Last week was the final week for this half's performance review at Facebook, where we write summaries of work and impact we and our peers had over the last h...
Kubernetes is the 800-pound gorilla of container orchestration. It powers some of the biggest deployments worldwide, but it comes with a price tag...
Increasingly popular in the last couple of years, I think 2020 is going to be the year of “no code”: the movement that say you can write business logic and even entire applications without having the training of a software developer. I empathise with people doing this, and I think some of the “no code” tools are…
Emacs , a programmer's text editor with roots in the 1970s, is a great tool for animation. In Fall, 2010 I taught a digital art class at NYU's interdisciplinary Steinhardt art school. Clearly, the thing to do was to teach how to make animations in Emacs by programming it in Lisp.
How we reverse engineered Discord’s call protocol and found it being MITM-ed by Discord.
There is a new release of Is Parallel Programming Hard, And, If So, What Can You Do About It? . This release features a number of formatting and build-system improvements by the indefatigible Akira Yokosawa. On the formatting side, we have listings automatically generated from source code, clever…
Updated: this was solved on Hacker News. Details in Bug #915: solved!
In Bash, there are two closely related "special parameters" for accessing how the current script was invoked: $* and $@ . For both variables, the behavior is affected by whether or not the variable is enclosed in double quotes. The following table summarizes all cases:
Google Cloud Run is the perfect deployment system for all your side projects. It is dirt cheap, fully managed serverless and scalable.