It’s been almost a month since the last time I posted something… it seemed to me like a century, but I really had no time to put something together.
In the last three weeks, versions 2.0.0, 2.0.1 and 2.0.2 were released, and a total of about 20 bugs were reported. 20 is not a big number at all, but the problem is with the kind of issues that users happen to find.
While the most of the errors are easily reproducible, there are some of them that just happen to some users, and only to them. There are many examples of this if you go through the forum.
When you think of ASP.NET, you surely imagine something highly standardized and documented. And it’s close similar to the truth. Well, facts suggest that there are so many things that can possibly go wrong with an ASP.NET application (because of its complexity), that you should probably avoid it like the plague. But still, ASP.NET is probably one of the best (if not The Best) web application frameworks in the world (I know, Ruby on Rails is very nice – actually, I hate languages like Ruby, or Python – but the framework itself is really interesting).
ScrewTurn Wiki is the very first ASP.NET application that I ever developed targeting a wide variety of users, let alone the fact that it is supposed to be deployed by the users themselves. You know, we all are used to develop ASP.NET applications and deploy them to the customer servers*. They are not supposed to be distributed to the public. This helps a lot, because you can control every single bit of the target servers, or at least most of them. You can remote-desktop into the server and look at the Windows Event Log, install things, restart the machine and so on.
I believe ScrewTurn Wiki is very easy to deploy, especially if you have direct access to the server, but that is not enough. As I said before, there are loads of things that can be wrong, and in such case, the users are almost alone. Alone because:
- almost all of the strangest errors cannot be reproduced by us (and for this reason they just seem plain absurd)
- they have no time to debug the application themselves (and that’s fine: if I use a program, I don’t want to debug it in case of error. Anyhow, there are some valuable users who not only debug the Engine, but even provide patches. Very kind of you, really!)
- if they can’t use the Wiki and ask questions in the forums, the answers usually takes at least many hours to arrive (luckily there are some other users who started helping people with trouble, so thanks to all of you too!)
We test the Wiki Engine in Windows XP (IIS 5.1), Windows Server 2003 (IIS 6) and Windows Vista (IIS 7). Usually it works, and we release. That’s it.
Then someone appears and says that something is not working after an upgrade, or even after a clean install. What are we supposed to do? We can’t reproduce an error, and unless there are at least a few users reporting the same problem, we can’t do much, or most probably nothing. And that’s sad, because the users aren’t happy and probably start using another Wiki Engine. And they are perfectly right.
Moreover, bug fixing is consuming all the time that we can spend on the Wiki. This is the biggest problem. Until we’ll fix all the bugs, we cannot develop new versions. For version 1.0, it took 11 releases to fix all the bugs (1.0.11), i.e. about 2 months, which is not much time, but it’s the exact delay that version 2.1 is going to have.
So, what am I talking about? I don’t know, this was just a useless rant.