My first book, “Beyond Passwords,” is DONE. Wow.

Today marks a big day in my life.

I completed my first book. I just sent off the final manuscript for publishing. (That’s fancy-words for “I emailed a formatted PDF to the publisher.”)

This book is all about cyber-security for small businesses. While some of the content applies to individuals, I geared it toward the needs of business owners. Stuff like how to stay safe while traveling, what makes a strong password (hint: it’s not a word), and why you should NEVER leave your laptop unattended.

Continue reading “My first book, “Beyond Passwords,” is DONE. Wow.”

Your Wi-Fi Password is (Probably) Too Short

When’s the last time you changed your Wi-Fi password? Perhaps you’re among many who have never thought to. When you signed up for Internet service, did you have the technician set up your modem for you? If so, your Wi-Fi password is probably way too short to be secure.

tl;dr: If your Wi-Fi password hasn’t been changed for years or it’s < 12 characters long, go change it. NOW. Continue reading “Your Wi-Fi Password is (Probably) Too Short”

Pattern Matching & Systematic Reduction Continued: How I Learned to Multiply

Last time I talked about memory and memorization I discussed how I learned the Braille alphabet. We reduced the number of symbols to memorize from 64 down to 5, plus a few rules to transform those symbols. I mentioned I wanted to show how I skipped learning the multiplication tables.

In elementary school, I hated having to memorize the multiplication table. Teachers always tried to tell me different ways to memorize it, but I could never shove that knowledge in my head.

Continue reading “Pattern Matching & Systematic Reduction Continued: How I Learned to Multiply”

Pattern Matching & Systematic Reduction: How I Learn New Ideas Efficiently

Throughout my life I have always searched for patterns. I can’t explain why, but I’ve found it’s been the way I’ve learned most efficiently. One example of this is my recent fascination with Braille. I had the chance to play Scrabble recently with someone who is fully blind.

It was, no pun intended, an eye-opening experience. Not just because I was soundly defeated (I don’t play Scrabble much), but because this person was able to feel their way around the board, their letters, and come up with high-scoring words.

Continue reading “Pattern Matching & Systematic Reduction: How I Learn New Ideas Efficiently”

Modernizing Your Libraries: What Magical Go-Fast Button Lurks Within Your Code?

One of the specialties of my consulting company, Northern HCI Solutions, is to take old software and modernize it. Often companies have programs that work perfectly well, but because their code is aging, it’s hard to find people to maintain those systems.

One of our most recent projects involved modernizing a Delphi app written in the late 1990’s. This app is an amazing piece of kit. It runs scientific simulations on a precise timescale. Our client wanted to keep the functionality they had and present it to users as a web app. Continue reading “Modernizing Your Libraries: What Magical Go-Fast Button Lurks Within Your Code?”

PurpleBlu2 – My First Custom Wi-Fi Pi Speaker Build – PART 2 – Test Run

In part 1 of this blog series, I covered the basic design of PurpleBlu2, my first from-scratch Raspberry Pi-powered Wi-Fi speaker. To recap: I designed a speaker system from scratch using some small 2″ full-range drivers (for good quality audio), a Raspberry Pi 3 B+, a small 5 watt amplifier, and a wood box I designed myself.

Continue reading “PurpleBlu2 – My First Custom Wi-Fi Pi Speaker Build – PART 2 – Test Run”

PurpleBlu2 – My First Custom Wi-Fi Pi Speaker Build – PART 1 – Plans

After the success of retrofitting a Raspberry Pi into my old guitar amplifier, I started the design of my next project. This time I didn’t want to reuse old parts. I had the following objectives.

  • Cabinet that could be mounted in the kitchen.
  • Small speaker size.
  • Powered from one replaceable power supply.

My long-term goal is to create a Sonos-like system for my entire house. My girlfriend and I want to have zone-based audio (think: stream to each room at the same time) for parties and our own enjoyment. My first step was to build a system for the kitchen and experiment with some off-the-shelf parts. Continue reading “PurpleBlu2 – My First Custom Wi-Fi Pi Speaker Build – PART 1 – Plans”

PurpleBlu – My First Pi-Powered Wi-Fi Speaker

It’s been a long time since I last blogged about a technology-related thing I did. I miss that. After talking politics, public policy, and everything else that’s wrong with the world, let’s talk about something cool and exciting – hacking!

During my recent trip to Alberta I got to tour some of the maker spaces and hacker labs. I got inspired – I wanted to build something cool. For years I’ve had little bits of technology sitting around from various projects that were started and stopped. One of my limits was the space I’ve had. When you live in an apartment it’s tough to justify keeping lots of tools around. Plus cleanup can be quite messy.

When I got home, my girlfriend and I talked about her need for a portable speaker for playing music at dance lessons. It got me thinking. “I have an old model 1 Raspberry Pi that I’m not using. I’ve also got an old, cheap guitar amplifier. Maybe I could build a powered Wi-Fi speaker that we could stream to?”

So that’s exactly what I set out to do. I was finally at the magical intersection: I had the tools to pull off the job, the equipment needed, and the skills and patience to pull it all off.

Step 0: Prepare the Pi

I decided to use Pi MusicBox for this project. It pretty much worked out of the box. Simple configuration (had it on the Wi-Fi on the first try), and I was able to stream from the iPad direct to it. The Pi was ready in about 10 minutes actually.

Step 1: Modify the amplifier


The first step was to connect the Raspberry Pi to the amplifier. Since this was a proof of concept, I wasn’t too concerned about the quality of sound. I decided the easiest way would be to solder a 1/8″ (headphone plug) wire to the input jack on the amplifier. I connected both left and right channels together (it’s a mono speaker) and soldered them to the input jack. That way the front input is still usable. I then tacked the wire down with hot glue.

Important disclaimer notice: this particular amplifier directly exposed the mains (120V AC) input. I’ve got lots of experience with electronics. Do not poke around randomly if you’ve never done this before. That’s more than plenty of power to kill you very quickly. 


Step 2: Cut a hole for the Raspberry Pi

One of my objectives for the speaker was to be able to plug in a USB thumb stick and play music from it. Since I didn’t want to add a separate jack for USB, I decided the easiest route was to cut a hole in the back of the amp where the Pi would stick out.

Dremel time!


I first traced out the rough shape of the Pi with a permanent marker. Then I drilled out pilot holes to help get the cuts started. Finally I attached a reinforced cutting wheel and started hacking away.

A few things I learned while using the Dremel to cut this hole.

  • Wear a mask. A lot of dust is going to get kicked up.
  • Don’t use a cutting wheel. Use a cutting bit and a press attachment.
  • Do it all outside. I ended up moving outside after the initial holes were drilled.


A dry fit later and it all came together nicely! Looks pretty good too.

Step 3: Assembly and Details

The assembly was rather simple. I added 3M Command Strips to the underside of the Pi case to keep the Pi secure.


The space was large enough for me to run an HDMI cable and the Power Supply for the Pi on the outside.


After a few more dabs of hot glue to keep the audio cable secure, I screwed everything back together.

Future Plans

What’s next for this speaker? Well, there’s a few things I don’t care for right now.

  • The speaker included sucks. It produces okay sound when the settings are just right, but it’s not great. I’d like to replace it with a full range driver at some point.
  • Two plugs. The amp has one plug and the Pi power supply has another. I’d like to add an internal power strip that the amp and Pi plug into, then the power strip has one lead coming out that plugs into the wall.
  • The HDMI wire just hangs out there. I really only need it for debugging. I might add an HDMI keystone jack at some point.
  • No indicator that the Pi is ready. I’d like to add an LED or some other status indicator to let me know the Pi is booted and ready to rock.

In the meantime, I’ve drawn up plans to build a small audio system for our kitchen. I’ll post about that soon.

Have fun hacking your Pi! Have you tried something like this before?

Disconnected – How Politicians Have Overlooked Rural Ontario’s Internet Poverty Crisis

Following the 2018 Ontario election has been like watching someone channel-surf. In mere weeks we’ve covered more issues than prior elections could ever cover in months. The Liberals are trying promise after promise to find an issue that will stick with voters. The PCs have screamed about the Liberals non-stop. The NDP have campaigned on their typical social issues, with some success.

Yet there is an issue nobody in the campaign has talked about. It’s a big symptom of what’s wrong with Ontario.

Continue reading “Disconnected – How Politicians Have Overlooked Rural Ontario’s Internet Poverty Crisis”

Too Much Information?

It’s been entertaining to watch the Cambridge Analytica story over the Iast week. When it broke, you would be forgiven for thinking that it was a scandal of some sort. Basically this company used personal data from Facebook to craft political messages that would all but guarantee the election of Donald Trump. It’s certainly not their first rodeo either. They’ve got extensive experience in other campaigns, hut this one was one of the most prolific. The company has since been banned from the platform as they acquired the data inappropriately. The damage has been done though.

Continue reading “Too Much Information?”