what I do for a living
my family has come up with probably
the best description of me:
"He's a professional nerd."
Python has some pretty amazing features, and one of its most powerful and versatile is the for loop. As you can see by the examples below the for loop in Python is quite powerful when used in conjunction with ...more.
One of the more frustrating aspects of idomatic Python is EAFP (easier to ask for permission) over LBYL (look before you leap). Using EAFP on dictionaries leaves us with code that with piles of try/except blocks ...more.
After more than two decades as an engineer and over a decade as a hiring manager I’ve experienced my fair share of terrible engineering interviews. From quizzes to whiteboarding ...more.
If you’ve spent any time working with Python environments you’re bound to have run into errors such as pip: command not found, No module named pip, ModuleNotFoundError: No module named 'distutils.util', or other Python 2.x vs Python 3.x issues ...more.
Python helps make a lot of things really easy. The conciseness of the language make it awesome to accomplish simple tasks in as few lines as possible. One of these simple tasks is checking to see if a file exists ...more.
The conciseness of the Python language paird with its easy-to-use REPL make it ideal to hack out quick and easy scripts. One thing you can do is quickly and securely generate a random password with practically one line of code ...more.
It's generally considered bad form to use the root MySQL user to manage and query your database. One of the first things I do after spinning up a MySQL database is create users with varying degrees of permissions ...more.
I chatted with Nick Janetakis from Running in Production about the software and hardware stack that has been running the taleas website for the last decade...more.
I love consuming new information. The first big breakthrough in my reading journey was Amazon's book delivery service. It was no longer necessary for me to coerce one of my parents into driving to B. Dalton and watch as I aimlessly wandered...more.
My wife is in charge of our families' annual Secret Santa Gift Exchange. Because she, unfortunately, knows about my background in math and computer science her requirements have become more extreme...more.
When using Python for Data Science or general Programming you'll find yourself needing to read and parse very very very large files. The easiest way to accomplish this is by iterating over the actual ...more.
In my mind the easiest way to understand Python's slice notation is to visualize it with real examples. Once you get it under your fingers you'll find list slicing is an invaluable tool to have in your Python toolkit. ...more.
GitHub does not like using the same deploy key across multiple repositories. Try it, you'll get a really fun "Key is already in use" error in a lovely pink box at the top of your screen. What if we have multiple repositories residing on one server? How do we pull from different repositories using the same user? We use a whole bunch of...
When using Python for Data Science or general Systems Administration you'll find yourself needing to recursively read a directory tree, remember all (or some) of the files in the directories and then do something fun with those files. ...more.
When debugging and profiling Python software you'll find yourself relying on Python's built-in logging module. Something that is very simple to overlook is the fact that the root logger defaults to WARN and not DEBUG. ...more.
Sometimes I find it very difficult to generate my own passphrases for demo systems and such, therefore I decided to build this handy-dandy passphrase generator to ease the pain. Feel free to use it, and share it with your friends and family.
I <3 photography, this is my personal showcase.
I was the Software Lead at Atlas Wearables. My direct responsibilities included developing and maintaining the Atlas API, website, apps and server cluster. I also keept my fingers in product design, firmware, algorithm development, advertising, and photo/video stuffs.
Adriana and I got married, so why would I not personally design, draw, develop and code our wedding website?
FindMeNoms is an easy way to "find tasty food around you wherever you are". This is a side project that was born out of my need for an app/website that would remember all of the tasty places that I have eaten at, or would recommend to someone, or have been recommended to me. Basically, Yelp wasn't cutting it, as I'd find myself falling down the rabbit hole of reading one-star reviews and laughing at how crazy people can be instead of actually finding food.
In 2008 I took up drawing as an easy way to vent my artistic frustrations (it was either that, poetry or expressive dance). After a while I had a solid little following and decided to publish my work on the internet as a full-fledged webcomic. Taleas is that comic.
This was a short-lived startup idea. The basic premise was, well, just watch the explainer video.
The idea of build your own guitar online is amazing to me. I started playing in middle-school and over the years had learned not only how to play the guitar, but also repair and even build them. Moniker Guitars was the perfect fit for my skills, I was able to work on the Custom Guitar Configurator, then go into the workshop and take a break from coding by picking up a guitar build and sanding, polishing, assembling, or setting it up. I also got to be part of our Kickstarter Campaign!
Document management for schools, doctor's offices, and pretty much anyone else who would give us money. Unfortunately it didn't work out too well. I did get a really cool logo out of it, though.
My very first startup: web development, web hosting and an ISP. This is the very first time I got to work with my friend Darrel. He designed our sites, logos, business cards and even mousepads! No joke.