This weekend I created a Javascript wrapper for the PunkAPI - an unofficial API for querying beers from the BrewDog DIY catalog. Even if you're a developer some of that might not have made sense. BrewDog is a brewery, started in 2005 in Aberdeen, Scotland, who now operates dozens of beer bars around the world. They recently broke into the U.S. market with a brewery in my hometown of Columbus, Ohio. They produce great beers and make the recipes for past brews available through the DIY Dog website. There's no official API for the DIY catalog so @samjbmason and others scraped the info from the DIY website and created an unofficial API. Their API is accessible via HTTPS and is CORS-enabled, meaning it will work

Read more

While building a web app you'll often need to have access to different variables depending on the setup (or environment). For example, your local machine, the staging/testing server, and development servers are all different environments. On each of these environments you might need different settings. On your local machine your app might connect to a localhost database, while staging and development connect to AWS DynamoDB or MongoDB Atlas. Environment variables give you the ability to have different settings across these environments. Environment variables are typically stored in a .env file in your project directory consisting of key/value pairs. On your local machine the .env file contains key/values for your local setup, while the .env on staging and production contain the same keys, but

Read more

One of my current guilty pleasures is sneaking in a few robot battles on War Robots, a mobile, multiplayer game that pits teams of robots against each other. Like many other mobile games, the game is free to download and play with the option to purchase or speed up upgrades. Matches typically last a few minutes and it's a great way to pass some time on the train. One aspect of the game I like is the level of customization. There are currently 24 robots and 25 weapons. Each robot has different characteristics and abilities (speed, armor, jumping, number of weapon mounts, built-in shields, sprinting, stealth, etc), and similar for weapons (damage, rate of fire, distance, splash-damage vs point, etc). Both robots and weapons can be

Read more

Stackoverflow, one of the many StackExchange community of sites has been one of, if not the most, influential resources for my coding career. If you're not familiar with it, Stackoverflow is a Q&A-style site for asking and answering questions related to programming. By answering (and asking) questions users earn reputation when their answers (and questions) are voted-up by other community members. There are also badges, earned by accomplishing certain feats - like answering old questions, editing questions, voting on questions/answers and more. Stackoverflow (SO) also has a Jobs section with many of the most highly sought-after employers advertising open positions. My past 2 positions, both of which I've loved, were found through Stackoverflow Jobs, and I receive interview offers nearly every month from

Read more

If you're anything like me when it comes to coding your git stash is likely a bit long. A quick git stash list on any of the repos I'm currently working in will reveal a few dozen stashes. I find stashes extremely useful when experimenting with ideas and I don't necessarily want to completely trash a previous attempt. Stashes are also useful when I need to switch to another branch to make a quick edit but I'm not ready to commit the changes on my current branch. Over time, all of this adds up to an increasingly long stash list, several dozen or more. git has several functions for managing the stash - git stash clear will clear the entire stash, and git stash drop [<

Read more