Austin Gentry

Developer

Blog Image
Blog Post

YOLOv8 for counting train cars

Have you ever sat at a railroad crossing for seemed like forever and wondered how many cars went past? Have you ever tried to count them and lost interest at 97? Well let's try to use computer vision to make up for our short attention spans!
Blog Image
Blog Post

Musings on Unit Tests in Java

Unit tests are often the most difficult part of a codebase to read, yet developers often spend the least time thinking of best practice for making readable tests. Let's define some basic structures that make tests easier to read
Blog Image
Blog Post

Solving Google Hashcode in one hour

I have participated in the Google Hashcode competition for the last four years. I've learned a lot along the way.
Blog Image
Blog Post

StatReloader loop with Django and Pycharm

I came across a strange issue the other day while working on a remote server using PyCharm. Occasionally when I uploaded a file (using the deployment options) Django would enter a loop and continuously reload the file (crashing the server).
Blog Image
Blog Post

MySQL on AWS

For anyone who just needs a quickly accessible MySQL instance, AWS is a good (and hopefully free option).
Blog Image
Blog Post

An Architecture for Scientific Collaboration

This is a talk I gave at the AWRA talk in April 2018. For this talk I was asked to discuss the methods that I had developed with the Drexel Environmental Data Science group to create APIs from scientific algorithms. I’ll include the slides here, as well as my best summary of what I said.
Blog Image
Blog Post

Docker Network Settings

Seems like Docker never stops throwing me new challenges. The other day I was deploying on a cloud provider, and my container that worked perfectly fine on my local machine refused to build.
Blog Image
Blog Post

Timeit decorator for Python

Frequently I work on projects where I need to optimize the performance of some python functions. While Pycharm has an excellent integration of cProfiler built into the application, I decided that I should write a simple decorator that I could place on various functions to quickly test their performance.
Blog Image
Blog Post

Chess Move Validator

The repository contains a valid move generator designed to follow the following input and output scheme.The goal of this project was not performance but rather to be highly “dependable”. To do this, move validation was done using a set subtraction system wherein each piece’s valid moves are a subset of every possible valid move.
Blog Image
Blog Post

Parsing Baseball data with Luigi

For a project recently I needed create a large dataset of information on baseball games. Luckily, MLB is one of the most stats-heavy professional sports, and there is no shortage of good resources.
Blog Image
Blog Post

Controlling Neopixels with Plan9

I managed to get NeoPixels to work as a user space program in Plan 9.Things I learned: – NeoPixels seem to do fine on 3.3V – The SPI interface in Plan 9 does not have reliable enough timing to eliminate occasional flickering
Blog Image
Blog Post

Lighted Bed for the M3D Micro

I Love the M3D Micro. I’ve been using it for over a year now, and while it’s not the most capable printer out there it does almost everything I could want. One of the first things I felt it was missing however was good lighting so I could watch it print.