Patterns of Thinking: Metaphors in Programming

Miro Samek

Several years ago, I once attended an “Object-Oriented Analysis and Design” training. As most such courses go, the instructor began with brushing up on the fundamental OO concepts. When explaining inheritance, the instructor spontaneously...


Reading and Understanding Profitability Metrics from Financial Statements

Jason Sachs

Whoa! That has got to be the most serious-minded title I’ve ever written. Profitability Metrics from Financial Statements, indeed. I’m still writing Part 2 of my Supply Chain Games article, and I was about to mention something about...


A Second Look at Slew Rate Limiters

Jason Sachs

I recently had to pick a slew rate for a current waveform, and I got this feeling of déjà vu… hadn’t I gone through this effort already? So I looked, and lo and behold, way back in 2014 I wrote an article titled Slew Rate...


Supply Chain Games: What Have We Learned From the Great Semiconductor Shortage of 2021? (Part 1)

Jason Sachs

So by now I’m sure you’ve heard about the semiconductor shortage of 2021. For a few complicated reasons, demand is greater than supply, and not everybody who wants to buy integrated circuits can do so. Today we’re going to try...


Review: Modern Software Engineering

Steve Branam

This is actually a review of 3 books by Dave Farley, because they really form a set: Modern Software Engineering: Doing What Works to Build Better Software Faster (just released for 2022, 224 pages) Continuous Delivery: Reliable...


VolksEEG: Rust Development On Adafruit nRF52840 Feather Express

Steve Branam

Contents: Introduction Setup Hardware Workstation Software Checks USB Device Minicom JLinkExe FTHR840BOOT Contents OpenOCD VolksEEG/eeg-device-firmware PR "Merging initial implementation of the PC communications...


Working With ESP-C3-32S-Kit Dev Board

Steve Branam

Introduction The ESP-C3-32S-Kit is a small dev board made by Ai.Thinker, containing an ESP-C3-32S SoC module, supporting WiFi and BLE: Development for the board uses the Espressif IoT Development Framework...


Learning Rust For Embedded Systems

Steve Branam

The Motivational PortionBased on recommendations from Kevin Nause, the VolksEEG project is considering using Rust as the embedded system programming language. So I've been off on a tear skimming books and e-books and watching videos at 2x to...


The 2021 IoT Online Conference

Jacob Beningo

The IoT Online Conference is back, and this time the core focus is on IoT embedded systems and edge computing. This post will explore what will be happening at this year’s conference and how teams and developers can benefit. The...


Six Software Design Tools

Steve Branam

Introduction Here are six tools to help you with software design. The first two are very simple, almost deceptively trivial, while the last four are more involved. They apply universally, to all types of software, all types of systems, and...