- D3.js - Used to produce charts and maps for print and web. Examples:
- A decade of growth in the Gallatin Valley - Map and diagram projecting scope of potential land development.
- Gallatin Valley migration by age - Age pyramid-style diagram for visualizing U.S. Census county-level migration data. Rendered as static visual for print and web.
- 2017 Bozeman budget flow diagram - Interactive sankey diagram visualizing a proposed municipal budget.
- Leaflet.js - Used for developing customized web maps, e.g. this interactive exploration of neighborhood walkability. Also used for simpler projects, like this map of gaps in the city sidewalk grid.
- Node.js - I’m comfortable working in a Node.js-based development environment, and have a working understanding of build tools like Babel, Webpack and Gulp.
- React.js - Used for web interactive development, including a living wage calculator.
Python for data wrangling
I use Python as a go-to tool for data cleaning and analysis, particularly with datasets too large to handle comfortably in Excel. My experience also includes some experimentation with web scraping (using Beautiful Soup and lxml) and some use of Python in concert with geospatial analysis libraries like GDAL/OGR.
- Pandas/Numpy/SciPy - Used with iPython Notebooks for data cleaning and analysis. An example here, detailing the code behind a county-level property analysis identifying major local landowners.
- Django/Flask - Some experience with Python for back-end web development, largely limited to walking through tutorials. This is a point of current learning.
Microsoft Excel for lightweight data work
Given that Excel and a TI-89 calculator served as my primary computational tools while studying engineering, I’m highly proficient with in-cell functions and data management including filters, pivot tables and fighting .csv export quirks.
QGIS + PostGIS for geospatial analysis
I routinely use QGIS for viewing and manipulating geospatial data, including the production of static maps for print and web. I occasionally connect QGIS to PostGIS databases to allow analyses using SQL queries.
Examples of QGIS cartography work are maps that accompanied a farmland preservation story, and diagrams comparing relative residential density in several Bozeman, Montana neighborhoods as a sidebar for a feature on urban sprawl.
CartoDB for map-making on deadline
I’ve used CartoDB for web map displays with several projects, particularly when producing mapping products to supplement quick-hit stories. Examples include city street tree locations, precinct-level bond vote results and mayoral campaign contributions.
Git for version control
I’ve used Git/GitHub for version control with personal projects and some collaborative work. (Github account here.)
Adobe Illustrator and Photoshop for graphic design
I’m comfortable working with Illustrator and Photoshop, as well as Adobe InDesign. I’ve also experimented with the ai2html plugin for Illustrator.