SEATTLE SOUNDERS ARE CONCACAF CHAMPIONS
We won the CONCACAF Champions League title tonight! It was the best soccer match I've ever attended. We set the CONCACAF Champion League attendance record with 68k+ people screaming out hearts out as we scored each of our three goals to win the championship! Next up for the Sounders is the 2023 FIFA Club World Cup against some of the best clubs across the world. And now that our CCL run is over we can get back to focusing on MLS play. What. A. Game. What. A. Team. What. A. City. I love Se...
Read post
Hacking Legacy Sites for Fun and (Non)profit
Audience This post is written for an audience of software engineers and assumes general Internet experience. Some definitions are provided below to provide context for those without a background in developing software. Definitions GDPR (General Data Protection Regulation): A European Union law focusing on data protection and privacy. California has a similar one called the CCPA (California Consumer Privacy Act). There is no federal law in the USA providing data privacy protection. Cookie ba...
Read post
What Should We Expect From FOSS?
Audience This post is written for an audience of software engineers and assumes general Internet experience. Some definitions are provided below to provide context for those without a background in developing software. Definitions Free and Open Source Software (FOSS): Software with published source code that anyone is free to use, study, or modify JavaScript: The world's most popular programming language Node Package Manager (NPM): An online collection of JavaScript code and associated set ...
Read post
Pandemic Life: Year Two
Year two is over! I figured I would write a follow up to last year's post about what it's been like to live in a pandemic. I was desperately hoping there would be no need for a second one because the pandemic was over, but here we are. Thankfully, the naive optimism of my first year post largely worked out despite the pandemic entering its second year of changing the world. I was fully vaccinated in May and got my booster in December. Thanks to that I was able to see friends and family way mor...
Read post
Static Code Analysis: Reducing Your Team’s Cognitive Burden
Have you ever run into a pull request that seemed impossible to merge? One with hundreds of comments from a dozen people, with two folks passionately arguing about choosing variable names, which language features to use, or whether to delete that unused method that might get used someday. Nobody can seem to agree on a set of standards, and with no ultimate authority to turn to, the code review devolves into a contest of wills. Those pull requests from hell result in a lot of wasted time for a s...
Read post
Book Review: This Is How You Lose the Time War
Go read it. This Is How You Lost the Time War is one of the most beautifully written pieces of fiction I've ever read. I even read parts of it out loud because the words were that delicious. I don't read out loud. Ever. I loved this book too much to write a detailed review. I'm still reeling from the experience and I can't wait to read it again. In short, it's a love story scattered through time and space, giving you a peek into the worlds of two intergalactic time soldiers while leaving a ...
Read post
Yew Hooks with GraphQL
Over the last year or so I've been occasionally hacking away at a web app called Dicebag, which will eventually become a collection of useful tools to facilitate in-person Dungeons & Dragons games. Part of this project stems from my lack of satisfaction with other tools I've found. Most tend to focus on running a game online or preparing for games in advance. I'm wanting something that enhances the player and DM experience by presenting contextual data depending on what's happening in the g...
Read post
2021 Year In Review
As the first year of the decade comes to a close, I can breath a sigh of relief. While 2021 wasn't great, at least this wasn't 2020. Personally, I had a pretty solid year. As a country and global society, things could've gone much better. Let's get the global bad out of the way first: The January 6th Insurrection, which will be discussed as one of the lower points in US history for decades Carbon emissions went back up after a slight lull from the pandemic The pandemic remained a pandemic, e...
Read post
Government as a Service (GaaS): How the Federal Government Could Streamline State Management
Last week, the Missouri governor showed the world his technological illiteracy by vowing to prosecute a "hacker" that brought a major data leak to the government's attention. The entire tech community had a big laugh, since the government itself was sending Social Security Numbers to users that could be easily found with the barest modicum of tech know-how. The governor's public blunder never should have happened. The fact that he publicly stated his ignorance in such an embarrassing manner dem...
Read post
Podcasting's Walled Garden Problem
If you know me well, you know I'm a tad bit into podcasts. I listen to 28 different shows regularly, with 40 other shows I pick and choose from when I have the time. If I'm not listening to an audiobook, chances are I'm devouring a podcast. I've been in love with Podcasts since I discovered them over a decade ago. It's basically internet radio, except you're the DJ. Distributed through the ubiquitous RSS feed technology, they're easy to find, share, and consume. But Spotify (and some other med...
Read post
Living with Seattle's Long Dark
It's that time of year again, where the sun sets before 7 PM and a perpetually gray blanket of clouds once again descends on the Emerald City. The Long Dark in Seattle has begun. As an introvert, fall and winter are two of my favorite seasons here in Seattle. The city slows down, social events become less frequent but more cozy, and I get to snuggle up in a blanket and read while listening to the rain drumming on the porch. But as someone with depression, fall and winter can be the most diffi...
Read post
The Why and How of Rust Declarative Macros
In order to prepare to conduct a technical interview of a potential future co-worker, I decided to try to solve the problem we would be presenting to the candidate. I chose to do it in Rust (even though we don't use Rust on my team) so that I could approach the problem with a fresh perspective and potentially learn some new things about my favorite programming language. It turns out revisiting an old problem using a dramatically different programming language will teach you a lot! I wrote four ...
Read post
COVID Summer
I thought this was supposed to be over. The vaccine would show up, everybody would take it, and life would get back to that "new normal" everyone was talking about. But instead, we're seeing a fourth spike thanks to a brutal combo of the delta variant, vaccine hesitance, anti-vax propaganda, and a general unwillingness to make personal decisions while keeping the general public's health in mind. Thankfully this hasn't been the worst summer. Last year easily takes the title for worst year ever....
Read post
The Future of the Web: Why It Doesn't Have to Be JavaScript
I am a professional web developer. I use JavaScript on a daily basis, but to be honest I harbor a bit of hate for the language. Don't get me wrong, it does its job and does it well enough, but... there's a reason TypeScript exists. Despite its glaring flaws, JavaScript is currently the most widely used programming language in the world. JavaScript's stratospheric growth is largely driven by the growth of the Internet and web technologies. And while JavaScript exists on the server, it was born f...
Read post
Vaccinated!
I got my second poke yesterday! A few hours after getting my second dose of the COVID-19 vaccine, I was very tired and took a five hour nap, waking up just in time to go to bed. Unfortunately, I woke up in the middle of the night soaked in sweat with a pounding headache and a variety of bad dreams marching through my brain. It was an awful night, but I eventually got back to sleep and woke up at 10 A.M. feeling great. The next day was filled with dog park adventures, cooking delicious food, re...
Read post
First Dose of COVID-19 Vaccine!
I got my first poke last weekend. Next one is on May 8th! My life is about to become very different, very soon. I can't wait! Go get your vaccine folks! It's a game changer. Life won't be back to "normal" (or whatever new normal we end up with) for quite a while, but being able to hang out with friends indoors playing board games or D&D will be an incredibly welcome change. ...
Read post
A Year of Pandemic Life
It's been a whole year. One that feels like a lifetime. A year ago I left my office at work for the very last time. I expected to be back in a couple months, but those months dragged on. I got a pay cut, which spurred me to find a new job. And even if I hadn't changed jobs, I still would not have revisited my old desk to this day. Worldwide tragedies have a way of shaking things up, and I'm sure others have felt the whiplash of well-laid plans being abandoned and replaced with activities that ...
Read post
Farewell Flash!
Today, Mozilla shipped Firefox 85, in which they completely ripped out Adobe Flash functionality. And while Google hasn't quite shipped their Flash-less Chrome release yet, I don't care because Chrome is essentially Google-branded spyware that has no business being on my machines. So, in my world, Flash is dead. 💥💀⚰️ For those of you who didn't grow up in the early '00s playing online Flash games or watching Flash cartoons, Adobe Flash was an easy-to-use technology for building interactive cont...
Read post
Relief
Joe Biden is officially the 46th President of the United States! The inauguration was vastly different than any we've seen before. The new administration did the smart thing and limited attendance, both because of the pandemic and the threat of violence from those who participated in the January 6th violent insurrection/most incompetent coup attempt ever. I was fully expecting something to happen, but was immensely relieved when President Biden walked back up those stairs into the relative saf...
Read post
My 2021 Government Action Wishlist
After the unlikely, but very welcome, results of the Georgia special elections, new opportunities abound. It's been ages since we've had a unified Democratic government that will now have the ability to get things done! This is my wishlist of everything I want to see happen before 2022, when the GOP gets its next shot at taking back power. So many of these things are pie-in-the-sky given the type of people currently in power, but I am optimistic that some will happen or we'll at least make prog...
Read post
Democracy Survives
Wow, what a day. On January 6th, insurrectionists stormed the US Capitol building as Congress was certifying the results of the 2020 presidential election. This came after Trump encouraged his fanatics to march to the Capitol in an attempt to overthrow democracy. The last time the Capitol was invaded was during the War of 1812, but this is the first time that traitorous flags were flown inside. They brought in Confederate and Trump flags, and I even saw a Mormon waving "The Title of Liberty" (...
Read post
Bye 2020
Phew, we made it. Done with the worst year ever! I'm decently confident things can't get worse. Trump's loss and the coming rollout of the COVID-19 vaccine will remove two of the most immediate threats we face. I'm hoping the Biden administration hits the ground running and is able to fix a lot of the issues we have now around inequality, climate change, student loans, homelessness, etc. Yeah... that's a grab bag of wishes, especially if we lose the Senate. But I'm holding onto that hope for n...
Read post
Vote!
In the United States, the general election is coming up in a couple weeks. While every election seems like "the most important ever", this one is particularly noteworthy. We're in the middle of a global pandemic, climate change is creeping closer, and economic inequality abounds. American democracy is under attack. Voter participation has been incredibly low over the last couple decades, and blatant voter suppression tactics are deployed regularly, like limiting the number of ballot drop boxes ...
Read post
Back in Seattle!
I'm all settled in my new apartment in the Ballard neighborhood of Seattle. I spent some time this morning walking around the neighborhood and seeing what kind of food, shops, and entertainment are nearby and I found some real gems! The neighborhood is quiet but alive, and it's got basically all the things I need to enjoy living in an area (movie theater, variety of resturaunts, rock climbing gym, good bus routes, and a Trader Joe's)! I miss being with family in Utah, but I also enjoy the indep...
Read post
New Job!
I've got some exciting personal news: I recently accepted a position with the Allen Institute for Brain Science! I'll be working as a web developer to build out a scientific data sharing platform. After six years in IT consulting, I've decided to make the jump to the non-profit sector. I've wanted to work for a non-profit organization for a while, and now is the time for me to make that dream come true. I started my first job out of college with Pariveda Solutions, and I'm incredibly grateful ...
Read post
I'm So Done With This Country
We're a bunch of racists who use police power to punish black people because we never got over losing our slaves. Fuck the poverty to prison pipeline, the privatization of prisons, and the systemically racist police force and legislation that keeps it all running. (Context) ...
Read post
Tyranny of the Minority
The United States is democratic republic. That means that the people elect the representatives who make decisions on our behalf. But the democratic part of our system has been under attack for decades. You can see it clearly with the Supreme Court nominees. When Trump appoints a third SCOTUS judge, five of the nine serving justices will have been put in place by presidents who lost the popular vote and confirmed by Senators representing a minority of citizens. That's hardly something you can ...
Read post
Bye Bye Twitter
I did it! I deleted Twitter. I had wanted to do so earlier, but ever since the great Twitter hack of 2020, they had disabled the ability to export your data (which is a violation of the GDPR, by the way; what I wouldn't give for decent privacy laws in the US...). It feels a bit weird. I've had a Twitter account since 2008. It's something I still got value out of in 2020, unlike Facebook, which I happily jettisoned a while back. But I don't trust Twitter with my data, and I don't trust myself o...
Read post
One-on-Ones: How Regular Mentoring Can Boost Your Career Growth
When I started my first real job out of college, I had no idea how to operate in the real world. A university education does very little to prep you for the realities of the business world, even if you were like me and graduated with a business major. My first year as an IT consultant was rocky. While I had 17 years of school under my belt, the skill I perfected most during that time was learning how to get good grades (as opposed to learning for learning's sake). I was proud of my grades and m...
Read post
Automated Testing Save Lives
Automated testing saves lives. It's a fact. And not only for software engineers building rocket software for carrying folks to Mars or controlling nuclear reactors. By automating your testing, you will literally save yourself and your teammates precious hours in our short lives where we don't have to chase down regression bugs. And if you're not testing, you shouldn't call yourself a software engineer. One huge difference between programming and software engineering is the testing. A "progra...
Read post
Git Hygiene
Git is an extremely powerful tool used to track changes in files, particularly source code. It's enabled software development to advance substantially over the last couple decades, and a majority of software developers use it on a daily basis. That said, many developers don't have a good grasp of the tool. They understand the basics, like branching, merging, and committing, but when you start to reach deeper into the toolbox, git trips up many people. This leads to a sub-standard use of the too...
Read post
More COVID Diaries
It's been about a month since I moved to Utah and wrote about the whole pandemic thing that's currently consuming the world. Life is pretty good. I chill in my parent's basement most of the time, doing daily walks around the neighborhood and the occasional bike ride in the mostly bike-friendly city of South Jordan. I do miss the hustle and bustle of the city. I think I visibly see maybe 2.5 people on an average day out here in the suburbs, so it's lonely in a different way. I'm glad to not be i...
Read post
RIP Mozilla
Mozilla, one of my favorite non-profits and a staunch defender of Internet freedom and privacy, has just gutted themselves. Laying off 250 folks is a huge chunk of the company, and entire teams have been let go. From what I've seen from Mozilla employees on Twitter, that includes the following teams: Servo - Their new web browser implementation that ultimately led to the Quantum update in 2017 MDN - One of the best web developer resources on the Internet DevTools - My favorite tool for develo...
Read post
Fixing Install Errors for Diesel.rs On Ubuntu
Every time I try to install Diesel.rs on one of my Ubuntu machines, I run into the same error: /usr/bin/ld: cannot find -lpq It always takes a bit of time to remember how to fix it, so I'm throwing this on my blog for future reference. 👋 Hey future me, it looks like you're trying to do some Rust programming with Diesel again. Cool! At this point though, you might want to consider moving off of Ubuntu. These problems are annoying! But, until that day, just do this: apt-get install libpq-de...
Read post
One Simple Thing: Stop Using So Much Air Conditioning
Holy hell people, tone it down with the AC. After moving to Utah, I've been freezing every day, regardless of what building I'm in, despite the outside temperature being 10+ degrees hotter than Seattle on average. Seattle hardly has any AC, and while I sometimes complain about it, I'm so much happier without our stupid human construct of "room temperature". People are addicted to 72 degrees. While that's a nice temperature when you're in long pants or multiple layers, it's absolutely chilling...
Read post
One Simple Thing: Build an Emergency Fund
If you're one of the zero people who avidly read my blog, you'll have noticed that I had to move in with my parents thanks to pay cuts from COVID-19 causing an economic downturn. In one day, I had to pay my lease cancellation fee, book an expensive moving truck, and pay taxes. Needless to say, it was an expensive day. The only reason I got through it without loading up on credit card debt or taking a personal loan was thanks to my emergency fund! If you're not familiar, an "emergency fund" is...
Read post
My Privacy-focused Apps
Over the last few years, I've made a concerted effort to find open-source tools that focus on protecting user privacy. It's an ongoing journey. As you'll see, I'm still working through replacing some applications (and even operating systems). This post lists out the tools I'm currently using, both so I can keep track of it for myself and help other privacy-conscious folks find software that values their privacy! Cross Platform Applications These apps work on all my devices, which is a big re...
Read post
The COVID Experience: Heading to Utah
Welp, after getting my pay cut drastically due to the pandemic, I can no longer afford to live in Seattle. I've moved in with my parents in Utah, and I'm truly grateful that I'm fortunate enough to have that as an option. The United States is still largely pretending we're not in the middle of the worst pandemic in 100 years. I got a few dirty looks from Utah folks when they saw me wearing a mask. Neighbors chatting while standing two feet away from each other, without masks. I still haven't se...
Read post
On Being Normal
The last handful of years have been some of the hardest of my life. Since 2018, my wife left me, I was diagnosed with depression, our country is accelerating its slide towards fascism thanks to Dear Leader, and COVID ravages our country and my mental health from being isolated. This wasn't how life was supposed to go. It wasn't in any of my plans. But that's how life is. You can't predict what will happen. Success is not guaranteed. I feel like life has taken a crowbar and beat me silly. And ...
Read post
Life During the Pandemic With Anxiety and Depression
Every day in the pandemic is the same, and all of them feel like this: 08:00 - Wake up freezing, even though I'm buried under sheets, cuddling Kaladin in a 76 degree apartment 08:30 - Ignore the constant body aches and pains by planning my day or snoozing 09:00 - Hot shower to relax my tense muscles, most likely avoiding a panic attack in the shower 10:00 - Existential Dread 11:00 - Despair upon hearing new record numbers of cases in whatever fresh hell was birthed with today 12:00 - Put food i...
Read post
The Coming Storm
Wave 2 is here, folks. Well, sorta. COVID's first wave never really stopped, we just kinda barreled through towards our second peak without obliterating the first. Today Florida had its single biggest reported count, with just over 15,000 infections. Florida also broke the single day record for the entire USA. Florida is going to be worse than New York, and New York did not have an easy time getting to their first day in months with 0 deaths. I'm not sure that I can go visit my family in Ut...
Read post
Our Broken World
Our world is broken. It's been broken for a long time, but some people are only just noticing. Rampant inequality, unrestrained consumption, deregulated markets, and a Laissez-faire attitude has led to a wholesale looting of the Earth, who has responded by sending us a climate crisis in response. COVID-19 has been a wake up call for many people, especially in the United States. We're handling this pandemic by basically ignoring it, and, as a result, the deep economic and racial inequalities h...
Read post
Surviving the Pandemic: Protests, Violence, and Panic Attacks
2020 is quite the year. Whenever I think we've finally hit rock bottom, we manage to go lower. In the last month since I threw some thoughts out there, a lot has happened. The biggest event is obviously the police murder of George Floyd that sparked worldwide protests. Hundreds of cities in every state in the US rose up in unison to push back against the frequent violence our police inflict on citizens, especially the disproportionate violence towards our Black friends and family. Countries f...
Read post
Catastrophizing for Good
So my friend and I were talking about how crazy 2020 has been. Both of us can be pessimistic at times about the direction our country is headed (or as I call it, being realistic), so we did some catastrophizing with over-the-top things so we can be wrong about some of the bad stuff coming up this year. I ended up writing a short story! I really enjoy creative writing and need to do it more! The story below could use a bit more substance, dialog, descriptions, and all the stuff that makes a stor...
Read post
Open Source
Pull Requests I primarily contribute to open source through coding. Anytime I complete a PR of note, I'll be listing it here! Clap.rs Clap is a powerful argument parsing library that I've started contributing to. I use clap on the majority of my Rust projects, so I thought it would be fun to give back! Implementing a convenience method Updating a derive macro to take a character instead of a string Projects I've put a lot of code out there that isn't great, but any project I finish will ...
Read post
Surviving the Pandemic: Part 2
Time has no meaning during an eternal present. To mark its passage, I might as well write about how things are two months after my last post. How am I Overall, I'm doing okay. Between minor bouts of depression and copious amounts of self-care, I'm keeping my head above water. I'm even being productive in my free time (which I'll talk about in the Rust section of this article). I did get a 20 percent pay cut due to the economic shock of shutting down the country. That did not feel nice, but I'...
Read post
My First Crate
If you've talked to me in the past couple months, I've likely mentioned the Rust programming language. Andf if you have any sort of programming experience, I've probably given a miniature sales pitch to you on why you should learn it. In a word, Rust is beautiful. I've never seen such a thoughtfully crafted language that focuses on the developer experience while still being blazing fast and eliminating entire categories of programming errors that plauge developers (null exceptions and memory ma...
Read post
Surviving the Pandemic: A Rant
Since we're in the midst of a global pandemic, I figured I should write my thoughts on it. This is a strange moment in world history that I hope we'll all never experience again, so keeping some record seemed prudent for future me to look back on. Working from Home It's day ? of working from home. Yup, I've already lost track of the days. I started working from home a handful of days before my company asked us all to do it as well, so I think it's been about three weeks? All the days blend tog...
Read post
Hello, New Blog!
I did it! I moved all of my past Medium posts over to my new blog. It took a couple months of chipping away at it regularly, but I got all 31,996 words moved over! Now that I can't get away with the excuse of having to move old content anymore, I supposed I should start writing new content. That's always the tricky part. But I do have a few goals that I'm striving for: Finish my guide to effective development teams Publish some of my learnings about the Rust programming lanugage Comment on ...
Read post
Tips to Reduce the Environmental Impact of your Job
Work makes the world go round. Humans putting in time and effort to create amazing things is one of the reasons we have so much abundance in this world. But the same work we do to create all the cool things many of us on this planet enjoy also contributes to our rapidly decaying environment. In order to save our planet, we need both systemic and individual change. This list is compiled from my personal journey to reduce my individual impact, but it can also be used to create corporate policie...
Read post
Schrodinger’s Apartment
Every day I come home to a mystery. Sliding my key into the lock, I pause to wonder what kind of apartment I’ll find. Some days I open the door and my home greets me with open arms. I smile, entering my sanctuary. Where there is a place for everything and everything in its place, even if that place is scattered on the floor or tossed on the table. Living on your own means you can build you own little world exactly the way you want. On those days my dog greets me with the wag of his tail and a ...
Read post
Rainy thoughts from a rainy evening
I’ve always loved the rain. I don’t really know when it started. Maybe when I was a little child, singing songs at church every Sunday. Songs about being cleansed from sin, just like the earth is cleansed after rain. Or maybe it was the hours spent splashing in the gutter whenever a heavy storm rolled through. Or the times I was caught without an umbrella, hurrying home to avoid getting wet but loving the feeling the rain on my face. Now I find myself living in the prototypical rainy city: Sea...
Read post
One Simple Thing: Walk to Work
At the end of last year I changed projects at work, which allowed me to start commuting to my company’s downtown office instead of a client site. Since I live about a mile away from the office I started walking to work each morning. At first it was a little tough. The distance itself is doable. But the 25 minute walk isn’t any shorter than my previous commute, so during those early days I longed to hop in my car, crank up the A/C or heater, and be there in 10 minutes. The walk itself is genera...
Read post
When the words come but you’re too scared to publish: By trying to please everybody, you please nobody
Nobody will have noticed that I’ve started publishing content less frequently. That’s what happens when you’re inconsistent. There is no audience to care whether you write or not. Today I realized that I have almost as many drafts as I have published works on Medium. While I haven’t published a ton, I had kept a fairly steady cadence over the last few years until a few months ago. As you can see from the screenshot below, I start a lot of stories that I never finish. My stories page, with al...
Read post
Code Reviews: What they are, why you need them, and how to get started
Have you ever come across a line of code that made you pause and think WTF is going on here? You get in a huff because some careless programmer did something completely wrong and wrote poorly formatted, incomprehensible code. Then you do a git-blame and discover that you wrote the line yourself. Whether it’s poor logic, the use of tabs over spaces, or even a brilliantly crafted solution that is difficult to comprehend, reading code can feel like translating a cryptic language. When nobody on y...
Read post
No. Just No. I’m not writing about this again.
It’s clear nothing will ever be done to stop mass shootings. Just read these again. No reason to write more on the subject. Nobody in Congress is listening. The Orlando Massacre Thoughts and prayers are not enough ...
Read post
One Simple Thing: Delete 5 Todos
You read the title. Now pull out your to-do list and delete five things from it. It doesn’t matter what they are. It doesn’t matter how many are “overdue”. It doesn’t matter if you don’t even have an actual to-do list. All that matters is that you relieve yourself of the need to do five things. Did you actually go delete five tasks? No? I can wait. … Done? Good. Now that you’ve deleted five items from your to-do list, listen to your body. How does it feel knowing those things are gone? M...
Read post
One Simple Thing: Do Something Radical
Have you ever done something radical? And no, I don’t mean hanging ten with Michelangelo, stuffing pizza in your face while you fight off Shredder’s minions (although that would be a wonderfully radical experience). I mean something out of the ordinary. Something unique. I’m not saying you need to go discover a new brand new human experience, like seeing a color no other person has ever seen. It only has to be something unique to you. Your uncommon, radical act could be as simple as eating o...
Read post
I’m doing another 52 things during the 52 weeks of 2018
Another year has flown by. This year has easily been the worst best year of my life. Some of the best things in my life happened this year, but even with all that I had an awful year. Paying attention to Trump’s America has been terrifying. The vast majority of my empathetic and mental energy was directed towards fighting Trump in order to help the people he is screwing over. As a nation, we’re entering the midpoint of one of the worst presidents ever, and that makes this year awful. But since ...
Read post
Minimalism - The Power of Less
Excess defines modern society in the United States. We’ve become so rich that we will soon spend $30 billion a year on storage. That’s $30 billion spent on hoarding. On tucking away our late grandma’s doilies. On letting mildew grow on our homework from 6th grade. On keeping our stacks of photo albums that we never look at. We spend an insane amount of money to keep everything around just in case we need it. Why do we do this to ourselves? Why do we carry around piles of junk every time we move...
Read post
Thoughts and prayers are not enough
The GOP’s inaction shows deep indifference towards stopping mass shootings. Another mass shooting happened yesterday. This time, it was the deadliest one in recent history, with at least 58 dead and over 500 wounded. A single armed man permanently snuffed out dozens of lives and profoundly affected thousands more. Don’t you wish we could get back to the good ol’ days of 2016 when the previous mass shooting record was only a paltry 49 dead and 58 injured? I wrote about that one too. It seems t...
Read post
Team Fortress 2 vs Overwatch
What would happen if these two teams clashed? The Overwatch cast would dominate. For one, there are 25 characters in Overwatch compared to TF2’s 9. Sheer numbers alone would give Overwatch a clear advantage. They would swarm the TF2 cast using a well-defined plan (they’re a crime fighting super team, after all) and it would all be over shortly. That’s no fun though. Let’s say we were limited to teams of nine. That would mean every single TF2 character gets to join the fray. But which Overwatch...
Read post
One Simple Thing: Get Rid of Your TV
At some point in the last fifty years the great American pastime pivoted from baseball to television. Ever since Philo Farnsworth invented the television (and gave my home state of Idaho at least one claim to fame outside of potatoes), the TV industry has exploded. Up to 97 percent of U.S. households have a television, and they are all put to use! On average, U.S. adults watch 5 hours of TV every day. That’s 35 hours a week! 🤯 Think of what we could be doing with that time. Developing a hobby, ...
Read post
Creating a Definition of Done
During my first year as a developer I screwed up a lot. Unintended changes made their way into my files seemingly at random. My commits broke existing unit tests. Sometimes I missed entire requirements because I didn’t read the story thoroughly. In short, I wasn’t deliberate with my work because I did not have a definable, repeatable process. My lack of process cost my team time and money when they helped me fix things that I should have done correctly in the first place. What my well-intenti...
Read post
One Simple Thing: Stop Using the Snooze Button
It happens every morning. You have the best intentions of waking up with your alarm, but forty minutes later you’re still slipping in and out of consciousness. The snooze button is mankind’s worst invention. But there is a simple way to always wake up when you planned: Get out of bed! You can’t fall asleep if you’re on your feet. So instead of reaching for your phone or for a book each morning, roll out of bed and shamble out of your bedroom. Do anything but stay in bed. Make breakfast, brew ...
Read post
Team Working Agreements: The Why, What, and How
Every team needs a written working agreement. Without one, there’s bound be chaos, bloodshed, and death. Or at least it might feel that way. Team working agreements are the first step to good team building. Without a concrete list of rules for team interactions, invisible habits will start to creep into the team’s workflow. Habits that aren’t always good. If you’re part of a team that doesn’t have a working agreement, read on. You’ll learn why it’s important, what it involves, and how to crea...
Read post
9 Processes Every Effective Development Team Should Use
To be effective, development teams should—at a minimum—have the following processes in place: Team Ground Rules or Working Agreement Definition of Done Code Reviews One on Ones Static Code Analysis Style Guide Automated Tests Branching Strategy Continuous Integration/Continuous Deployment What's your team missing? Over the next few weeks I’ll be fleshing out the why and how for each item in the list, so check back for updates! ...
Read post
One Simple Thing: Back Into Your Parking Space
Parking lots are surprisingly dangerous. One in five accidents happen there, mostly due to people relaxing their attention due to the low speeds. Blind corners and cars backing out just add to the chaos. The easiest way to stay safe (outside of simply paying closer attention and staying off your phone) is to back into your parking spot! I know, I know. You’re always running late and don’t have time, plus you’re absolutely awful at lining it up right and don’t want to embarrass yourself in fron...
Read post
One Simple Thing: Take the Stairs
Finding time to exercise can be tough. Every day seems to fill itself with work, work, and more work. By the time you get home, the comfort of the couch is overbearing and your best-laid plans to exercise vanish. But even on crazy days like that, you can find easy ways to get your heart pumping. One of my favorites ways to sneak exercise into my daily routine is to follow one simple rule: Always take the stairs. If you follow that rule, you’re bound to get some exercise at some point during ...
Read post
Only Space Can Save Us From Ourselves
The rise of Trump and “America First” has shown us that tribalism still reigns supreme. All of recorded history is nothing more than our tribal interactions and the frictions that belonging to a different group can cause. Wars are fought for land, religion, business, and politics: all of which are an attempt to expand a tribe’s power. One of these days, tribalism will destroy us all. How close were we to a nuclear wasteland during the Cold War? How soon until the fail-safe systems fail and a s...
Read post
One Simple Thing: Use an Uplifting Password
During 2016, in an effort to help boost my confidence and self-image, I changed one of the few passwords I actually know (use a password manager, people!) into an uplifting phrase: You@re@mazing! — or rather, something completely different but with the same general sentiment. Every day I had to type “you are amazing” over and over again. It made me happy each time, and it reminded me that I am worth something. I’ve kept this up, even as I’ve changed passwords regularly. Each time I type them,...
Read post
One Simple Thing: Get a Bidet (The Sorry State of America's Toilets)
Can you believe it’s been almost a year since I last talked about poop? Last June, I encouraged everyone to poop better by using an improved squatting posture, and I had always meant to follow it up with another article to make your time in the restroom even more satisfactory. That’s right: it’s time to talk bidets. The first time I saw a bidet I was terrified. I was a young Mormon missionary living in Ecuador, and the thought of shooting cold water anywhere near my butt was far too homoeroti...
Read post
It’s Okay to Be Lazy - Give Yourself a Break When You Need It
It’s okay to be lazy. Well… not all the time. Obviously. At some point you’ll just get bored. But when you need a break, take a goddamn break. By the way, this article is more for me than it is for you, dear reader. Dealing with anxiety and perfectionism can be a pain in the ass sometimes, and this weekend I was really feeling it. Today I felt like I haven’t been doing enough with my life, despite the fact that I’m currently doing a lot: Polishing up on Spanish Learning Portuguese Contribu...
Read post
Develop These Habits, Developers!
Write unit tests Ask others to review your code Review other people’s code Listen to programming podcasts Volunteer for work that makes you uncomfortable Learn something new every day Exercise regularly Get enough sleep Read a book on design patterns, code refactoring, or user experience (and take notes!) Have weekly one-on-ones with your boss Talk to your co-workers about things other than work Contribute to open source Practice mindfulness Use a personal task management system Write regularly...
Read post
How to Pack One Bag for a Five Day Trip - Why you don’t need all that junk in your overhead luggage
For the last three months I’ve been traveling every other week to Denver for work. These trips last five days — Sunday to Thursday — and my team has asked me how I can last that long with a single bag. This article makes an assumption that you have some sort of backpack or messenger bag that can double as your luggage and your daily carry to the office. If you don’t have one of those, single-bag trips become a bit awkward — your coworkers might laugh when you’re wheeling your bag around the off...
Read post
Fun Retrospectives - Make Retros Easy and Collaborative
The concept of retrospectives has seemingly permeated every nook and cranny of the IT industry. It’s a central concept to Agile, and is a phenomenal way to regularly provide a forum for the team to express concerns, recognize achievements, and ultimately improve the software product they are building. A cool tool I ran into a few months ago is “Fun Retro”, an online, real-time, collaborative retrospective board that makes sprint retros a breeze. Most retros I had been in previously involved st...
Read post
It's Late and I Can't Sleep - A Look Into How Anxiety Affects a Night Owl
Nights like this suck. It’s late and my mind is racing with thoughts. Hell, I spent five minutes debating in my head whether I should report that time three months ago when the moving truck lady called me a liar. I told her some specs her company gave me — we called twice to verify the measurements. She said I was lying, and then dropped our stuff in an illegal spot on the street. I’ll probably end up sending that company a(nother) tweet complaining, because why not? I’ve got nothing better to ...
Read post
Experimenting With React.js and React Native
Man, oh man, do I wish I had looked at React.js a few years ago. I started a side project using it over my holiday break, and yesterday I got a React Native Android app up and running. Now I’m hooked. At first I was wary of JSX, but I’ve come to embrace it due to its ease of use and modularity. I suppose I never looked at React because I thought I already had my favorite front-end framework: Angular.js. But with the new Angular 2 using TypeScript, it almost feels like an entirely new framework...
Read post
Good Luck, Trump
The following article was what I wrote immediately after the election of Donald J. Trump as the next President of the United States. I wanted to sit on it until after the inauguration to see if I thought differently after the stark reality of a Trump presidency finally settled in my mind. Now that I’ve had a few days to digest the results of the election… I’m still outraged. How did the United States of America elect the misogynistic, racist, lying, cheating, anti-intellectual, never-held-p...
Read post
Take Time Off From Work So You Can Work!
I recently took three weeks off work to move from Dallas, TX to Seattle, WA. Much of that was spent driving and visiting friends and family, but I also managed to squeeze in about 15 hours of programming. That’s right! I did what I do every day for a living during my precious time off. Over the break I started to create a website where I can track my 52 Things for the year. Right now I have an early alpha version that works well enough to actually use, as long as you don’t need to edit anythin...
Read post
2017 Will Be the Greatest Year Ever
The future is bright, if not a little blurry What a crazy year. If you would’ve told me that 2016 would contain the election of a reality TV star, countless celebrity deaths from music and movies I grew up watching, and the Dallas Cowboys being the number one seed in the NFC, I’d ask you what alternate reality you came from. At the same time, even with all the doom and gloom coming from partisan politics and a general feeling of unrest, 2016 was still the best year on record in many regards. ...
Read post
2017’s List of 52 Things
May your 2017 road be as breathtaking as this one Each new year I create a list of 52 things I would like to accomplish. I’ve been doing it since 2014, and it’s helped me do a lot more things than I would have otherwise. But before I dive into my goals for 2017, I need to take a minute to reflect on what I did in 2016. Last year I only completed 14 of the 52 things I set out to do — an abysmal result. It gets slightly better when you look at the 13 other things that I made progress on, but th...
Read post
One Simple Thing: Schedule Weekly One-on-Ones at Work
One of the most important (and simple) actions you can take to advance your career is scheduling weekly 30 minute meetings with your manager. I’ve been having one-on-ones with my managers over the last two years and it’s made a remarkable difference in my ability to grow and take on new responsibilities at work. I’ve learned more about managing my career during these short meetings than from all the books and podcasts I’ve listened to on the subject. And when busy projects cause one-on-ones to ...
Read post
Stop Blaming Millennials
These rants from Baby Boomers about how entitled Millennials are, or how we need to grow up, or how we must work harder are getting annoying. I’ve seen them pop up occasionally over the last year or two, and frankly I’m sick of it. Baby Boomers complain that we Millennials are spoiled because we all got participation trophies. But wait, who gave us those trophies? THE PARENTS. Boomers can hardly be upset when they crafted the environments that produced the current Millennial generation. Do you...
Read post
Denver
How have I never managed to make it out to Denver before? I’m kicking myself because I had never stopped in what is now one of my favorite cities! I flew to Denver last week for a business trip and immediately fell in love. Why? I was able to take a train from the airport to the center of the city in just 30 minutes. The first thing I saw when I stepped out of the station was a bike-share program. The second thing were bike racks and bike lanes that were actually being used! Denver is walkabl...
Read post
Overwatch Summer Olympics
I’ll admit it. Blizzard knows exactly how to get you hooked on their video games. I had never played a single Blizzard game until about a year ago when I gave Heroes of the Storm a try. It’s a much easier version of Dota 2 and League of Legends, which meant I could play with my wife and we wouldn’t get completely floored by the other team. After that I dabbled with Hearthstone, then purchased Starcraft II. And it was a lot of fun! But then came Overwatch. It’s like TF2, but tweaked to be ab...
Read post
One Simple Thing: Use a Password Manager
We live in a world of a million passwords. There’s no getting around it if you have any sort of online presence. And yet, many do nothing to keep track of all those passwords floating around in their brain (or on sticky notes next to their monitor). Even worse, some people use the exact same password for everything. That’s a scary situation. If your Facebook password is the same as your email password and the same as your bank password, a breach in any one of those services opens you up to unto...
Read post
Ally’s Cash Back Card is Not Ready for Primetime
I love Ally and have been banking with them for over five years, so when they announced a credit card with 2 percent cash back on gas and groceries, 1 percent on everything else, and an extra 10 percent on any cash back you deposit into your Ally bank account, I immediately jumped on it. However, the experience has been far less than ideal. First off, the card is in a completely different account on a completely different website. I love Ally because all of my checking and savings accounts are...
Read post
Start Automating Your Savings
Personal finance is a huge passion of mine and I’m often offering unsolicited advice to friends, family, and anyone else I can rope into the conversation. I’m surprised that I haven’t written about it yet on Medium though, so it’s time to correct that silly oversight! Americans don’t do a very good job at saving. In fact, the average American saves just shy of 5 percent of their income! That’s a paltry sum and is nowhere close to what is needed for a comfortable retirement. Common financial wi...
Read post
My Strengths
Over the last few weeks I’ve been focusing on building my self-esteem. It’s something I’ve lost over the last few years, primarily due to one nasty little habit: I’m extremely self-deprecating. Two years ago I made the transition from school to the workforce. It was rough. The business world is a completely alien world compared to the world of education, where I spent 18 years absolutely excelling. The educational world is my home turf. It’s where I shine brightest, with the best bang for my ...
Read post
I'd Rather be Blind Than Deaf
Last week at work we landed on the random topic of “would you rather be blind or deaf” and out of everyone in the group, I was the only one to choose blindness. After glancing about on the Internet, my highly scientific perusal of the front page of Google lead me to believe that most people would choose deafness over blindness. It makes sense. So much of our world is focused on being able to see. In fact, we rely on our sight so much that we probably miss out on developing our other senses sim...
Read post
Overwatch Review
Overwatch is the greatest game to ever come out from any company in the history of ever. It’s full of watching and overing, and when you’re lucky, you can over and watch at the same time! The graphics are fanciful and great, like a puffy bunny smothering your face with love. The characters are cool and buff and all the things you would expect out of a superhero team that was disbanded due to people not liking superhero teams keeping the world safe (or something like that, I haven’t read the lo...
Read post
The Orlando Massacre
Early in the morning on June 12th, a new record was set. It’s not one to be proud of. At least 50 people who were alive just one day before are no longer with us. At least 50 more people were wounded, forever changed. As more details come in, it’s become clear that this was an act of religious extremism, of bigotry against the LGBT community. It was committed by a man filled with hatred, with a tool specifically engineered to make killing as simple as moving a finger. One deranged man ended o...
Read post
One Simple Thing: Poop Better
It’s time to talk about poop. We’ve been held hostage by Big Toilet for far too long, and now is the time to rise up, put the seat down, and expel the oppressors from our homes! Our toilets are not designed for pooping. Rather, they’re terrible porcelain thrones that keep us stuck there for a lifetime playing games on our phone. But there’s a better way: Nature’s way. Don’t believe me? Check out this cute video featuring the Squatty Potty. You don’t have to go out and buy a Squatty Potty (a...
Read post
The Power of Podcasts
Commutes suck. We all have them, whether it’s simply crossing the street or driving a few hours to a neighboring town. That time is often viewed as a waste. But what if it wasn’t? That’s where the power of podcasts comes in. My average commute lasts 40 minutes, which means over the last two years since I’ve started my career, I’ve put in a little over 300 hours in the car or on the train. And during that time I’ve listened to about 600 hours worth of podcasts (2x speed is humanity’s greatest ...
Read post
One Simple Thing: Delete Games From Your Phone
Go and delete all the games from your phone. Now, before you close your browser and whip out Candy Crush to spite me, please hear me out. I used to find myself constantly reaching for my phone to play games when I was standing in line, waiting for the microwave to beep, or any other myriad of situations that left me with a few free moments. But diving into the digital world meant I was completely engrossed in my phone instead of experiencing my surroundings and being present with friends and ...
Read post
Mental Health
May is Mental Health Awareness month. As someone who struggles with various degrees of stress, anxiety, and depression, I wanted to make sure I wrote about it. I honestly don’t know exactly what I have. It could be a mild form of bipolar disorder, generalized anxiety disorder, or full-blown depression. But regardless of what it is, it has had a profound effect on my life. And yes, I know I should go to a medical professional and get a diagnosis. I know that simply knowing what I’m facing will ...
Read post
One Simple Thing: Put Productive Apps On Your Home Screen
The average person checks their phone 46 times a day, or about every 30 minutes. Often these checks are habitual responses to notifications, pulling up pointless games to pass the time, or (at least for me) looking up random pieces of trivia to satisfy an intellectual itch. Forty six glances results in a lot of time spent staring at your phone each day. Imagine if what you saw each of those times encouraged you to be a better person? Here's my current homescreen: All of these apps are one...
Read post
Level Up Your Career with Dungeons & Dragons
“Dungeons & Dragons” tends to conjure up images of a few pimply nerds hunched around a table in a dark basement, arguing over who gets to wear the enchanted cape they just found after plundering an accursed castle. But you couldn’t be more wrong. Dungeons & Dragons players actually come from all walks of life. Definitively cool celebrities like Tim Duncan and Vin Diesel love to explore dungeons and fight dragons when they’re not blocking shots or driving fast cars. What most people don...
Read post
Cut Your Information Consumption
Many of us consume far too much information every day. Not that information is bad, but our brains can only handle so much. I used to be gripped with the fear of missing out. I developed loyalty to podcasts and news sites, feeling like I had to listen to every episode and read every article. I wouldn’t stop scrolling on Facebook until I saw posts I recognized from an hour before. I was constantly feeding information to my brain, with no breaks for processing. It was overwhelming. A month ago I...
Read post
Just Write!
Writing is hard. And scary. Whenever you put hard and scary together, it turns into an insurmountable challenge. It’s the wall I’ve been facing for the last few months as I’ve written and re-written dozens of blog posts. It’s the lack of momentum I feel when trying to flesh out the bones of what could become three solid books. From what I’ve gathered, writing never gets easier. So then, I have make it un-scary. I have to face my fear of never measuring up. Of people laughing at my prose. Of...
Read post