The blog is currently being ported from WordPress to over 12 years of static pages of content.
If there's an article missing that you're hoping to see, please
contact me
and let me know and I'll prioritize getting it online.
I’ve been a udemy user for several years. Their low-cost instructional courses (usually on sale for $10-15 each) have been great for my piqued interest in some side topics around mobile and game development, learning some new web development skills or for pure financial support of teachers I love including Tim Buchalka and Zed Shaw.
Over the years I’ve signed up and paid for 17 courses, almost all of which are programming-related:
Continue Reading
I’ve recently added to my headhunter nightmares writings a few pieces about Dice.com and how they’re collecting and selling inaccurate profile data about developers. They claim to scrape this data from public online sources, yet won’t disclose from where, nor offer developers access to the profile to correct inaccurate data. They sell the data to paying customers of their “Open Web” platform without my knowledge or consent, making me appear to be on the job market when I wasn’t.
Continue Reading
I’ve owned just about every Nexus device since the Nexus One, including the Nexus Q and the tablets. The only devices I’ve missed in my collection are the Nexus 10 tablet, and the Nexus 6P from late 2015. I ordered the Pixel XL the morning of the announcement and have used it as my daily phone since it arrived, and this is a really solid device and definitely worth the upgrade from the 2014 Nexus 6.
Continue Reading
I sense a trend starting.
A few weeks ago, I wrote a post about managing different versions of Python on Mac OS X, and today I’m going to explain how I use multiple versions of PHP on the same platform.
The Problem Until the homebrew-php group figure out a better way of handling several versions of PHP (their instructions haven’t worked for several months), and without installing something like phpenv, I concocted my own means to manage PHP versions using bash aliases similar to my Python post.
Continue Reading
At the new job, I started piecing together a Google Spreadsheet about our open-source software in various languages, based on frameworks, or example applications. One of the things we wanted to track for each repository was a count of open issues and pull requests we had at GitHub. Turns out Google made this pretty easy, but you have to scrape the repo page first.
The code I wrote a scraper in Python using Flask, Requests and BeatifulSoup, hosted the project on Heroku, and works a little like this:
Continue Reading
Okay, I’ll be blunt: I’m a Linux guy. I know, shocker.
I’ve recently moved to an awesome new job and part of that role will be an area of developer advocacy which will require me to go to meetups and tech conferences from time to time, and talk about how freakin' awesome my new employer is. And they are, srsly. You should sign up and use it if you’re thinking about building a news/activity feed/timeline in your app.
Continue Reading
(I’ve been asked to write this up several times over the years, so here goes.)
Background Almost a decade ago, I thought it’d be neat to order a document scanner. Because, organization.
I found out that the IRS would accept printed copies of scanned original documents and realized that I was lugging around a filing cabinet for no reason. A few years later, something magical came to be, and it’s turned into one of my favorite life hacks.
Continue Reading
In early 2015, I was hiring another full-stack dev in Boulder, intermediate level or better. The job was filled but I still get a lot of traffic to my blog because of the post.
Continue Reading
My wife found out about a CoderDojo chapter around Denver and I started taking my oldest child to check it out. I was curious if he’d enjoy it, since he has a very logical, analytical mind. Turns out he’s pretty good at figuring out solutions, but his favorite by far has been working with Scratch.
Over the course of the year, I’ve found several ways to mentor and be a part of the group and ended up being a “champion” mentor, making lots of technical decisions and writing some software to track student’s progress, attendance, contact information, and so on.
Continue Reading