Why I Use Nim instead of Python for Data Processing
Lazy programmers often prefer to substitute computing effort for programming effort.
Lazy programmers often prefer to substitute computing effort for programming effort.
This is the first post in a series about writing REST servers in Go. My plan with this series is to implement a simple REST server using several different approaches, which should make it easy to compare and contrast these approaches and their relative merits.
What is a Container? Container vs. VM? Docker vs. Kubernetes. How to organize the learning efficiently?
Lately I’ve been seeing lots of anecdotes from people trying to get into Rust who get really hung up on strings (&str, String, and their relationship). Beyond Rust’s usual challenges around ownership, there can be an added layer of frustration because strings are so easy in the great majority of languages. You just…
I love coding. Ever since I bought my first computer (a VIC-20), I’ve been fascinated by computer programming. For many years I never thought of why I enjoyed it so much – I just knew I…
I have switched teams more often than I have had to implement an AVL tree, and you can guess which one of those two was taught in school. I wish someone had taught me how to join a new team! While learning a new codebase can be daunting, I've found a few things that work for me.
One person's entry-level contribution is another person's difficult bugfix or backport.
The current Go language memory model was written in 2009, with minor updates since. It is clear that there are at least a few details that we should add to the current memory model, among them an explicit endorsement of race detectors and a clear statement of how the APIs in sync/atomic synchronize programs.
During the annual Python core development sprint we held a meeting with Sam Gross, the author of nogil, a fork of Python 3.9 that removes the GIL. This is a non-linear summary of the meeting.
Modelling hierarchical/team/categorical/tag data with arbitrary depths.
A definition of DDD as a software design discipline
Client-Server Game Architecture | Client-Side Prediction and Server Reconciliation | Entity Interpolation | Lag Compensation | Live Demo
I've taken the week between Christmas and New Year's off this year. I didn't really have anything serious planned, just taking a break from the usual routine. As often happens, I got sucked into doing a project when I received this simple bug report Debian Bug #974011
TypeScript and JavaScript have steadily evolved over the last years, and some of the habits we built over the last decades have become obsolete. Some might never have been meaningful. Here's a list of 10 habits that we all should break.
This is not a competition, is just to show how to use the hardware with relative efficiency, being the idea is to show something collaborative rather than competitive.
Recently I've become more and more interested in how WebRTC works, so a few weeks ago I decided to add a page to my website where I could set up peer-to-peer video chats. There are plenty of libraries and services out there to make this extremely easy, but knowing that WebRTC is now well supported natively across…
By avoiding effect aware functions a language hobbles engineers and makes programs sloppier than they could be.
Part 1 of this series about my toy renderer covers the most fundamental design decisions. Over the years, I have written many renderers and for a long time their complexity kept growing. This time, I took the opposite route. I wanted to maximize the fraction of code that implements crucial functionality rather than…
While this post is addressed to F# .NET developers, it introduces much wider concepts starting from hardware architecture to overall .NET runtime and JIT compiler optimizations. It shouldn't be a surprise - optimizing the application performance requires us to understand the relationships between our high level code…
Last week, I described a use-case for a custom Stream Collector. I received a intriguing comment on Twitter: There was a 'Moved Permanently' error fetching URL: 'https://twitter.com/Miguucm/status/1389258245886390292' Hats off to you, Miguel! Your comment revealed a method I didn’t know! So I decided to investigate…
I recently had cause to take a beginners course in R - a language I'm fairly familiar with. One of the other students had never used it before, so we were buddied up in order for me to show them the ropes. The first lesson of R is always the same. Read a CSV, manipulate it a bit, draw a graph. We did it all without…
Published: 02-01-2021 | Author: Remy van Elst | Text only version of this article
A while back there was a thread on one of our company mailing lists about SSH quoting, and I posted a long answer to it. Since then a few people have asked me questions that caused me to reach for it, so I thought it might be helpful if I …
View this page on my new site This review is largely in response to the article "It's probably time to stop recommending Clean Code", and the ensuing Redd...
I show how I improved four of my shell workflows to parameter-less commands with the help of fzf.
There has been much discussion of using the Rust language in the Linux kernel (for example, here , here , and here ), at the Kangrejos Rust for Linux Workshop ( here , here , and here ) and 2021 Linux Plumbers Conference had a number of sessions on this topic, as did Maintainers Summit . At least…
Junyu Zhan's homepage