First Steps with Jax, Part 2

In the second part of this series, we build a simple multilayer perceptron using some of the tools available in the vanilla jax library. Again, I've included a fully-functional notebook you can run on Google Colab and modify in any way you would like; a static copy is reproduced below …

more ...

First Steps with Jax, Part 1

Earlier this summer, I took some time to invest in getting more comfortable with the latest-and-greatest deep learning frameworks that had been released over the past two or so years. While my Keras-fu was serving me well with a lot of the toy deep learning projects I'd mess around …

more ...



Declarative Visualization in Python

As a scientist doing much of my data analysis and visualization in Python, I'm often thankful to have access to many powerful, easy-to-use libraries. It's very rare that I'm able to think up some sort of illustration or visualization which matplotlib can't handle. However, visualization in Python has some difficult …

more ...

New Website Design

Although it's not 100% finished, I'm launching the new version of my homepage. This version departs significantly from my older versions in that I've chosen to move everything to static site generator. I think this gels a nicer with my current writing/tools workflow, which leans heavily on plain-text files …

more ...



Abandoning Iris

Seven years ago, when I first started working with climate model output and analysis within Python, the software stack we had available was pretty shoddy. Although direct interfaces to netCDF (the de facto standard data format in climate science) existed, they could be kind of clunky. They didn't have smart …

more ...

Louisville Severe Wx, 7/13-14/2015

LAST UPDATED: 10:49 AM EDT (1459Z)

Stormy Afternoon

Today's forecast is a bit of step down from yesterday. There's still a wind/rain threat later this afternoon, but there's a bit less energy for storms to tap into.

Storms should develop in Western KY and areas further West in …

more ...


Git Ignorin'

It gets really old having to create a site-specific .gitignore anytime I start a new project. It's especially troublesome since I tend to access the same repository when it's mounted on different filesystems, creating all sorts of superfluous, useless files (I'm talking about you, .DS_Store). Luckily, gitignore.io has your …

more ...

Simple Ray Tracer in NumbaPro-CUDA

For a long time, I've been looking for a good application of CUDA/GPGPU programming to some of the basic analysis I do in my research. Unfortunately, there really hasn't ever been any low-hanging fruit. That coupled with my desire to avoid pure C-programming at all costs was an ideal …

more ...