No, Millennials Aren’t Killing Open Source

I came across an article about the lack of interest in open source software among younger programmers. And while I think it’s an important topic and worth discussing, I think the article misses a few important points about who millennials are, how we were affected by changes in computing and why so few of us seem to care about open source.

Continue reading “No, Millennials Aren’t Killing Open Source”

The Hidden Dangers of Self-Help

Wanting to better yourself as a person is a noble and admirable endeavor. As humans, we have the power to think critically about our actions and our behaviors. More importantly, we have the power to change them. This insight and desire for change is a core tenant of what we call “the human experience”, but it’s also a core part of our suffering. As someone who is actively working to overcome my own faults, I want to take the time to look into the idea of “self-help” and how it can actually be damaging when applied in the wrong ways.

Continue reading “The Hidden Dangers of Self-Help”

Showcase: Using PixelMaestro to Control an LED Matrix on an Arduino Mega

This past week saw the release of PixelMaestro 2.0, and with it, a bunch of fixes to device communication and control. You can now plug in any Arduino-compatible board with an attached LED strip or matrix and start controlling it in a matter of minutes. Not only can you send commands to it in real-time, but you can upload complete configurations and store them in EEPROM for long-term storage, even across reboots. This was possible in previous versions of PixelMaestro, but now it’s even easier.

This post demonstrates some of PixelMaestro’s new device integration features and example sketches.

PixelMaestro on an Arduino Mega
Controlling an LED grid on an Arduino Mega using PixelMaestro

Continue reading “Showcase: Using PixelMaestro to Control an LED Matrix on an Arduino Mega”

Digital Wellbeing: How Google Wants to Get You Off of Your Phone

Google’s Digital Wellbeing app found its way onto my phone yesterday, and it’s an interesting new app. Unlike most apps, which fight to hold your attention as long as they can, Wellbeing is all about getting you off of your phone. For a company that amassed its fortune on clicks and views, this seems counter-intuitive. What exactly does Wellbeing offer, and can it actually help you spend less time on your phone?

Continue reading “Digital Wellbeing: How Google Wants to Get You Off of Your Phone”

The Three Cs: Confidence, Creativity, and Compassion

Most of us experience at least one major shift in how we perceive the world. Whether it results from a traumatic event, or from the natural aging process, at some point we find that our old habits no longer serve our current needs. For me, one of these shifts happened earlier this year.

After taking some time to reflect on the experience, I set about summarizing my thoughts into a set of simple guidelines. These guidelines are meant as a motivational tool to keep myself focused on the things that are the most important to me. I called these guidelines the Three Cs.

Continue reading “The Three Cs: Confidence, Creativity, and Compassion”

Cross-Compiling Windows Applications in Linux with MXE

About a year ago, I started looking into ways to cross-compile Windows applications from within Linux. This brought me to a cool project called MXE (short for M Cross Environment). With MXE, you can use your Linux machine to generate Windows binaries without having to install any virtual machines or compatibility layers. In this post, I’ll walk you through the process of setting up MXE and turning your source code into a Windows program.

Continue reading “Cross-Compiling Windows Applications in Linux with MXE”

Saving LED Configurations to Arduino Using EEPROM

While working on the next release of PixelMaestro, I came across a problem of storing long-term data on an Arduino. I have a system in place where configuration changes are sent to an Arduino over USB as byte arrays, and as the Arduino reads the array it applies the changes. The problem is those changes disappear as soon as you restart the device. How, then, does one store persistent data without having to add an SD card or extra memory? Enter EEPROM.

Continue reading “Saving LED Configurations to Arduino Using EEPROM”