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.