So I am “resting” again between contracts and have been getting stuck in to re-writing my Virtual Cycling community site www.vrcyclist.com with ASP.NET MVC4. Apart from the obvious vrcyclist.com exists so that I have a public place to practice and show off my ASP.NET and web development skills. It started out as a standard WebForms 1.0 site then progressed to ASP.NET Ajax and I even added a few new features using Silverlight. Now with HTML5 becoming ever more prominent (even though it still isn’t a finished standard) I think it is time for a complete re-write, which provides me with an opportunity to morph it into a more general site for active people while retaining the existing functionality.
I’ve been learning MVC4 for a year or so now (I think I mentioned before when MVC and Silverlight were released around the same time I opted for throwing myself into Silverlight), which has made for a nice distraction from doing primarily Silverlight or WPF work for the last few years.
Kindle on my iPad is packed with books on ASP.NET MVC, HTML5, CSS3 and JavaScript that I have been using to bone up on relevant subjects and Progressive Enhancement struck me as pretty crucial for a modern web site/application. I also noted the rise of KnockoutJS and the use of the MVVM pattern, which I like the idea of (being very familiar with it in my Silverlight and WPF work). I’ve tinkered with several architectures/models/patterns for the new site and have settled on a pretty stable set work for me. I’ve changed direction a few times and learned a lot of lessons in the process. So I thought others might benefit from seeing what I have settled on and decided to write a series of blog posts to document it. If nothing else I will have documented it for myself and demonstrated a grasp of MVC4 and other technologies to potential employers.
So to start I am just going to list the patterns and technologies I have settled on, which will at least provide a taster for what is to come and maybe tempt you back to read the follow up articles.
Back End/Middle Tier
- ASP.NET MVC 4
- AutoFac 3 (IoC container)
- Entity Framework 5.0 (Code First and Migrations)
- SQL Server 12
- NLog
-
JavaScript Libraries
- jQuery
- jQuery UI
- KnockouJS
- log4javascript
- HistoryJS
- js-signals
-
Testing
- NUnit – TDD Unit Tests
- SpecFlow – BDD Acceptance Tests
- SpecSalad
- Telerik Testing Framework (Free) – UI Automation
Tools
Visual Studio 2012
ReSharper 7
NCrunch – Continuous Test
.NET Demon – Continuous Build
BitBucket – Source control repository
TortoiseHG – Source control client
VisualHG – IDE source control
NuGet – Package management
I won’t necessarily be covering usage of all the tools, but happy to answer any questions regarding usage or choices.
43eaa404-0bb6-41b3-9027-624a0afb9c4c|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Whilst I still retain my original domain name mikehanson.com the domain name and email address particularly have become a target of so much spam I got fed up of trying to protect it so decided to find a new domain name that communicates my passion for what I do.
I have migrated some of the content from mikehanson.com but have not bothered with the NavFx stuff as this is now defunct since Silveright 3 was introduced with a built in navigation framework.
82aa8dc7-30ba-4739-8058-58c20e967f09|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Tags:
Originally I chose Subtext for my blog, but recently I have found that other .NET blog engines have improved more and after reviewing the orginal set and some new ones I have settled on BlogEngine.NET.
aef94342-1688-46e3-a2c7-f5408d4ce471|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Tags:
Welcome to my blog. Anyone who knows me will be really surpised to find I have a weblog, whenever the subject came up I always said "I can always find something better to do", but lately I have been learning so much new stuff particularly with VS Extensibility (VSX), WPF, XAML, Rx and Silverlight that exited me enough to want to tell someone about it.
With VSX particularly I learned so much by piecing together little titbits from all over the place I actually sat down and started to put together a book, I actually wrote the first few chapters in between contracts, but then I thought about it and decided a book took up too much time so after some time looking around at other ways to document what I was learning it dawned on me that this is exactly what a weblog is for.
Of course the next decision was where to blog, do I use one of the many shared sites or do I set up a private one on the dedicated server I maintain for web sites. It occured to me then that I hadn't updated my personal web site for a long time and it might be a good idea to replace it with a blog. Of course then I had to decide on which blog engine to use.
Since I work exclusively with .NET technologies it seemed wrong to use anything other than a .NET blogging engine. I googled for ".NET Blogging Engine" and found a few, I downloaded half a dozen and set them up on my local machine. To cut a long story short I found most of them didn't work as expected or at all but I found Subtext "did what it says on the box" and provided all the functionality I wanted. It was easy to set up with a slick UI that fired up the first time I browsed the site and it just works as expected. My second choice was dasBlog but this lost out on the setup procedure which was effectively a manual process.
Anyway welcome again to my blog, I will be using this like a "black book" to document what I learn about the technologies I work with and if anyone finds it helpful then it was worth the effort.
Mike Hanson
ace01d8c-7f58-4551-979b-37f392315190|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Tags: