RSSAmplifier

Blog

Walk N' Squawk

A Coding Blog, Zig, Elxiir, with some FPGA and Japanese content as well.

walknsqualk.comRSS feed ↗25 posts

Latest posts

AI, LLMs and a step change in SW engineering

A lot has been written about AI and LLMs for the last year and a half (probably much longer). I mostly ignored AI and LLMs outside of chat clients on the web and found even with something like Cursor, that it wasn't quite up to what I needed to be that much more productive. Around the beginning of 2026, I ended up trying Claude Code at work and was sort of blown away. It has led to me using Claude…

Asking for engineering help

As I've advanced in my career, I spend more and more time helping my team and others in adjacent teams with issues they're hitting. I realized that many engineers don't know how to properly ask for help from other engineers, leading to frustration and wasting time.

My Development System and Other Blog Updates

Moving to Manjaro It's been a while since I mentioned changes I've made to my development setup, the last being related to moving to Kubuntu from Windows 10 , as well as moving to using NeoVim as my editor with AstroNVim as the base configuration . I'm still going strong with NeoVim and loving it as my main editor (including on my phone and tablet via Termux !). For the last few years though, I've…

Rust vs. Zig and testz

Earlier this year I made the switch from using C++ on my hobby projects to trying out Rust . I spent about 6 months of hobby night-time programming time porting over my 2D game engine and the bulk of my 6502 CPU emulator project. There are a lot of aspects of Rust that are great, but I got tired of fighting the borrow checker left and right. I still feel like I have a hard time expressing myself…

FPGA design for Software Engineers, part 4 - Multiplexed Seven Segment Displays

This time we'll continue from the last design article and add in the ability to drive multiple seven segment displays.

Neovim with a Little Bit of Config is Amazing

I've recently switched from using Visual Studio Code as my main editor of choice to using Neovim with the awesome Astronvim configuration and some of my own tweaks on top. It ends up functioning as a great development environment with code hints, debugging, file finder and at the same time uses much less memory. It even has one killer feature over VS Code.

Rust unit test layout

I've been succeeding in my fourth attempt at learning to use Rust. I come from mostly a C++ background, and I've struggled the first couple of times I've tried to pick up Rust, ultimately stopping the effort to work on the next shiny quarter. I started porting over my Nintendo 6502 processor emulator from C++ as a larger project to play around with. One thing I had done in the C++ one is have tons…

FPGA design for Software Engineers - Build System Updates, ECP5 Support

It's been a while since the last article and I've recently come back to playing with my FPGA repo. Given the amount of time that has passed there were some updates needed for the Dockerfile and a couple of improvements I wanted to make.

FPGA Design for Software Engineers - Docker Builds

As I mentioned in the last blog post I recently switched my laptop over to using Linux as my main OS from Windows 10. As part of that I was going through setting up all of my build tools for various projects and I realized the FPGA build system was a bit more cumbersome than it needed to be and, utilizing docker, it could be made more developer friendly.

Switching to Kubuntu 20.10 as primary OS

About a week ago, I decided to give another go at using Linux as my primary OS. This came about after my brother mentioned he had recently done the same and was really enjoying it. I've used Linux as my main OS a few times before, along with MacOS a few times as well, but I always ended up back to using Windows. Recently with WSL I had less cause to need Linux directly, but a couple of things…

FPGA Design for Software Engineers, Part 3 - Seven Segment Displays

Last time we took a break from Verilog and hardware design to improve our build system. This time we're back to Verilog and for our next FPGA project we'll create a seven segment driver circuit that will allow us to output hex characters to a single display. A seven segment display is a set of LEDs arranged like an eight plus a decimal point like you see on cheap alarm clocks and the like.

FPGA Design for Software Engineers, Part 2 - Simulation and Build Tools

It's been a while since the last article, but it was well received so thanks to everyone for the great feedback! This time we'll take a quick break from learning Verilog to set up a better simulation environment and build process using Cmake and Conan . The next article, which is already basically written, will be back to hardware design, using seven segment displays.

FPGA Design for Software Engineers, Part 1 - Verilog and State Machines

Over the last few years I've gotten more interested in electronics and FPGA design. I've also noticed that a lot of other software folks seem interested in doing the same, but often don't know where to start. So, I think I have some interesting advice for software engineers that feel like dipping their toes into the hardware world from the point of view of a software engineer. In this post I'll go…

Bitfield widths in C/C++ structures

Recently, I learned about a feature in C and C++ that I hadn't run into before: bit widths for fields in structures. The idea is that you can specify how many bits a particular field should have allocated to it. For example, you can have a field that is only 5 bits wide and therefore only takes values in [0, 32). You could then have a field that is 3 bits wide that is placed next to the first…

Passive and Active, Consuming and Producing

I was thinking recently about the different things I choose to do in my free time and which ones bring me the most enjoyment. I tend to have too many hobby projects going on at once and every three months or so, I naturally tend to cycle around. I realized I enjoyed my time the most when I had something to show for it: a written blog post, a finished circuit on a breadboard, or some module written…

Wx 3.1 with embedded SFML 2.5 control

I've been working on a project where I wanted to embed an SFML drawing context in a wxWidgets window. I wanted to be able to write a GUI application, but didn't want to have all of the UI be embedded within the SFML window using something like imgui. I thought it could be useful to others to have a simple example of how to do the same thing. Simple Example version I took the code from the SFML 1.6…

Electronics and great technical books on archive.org

I've been away from blogging for a few months and haven't had much time for personal projects either. I recently moved from Vienna back to the US, now living in Denver. So far I'm loving it; it's nice to come back after a number of years abroad, even if I will miss many parts of life in Europe. Getting into Electronics I've recently gotten into electronics more deeply than I've had a chance to do…

Learning the Jouyou Kanji

I love learning languages and I've always had a soft spot in my heart for Japanese. I didn't start out being good at learning languages. In fact I was pretty terrible. I'm not a polyglot or anything, but you tend to hear that same sentiment from most people online that have learned a second langage later in life. For instance, I took four years of Spanish in high-school but could still barely…

Setting up Let's Encrypt with Hugo

I finally got around to setting up HTTPS with a free TLS certificate for the blog. As I've mentioned before I mostly use Windows as my daily driver and love using WSL for a native bash/linux experience. Of course this isn't flawless and sometimes this rears its ugly head. In particular Let's Encrypts' tool letsencrypt-auto won't work under WSL. It seems to be due to a python package trying to…

Multiple Android builds on Xamarin Forms

While working on a Xamarin.Forms based project I ran into the issue of wanting to have multiple builds of my android app differentiated by the build configuration. For instance, I want my normal build to point to the production server, but when I'm developing locally I want a different app that points to my local dev backend. I still want to be able to use the current production app and have a…

Tip for Phoenix 1.3 Fallback Controller error

Just a quick note this time. While working on my Phoenix 1.3 based project, I had a route that was failing and gave me an error about the fallback controller not having a matching clause. Similar to (formatted excerpt): ** (exit) an exception was raised: ** (FunctionClauseError) no function clause matching in MyProj.Web.FallbackController.call/2 My route looked to be setup correctly and I couldn't…

Elixir on Windows Subsystem for Linux

Lately I've been doing a lot of elixir and phoenix programming while working on some hobby projects. I'm using a phoenix app as my backend server, serving up an API that is consumed by Xamarin.Forms based apps on Android and iOS. On Windows I've been using Git Bash (based on MinGW) for a bash shell for a long time and there the interactive elixir shell has had some downsides. In particular, I…

Hacking Final Fantasy 1 on the NES

A few years ago I was inspired to hack around on some of my old favorite NES games after watching the video from Double Fine where the developer Brandon Dillon hacks around on the original Legend of Zelda. You can watch the video here . I decided I wanted to hack Final Fantasy 1, one of my favorite games growing up, that I put in more than 100 hours playing. I used fceux as my NES emulator, same…

Setting up a Hugo-based Blog on GitLab

This was my first time setting up a blog on GitLab and it was a very easy process. I'm using Hugo and there are some straight-forward instructions for creating a bare-bones site and deploying it to a project: Hosting Hugo on GitLab I did run into one problem though that I wanted to share with the inter-tubes. When I first pushed my one-post-blog project to test, I wasn't able to see anything and I…

Welcome to the blog

Welcome to my tech blog. My name is Jeff DeWall and I'm a software engineer who grew up in California and then moved out to Vienna, Austria for fun and adventure with my wife. I've mostly worked as an embedded software engineer on custom platforms and lately on Android and iOS devices. Professionally I've worked mostly with C# and C++ with a handful of Python, Java and Objective-C thrown in for…