Tools and Technologies

I love working with new technologies I don't yet know or understand. I try to dive deep and hard into unfamiliar territory and come out with more knowledge and experience than I had before. One nice side effect of this is being able to draw from this research and apply that knowledge on projects!

Here are some relevant technologies I've worked with on projects over the last decade or so.

Microsoft .NET / C#

Microsoft .NET and C# are at the core of my skills and experience. I've worked with the .NET framework since it was in Beta back in 2001.

ASP.NET MVC

ASP.NET MVC is my go-to web application technology. It was the platform we used on the 3M Visual Attention Service web site that I worked on and I've used it for handfuls of other internal-facing web applications. MVC isn't a replacement for ASP.NET Web Forms, but I've rarely found instances where I'd rather choose Web Forms. My experience with MVC includes web site based work as well as service-based apps that producs JSON and XML data.

HTML, Javascript, and CSS

I've always had a passion for the web, and HTML, JavaScript, and CSS are constants in web programming. These technologies and languages have been at the core of my programming skills for over thirteen years. Most recently I've worked on the open source JavaScript library audiolib.js.

WPF

I've devleloped a variety of desktop-based applications using Windows Presentation Foundation (WPF). These applications have utlized the Model-View-ViewModel (MVVM) pattern, and many of them have also integrated the Kinect sensor bar for motion tracking and motion control. I've worked on WPF applications for corporate lobbies, trade show booths, and Windows tablets.

Azure

I've worked on projects and have done a small amount of speaking and mentoring on Windows Azure and SQL Azure. One of the more interesting tasks I've done on Azure is remote deployment and management from TFS Builds. Azure is a great cloud framework for .NET developers and the deployment model is something that all .NET developers will likely need to get used to in future versions of .NET and Windows.

Silverlight

I have a large amount of Silverlight experience under my belt ranging from public web site work such as the 3M Visual Attention Service to out-of-browser slate applications to gadgety digital audio synthesis apps. I've used the Model-View-ViewModel (MVVM) pattern in these applications as well and have specific experience with the MVVM Light framework.

Windows Phone 7

I've worked on two Windows Phone 7 applications that have been published to the WP7 app store. The first is a personal app I developed called Warblr, which plays Twitter search results as musical sounds. The second was as an employee of Avtex, where I assisted with development on the Mobile CRM Dialer app - a lightweight mobile front end for Microsoft Dynamics CRM.

XBox Kinect on Windows 7

I've done deep programming and research with the Microsoft Kinect SDK. I've built a large number of demo applications as well as a number of client projects while an employee at Avtex. I've also given presentations on this technology at Twin Cities Code Camp. I've also written a number of posts on Kinect development, including: WPF 3D Manipulation with Kinect, Kinect Sensor in an MVVM App, and Three Lessons on Kinect Cursor Control with NITE.

SQL Server

I've developed against SQL Server since version 6.5. I'm experienced with relational database table design, stored procedure programming, and programming against SQL Server with ADO.NET.

SharePoint

I have a deep amount of advanced SharePoint customization and development experience. While I am not actively seeking SharePoint development work, nor have I kept up with the latest version, I do have significant product and development knowledge to be able to work with the product effectively.

Version/Source-Code Control Systems

I have hands on experience with Git, Mercurial, SVN/Subversion, and TFS.