in reply to A Programmers Dilemma
It depends entirely on the situation. If the commercial project almost solves all my problems, but just 1 or 2 mintor details wouldn't be solved, I'd take option 1.
If the commercial solution misses too much of the problem, I'd go for the open source solution. If that solves most of the problems, and the development team of that solution is willing to add the features I'm missing on short term, I'd go for option 2.
Dependent of the amount of features I was missing, if the open-source development team can't implement the features I want on short term, I'd go for option 4 (contribute to the open source solution), or if there are too many things that don't fit, I'd take option 3.
Option 5 would only be my choice if nothing really solves the problem, and only a minor detail would be solved by either solution.
just my $0.02
Jouke Visser, Perl 'Adept'