Latest
Community vs Ecosystem
One of the most powerful and important things about Open Source software is that it brings people together to work on a common goal. This is especially true if the project is setup as a Bazaar instead of a Cathedral. Usually the groups of people need a framework to communicate to work together in. Initially… Read more
Fun With Apple Multi-Arch Binaries
Apple macOS has for many years supported the ability to have binaries for multiple platforms in one executable. Upon execution the correct binary data is loaded into RAM. This has multiple names such as “Universal”, “fat binary” or “Multi-Architecture Binaries”. These were really useful when Apple was transition from PowerPC to Intel CPUs, a single… Read more
How I Interview Remote Engineering Candidates
Several of my friends in tech are having a hard time in their career due to everything going on in the world right now. They are being interviewed for new roles and I still see reports of bad tech interviews happening. I thought I would write up how I do interviews for the remote teams… Read more
Event Loops and NCurses
Yesterday I wrote a blog post talking about Event Loops, this was a pre-cursor to discussing where I am using them in an application I’m currently developing which uses NCurses at its core. Unfortunately the application is an R&D project and is not public yet (still very early in development), but it is written in… Read more
Event Loop Programming: A Different Way of Thinking
The concept of event loops is not new in programming, but I think it is still a really important technique to learn. They allow a program to send a request for something and carry on doing things rather than waiting on things to happen. It is a great way of multi-tasking in a single thread… Read more
Socket SO_REUSEPORT and Kernel Implementations
Way back when I was at NGINX I worked with several people on integrating a kernel patch for SO_REUSEPORT in Linux to work with NGINX for something I termed “socket sharding“. In hindsight I should have maybe called it “socket load balancing” but the term “sharding” has stuck with that option across the industry now.… Read more
Categories & TAGS
- Personal (227)
- Electronics (34)
- Retro Computing (180)
- Acorn (46)
- Amiga (86)
- Commodore 64 (4)
- PiStorm (23)
- Work (44)
Acorn Amiga Amiga 500 #1 Amiga 500 Plus #1 Amiga 600 Amiga 1000 Amiga 1200 Amiga 3000 Amiga 4000 Archimedes Atom BBC Master BBC Micro C C64 Coding ColumnStore Commodore 64 Databases Electronics Embedded Euro PC Linux mysql OLED Open Source PC PiStorm Programming Raspberry Pi Raspberry Pi Pico Repair Restoration Retro Review RGBtoHDMI RiscPC Schneider SCSI Soldering SSD1351 TWiP Valiant Turtle WordPress Xilinx