Since I bumped into the Fitnesse wiki/framework and got it up and running, it really solved all the issues I had with what I was missing for my development efforts. The first thing hat was obvious was that I needed a Wiki. Any Wiki could do, but after trying out some of the more popular Wikis out there and trying to get them to run on the SourceForge? servers, I sort of gave up. If a Wiki is all about ease of use, why is it so DAMN hard getting it to run proper! Well, fair is fair, and some of the isues were actually related to the environment at SourceForge? more than the Wiki itself.
So then there was FitNesse. I had been giving it a hard look and decided that I would like to try and use it for acceptance testing one of these days. But I never really seemed to get to that point. There was so much else - hacking away at the SourceForge servers for one - but also the fact that I didn't have a server that I could run it on for everyone to see. Then one day I just jumped right in and fired up the bastard on my local machine. And what a great experience! The first thing that hit me when I started the .BAT file and opened my browser was. 'Wow, is it that easy?'. After reading up on some of the pages I wanted to fire up a Wiki of my own, so I customized the .BAT with my own root and started that one... That was even easier! Boom. I had a very functional Wiki... Gradually I began jotting down random stuff. Trying to create some structure is always the hard part. I tried. And well, not all pages are created yet, but it doesn't really matter to me, the point is that the IDEA of them is there. The tool is perfect for capturing the random thoughts I have in that random way. And if you want to tidy it - there's the Refactor support.
So you say. Well Wikis are just so 5 years ago, or something like that. How come you first discover them now? For one, the whole WikiWords concept ticked me off. It still does some - but I can see why it is there now, so I pretend that it is not bothering me that much. I'll probably get used to it someday.And then there have always been the issue of getting one on-line. I am primarily a Windows developer, doing ASP, ASP.NET and using IIS and those are the servers I feel comfortable with. It is pretty hard to find a supported Wiki on that platform! OK, I know my UNIX - especially FreeBSD which I like very much. But not everything I'd like to do can be done on a FreeBSD box. Especially not being a build server for .NET on the Windows platform or doing .NET 2.0 stuff. And I did not like to have to run more boxes becuase of that issue.But using FitNesse made me realize. It does not matter right now! This post was first written on the FitNesse server running on my local machine - then ported here. No one on the whole wide internet could see the post when I first posted it. But it matters less. The point is I am writing it and it can easily get on-line when I find a machine to put it on. Do I not care that people read it? Yes, it would be nice - but it is not prime concern. Getting things out of my head is!
Back to what makes FitNesse great. Yesterday I started using it for the d20Sharp project. I had picked the project up again after having a breather following the Beta 2 release. So I started creating some pages for acceptance testing. There were some snags getting it to use .NET, mostly because I hadn't read that part on the FitNesse page that thoroughly (maybe a Quick start would be nice?), but when I got it up it was amazing. The process of tieing the pages and the code together was much easier than I had dreamt of. And before I noticed, I was doing unit testing, coding and acceptance testing almost in one flow. The power to have both kinds of testing (a subject I will elaborate on another day when I've used it more) is simply great. And having the power to so easily write test and examine results using a Wiki page is a blast.
Bottom line: I can't get enough of FitNesse. It rocks. I am a convert and an evangelist. I am looking forward to trying it out in a group or with non-coding people to see if it can deliver there as well. For now I will just be happy about this great new tool.