May
07
2008
Castle project is a great .NET enterprise application framework. It helps us develop .NET applications and web sites by providing the plumbing and making it easy to test the most important parts of the system. I’ve decided to build a demo application with the Castle project for an internal training session, to show how easy it is to work with this framework and to demonstrate the best practices. I will post the tutorial in parts on this web site as I develop it. In the first post, we work on the object-relational mapping with ActiveRecord and write unit tests for the database mapping layer. Continue Reading »
May
05
2008
HTTP Sessions allow us to develop web applications as if they were running on a desktop machine, making the web so much more useful. Although HTTP is a stateless protocol and there is a lot of work involved in providing this abstraction, web servers make it very easy to use — perhaps too easy. Taking a quote from Spiderman, with great power comes great responsibility. That is why misusing HTTP sessions is probably the number one obstacle to building scalable web sites today. Here are some tips how to consume HTTP sessions responsibly. Continue Reading »
May
03
2008
Alt.NET folks are organising an informal meeting after my Castle session. The first Alt.NET beers event will start at 8:30 in the Crown pub, five minutes after Skills Matter offices. For more information, see Seb’s blog post about the Beers event.
Apr
28
2008
One of central agile programming ideas is to deliver frequently and get feedback early. To get the full benefits of this approach, it is not enough just to make sure that we deliver often and seek feedback — it is extremely important to plan our deliveries correctly as well. If the deliverables are not complete in the sense that they can really be used in production, then the feedback is not as relevant as we would like it to be.
Here is a situation I have seen a few times more than I would have wanted: the team and the clients split the whole project into several phases that will be shipped every few weeks; early deliverables mostly provide the plumbing for the later ones, and have only enough user-interfacing functions for the plumbing to be tested functionally. The clients set up and play with each new release. They dutifully give their feedback and participate in testing each time. When the whole thing comes together on the end, it turns out that the system still requires a lot of changes to solve the problem that it was intended for — the iterations and customer feedback failed to provide the directions. Continue Reading »
Apr
21
2008
I have been using the Castle Project for about two years now, and it is definitely one of my favourite tools. It is truly a great example of how a good application framework should be written. Although all the concepts that it provides have been around for a while and became popular with other frameworks like Spring for Java or Ruby on Rails, the Castle Project brings them together in a very effective way and makes enterprise .NET development significantly easier. Continue Reading »