I know the big rewrite is almost never the right answer, but in the case of a stalled hobby project that started a year ago with Linq to SQL, ASP.NET MVC 1.0, then maybe it’s okay.
I’ve decided to start again totally from scratch. This is for a few reasons:
- I want to start again using ASP.NET MVC 3 with Razor view engine, and make use of the many other improvements.
- I want to use EF code first, rather than Linq to SQL.
- I attended DDD9 today, and saw a session with a lot of useful information about CQRS that I want to try and apply here.
- I want to remove the product name from the code. I think I’ll still be branding it as “Workflo”, but since I have this overall idea of a project called “Genrsis” that’ll include other products, the root namespace for this particular product will probably be something more abstract like “Genrsis.WorkItemTracking”.
- I want to host this project on codeplex.
- There is a lot of stuff I can reuse from the old code: my custom ASP.NET MembershipProvider, logo, CSS etc.
So I’m going to get started on this now. The sooner I can start dogfooding the better.