I’ve been putting off working on TicketDesk for far too long.
There were many reasons for the delay. TicketDesk 2 was originally written for MVC2, but changes in the newer versions of asp.net, MVC, EF, and MEF have made the task of upgrading TicketDesk to the modern asp.net stack a challenge. Additionally, there are new technologies that I’d rather be using that require re-architecting most of the existing code-base.
Until recently though, the asp.net stack was moving too fast, and wasn’t stable enough, for everything I wanted to do with TicketDesk. Every time I considered diving back into development, there was a new-hotness in the works worth waiting on. First it was EF code-first, then EF migrations, then WebApi, then oAuth, then the SPA framwork, and so on. Looking at the current asp.net landscape, it seems that most of the technologies that I want to use are now done and stable –or stable enough at least.
Rather than develop against the TicketDesk 2 code-base though, I’ve decided it will be easier to just start over with fresh projects. A lot of the old code can be re-used of course, but there are sweeping architectural changes that are simpler to implement from scratch.
I do plan to hack-together a working VS 2012 and .Net 4.5 compatible build of TicketDesk 2. This isn’t as easy as it sounds. MEF in particular has undergone numerous changes that are incompatible with the version TicketDesk 2 originally targeted. Additionally, the MVC 2 project itself can’t even be opened in VS 2012. I will need to upgrade it to at least MVC 3, then figure out how to get it to play with the current version of MEF. I don’t plan to add any new functionality to TicketDesk 2, but I do hope to have a working code-base that I can maintain with VS 2012.