Back from FIRST Championship 2022

Over the past 8 years, my wife and I have coached youth robotics teams through the FIRST Robotics programs. This year, the FIRST Tech Challenge (FTC) team we coach qualified to be one of two teams representing North Carolina at the FIRST Championship in Houston Texas, where the robot they designed, built, and programmed, competed with 79 other robots in their division. They also presented to volunteer judges on their season, design process, and STEM outreach, to compete for judges awards that align with the objectives of FIRST. There were 160 FTC teams total from almost every state, and many countries across the world.

This was an amazing opportunity for our team to make new connections, and actually meet in-person with other teams across the world that they previously only knew through social media connections and Discord conversations.

The real star of the event was a near constant current of what first calls “Gracious Professionalism”. The competition is fierce, the stakes are high, but these students are amazing examples of what it means to do your best, have fun, work hard, and still be respectful, kind, and helpful to those around you. Seeing some recorded messages from the late Dr. Woodie Flowers (, and hearing Dean Kamen himself speak live about how this program, and these kids, are what the world needs to solve today and tomorrow’s problems, was inspiring. Dean Kamen calls FIRST Robotics “The only sport where every kid can go pro” and these students are going to be amazing leaders in the upcoming decades.

If you have never seen FIRST robotics in action, check out some of the videos that are still available at:

If you want to get involved, you can find nearby teams and events with the search tool at:

Teams need mentors in the areas of mechanical design, manufacturing, programming, and business. Events need lots of volunteer support, especially from professionals in STEM to serve as judges.

If you think you might want to start a team, look at:

FLL (FIRST® LEGO® League) – 3 age-level appropriate programs for kids in grades Pre-K-8, ages 4-16. The oldest level FLL Challenge competes with “toaster-sized” robots built out of LEGO & LEGO Technic parts.

FTC (FIRST® Tech Challenge): For students in grades 7-12, ages 12-18, competes with “microwave-sized” robots built with a wide variety of kit materials and custom fabricated parts.

FRC (FIRST® Robotics Competition): For students in grades 9-12, ages 14-18, competes with “laundry-machine-sized” robots that use custom fabrication and off-the-shelf parts.

If you want to get involved, but aren’t sure where to start, feel free to contact me directly (I’m easy to find on social media) and I’m happy to help you find a way to connect.

Budget Birthday Gaming PC Build

My son decided that he wanted to build a gaming PC for his 11th birthday earlier this month. It’s been years since I have done a PC build, but I was pretty sure I could remember/figure out how to attach pieces together into a functional PC.

We started the process with a shared (OneDrive) Word Doc. I wanted my son to do as much of the research as possible. He had a pretty good handle on all of the necessary components from endless gaming Youtubers explanations of their rigs. When he had to make a choice (AMD vs. Intel), he searched for opinions online with references to the software he likes to use. His target workloads included Minecraft, Unity Game Development, & Blender modeling.

My son did a first-pass at a materials list, including a 8th-gen Intel Core i5-8400 CPU, ASUS Radeon RX 560 video card, 16 GB of RAM, 1TB Hard Drive, Case, Motherboard, Power Supply and all the trimmings. I had him run through the wattages for all of his planned components to make sure that we were well in spec for the power supply.

The next step involved me putting the list through a “Dad lives by a budget” reality check. The Intel Core i5-8400 was trimmed back to an Intel Core i3-8300. The ASUS video card and Motherboard were swapped for slightly cheaper Gigabyte equivalents. The RAM was scaled back to just 8GB. I added a Bluetooth and Wifi adapter to the list for flexibility in setup/accessories, and also a copy of Window 10 Pro, so that he’d be able to use Remote Desktop to access the new machine from his much less powerful laptop.

The final Materials List looked like:

Case: DIYPC DIY-F2-O Black/Orange USB 3.0 Micro-ATX Mini Tower (Amazon Link)
Motherboard: GIGABYTE B360M D3H LGA 1151 (300 Series) Intel B360 (Amazon Link)
CPU: Intel BX80684I38300 65W Core i3 i3-8300 Processor (Amazon Link)
Memory: Patriot Signature 8GB (2x4GB) DDR4 2400 (PSD48G2400KH) (Amazon Link)
Video Adapter: Gigabyte Radeon RX 560 GAMING OC 4G REv2.0 (Amazon Link)
Hard Drive: Seagate 1TB FireCuda Gaming SSHD (ST1000DX002) (Amazon Link)
Power Supply: Thermaltake Smart RGB 500W 80+ (Amazon Link)
Operating System: Windows 10 Pro (Microsoft Link)
Extras: Plugable USB Bluetooth 4.0 Low Energy Micro Adapter (Amazon Link)
EDUP Wifi Adapter ac600Mbps Wireless Usb Adapter (Amazon Link)
Arctic Silver Thermal Compound AS5-3.5G (Amazon Link)

Everything was ordered and delivered before my son’s birthday, just waiting for him to dig in:

componentsAssembly was a breeze. The case had ample room for working. I provided a few pointers for making sure that the pre-installed stand-offs were positioned properly for the motherboard, and the ordering of install to make things easier. The new BGA socket for the processor was so much easier than the omg-did-i-bend-a-pin sockets of yesteryear.

We had a slight struggle with the Hard Drive because our initial attempt had the mounting frame even with the drive, which meant that the drive was not set in far enough that the case could close without pressing on the hard drive power cable. Correcting this was made harder by the fact that the hard drive was positioned to block the flexible part of the frame from bending to allow it to be removed from the case frame. This was remedied by some careful brute force.

Most every component and connector just went where they fit. My son handled all of the odds and ends with the motherboard’s included connector map. This case and motherboard actually matched pretty well for all the connectors. HD Audio header, all the remote USB ports, and each and every light and switch had a proper home. We even connected a tiny little speaker that was included in the motherboard package, “just in case” it was needed for POST beeps.

Once everything appeared to be in place, we connected the new box to a TV that we use as a monitor, and a keyboard and mouse that were birthday gifts from relatives, and hit the power.

The box hummed to life, orange LED lighting and fans spinning, and then a few second later everything cut off. Then on. Then off again. I hit the physical switch on the power supply so that we could get our bearings.

Next test we didn’t change anything, but took careful notice of all the fans. All spinning, so at least we weren’t cooking the CPU. Yet.

Next test, we unplugged pretty much everything non-essential on the motherboard, removed the video card and swapped the monitor over to the build-in HDMI connection and tried again. Same results.

Next test, one RAM module out: same. other RAM module out: same.

At this point I’m thinking that we’ve got a bad power supply, a bad motherboard, or a bad CPU. We disconnected the power supply, jumpered the green wire to ground, and applied power. It was nice to hear the power supply come to life and not power down after a few seconds. I didn’t check voltages, but I was pretty sure that we had a working power supply now. So basically at this point, I’m pretty certain that the motherboard is telling the power supply to cut off for some reason.

As I’m hooking the 24-pin power back to the Motherboard and trying to think of what to try next, I notice a lonely unpopulated 8-pin connector above the LGA1151 socket that looks to be another power connector. On closer inspection, it’s labeled “ATX_12V_2X4” and it most certainly is another power connector. When we were first hooking up the power supply, we’d checked all over the video card to see if it had and extra power socket (it doesn’t), but somehow missed this on on the motherboard. My son hooked up the extra power connector with one of the many available lines from the power supply and tried again… Success! We now had a booting computer! After seeing the BIOS menu come up, we powered down and my son set to work re-installing everything that had been removed in the name of troubleshooting.

After everything was hooked back up, the computer booted successfully again, and my son started the process of booting from a prepared USB to install Windows 10.

All in all, the build was a major success. My kids typically use cheap, modestly powered laptops for schoolwork and games, and this beast way outperforms all of them for the things my son cares about most (i.e. bragging about frames-per-second on Minecraft).


Passmark shows that our modest budget PC holds it’s own pretty well at 3126.9:


Project – Card Skimmer Detector via Make

It’s summertime, which means the kids are on and off camp throughout the summer.  We’ve done a few projects in the past with Raspberry Pi and Arduino, and this project for a Card Skimmer Detector came across my feed from Make.

Not content with just following instructions, I ordered a slightly different display than the one used by Tyler Winegarner for the article.  I’m hopeful that it’s similar enough, and a quick review of the driver referenced in Tyler’s code seems positive.

Two of my kids will attempt to get this going on Pi Zero W’s with preinstalled headers from Adafruit, and I’ll dig in with some soldering required.  I also ordered some small piezo speakers and a USB GPS receiver that I might try to integrate.  I pre-printed a handful of basic Pi Zero cases from mynameishamish via Thingiverse but will probably design something more custom after we see how the project comes together.

Reading List: What’s the Future and Why It’s Up To Us

On the flight out to Seattle on Sunday, I finally finished up Tim O’reilly’s overtly named What’s the Future and Why It’s Up To Us. In a coincidence of timing, this morning I also scanned across Jeff Atwood’s reference to an observational call to action (from Pamela Druckerman) in the following tweet:

The book was a deep read on how Tim has observed transformative change occurring in recent decades.  There are ample examples, including very current trends in politics, technology, and economics, where the reader is walked through the development of a new mental map to understand why the change made sense.  It’s often the case that looking back on disruptive changes, they seem obvious and inevitable, but it takes a spark of ingenuity or genius to build that new map without the benefit of hindsight.  The challenge that the book hopes to instruct, is to identify opportunities for reframing our own views in ways that lead to constructive, but disruptive change.

Tim has been well positioned to observe and report, and includes anecdotes and quotes from key players in past significant disruptions.   There are also many references to traditional business authors, like Drucker and Collins that will be familiar to many MBA students, including critical takes on some widely held beliefs about what makes business tick, especially in the United States.

Beyond understanding the processes of disruptive change, the book spends quite a bit of print developing ideas about what types of changes are good for people, good for humanity, and good for the future.  In what seemed like an echo of this theme in the book, this morning I sat through an amazing keynote by Microsoft’s Satya Nadella which included a professorial call to action for developers to build the future that humanity needs by embedding privacy, security, and ethical choices in the systems and AI that we build for the future.

This book is a great read if you want to gain some knowledge about historical twists and turns in the technology industry, to slightly reprogram your brain for how to look out for disruptive change, and prepare yourself to help make a positive impact on the future.

Starting a new Adventure

After 99.5 months (sounds more interesting than “8+ years”) at Microsoft, I’m heading off on a new adventure with Cloudera. Over the years with Microsoft I have worked with some amazing folks in support, consulting, and sales.

Thanks to all the folks from Microsoft who have mentored me, worked along side me, and who wished me well as I made the difficult decision to depart. I know that I started some lifelong friendships along the way.
Last day at Microsoft:

And thanks to all the Clouderans who have helped me find this new opportunity, believed that I was up to the challenge, and welcomed me to the team. I’m excited about focusing intently on the Hadoop ecosystem, and I feel like I’ve found a great fit with the energy and culture I’ve seen so far at Cloudera. It’s going to be a fun adventure!
First day at Cloudera: