The application I’m developing will be a stand-alone client application. Nothing fancy and business-critical, so RavenDb might be overkill, but I’m attracted to the ease of use. The application will be installed by non-technical users, so I’m not too fond of the idea of running RavenDb as a service. This will require the users to enter their Administrator password, which could frighten them. I could choose the embedded option, but as I don’t have Visual Studio 2010 yet, I can’t

In my previous post, I explained how I went about starting with RavenDB. Now I want to continue my switch from NHibernate to RavenDB. The GetAll method was fairly simple. I also have a GetOneById method in my BaseRepository, but, as I’m not using it right now, I decided to remove it (YAGNI you know). Then, I changed the my BaseRepository to enforce the T to be a BaseEntity: public class BaseRepository<T> : IBaseRepository<T> where T : BaseEntity I thought

The application I’m writing isn’t in a very far stadium yet, but I do have some implementation of repositories using NHibernate. Now I want to switch to RavenDB. So I downloaded RavenDB (the latest build at this time – build 81) and unzipped it. I wanted to follow the RavenDB Hello World tutorial, but soon found out its built for .NET 4. I don’t have .NET 4 or Visual Studio 2010 yet, but luckily there’s a client for .NET 3.5.

I’m developing a stand-alone client application that will be able to store a fair amount of data. No client-server stuff, just plain old open-the-application-change-the-data-save-close. I need a good way to store the data and, traditionally, developers look at SQL databases for data storage. But I’m thinking this will make it overly complex. A search for alternatives starts. The application is for the administration of a speech therapist. It should have the patients, appointments, documents, etc. But also more complex business

Using xsl-fo to generate PDFs, and you want to display the **pagenumbers **like ‘page 3 of 10’? It isn’t too hard. Just add this to the footer of your pages: Page fo:page-number of <fo:page-number-citation id=”last-page”></fo:page-number-citation></fo:page-number> Then, make sure you have the following at the end of your document (so, on the last page): <fo:block id=”last-page”></fo:block>  

Okay, I finally got Git to work. Here’s the necessary steps, after having installed msysgit and TortoiseGit. First, create the local repository. You’ll get a notification that an empty repository was created. You can now use the repository to track your changes. But of course, you want to push this stuff to a server, as backup, because other people will collaborate on your project, etc. I’m using Unfuddle so I’ll concentrate on that (check out Git for Windows Developers for

Git can be quite confusing in the beginning, especially coming from a subversion background. But once you’ve got it running, you realize it’s quite easy:install msysgitoptionally install something like TortoiseGitnow you need to create an SSH key, which is explained on the TortoiseGit site for Linux, but for Windows, it’s a little harder:open command prompt and navigate to where msysgit is installedenter the following command: ssh-keygen.exe -t rsa(use /? to see more info)enter your passphrase and the location to save

Looking for **a good F# tutorial **to figure out what the hype is all about? Check out the excellent F# series on Kevin Hazzard’s blog. Maybe a little out-dated when you’re using the September 2008 CTP of F# (there’s no add-in anymore, and the command mentioned in part 2 has a different name – just search for ‘send’), but finally a tutorial that explains it step by step.

WPF creates a whole new range of possibilities, but you can often run into trouble when trying to combine it with NHibernate. NHibernate can’t handle ObservableCollections*, which is a quite handy feature of WPF. Furthermore, what to do with the good databinding capabilities of WPF?Shawn Duggan provides a nice solution using the **Model-View-ViewModel **pattern here. Check out this recent article by Josh Smith for a good introduction of the MVVM design pattern (with an easy-to-follow example). it is possible to