Hello out there web friend.

My name is Jeff.

Thanks for connecting.

Open Files and Folders in Sublime Text from Terminal

September 14, 2017 | Posted in Web Development,Workflow

This post is the first in what will hopefully be a weekly tip or trick focused on workflow since I think many of these things can be helpful across the board for a lot of folks. For a long time, I feel like I’ve relied too heavily on brute force to get a lot done. […]

Read More

Software Development is Hard

September 8, 2017 | Posted in Web Development

I’m writing this post at the end of a particularly odd week in terms of things going wrong. And this is the type of post that you write with fingers crossed, praying that you don’t have to come back later and update something because the universe decided you shouldn’t open your big fat mouth. I’ve […]

Read More

Audiographics: Annotating Sound

August 29, 2017 | Posted in Data Visualization,JavaScript

Over the last several weeks, I’ve been working on several prototypes to help facilitate different types of annotations. Most educators are already pretty familiar with the typical textual annotation, but as new media becomes more important, we ought to have tools that facilitate annotation on other types of media as well. What is an audiographic? […]

Read More

Creating a CRUD Web App with Google Sheets

August 12, 2017 | Posted in Google App Script,Google Sheets

Google Sheets tends to be my go to whenever I need to build a really lightweight application that has a limited life span. Usually, these things typically involve a short turnaround or some type of very well-defined set of requirements. After Tom did some work demonstrating the utility of silent Google Forms submissions using JS […]

Read More

Shadow Metrics: Tracking the Gateway

July 27, 2017 | Posted in Business

For those of you who’ve read the blog for any amount of time, you’re likely already aware of my tendency to skew towards data and data-driven solutions to problems. Thus, I tend to talk with people about using data for a lot of different purposes, conversations that have illuminated the ways in which data can […]

Read More

Visualizing Geographic Data with D3

July 8, 2017 | Posted in Data Visualization

I’m not sure the power of visualizing data can be understated in the modern world. After all, we have more data than we’ve every had before, and we at least seem to understand the world we live in less and less. For example, this image below displays population density in Virginia census tracts, but what […]

Read More

Designing SVGs in Sketch | Richmond Pulse Bus Line

July 6, 2017 | Posted in Design

Over the last few years, I’ve gotten spoiled by working with some awesome UX and graphic designers. As a result, I was able to double down on my programming skills on both the back and front ends, but at the same time most of my design skills had somewhat atrophied. I’m very comfortable using JavaScript […]

Read More

Adding Custom Fields to WordPress JSON API

June 14, 2017 | Posted in Web Development,WordPress

I’m working on building out some cool annotations tools for different types of audio, mostly music, which you can see an example of here. Although this is a good step, to really make this app/plugin/tool extensible and reusable, there needs to be some sort of back end layer to store some meta data about each […]

Read More

Server-side Caching with NGINX to Increase Page Speed

May 8, 2017 | Posted in AWS,Linux

I’ve been trying to up my sysadmin game over the last several months using a lot of different server configurations on AWS (Linux, IIS, etc.). Mainly I’m writing this post because I’ve implemented this server-side caching setup three times now, and every time I do, I end up having to go back to the drawing […]

Read More

The Future of JavaScript and the Browser

February 20, 2017 | Posted in JavaScript,Web Development

I’ve been doing a deep dive into Vanilla JavaScript lately, partly as a pretty overt reaction to the proliferation of client-side MV* frameworks. My thought process is that the time spent learning frameworks isn’t necessarily transferrable beyond some of the high-level concepts they help you solve, things like routing, data-binding, and dependency injection. But, once […]

Read More