About page

I’m Brett. I’m a husband, father, aerospace engineer, software developer, musician, poet, and gamer among other things. I work at NASA Marshall Space Flight Center in solid propulsion performance analysis. One of my favorite things is developing analysis tools using Python.

My love for software development started in college when I discovered I could program my TI-89. With a little TI-BASIC and some textbook equations I no longer needed to use the textbook appendices to look up isentropic flow properties! It was magic! Fast forward 15+ years and my coding life generally falls into 3 categories: Python, Matlab, and Excel. While projects I own are in Python, I regularly collaborate with others working in Matlab or Excel. If you rolled your eyes, just keep in mind that we’re still running dozens of legacy Fortran programs, and have a workforce of 1000’s with an average age in the 50’s. “Being the change I want to see” requires that I get my hands dirty with every technology my team has ever used.

At work my job isn’t to develop software, it’s to be an aerospace engineer, design systems, and analyze data. Being a programming/Python nerd means that I see most of my engineering tasks as programming tasks. Within the Python ecosystem some of my most used libraries are numpy, scipy, matplotlib, pandas, PyQt5, pyvista, vtk, seaborn, statsmodels, pyqtgraph, pyinstaller, JupyterLab, and loguru. My editors of choice are PyCharm (with vim-mode on) for library code and JupyterLab for analysis work. While there once was a time that every problem solving exercise started by opening an Excel file to capture ideas, import data, and perform calculations, that role is now fulfilled by Jupyter Notebooks. In a Notebook I can capture my entire problem solving workflow in a single document, do any calculations in Python, and version control my work. If I need to do something I’ve done before, I import it, and if I do something in a notebook that I need more than once or twice, I throw it into a library, and refactor the notebook to import it. This workflow has served me well for 5+ years now and has only improved as JupyterLab and PyCharm have matured. Deployment and collaboration are challenging in a Windows-centric mostly non-Python, non-programmer environment. I’ve done everything from compiling desktop applications with PyInstaller, bundled into an Inno Setup Windows Installer, to teaching people git and python so that they can collaborate with me.

At home I’m a husband to a fellow NASA aerospace engineer and a busy father. When I get some time to myself I split it between video games, banging on the piano, and watching sci-fi shows. During commutes and chores I enjoy podcasts (like Python Bytes, No Dumb Questions, and the VergeCast) and sci-fi audiobooks. After a decade of being “too busy to read,” audiobooks have been a revelation and have enabled me to enjoy the Three Body Problem Trilogy, 8 books from The Expanse series, Ender’s Game, Dune, and Ready Player One in less than 2-years! I would also be “too busy to game” if not for the Switch, which lets me squeeze gaming time in around the house. I’m a huge fan of Nintendo classics like Mario, Zelda, Mario Kart, and Metroid, and RPG’s like the Final Fantasy, Dragon Quest, and Elder Scrolls series.