After a rather long break from blogging, it’s time for me to jump back in! I thought I would start by taking a look back at 2011 and recapping some of my experiences, with a sneak peek at blogging topics I plan to cover in the next several weeks.
On a personal level, we added a new member to our family: Kornelius Aaron Sneed, born February 8, 2011. He is the youngest of our three children. My oldest is Kerrigan, age 6, followed by Karisma, age 3. My wife, Zuzana, holds the whole family together.
From a professional standpoint, 2011 was also an interesting year. I continued to work as an instructor for DevelopMentor, but I started to spend much more time doing hands-on software development for various clients in the Dallas area. My first client was a pharmaceutical distribution company that was porting two applications, one a Windows Forms app and the other an ASP.NET app, over to a single Silverlight app that would run both in-browser and out-of-browser. That gig ended in July, when I picked up some WCF work in Fort Worth building an external-facing REST-ful WCF service, as well as some internal-facing queued WCF services. Then I picked up an ASP.NET MVC project in Plano, Texas, creating a web portal hosting several ASP.NET and Silverlight apps. That morphed into a project building a Security Token Service using Windows Identity Foundation by customizing the Thinktecture Identity Server authored by Dominick Baier.
It was at that time that I decided to write my own MVVM Toolkit, which I called “Simple MVVM Toolkit,” first targeting it for Silverlight, and then adding support for both WPF and Windows Phone. It took me a few weeks to put out the first version. Then I spent the better part of the next four months adding features, putting together sample apps and documentation, writing an installer, and performing some screencasts. I also spent a great deal of time answering questions posted to my blog and the project discussion board at CodePlex. My New Year’s resolution is to incorporate some requested features and add support for Silverlight 5.
With the advent of my toolkit, I started blogging more often, holding forth on a variety of topics, including WCF, REST, Data Services, ASP.NET MVC, and the Onion Architecture. In June of 2010, when I migrated my blog to WordPress.com, I was receiving about 3,000 hits per month. Now it’s over 11,000 visitors per month, with 110 followers from all over the world. In the past 12 months I’ve had over 15,000 downloads of my Simple MVVM Toolkit. The project discussion board has over 100 threads, and the Silverlight-MVVM Facebook Group has 34 members. What’s so cool about all this is the ability to have an impact and help others, even if they’re halfway around the globe.
On a more controversial note, last year I took the plunge and bought a 13” Apple MacBook Pro. I had owned a Dell Inspiron prior to that, but it was constantly overheating and I had to replace the power cord twice (at over $100 a pop). I already owned an iPhone and had purchased an iPad. So when the hard drive on my Dell started to fail, and researched the cost of going with a Mac. In total, it cost me about $2,000, with an i7 Intel processor, 8 GB of RAM and a 240 GB solid state drive (which was not large enough). I bought the drive separately and swapped out the 500 GB SATA drive that came with the laptop, placing it in a case to use for backups. My main concern was how well I could run Windows on a Mac, but running Windows 7 using Parallels in Coherence mode made the experience nearly seamless. Making this move came with a tinge of nostalgia, because my very first computer was the original Mac, which I purchased in 1984 and came with a single floppy (no hard drive) and 128K of RAM. Ironically, I paid $2,000 for it, which in today’s dollars amounts to $4000.
So what’s next for blogging? There are a couple of miscellaneous topics I’d like to cover, such as Behavior-Driven Development with SpecFlow, and some highlights of a presentation I did last Fall in WCF Data Services. Then I’d like to share what I learned about Windows Identity Foundation and the experience of customizing an open-source Security Token Service to achieve centralized authentication and authorization within an enterprise; how to perform single sign-in and support claims in a Silverlight app; and an approach to single sign-out and global session management across multiple applications secured by the same STS.