The most remarkable legacy system I have seen
There was one remarkable legacy system when I was working in a bank sometime back. This could be summarized as an internal AWS lambda equivalent. The offering was complete with full CI, CD, unit te…
The latest blog posts to take off on Hacker News. 14,543 posts.
There was one remarkable legacy system when I was working in a bank sometime back. This could be summarized as an internal AWS lambda equivalent. The offering was complete with full CI, CD, unit te…
How is your startup sharing knowledge with the rest of your team?We’ve been using slack’s #general or #random channels to make announcements.We regularly post documents and PPTs in slack channels s...
Part 4 covers pattern matching, destructuring, and enums
GitHub quietly released a new feature at some point in the past few days: profile READMEs. Create a repository with the same name as your GitHub account (in my case …
A talk at Hydra distributed computing conference , online (originally planned to be in Moscow, Russia), 06 Jul 2020
One day Alan Eliasen read a fart joke and got so mad he invented a programming language. 20 years later Frink is one of the best special purpose languages for dealing with units. “But why do we need a language just for dealing with units?” Glad you asked! Intro to Units A unit is the physical property a number…
This article explains how recurrent neural networks (RNN's) work without using the neural network metaphor. It uses a visually-focused data-transformation perspective to show how RNNs encode variable-length input vectors as fixed-length embeddings. Included are PyTorch implementation notebooks that use just linear…
GitHub has introduced READMEs for profiles that allow to display profile views
The importance of testing in modern software development is really hard to overstate. Delivering a successful product is not something you do once and forget about, but is rather a continuous and recurring process. With every line of code that changes,…
My experience with both languages.
I'll be looking for a new job soon, readers! And this has been cause for some reflection. In Emeryville, CA, there is an "international...
Modern OpenGL, and by extension WebGL, is very different from the legacy OpenGL I learned in the past. I understand how rasterization works, so I’m comfortable with the concepts. However, every tutorial I’ve read introduced abstractions and helper functions that make it harder for me to understand which parts are…
My book, Evidence-based software engineering: based on the publicly available data is now out on beta final release ( pdf , and code+data ). The plan is for a three-month review, with the final version available in the shops in time for Christmas (I plan to get a few hundred printed, and made available on Amazon).
Create multiline git commits by using -m multiple times when using git commit
In this post, I describe the phenomenon of the so-called expert beginner -- someone with mediocre skill who thinks he's an expert.
I share what I know.
Introduction ARM CPUs have long dominated the mobile world, nearly all Apple and Android phones and tablets utilize some model of ARM processor. However Intel and AMD still dominate the laptop, des…
Back in August of 2019 I had a Sing-Along Week contest on RetroBattlestations with the challenge of playing a MIDI file synchronized to a speech synthesizer singing the lyrics. In my stash of cards I found an MQX-32M MIDI card (Roland MPU-401 clone) which I wanted to use for converting MIDI signals to interface to an…
Code says what it does. That’s important for the computer, because code is the way that we ask the computer to do something. It’s OK for humans, as long as we never have to modify or debug the code. As soon as we do, we have a problem. Fundamentally, debugging is an exercise in changing what a program does to match…
When I first started writing software, developers had to implement most of the algorithms they used; yes, hardware vendors provided libraries, but the culture was one of self-reliance (except for maths functions, which were technical and complicated).
How can a theorem prover use the convention that 1/0=0 and still be consistent?
Part 3 covers functions, closures, if-else, while, for..in, range and iterators
This is an interactive tutorial series about Conflict-Free Replicated Data Types, or CRDTs for short. Their purpose is to allow seamless replication of data on different nodes in a distributed system. Merging is by construction always possible, without any conflicts. This series assumes no knowledge about CRDTs, but…
I’ve been learning Rust for the past twenty days or so, working through the Blandy & Orendorff book, coding up things as I go. Once I got into playing with Rust traits and closures and as…
Understanding the fundamental building blocks of Bitcoin can be daunting for some developers. The purpose of this guide is to explain through simple pieces of code, how Bitcoin works.
A tip on how to add a target on your Makefile to list all available targets