Showing posts with label Tools. Show all posts
Showing posts with label Tools. Show all posts

May 19, 2008

ReSharper 4.0 goes Beta (Candidate)

I just saw this on the wire: ReSharper 4.0 has entered Beta a Beta Candidate now as of build 804. If you want it, go get it here: http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+Nightly+Builds

If you just want to see what is new: check out this page:
http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+EAP+Notes

Finally, there is another deal going on at JetBrains.  DotTrace has gone to version 3.1.  For a limited time you can now buy the Personal version of DotTrace for $199.

Note: Ilya Ryzhenkov corrected me, this is just a Beta Candidate.

October 20, 2007

Software Development Essential Practices

I was in an interesting discussion last night: what software development practices do you consider essential? 

While opinions varied, I think there was some consensus on a few items.  In my list I also include some tools.  Some of these were mentioned by the group, but consider them my own additions.  Also, I am making this list specific to .NET, but the list applies to just about every language.

Universally agreed Practices

  • Source Control (1)
  • Local Development -- Every developer should have everything on their computer to run the system.  This includes all of the software and all of the source code.
  • Bug Tracking - nuf said.  There are to many tools available to list here.
  • TDD - Test Driven Development.  There was a little bit of back and forth, but the general consensus was that this should be done.
  • ORM - Object-Relational Mapping
    • NHibernate 
    • SubSonic - My person favorite
    • LINQ to SQL - not yet, but I feel this should be on the list.
    • LLBLGen ($) - Not free, but I've heard many good things about it.
    • More
  • Continuous Integration - Simple process that sits on a server and waits for things to get checked into your source control system.  When it sees something new, it gets all of the latest source code, compiles it, and runs all of the unit tests.  If there are any problems anywhere in that process it alerts the users (email, desktop icon, wave red flag, etc). (3)
  • One Step Build - it is unbelievably cool to be able to click one button and have your entire project compile, run all tests, and possibly create an install in one step.  Personally, I do like it, but with the current set of tools this is one of the hardest parts to setup.

Highly thought of but non-essential practices

I'm sure I have missed some tools in the list, but it is the practices that are more important anyway.  But if you put a comment about any tool that I missed I will add it to the list.

(1) Source Safe was notably not in the list.  While I don't like it either, it is better than nothing.  But if your team is greater than 5 people or you have multiple people working on the same project you really should look at one of the other products on the list.

(2) Not a unit testing library, but a Mock Object library.  Pick a unit testing libarary (NUnit, MBUnit, XUnit), then pick a mock object library (Rhino Mocks, TypeMock, NMock) to use with it.

(3) I really need to talk about continuous integration more.  But it is one of those things that leads you down a path.  First you add source control, then you start adhering to separation of concerns, then you start unit testing and mocking more, then you add continuous integration, and then one step builds are all part of the mix.  One best practice leads to another, but they don't make a bit of sense without some of the prior pieces.

(4) If you are a Code Rush person instead of a ReSharper person -- carry on, you are in good company.

($) The cost money - not just beer, but may have free version versions as well.

March 27, 2007

ReSharper UnitRun

I'm all in favor of good tools when I can find them, even better when they are free (as this one appears to be).


But JetBrains has released ReSharper UnitRun for down.
http://www.jetbrains.com/unitrun/

If you already use ReSharper you know how good of a tool this is already.
If you don't user ReSharper, this is one of the best features in it (next to automatic code profiling).

So, if you are doing Test Driving development, check it out, it is worth the download.