ThoughtWorks: The new BodySnatchers
Imagine my surprise and delight to see my good friend Dan North write an article for that bastion of journalistic integrity, JDJ, and to see said article mentioned on theserverside.com. Now, Dan really is quite a great guy. He’s a jolly chap with a (what I thought) getting-stuff-working-is-cool-nevermind-the-bollocks-and-bullshit kinda attitude.
It turns out that the article is a thoughtful, serious and fairly articulate discussion about TDD, and some of the neato things you should/could be using it for.
This made me very suspicious. Dan seems to be the latest casualty in a mass reprogramming conspiracy that has been slowly gaining momentum. This conspiracy goes by the name of….ThoughtWorks!
This company, for reasons as yet unknown, delights in taking on perfectly sensible people, and turning them into perfectly sensible TDD/agile/fancylingo people. People who you could rely on to belt out decent code instinctively now pontificate about agile development and iterative top down development models and other such nonsense.
The list of casualties is on the rise too. I know of four people who have been assimilated so far. The training program at ThoughtWorks must be a modern day marvel of human engineering. It takes in as input fresh young bodies, and at the other end spits out those same bodies with their previous mental contents erased, to be replaced with one of the six possible variants of the MartinFowler template.
These Fowler bodies (fowlbots?) are then inflicted on an unsuspecting world, armed with blogs and a cultish obsession with TDD, refactoring, and agile development. They are equipped with stock success stories, 5 or 6 patterns that they will repeat in various forms, and an endless blogging capacity to ensure their seeds of evil are planted in the most fertile soil possible; legions of impressionable pretentious java developers.
Incidentally, I’m still friends with those evil people, and I will concede that they behave perfectly normally all the damn time. It does make my theory somewhat difficult to prove, but I’m onto them! They’ll crack one day and show me their true colours! It’s only a matter of time!
November 17th, 2003 at 11:00 am
public class DanNorth extends MartinFowler implements ThoughtWorker {
…
}
Some of us actually disagree with Martin (well, occasionally, and under our breath…. at home)
November 17th, 2003 at 11:01 am
I guess it’s no coincidence that you biled this piece on november 17th.
November 17th, 2003 at 11:58 am
Hani, start on Monday in Chicago please.
November 17th, 2003 at 12:25 pm
So why do you think they changed their habits… ?
November 17th, 2003 at 12:46 pm
wow I have such a big cock !
November 17th, 2003 at 2:18 pm
Martin Fowler is in EastEnders, what has he got to do with ThoughtWorks ?
November 17th, 2003 at 2:26 pm
What does this have to do with Marc Fluery? I’m confused.
November 17th, 2003 at 3:26 pm
Of course it doesn’t help that under their clothes they are covered in green scales.
November 17th, 2003 at 4:35 pm
It is obvious from this post that Hani is but a thoughtworks stooge. Or perhaps, a fictional character created by the ThoughtLessWorkers to spew forth bile and propaganda under a thinly veiled guise.
Regards,
Martina Fouler
November 17th, 2003 at 5:30 pm
Thoughtworks is evil, no question. They suck in the best people and make them into XP bigots with no mind of their own.
November 17th, 2003 at 5:31 pm
Furthermore, when all you have is XP, everything is a nail.
November 17th, 2003 at 6:33 pm
Would you prefer they worked for Andersons? IBM/PWC?
I’m sure they wouldnt…
:-)
November 17th, 2003 at 7:07 pm
The above post is a definite blog smell.
Did you ask why?
Are you gonna need it?
Can we help?
Is it agile yet?
Call us.
Fartworks
The art of heavy farting
November 18th, 2003 at 3:36 am
Y’all just jelous because you didn’t make it through the assimilation, oops, I mean recruitment process.
November 18th, 2003 at 4:31 am
Quote from a TW employees weblog….
“….I know, but we basically do tricky things in interesting ways…”
That is the problem as far as I am concerned. What ever happend to
“..doing tricky things in a pragmatic way…”
Why is it “cool” (and encouraged by TW) to overcomplicate things?
November 18th, 2003 at 9:55 am
I think the last caller hit the nail on the head about these guys. They do often tend towards over complication. They are very good in a very targetted role - mentoring a team new to XP - but leave them around too long and your organisation becomes a testing ground for their new “patterns”. (”Pattern” is ThoughWorks speak for any Thing That You Do - the Write-Some-Code-To-Do-Stuff pattern, the Use-Ones-And-Zeros-To-Represent-Data pattern, etc)
The myth of only hiring the best people seems to be coming unstuck too as they follow the path of the consultancy formerly known as AC and start shipping off mediocre people amongst the good and still charge them out at the same rate.
November 18th, 2003 at 10:34 am
I think the last caller hit the nail on the head about these guys. They do often tend towards over complication. They are very good in a very targetted role - mentoring a team new to XP - but leave them around too long and your organisation becomes a testing ground for their new “patterns”. (”Pattern” is ThoughWorks speak for any Thing That You Do - the Write-Some-Code-To-Do-Stuff pattern, the Use-Ones-And-Zeros-To-Represent-Data pattern, etc)
The myth of only hiring the best people seems to be coming unstuck too as they follow the path of the consultancy formerly known as AC and start shipping off mediocre people amongst the good and still charge them out at the same rate.
November 18th, 2003 at 11:24 am
Thoughtworks appear to be suffering the classic problems of large consulting companies:
1. The more staff you recruit, the lower average competence gets and the more pressure is placed on the ‘good’ guys. First line of their ‘values’ statement: Leveraging bright people OVER Making the most of moderate people. Really???
2. The larger your cost base, the more pressure to staff teams with as many cheap hires as possible while charging premium rates. Get the client used to the high fees by actually delivering value early in the assignment, then pull the good guy out and replace them with as many cheapos as possible. Good business to be in - bad of course if you’re part of the team suffering the injection of incompetence.
Looks like Androids have been replaced by TWATS (ThoughtWorks Advanced TechnologistS).
November 18th, 2003 at 11:38 am
Nice theory.
It doesn’t explain why many of the best people in this industry are choosing to join ThoughtWorks though.
November 18th, 2003 at 12:03 pm
Thoughtworks appear to be suffering the classic problems of large consulting companies:
1. The more staff you recruit, the lower average competence gets and the more pressure is placed on the ‘good’ guys. First line of their ‘values’ statement: Leveraging bright people OVER Making the most of moderate people. Really???
2. The larger your cost base, the more pressure to staff teams with as many cheap hires as possible while charging premium rates. Get the client used to the high fees by actually delivering value early in the assignment, then pull the good guy out and replace them with as many cheapos as possible. Good business to be in - bad of course if you’re part of the team suffering the injection of incompetence.
Looks like Androids have been replaced by TWATS (ThoughtWorks Advanced TechnologistS).
November 18th, 2003 at 12:06 pm
Many of the best people in the industry are choosing to join ThoughtWorks - really? Not my experience - I know a few people who’ve joined them recently and are nothing more than average. Don’t get caught up in the PR spin! Sure they’ve got some good people but probably no more than any company their size.
November 18th, 2003 at 12:07 pm
Many of the best people in the industry are choosing to join ThoughtWorks - really? Not my experience - I know a few people who’ve joined them recently and are nothing more than average. Don’t get caught up in the PR spin! Sure they’ve got some good people but probably no more than any company their size.
November 18th, 2003 at 12:09 pm
Many of the best people in the industry are choosing to join ThoughtWorks - really? Not my experience - I know a few people who’ve joined them recently and are nothing more than average. Don’t get caught up in the PR spin! Sure they’ve got some good people but probably no more than any company their size.
November 18th, 2003 at 3:53 pm
Many of the posters on this Blog are posting 3 or more times - really ? Its my experience too :-)
November 18th, 2003 at 4:35 pm
I worked with Fowler many years ago at Netscape (prior to the free release of MSIE). He actually put out quite a bit of code himself but this was of course before all this Agile movement.
November 19th, 2003 at 2:51 am
Not my problem - I press the post button once and three entries appear. Maybe the TWATS should be called in to debug it - though it’s probably beneath them as it’s an uncool production problem!
November 19th, 2003 at 3:08 am
It’s a bug in Roller - when you post it should do a redirect back to the comments page rather than a forward. That means that when you press F5 to refresh it reposts the data.
This is very poor programming - let this be a lesson to all you young web developers out there.
To whomever wrote the code… please tell me if you’ve written any code for credit card transaction processing sites - ‘cos I’d like to avoid them!
November 19th, 2003 at 5:50 pm
We really do stick to the stringent hiring practices. In fact, it’s probably the biggest reason TW is NOT a big consulting company. Today we’ve got 400 people worldwide. Run that figure up against the other companies named in these comments… We have a ways to go before the Dilbert Principle kicks in, I think.
And for the most part, I don’t see a lot of ‘cleverness-for-cleverness’ sake’ in TW design or deliverables. When design tricks are pursued, it’s largely in the interest of testing. *shrug*
November 24th, 2003 at 12:58 pm
It’s a bug in Roller - when you post it should do a redirect back to the comments page rather than a forward. That means that when you press F5 to refresh it reposts the data.
This is very poor programming - let this be a lesson to all you young web developers out there.
To whomever wrote the code… please tell me if you’ve written any code for credit card transaction processing sites - ‘cos I’d like to avoid them!
November 24th, 2003 at 12:58 pm
It’s a bug in Roller - when you post it should do a redirect back to the comments page rather than a forward. That means that when you press F5 to refresh it reposts the data.
This is very poor programming - let this be a lesson to all you young web developers out there.
To whomever wrote the code… please tell me if you’ve written any code for credit card transaction processing sites - ‘cos I’d like to avoid them!
November 28th, 2003 at 11:17 pm
If a pattern emerged in your refactoring, and your pairing partner didn’t see it, would it still make it into the build?
December 9th, 2003 at 1:24 pm
Extreme programming started out as a few sensible ideas, but has developed into a fanatical religion.
As a company founder and Java developer, one extreme programming idea I find totally unacceptable is that developers dictate to business side the development speed in an iteration. (E.g. Developer: “You can have any 2 features of the 3 you want this iteration.”) Expected team productivity needs to be negotiated between management and developers. (E.g. boss: “But I need all 3 features from you. I can code that fast: why can’t you?)
Quite frankly, productivity drops to a crawl when developers without domain expertise dictate to biz owners. In fact, XP actually rewards slow developers, by using underperformance to recalibrate volume of deliverables for the next iteration.
December 9th, 2003 at 1:40 pm
Extreme programming started out as a few sensible ideas, but has developed into a fanatical religion.
As a company founder and Java developer, one extreme programming idea I find totally unacceptable is that developers dictate to business side the development speed in an iteration. (E.g. Developer: “You can have any 2 features of the 3 you want this iteration.”) Expected team productivity needs to be negotiated between management and developers. (E.g. boss: “But I need all 3 features from you. I can code that fast: why can’t you?)
Quite frankly, productivity drops to a crawl when developers without domain expertise dictate to biz owners. In fact, XP actually rewards slow developers, by using underperformance to recalibrate volume of deliverables for the next iteration.
December 10th, 2003 at 10:22 am
Eliot,
Please do yourself a favor and reread your post again. I don’t think you intended to sound so ignorant.
December 29th, 2003 at 5:23 pm
Eliot,
You are the archetypical “pointy-haired boss.” You don’t “negotiate” productivity from a developer any more than you negotiate productivity from from a car assembly line.
May you please let me know the name of your company? I never want to work there nor buy its products.
April 19th, 2004 at 11:30 am
In what way is Martin Fowler a “scientist”? Where is his lab? What was his thesis on? Did he invent something or discover something? There are some nice people at CodeWorks, but many of them are completely up their own arses.
January 16th, 2005 at 9:27 am
Currently I’m working with some TW people. Two of them combined are about as good as an average programmer.
However, they have to be baby sat, which takes away my time. And since I’m the most productive (by at least 5x every time we measure it), the more of my time they use arguing over why we should do things differently, the worse their value proposition is.
I tell them to do stuff, and they argue that Pattern X or Practice Y tells them not to, so I say fine, have it your way. Then a week or more later they’re back, reporting that they’ve had a cunning plan, to do pretty much exactly what I told them to, but the reason is Pattern W or Z (never a different practice, curiously enough).
I don’t know if its the worst thing, but they have this totally stuffed up culture, that whoever commits first ‘wins’. They were working on the same critical class as one of our junior developers, and they totally refactored it. Problem was the junior developers work was then useless. And when I talked to them and told them it wasn’t very nice, and they should have communicated better with the guy they just laughed. So the junior developer had to spend an afternoon trying to put his fixes into their format, when it would have been much easier for them to have incorporated his work.
They are arrogant, rude, overpaid and underproductive.
I really have to wonder. They talk about how the XP/TDD/Agile practices make them much better and much more productive than they used to be. Well how bad must they have been originally if it takes two of them to equal one average programmer??!!
January 25th, 2005 at 4:34 pm
I think maybe TW might have been good at one time but, as someone here already said, they’ve lowered their standards somewhat. I recall a few years back there were complaints from self-proclaimed agile gurus in the UK who couldn’t believe they had failed the TW induction process.
However, within the next year, they had all re-applied and this time had been accepted. What happened there then?
As a postscript, the reason they were applying to TW was because their own business had failed - probably not the best advert for their skills
December 15th, 2005 at 10:11 pm
[Trackback] The discussion is continued…