Bryan's Blog

Bearded Code Warrior

How I Build My Site

I’m still using the hugo static site generator, and the following makefile to help me build new posts:

Lots of Life Updates

I haven't been blogging much lately, but I figured that I'd do a quick summarization of what's been going on this year. Home The main reason why I've been to pre-occupied to blog regularly this year is because my house now contains a one-year-old. My son, Billy, is by far my most amazing creation. He's also the busiest kid I've ever seen in my life. Busy in a good way, he's extra curious about everything.

Five Lessons John Perry Barlow Taught the World

In light of the passing of the great John Perry Barlow, vpnMentor has published a wonderful tribute piece, titled 5 Lessons that John Barlow Taught the World. Typically I don’t link to these kinds of articles, but in the wake of John’s passing I feel the need to spread the message far and wide: digital privacy is important.

John Perry Barlow Has Died

The world lost a great man today. John Perry Barlow was a hero of mine. He wrote lyrics for the Grateful Dead, co-founded the Electronic Frontier Foundation, and helped shape the internet and the freedoms therein. Though I never had the honor to meet him personally, he greatly shaped my views of the world. Rest in peace, John. What follows is a reprinting of John’s famous principles for adult behavior.

Name Change

As you may have noticed, I’ve changed the subtitle of this blog again. Back in the day I used to run a blog at The blog was strictly about programming, which allowed me to focus my personal site (this one) on personal issues. Since then I’ve consolidated my web presence, but I want to bring the name back. I used to actively blog about template meta-programming tricks back before we had the luxury of things like constexpr functions and std::apply and other cool things in the standard library.

I Love Slackware

I love Slackware. It’s the most stable operating system I’ve ever run. Even on days like today where I have to hunt and peck to get some setting tweaked to get my wifi working again, I can’t help but love this system. No operating system is perfect, but I’ve had far less problems over the years with Slackware than I’ve had with Windows and macOS. And the beauty of Slackware, and linux distributions in general, is that when the wheels do occasionally fall off, I have the ability to at least try and fix things myself.

NetworkManager 1.10 Connection Issues

The NetworkManager package was recently updated in Slackware-current, and for some reason it stopped working on my laptop. It would try to connect, but would always just disconnect from any wifi network. I tested connecting with raw wpa_supplicant and ifconfig/iwconfig, and everything worked fine, so I figured it was definitely a NetworkManager problem. After some exhaustive googling, I came across a fix: add the following to /etc/NetworkManager/NetworkManager.conf: [device] wifi.scan-rand-mac-address=no which tells NetworkManager to not use a randomized MAC address when doing scans and such.

Fight For An Open Internet

Friends, Would you want to live in a world where the electric company charges you extra fees if you plug in a fridge from a brand that THEY don’t like? Or how about having to pay extra just to have the luxury of using both a microwave AND a coffee maker? What I’ve described just there sounds pretty absurd, but it’s exactly what will happen to the free and open internet if the FCC has it’s way.

Blogging with org-mode

Over the years I have tried various techniques for trying to stay organized in my day-to-day life. I'm not quite there yet, but the best I've so far come up with is using org-mode inside emacs (I already do most of my computing in it anyways…) to keep track of notes and planning, and then use a daily bullet journal for keeping tabs on what I need to do for a given day.

Sqlite with C++

This blog post outlines how simple it is to interface with the sqlite3 database platform in a type and memory-safe way using features in modern C++. In order to complie this code, you will need a compiler that supports at least some new features of C++17. Namely: the ability for the compiler to deduce template arguments from constructors. If you want to play with C++17, I suggest grabbing a pre-release snapshot of your favourite compiler.