My Current .Net Application and Tools Stack

For what it is worth I thought I would share what my current application stack for Enterprise Web Application / Line of Business Applications.  When these tools are used together they allow me to develop in a frictionless way.  I am able to build maintainable software using these tools.

 

For the runtime environment I like the following:
  • SQL Server 2005
  • Windows 2003 Server
  • IIS 6
  • .Net 3.5
  • Asp.Net MVC web application framework
  • JQuery for client side Javascript
  • Structure Map for the Inversion of Control (IoC) container
  • NHibernate for Object Relational Mapping
  • Tarantino for some utility classes.
  • MvcContrib – additions to the Asp.Net MVC library
  • Castle Validators – Great validation engine which is part of the Castle framework.
  • FluentNHibernate – I really like the AutoMapping by convention.  I have this in a small side project and I think it could change the way I think about databases.
Testing, Development, and Build Tools
  • Visual Studio – VS 2008 with C# and Web Developer installed.  I don’t need any of those silly VBx languages installed.
  • nUnit for Unit and Integration Testing
  • Gallio/MBUnit for running and reporting of Web UI Automation Tests
  • WatiN framework for automating Internet Explorer for UI Automation Tests
  • Cruise Control for Continuous Integration Server
  • NAnt for build scripting language( I use the term scripting very loosely). I also use this to automate application deployments, it works great.  I only wish it could be deployed as a single executable.
  • Resharper – Visual Studio Add-In usable for a solution with lots of files.
    • TDD Productivity Plugin for Resharper
  • TestDriven.Net Visual Studio Add-in for running tests fast.
  • Tortoise Svn – A Windows Explorer integrated subversion client. Simple and Easy.
  • Subversion – source control.  I prefer to have a hosted subversion repository.  If that is not an option I like Visual SVN for hosting a repository.
  • Tarantino – to handle Database Change Management.  without this DB change management is a total pain.
  • SQL Compare and SQL Data Compare- great tools for creating database change scripts. The Pro versions can be automated via command line which is a win in my book.
  • CCTray – the cruise control client to monitor builds from the system tray.
  • Balsamiq Mockups – great tool to create a ui mockup.
  • Vitual PC / VMWare – I have machines for both. I seem to think that either platform is ok enough for me.  The real performance in vm’s is how I configure the client machines.
  • WinDBG – great tool for getting into the down and dirty.
  • QUnit – a unit testing tool for javascript.  Once I started using this.. I started liking Javascript again.
  • 7-Zip command line.
  • Dos / batch files.  Too many people skip the basics to solve simple automation problems with batch files.  I automated a server setup using a batch file and took a manual multi-hour process to a 30 minute totally automated setup.  I cannot stress the power of the pure command line.
  • Fiddler, Developer Toolbar – IE plugins.
  • Google Chrome – I like this browser a lot.
  • Rhino Mocks

 

 

Tools and Frameworks I want to tryout sometime soon.
  • NHibernate Profiler.  I have high hopes for this tool, I installed .Net 3.5 sp1 just so I can start using it.
  • WinSnap – Screen capture tool.  Thanks Jason for the recommendation.
  • JQuery UI – ui gadgets for jQuery.

 

What do you use?

 

Updated: 1/29/2009 How could I forget about Rhino Mocks ?

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Eric Hexter

I am the CTO for QuarterSpot. I (co)Founded MvcContrib, Should, Solution Factory, and Pstrami open source projects. I have co-authored MVC 2 in Action, MVC3 in Action, and MVC 4 in Action. I co-founded online events like mvcConf, aspConf, and Community for MVC. I am also a Microsoft MVP in ASP.Net.
This entry was posted in .Net, Asp.Net, continous integration, testing, Tools. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Mark Capaldi

    Just a small point but it would be useful if you provided links to product home pages so that I didn’t have to Google Tarantino, realise that it’s not as popular as Quentin Tarantino and then Google “tarantino database change management”! Useful list though. Thanks

  • T Moriarty

    “FluentNHibernate – I really like the AutoMapping by convention. I have this in a small side project and I think it could change the way I think about databases.”

    Could you expand on this?

  • Artur Trosin

    Hi,
    If NHibernate as your ORM and ReSharper are in your toolset then you can be interested also in the “ReSharper NHibernate Plugin” to tie them together. (Of course if it is not already in your toolset)
    Here is the link: http://nhplugin.lieser-online.de/

  • SJeffrey

    @Artur
    Eric mentions using FluentNHibernate. I haven’t tried the NHibernate plugin for ReSharper but is there a point of you aren’t using hbm.xml fileS?

  • chief7

    Just curious, have you tweaked IIS6 to support clean urls with MVC or are you using the .svc extension?

  • Artur Trosin

    @SJeffrey,
    You are right, but you can be interested in it because:
    -is integrated with resharper, so Go To Declaration, Find Usages, etc. works with hbm files..
    -and is also a refactor friendly

    Maybe the plugin will not replace completely from features point of view but it could be matter of choice in different situations.

  • http://www.lostechies.com/members/erichexter/default.aspx erichexter

    @chief7 even when I run IIS 6 I will use the wildcard mapping for clean urls. I know that there has been alot of talk about the performance.. But I did this for asp.net 1.1 on an ecommerce site that needed the urls for SEO and it is possible to handle a significant amount of load while using the wildcard mapping.

  • http://www.lostechies.com/members/mbratton/default.aspx mbratton

    That’s a lot of stuff needed to write maintainable code! ;)

  • http://www.madaboutanything.com Deependra Solanky

    Very nice and informative article. I am also going to play with the many of tools which you have listed. Thanks