About Me

Hi, I’m Matt Callahan and I am a software developer in Phoenix, Arizona. Computers have been my hobby since my dad brought home our first family computer 30 years ago, a 286 PC running MS-DOS. I found QBasic and began teaching myself how to program - without Google or StackOverflow! After receiving a TI-83 graphing calculator for algebra class in 6th grade, I quickly began making games and homework cheat programs with TI-BASIC to share with friends. My interest in programming extended through college, where my Geographic Information Systems major introduced me to Java and Flash/ActionScript. If I'm not at my keyboard, you'll find me enjoying the Arizona outdoors - exploring the scenic back roads, bicycling, fishing, camping, swimming, and skiing (yes, there's skiing in Arizona). I'm also a GMRS radio operator - call sign WRAA720.

Software Development

My main area of interest is desktop and web development using the Microsoft .NET framework. C# is my primary tool of choice when I need to develop a custom solution. It is an amazing and powerful language with a robust base class library and features like LINQ, garbage collection, and asynchronous programming that make life so much easier. But sometimes I just don't need the overhead of the massive .NET framework, and Python is my second tool of choice. Python is perfect for when I need to automate tedious or repetitive tasks, or I need to process large batches of data.

I am currently an Application Developer at CBRE, helping to build modern applications that power CBRE Dimension, a suite of applications that deliver spatial data and analysis tools to service real estate brokers and staff. I am very fortunate to work in an environment that provides a wide array of data to process, visualize, and make accessible to clients in meaningful ways. I work with a great GIS and development team, and we thrive solving unique problems and providing tools that help clients make informed decisions.

Projects

While most of the code I write in my day to day work is stored in private repositories, here are some sample projects that demonstrate the types of software development I do.

API   This site includes a demo HTTP service created with ASP.NET Web API 2. Click here for the API documentation.

Arizona Camping Map   An interactive web map created with ArcGIS Online that shows some of my favortie places to camp and visit around Arizona.

Image Gallery   An image gallery demo built with Featherlight.js.

My Homepage   This website serves as both a personal homepage and as a showcase for the flavors software development I enjoy. I used various frameworks, libraries, and APIs including ASP.NET, Entity Framework, jQuery, Bootstrap, ArcGIS Online, and others to create this site and all the included functionality. Check out the source code here.

MB Utils   A MapBasic module and .NET library that extends MapInfo MBX programming functionality by exposing .NET and Win32 API calls as easy to use MapBasic functions and subs. This project was the first library I ever wrote and was a great learning experience in how to document, release, and support an open source software project, albeit on a small scale. And while the code may be outdated and could perhaps use some refactoring, I'm sharing this here to show how my career has progressed.

Miscellaneous code   This repository houses all my miscellaneous code: one-off scripts, useful stuff I refer back to once in a while, and anything else I've deemed useful enought to hang on to for a while.