Review: Team Foundation Server

Until a few months or so ago, the policy where I worked was to use Microsoft’s Visual Source Safe (VSS) for source control. Now, granted, VSS does have something of a reputation for corrupting your repository, which is generally considered to be an unforgivable sin for a source control system. That, however, never happened to me, and VSS wasn’t particularly unusable. However, my current employer has started using Microsoft’s newer source control system, Team Foundation Server (TFS), which, I can honestly say is the first source control system to ever make me wish desperately for the sweet release of a corrupted repository.

Many issues are related to the plugin, which crashes my development environment several times each day, and takes agonisingly long to do anything successfully (I have time to read the newspaper while waiting for my code to finish checking in. When checking in doesn’t cause it to crash). But, still…

Getting code out of the repository can be a problem. Sometimes, I only get the solution file and the directory structure (but no code files). Other times, I get the code, except for a handful of (as near as I can tell) random files which have been left behind. Granted, on rare occasions, I am able to retrieve the files I need.

Some more complex operations can get a little hairier. For example, I once spent the best part of a day fighting against TFS with the unreasonable goal of moving a folder. A colleague has been trying to set up daily builds, and TFS seems to have a peculiar habit of using old versions of some files for no apparent reason. Other files are unaccountably missing for the use of these builds.

There are random “features” a-plenty too. One time I deleted a project (from my local computer) that had a few changes, after which checking that project out from TFS it would come, but not have any source control bindings. I don’t think I ever bothered trying to deal with that; luckily, I didn’t need that project any more.

TFS takes the VSS’ working paths to stupid extremes with workspaces, creating a system that behaves according to a hierarchy of configuration-heavy and hard to determine rules. Certain actions, like retrieving a project you haven’t accessed before, can alter your workspace configurations without troubling to let you know about it. And why have workspaces in the first place? I’m yet to see any useful feature they add that wasn’t done better by, say, Subversion, a usable source control system, without an unmanageable mess of configuration and a nightmarish cacophony of bugs (in some situations, for example, which I have yet to isolate, it doesn’t put a project into the workspace it is logically supposed to go to, but place them… somewhere else, typically Visual Studio’s projects folder).

Over the last few months, every single developer on our team has spent at least a week fighting against TFS. That said, TFS has its advantages – for example, it’s quite possibly useful as a treatment for hypotension. Unfortunately, I can’t think of any others at the moment.

2009 Reading List

This is a partial list of the books I read in 2009, with some (short) thoughts on each. It’s partial, as I’m current 1200km away from my bookshelf (the horror…) and didn’t keep a list. Here we go:


Fermat’s Last Theorem (Simon Singh)
My favourite read of the year – Simon Singh takes us on a fascinating tour of the history of Fermat’s Last Theorem and of Andrew Wiles’ approach to proving it. One of its best attributes is its wide appeal – you don’t know any great deal of mathematics to follow it completely and enjoy the story, yet I don’t think it will disappoint enthusiastic mathematicians.

Prime Obsession (John Derbyshire)
Another book I’d highly recommend is John Derbyshire’s Prime Obsession, concerning the Riemann hypothesis. The book is more technical than Fermat’s Last Theorem, but nonetheless still perfectly approachable for a non-mathematical reader.

A First Course in Coding Theory (Raymond Hill)
I was set this book as a textbook for an introductory coding theory course this year, but I thought it was so well-done that I’m including it here.

Evolutionary Computation

An Introduction to Genetic Algorithms (Melanie Mitchell)
A solid and well-written introduction to some of the theoretical aspects of genetic algorithms, including genetic algorithms. Good for beginning researchers in the field (such as myself!)

A Field Guide to Genetic Programming (Poli, Langdon, McPhee & Koza)
Like Melanie Mitchell’s An Introduction to Genetic Algorithms, this is a theoretical treatment – you won’t learn how to implement genetic programming here. Rather, it is a tour of several aspects of theory that one should learn to better understand the literature. Even better, this book, written by some of the top genetic programming researchers, is available for free download (a low-cost printed paperback is also available). One thing that does attract some confusion: this is a book about genetic programming, not genetic algorithms.

Essentials of Metaheuristics (Sean Luke)
Unlike the introductory evolutionary computation books in this category, Essentials of Metaheuristics is a very pragmatic – full of pseudocode samples and the sort of information that you’d actually want to implement genetic algorithms, genetic programming and other forms of metaheuristic searches. Also available for free download, and a print version is coming (for now, the online version continues to be updated – I started with version 0.1 and it’s now up to version 0.6).


Wonderful Life (Stephen Jay Gould)
Wonderful Life comes in as a close second to Fermat’s Last Theorem as my favourite read this year. Stephen Jay Gould takes us on an enchanting and ever-fascinating tour on the fauna of the Burgess shale. This book rather dramatically changed my understanding of evolution – a must read.

The Greatest Show on Earth (Richard Dawkins)
Full review.

The Canon: A Whirligig Tour of the Beautiful Basics of Science (Natalie Angier)
While some reviewers expressed distaste for the rather verbose language of the book, I didn’t find it troubling – it’s certainly there, but I didn’t find it detracted from the book. The Canon is a well-written and interesting introduction, and perhaps can help ameliorate some of the “it’s-too-hard” attitudes that some people have towards learning science. That said, when I was reading it on the bus, a nearby passenger asked me what I was reading and, on seeing the cover, remarked that such a book was much too complex for her. I can only hope my response helped convince her otherwise!

Six Easy Pieces (Richard Feynman)
A light and enlightening glimpse into physics.

The Weather Makers (Tim Flannery)
Good, but left me wanting more (though that, I think, is also a plus).

Science & Society

<a href="Climate Cover-Up (Hoggan & Littlemore)
Climate Cover-Up is a damning look into the political motivations of global warming denialists. A must read!

Unscientic America (Mooney & Kirshenbaum)
Full review.

The Double Helix (James Watson
Well-written, but I couldn’t help feel that large parts of the narrative seemed rather (ahem) absent.


The Bromeliad Trilogy: Truckers, Diggers, and Wings (Terry Pratchett)
A wonderfully imaginative and humorous series of books, The Bromeliad Trilogy follows a group of Nomes as they come to understand their place in the universe – which, it turns out, is much larger than The Store in which they’d lived all of their lives.

2010 Reading List

Here are a few books which are right up at the top of my queue for 2010:

Review: Unscientific America

Unscientific America is not a bad book. It’s certainly well-meaning, considering an important topic, and with a sometimes thoughtful discussion. The unfortunate part, however, is that large chunks of the book aren’t as well thought out as others – many of the examples given really do not support the thesis.

The oddities start out, of course, with the case for why Pluto matters. I mean, if an evil cabal of astrophysicists had gathered and plotted all the evil schemes they could think of to get the American public interested in hydrostatic equilibria and Kuiper belt objects, they couldn’t really have done any better than how things turned out. Mooney & Kirshenbaum (hereafter M&K) ask whether the scientists involved considered the public outcry. However, in The Pluto Files, Neil deGrasse Tyson points that the Hayden Planetarium had a display of the solar system that included Pluto amongst the Kuiper belt objects (instead of the planets) for nearly a year before a sudden controversy sprang up, prompted by a New York Times article. Barring perfect hindsight, who’s to say that an opinion poll before the media manufactroversy would have found that people were any more bothered by a potential redesignation of Pluto than, say, thiomersal (that’s thimerosal, for US readers) in vaccines (before that “controversy” sprang up, anyway), or the health risks of dihydrogen monoxide?

My concerns go somewhat deeper, though:

People were aghast. Not only did they recoil at having to unlearn what they had learned as children, and perhaps the chief thing they remembered about astronomy.

A Very Modern Major-General
I know the scientific names of beings animalculous!

Neil deGrasse Tyson’s The Pluto Files is not a defense of Pluto’s status as a non-planet. It is an argument against the general idea of teaching the solar system as My-Very-Excellent-Mother-Just-Served-Us-Nine-Pizzas or My-Very-Excellent-Mother-Just-Served-Us-Nachos or My-Very-Exciting-Magic-Carpet-Just-Sailed-Under-Nine-Palace-Elephants or whatever. Learning mnemonics might well equip you to be a very modern major general or win “Who Wants to be a Millionaire” but hasn’t actually taught you anything about the solar system. Rather, isn’t it better to teach about the different families of solar system objects – the rocky inner planets, asteroids, gas giants, and the icy Kuiper belt objects? How do they differ? How are they similar? Why is the asteroid belt rocky whilst the Kuiper belt is icy?

Could the fact that many people (including, to be perfectly frank, me) learnt in school that science was a sort of stamp collecting be part of the reason for the disconnect between science and the public?

You can know the name of a bird in all the languages of the world, but when you’re finished, you’ll know absolutely nothing whatever about the bird…
So let’s look at the bird and see what it’s doing – that’s what counts. I learned very early the difference between knowing the name of something and knowing something.
-Richard Feynman

Later, M&K look at the science wars – the discourse between science and postmodernism and the Sokal affair, arguing that the science wars were an unnecessary distraction whilst the right-wing anti-science forces grew. Now, granted, I wasn’t paying much attention to either science or postmodernism when I was 7, but is it really the case that if only Alan Sokal hadn’t been worrying about postmodernism he’d have been able to confront the religious right, or delay media conglomeration? The idea that engaging postmodernism was an irrelevant sideshow because the humanities have very little impact on modern culture anyway was odd, to say the least, in a book that often refers highly to C.P. Snow. They also take issue with the “academic landgrabs” of, say, E.O. Wilson’s book Consilience, or certain aspects of evolutionary psychology – and, whether or not these are good points, they’re rather off the topic at hand. Apparently, if you’re a scientist, doing anything in the public sphere other than communicating science and combating The Republican War on Science is forbidden.

One of the major arguments for the chapter concerning the problems for scientific communication on the internet is the victory of climate change denialist blog “Watts Up With That” in the Weblog awards. Maybe this is just one aspect of the blagohedron which I’ve been neglecting, but I’m simply not sure how much influence those awards actually have – Wikipedia suggests that they’re covered by mainstream media organisations, but I can’t say I’ve seen them having any great web presence outside voting season. The methodology is odd too – each person can vote each day. I actually visited Watts Up With That during the period, and it was pretty much coated with banners urging visitors to vote for it in the awards throughout. The most you could really say is that Anthony Watts was somewhat more successful at getting his visitors to troll some internet poll than PZ Myers.

If you want another popularity contest with a flawed methodology, why not use try Google Trends Google Trends?
Google Trends: Pharyngula vs Watts Up With That

Now, it is certainly true that the blogosphere is not going to produce something like Cosmos. Pharyngula is not Cosmos, nor is Astronomy Cast. But you know what? They’re not meant to be Cosmos, either. And that’s OK. Over at Pharyngula, PZ Myers has managed to attract a large audience (not least by being, as M&K describe it, an atheistic clearinghouse), who are then willing to read and able to understand some very detailed articles on developmental biology.

Meanwhile, Dr. Pamela Gay and Fraser Cain’s Astronomy Cast manages to give their audience a far more detailed and interactive journey through the universe than Cosmos could, and are equipping amateur astronomers to explore and understand the universe. I’m willing to bet that if you did a survey, you’d find that a larger percentage of Astronomy Cast listeners went out and bought a telescope (and continued to use it!) after listening to Astronomy Cast than did Cosmos viewers, admittedly on a (much) smaller scale. Despite the lack of the mass media scope of an international TV series, they are nonetheless creating and equipping a community of amateur scientists and science enthusiasts who can then go out and make good science a priority from the grassroots level. And that’s no bad thing.

These are really just a few examples – and, in a 132 page book, these sorts of extended distractions from your central thesis really do take away your ability to actually address these issues. I couldn’t help but feel, at times, that M&K went into this project with a bunch of grudges – Pluto, PZ Myers, the science wars, and others – and that the divide between science and the public was an excuse for writing a book to air all of their pet grudges. It’s a distraction (as are the endnotes, which are half the length of the book and yet they’re not even indicated in the main text).

There were parts of the book that I did like – the discussion of the changes in the media in the last few decades was probably my favourite. There are insightful points scattered in, and the writing is excellent throughout. Despite my criticisms, I think it’s probably worth a read, so long as you’re interested in the topic.

Review: The Greatest Show on Earth

[cross-posted onto Young Australian Skeptics]

In previous books, Richard Dawkins has looked to promote new perspectives on natural selection, and at barriers to the understanding of evolution. In The Greatest Show on Earth, however, he looks at the evidence for evolution. You can read extracts from chapter one and chapter two online.

One of the book’s major strengths is the level of detail that Dawkins goes to in explaining difficult concepts and interesting experiments. For example, in the chapter on embryonic development, we learn how (well, one of the ways) in which mutations in the genome actually affect what a cell can do. This level of detail is a recurring feature. For example, we are treated 14 pages of glorious detail on Richard Lenski’s E. coli experiments, much of which I personally hadn’t picked up on when the story broke.

Dawkins considers molecular evidence to be the strongest line of evidence for evolution, and so the fossil record is just a bonus. He clearly outlines the problems with claiming that “gaps” in the fossil record make an argument against evolution. As far as fossils are concerned, the focus is on some of the more recent finds – and what a selection he has to choose from! He discusses tetrapods, whales, manatees, pinipeds (seals, sea lions & walruses) and turtles. It’s certainly a daunting prospect, to be claiming gaps in the fossil record, in the face of just these recent fossils. The discussion of homology was strong, not least for explicitly reverting to a pre-evolution definition of homology.

I particularly enjoyed the sections on development and molecular evidence – not least because of my unfamiliarity with these areas, and thus there was plenty for me to learn. I’m somewhat hopeful I’ll manage to work some self-organising systems into my doctorate somewhere.

Maybe I’m just a fan of cladograms, but I feel a couple of high-level cladograms – one of vertebrates (with a particular focus on the varieties of fish) and another of sauropsids – would have been worth a thousand words or so each. Another sour note was the mention of Andrew Schlafly in the discussion of the Lenski experiments, which mostly reeked of schadenfreude. I would have also avoided including any Haeckel drawings to illustrate any points – you just know that Haeckel’s crustaceans are going to give the history-deniers an irrelevant point to scream about whilst avoiding substantive discussion.

The depth of description – of the experiments, the discussion of human ancestry, and of the details of molecular & developmental biology is magnificent. As we’ve come to expect from Dawkins’ books, the writing is flowing and understandable, even on technical topics. And, as someone who had constantly had to maintain both my place in the main text and in the footnotes whilst reading The Selfish Gene, I was glad to see that the footnotes are at the bottom of each page, as opposed to at the back of the book.

Of course, Jerry Coyne published Why Evolution is True earlier this year. Is it worth reading both? The answer: yes, emphatically yes! Both books have very different lines of evidence on which they focus – Dawkins, for example, is highly focused on experiments, whereas Coyne focused more on observation in nature and the fossil record. Many lines of evidence, or topics for discussion, are only in one or other, or emphasised differently. There’s also a distinct difference in how they discuss creationism – Dawkins only mentions it occasionally and tends to give the evidence for evolution on its own merit (except in the chapter on biogeography, really).

So, yes, go and buy it. More importantly, go and read it!