Honestly, who can still get 2k worth of software approved these days? I feel his pain. What are the best free (not including my time) alternatives?
With TeamCity being free for up to 20 users and 20 configurations, I did a small trial across a couple projects at work. Once people saw what it did over CCNet, it was *simple* to get the money for us to upgrade to an Enterprise license.
It's soooo much easier.
I've used Hudson, TeamCity, and cc.net and I recommend them in that order. We just recently set up a hudson farm spanning across amazon windows cloud servers. It took us window noobs a while to get ssh tunneling correct, but getting a slave maching running in hudson was quite simple.
I've also used FinalBuilder, but probably wouldn't recommend it over nant or Rake. There are just too many open source examples to pull from with those.
Your point is well taken however. A better example would be cache engines over memcache. Some of the commercial products are easier to setup and more importantly analyze and maintain.
I totally agree and, as Casey said, Team City is free (up to a point). Some of the guys on our project got tired of certain aspects of our old CI and set up a Team City CI. Even the free version was markedly better than what we had, though we're shelling out some cash for a better license now :)
Convincing management that you're spending money to save money isn't always easy, though.
Indeed, often free tools adventures cost much more than commercial solutions. Yet people are blind and deaf when they hear a word free. I am not saying that free tools can't be in fact a better solution, I am saying that people don't even consider commercial tools and the money they save by using them.
FinalBuilderServer kicks ass. I'd really like to see an FBS-TeamCity face off.
No Git support for FBS or FB, though. Pity.
I agree that even thought Open Source Tools are great, there are really few open source UI that are worth your time. ease of use (or install )is something that most open source projects forget that is what keep them from the mainstream, even when they do great things.
While I agree with your sentiment I feel the post is a little idealistic.
For many dev shops tooling budgets are small and the approval process is long. IT managers are reluctant to purchase anything without at least a proof of concept and while developer time is a cost it is a sunk cost which they will be paying regardless - it is much easier to fudge these numbers (i'm not saying it is right to do so) than get approval for a new tool - especially if the developer can get it done in a few hours rather than days or weeks.
Furthermore, companies don't always want to fork out money for the nicest tool - one that gets the job done for free (but is a little uglier or lacks a few more advance features) is just fine.
I guess it depends on the shop you work in, but I for one know that I will be spending 2010 researching free alternatives to the tools we really need :o) Happy new year!
I agree with everyone who has said Hudson, particularly John Teague. CruiseControl and XML-configured systems tend to lend themselves to guru-ism which is bad. I've worked with Hudson, TeamCity, CC.Net, and CC and I also recommend them in that order. Hudson works very well for configurations that are NOT in .NET or Java, particularly C and C++. Believe it or not some still exist, and the practices work just as well there!
I think I would have titled this post "the Fallacy of Free Tools"...for us, we prefer OSS tools, even when a compelling pay alternative exists. Too many times we've waited months for patches/fixes to come out. With OSS, we generally get larger community support, plus the ability for us to patch if need be.
But for some tools (VS, reporting tools, chart tools), either no compelling OSS alternative exists, or the price can be built into the contract.
I totally agree with you here. Especially in the case of TeamCity ... the value it provides given the short setup time is incredible and blows every OSS toolchain I've encountered out of the water (cost/benefit wise ... I've seen toolchains offering more value - based on the particular project business of that company - but they were heavily customized and massively complex).
Cheers,
-Ingo
I don't understand the free vs. non-free argument. It seems like more of a rhetorical technique than an engineering one, whether argued by either camp.
IMHO your shop should determine what it needs, see what alternatives can meet the needs, then do an honest ("my time is money but my money is also money") cost benefit analysis to determine how to solve the problem. Nothing fancy; just back of napkin is probably good enough.
In our case we went with Hudson because we wanted:
- a Windows box for C++
- a Linux box for Java and Ruby
- a Mac for Objective C
- something that was Git-friendly
- the same CI system on all the machines
It's reasonably easy to set up and maintain, met our requirements, had a bunch of "nice to have" plugins that went beyond our actual requirements, and we're pretty happy with it. YMMV.