The single worst technical draft, ever.

I am stunned. Utterly stunned. In fact, I was so stunned when I first saw this that I was actually lost for words, briefly.

Never in all these years have I seen a document so badly written. It’s one thing to lack polish and finish, it’s quite another to marry awkward incoherent embarrassing style with obscene content, and have the gall to claim it’s some kind of technical document. Not even the early jboss group made-in-india manuals come close to this abysmal quality.

So, what is this inspired work of under-appreciated genius? It’s the first two draft chapters for the Geronimo developer notebook (you can find them on today.java.net).

Where does one start, really? Perhaps some choice quotes to help set the mood.

- but it’s no worse than those movies with flying cars that take place only 20 years in the future (Page 1)
- It’s also a poor excuse to make a reference to the geek-bible, The Hitchhiker’s Guide to the Galaxy. (Page 1)
- … and tons of text will scroll by (Page 2)
- Now take out your number 2 pencil and write down the complete path to that directory (Page 2)
- Give yourself a pat on the back. (Page 2)
- Maven is a pretty exciting piece of software (Page 2)
- If you are in Windows, you can easily use WinZip to extract the file (Page 3)
- CVS is older that the hills in terms of open source software, so we are going to assume basic CVS knowledge in this section. (Page 5)
- Good patches have been known to get you a free beer or two and some time with the developers at any of the conferences we speak at (Page 5)
- Downloading the dependencies is unavoidable (Page 6)
- Jane, stop this crazy thing! (Page 10)
- get your number 2 pencil ready then jump back (Page 10)
- The test suite should be gloriously piling dots down your screen (Page 12)
- Oh the beautiful dots of JUnit test cases (Page 12)
- The rest of the examples in this book all use Maven. Trust me, it is a lot simpler. (page 13)

This is all chapter 1. Chapter 2 is more (and often much worse) of the same.

The maven obsession is rather troubling. It’s almost as if the author had just recently discovered it, and is, at the time of writing, blissfully unaware of any of its downsides. For one thing, he’s very big on remote repositories, whereas conventional wisdom would state that the ‘right’ way to use maven is with a local repository. As if that wasn’t offensive enough, he frequently just loses the plot altogether and proclaims how exciting it all is, and gets sidetracked gushing about maven for no reason whatsoever.

Now, I realise that the purpose of these O’Reilly developer notebooks is to be friendly and casual, but really, in this case it’s downright offensive. We have references to Johnny Carson, noting things down with pencils, jokes that fall flat and elicit nothing more than a wince or grimace at best.

There’s a huge difference between being engaging and informal and talking down to people like a bizarroworld mixture of American pop culture, idiot grinning, and condescending twatiness. These chapters seem to largely ignore that difference, sadly.

Setting aside the obscene tone of the whole thing, and how every single sentence is in need of some very serious editing, the actual content itself is abysmal.

For example, in one chapter we’re told that there are no deployment tools because the Geronimo folk take security very seriously, and those pieces aren’t done yet. Yet, shortly after that our dear author starts cooing and oohing at the fact that Geronimo can download random wars off the internet and install them.

I am also unable to decipher who the target audience for this monstrosity is. Is it totally clueless developers, who need to be told to use winzip to unpack files? Is it pretentious but spastic opensores fucktards, who know all about CVS but need to be hand-held through setting environment variables? Is it average Americans in the midwest who can only relate to things through TV references? The only conclusion I’m forced to draw from the content is that the chapters are not aimed at all. Someone just thrashed about wildly in the vicinity of a keyboard and hoped for the best, which is far, far, from good enough.

Perhaps this is why O’Reilly is such a prestigious publisher. They have the uncanny ability to turn absolutely worthless incomprehensible frothing drivel into something mildly inoffensive. Hats off to them if they manage to salvage anything out of this train-wreck though.

Fleurites rest easy, you have nothing to worry about it.

39 Responses to “The single worst technical draft, ever.”

  1. First post Says:

    mmm…looks exciting, I just finished downloading those chapters, will read that in the train.

    Excellent bile. :o)

  2. Toy App Maker Says:

    Good, because we all write code with a pencil.

    For fuck sake, I can’t even remember the last time I used a hand tool for writing other than for signing my name.

    I bet he’s the same kind of guy who clogs ups the printer by printing off a weeks worth of emails or a 200 page reference pdf so he can take it back to his cube to read it.

  3. David Blevins Says:

    Hilarious. Glad to see I could supply you with good bile material–the recent blog on mailing lists seemed a little too Jerry Seinfeld for a true bileblog.

    On deploy security, the first section refers to others deploying an app to your server from across the internet, the second refers to you deploying to your own local server. Obviously, the two have different security concerns in terms of who can install apps on the server (you vs. some stranger). I’ll definitely spell that out more.

    BTW, anyone else wishing to give equally critical feedback when the text goes through the actual review process send me your info at dblevins@visi.com.

  4. Maven Sucks Says:

    Damn it. I wanted to play with Geronimo, hoping that it’s classloader isn’t as braindead as the JBoss classloader.

    But, last time I had to use mavin, I swore I’d never touch it again. I guess I won’t be using Geronimo any time soon.

    If the geronimo people really want people to use their software, they will give people a download with all dependancies right in the file.

  5. David Blevins Says:

    There is a section on Ant and a section on using no build tools at all aside from javac, jar, and java commands. The “No Tools”, “Ant”, and “Maven” sections all work with the same app so you can see how to do the same thing in different environments.

  6. David Blevins Says:

    Oh, and all the dependencies do come with the download. Also the deployer.jar and server.jar are executable jars that use the manifest classpath so you don’t need to setup your classpath variable at all to run or deploy apps. To compile, you only need the geronimo-spec-j2ee.jar.

  7. David Blevins Says:

    Oh, and all the dependencies do come with the download. Also the deployer.jar and server.jar are executable jars that use the manifest classpath so you don’t need to setup your classpath variable at all to run or deploy apps. To compile, you only need the geronimo-spec-j2ee.jar.

  8. David Blevins Says:

    Oh, and I’m also a tedious windbag.

  9. Maven Still Sucks Says:

    So the book requires Mavin, but Geronimo doesn’t? OK, I’ll just trash the pdf’s and wait until someone else writes a book about it that doesn’t require mavin.

  10. Maven Still Sucks Says:

    I thought Paul Graham was a tedious windbag…

  11. Anonymous Bastard Says:

    For fuck sake, I can’t even remember the last time I used a hand tool for writing other than for signing my name.

    If you think real hard, I’m very sure you can remember those lonely nights.

  12. JJ Says:

    Hani uses maven and commons-logging!!!!

    Hani is deliberately keeping people off the software he loves.

    I know he uses maven all the time. He just loves it and wants to be the only maven user under the sun. It’s a big conspiracy.

  13. Stupid Says:

    but seriously why spend the time creating Geronimo ? I mean isn’t every body and their mother moving off of EJB’s and on to the ‘LiteWeight containers’.

    I still can’t see any value beyond Webworks2 - Velocity - JDBC but that’s just stupid me.

  14. Conspiracy Theorist Says:

    Secretly maven, commons-logging and JBOSS are Hani’s children. He is engaged in a cynical exercise in creating crap in order for him to have something to blog about.

  15. Anonymous Says:

    David, do you even understand the security implications of how Maven downloads dependencies when run with the out-of-the-box settings? From your comments here it appears not. You shouldn’t be recommending people use Maven in that way.

  16. Haji Quest Says:

    P3RSONALY I FIND IT QUIET REFRASHNG 2 HAEV A LADE BAK 2N3 AVALEABLE IN THIS DOCUMENTATION1!1! OMG WTF LOL MOST OF DA JAVA(TM) INFORMATION IS FUL OF ACRONYMS AND (TM) SYMBOLS ITS LIEK R3ADNG SOMATHNG FROM IBM IN TEH 80S WITHOUT AL OF TEH USEFUL INFORMATION!1!1!1 WTF I SAY GOD BLES11111!1 OMG WTF 2 THIS AND HOPAFULY IT WIL G3T OTHER JAVA(TM) AUTHORS 2 ADOPT THIS REFRESHNG INFORMAL STYLA!1!1

  17. What have you done with the number Johnny Five? Says:

    Please forgive me my poor English. I am from Punjab where we have no Java books.

    I am wanting to learn the Geronimo, but I finding these book in bad form. I am not understanding word of it. It making no sense to me. I guess I will have to go asking question on Geronimo mailing list. Please for to help me understand any pointers are thankful very much am I for your helping in these circumstance.
    God bless thank you very much.

  18. Midwest Fucktard Says:

    Just printed out a copy of the pdf and am now reading it as I deficate. Isn’t WI-FI great?

    Uh oh no toilet paper!

    I guess it’s good for something after all.

  19. Anonymous Says:

    “made-in-india abysmal…”

    What’s truly funny about all this is that
    Indians are the “Indo” in Indo-European peoples
    and languages and ’swastika, laltika, shubhtika,
    arya, aryan’ are all Hindi words. (and holy
    symbols in all ancient Indo-European cultures
    and still holy in India). In fact, the Nazis used
    the swastika (the german word is ‘hakenkreuz for
    hooked cross) and specifically spoke Hindi while
    referring to that symbol, _because_ it was used
    in India.

    By all means bring race into it if you want to.

    But what’s really funny is that a Semite who
    writes right to left is making fun of
    Indo-Europeans whose language (sanskrit) is
    Proto-Indo-Aryan and at the very base of the tree
    from which German and English are themselves
    descended.

  20. Neel Mukherjee Says:

    Swing/EclipseRCP+Bright Side Framework/PORMI+Hibernate.

    Who needs a bloody Appserver anyway??

  21. Richard Monson-Haefel Says:

    David Blevin’s showed me some early material for this book that was really funny. It seems that the humer as been watered down a lot which is a shame because David can actually write pretty funny stuff. The material was very useful too, which is rare these days.

    I blame this on editing - the desire not to offend anyone has resulted in material that is useful, but a bit dorkey. David will do better if the editors leave him alone and let me write in his natural style. I think this is a case where O’Reilly has deminished the quality of a book rather than improved it.

    Having said that, I will tell you that the very same editor and company have turned some of my worst stuff into really nice reading material. I wouldn’t be successful without them - I just wish they would apply the same skill to David’s book.

  22. Anonymous Says:

    Oh yeah, One more thing.

    Those cotton underpant, which you wear to protect your modesty are mostly “Made in India” or made with Indian cotton.

    If they too were crappy, God help you.

  23. Anonymous Says:

    Hey Richard, no taking sides here - remember, you just changed jobs, right?:)

  24. Anonymous Says:

    Enough about the “made-in-india abysmal…” already. Don’t take fate too seriously, David Blevins certainly doesn’t.

  25. Anonymous Says:

    Swastika,

    I remember a story from my uncle who definitely is not a German. A friend of his (who is a Jewish) were terrified to enter his house just because he saw that swastika symbol. He (the Jew) thought that my uncle was a member of neo-nazi. That, until my uncle explained that swastika is actually a hindu symbol. So, the jew smiled, and happily entered my uncle’s house to eat some vegetarian meals.

    Are the jews really still traumatized by the killing that happened to minimal fraction of their population?

    Sorry for my bad english. I’m from Saudi Aragia, where migrant workers (especially the women) are sent to jail if they get pregnant because their employer raped them.

  26. Homam Alsayed Says:

    “… where migrant workers (especially the women) are sent to jail if they get pregnant…”

    Oh I didn’t know that in Saudi Aragia some males get pregnant.

    And where is that, some street in Jakarta, Indonesia? This is where the IP 202.155.37.130 is located.

    Talk about a hopeless case of necrotizing inferiority complex.

  27. Anonymous Says:

    FUCK The Hitchhiker’s Guide to the Galaxy! It’s the worst FUCKING book I’ve ever read! Every time I hear some grinning dingleberry make a lame in-joke about it I want to FUCKING BREAK SOMETHING!
    YAAAAAAAAAAAARGH!

  28. boxed Says:

    Anonymous (130.91.66.1): “made in india” means it is made inside the borders of the country India. Nothing more nothing less. Your weird jump to talking about race is just.. well, weird. Oh, and “aryans” are an indian people that the nazis (illiterate as they were) though were a nordic european people. The pale skinned people of europe have no significant aryan genetic heritage. The next time you hear a neo-nazi proudly speak about his “aryan descent”, giggle to yourself.

  29. Chris Marshall Says:

    I preferred David when he did his street magic.

  30. Freudian Slipness Abounds Says:

    Richard Monson-Haefel: “David will do better if the editors leave him alone and let me write in his natural style. ”

    If I read this correctly you’re saying that David would do better if the editors let you write the book?

  31. Ian Pojman Says:

    I had really hoped geronimo would be good. this only validates my doubts.

  32. Clown Puncher Says:

    Geronimo–the Indian*–was also known as Goyathlay which literally means “one who yawns”.

    Ironically, I was the one yawning when I read the draft. ZZzzzzz

    *Native American, lest we get off on another nazi cotton underwear tangent again.

  33. More Bile Material Says:

    Bile this if you will.

    http://www.syncedit.com/jedit_details.html

  34. Anonymous Says:

    >Oh, and “aryans” are an indian people that the
    >nazis (illiterate as they were) though were a
    >nordic european people. The pale skinned people
    >of europe have no significant aryan genetic
    >heritage. The next time you hear a neo-nazi
    >proudly speak about his “aryan descent”, giggle
    >to yourself.

    Indians are _genetically_ indistinguishable from North
    Europeans. They speak the same languages and are the same
    people. (”Indo-European peoples/languages”). They have the
    same genetic diseases (celiac sprue). Sanskrit is at the very
    base of the tree from which German and Latin itself are
    descended. They were spoken by the same people who dispersed
    form Central Asia into Europe and North India.

    Don’t confuse skin color with genetic, cultural ethnic and
    religious history. Skin color changes very quickly and there
    is immense variation even within all Indo-European peoples.
    Genes, especially maternal mitochondriacal studies are a much
    more reliable indiactor of genetic identity.

    Many semites (by definition Arabs and Jews) are
    white. That doesn’t mean they are genetically
    closer to Europeans.

    The word ‘Aryan’ is a Hindi term [in the hindu
    holy book Rig Veda] and was used by the Nazis
    _because_ of that reason (and the Nazis used
    the word swastika for that very reason too, the
    German word is ‘hakenkreuz’ or ‘hooked cross’).
    Not only are the swastika, shubhtika and laltika
    holy in India but were found in all ancient
    Indo-European cultures (including Greece and Ireland).

    The nazis were certainly not illiterate, they
    were evil and very well versed in propoganda.
    Their behavior does not in any way obscure the
    fact that Indians are the “indo” in
    “Indo-European” people by the very definition
    of the word.

  35. Anonymous Says:

    Arabian Prince (Homam),

    I didn’t mean to demean _all_ the arabs. Why are you so upset? I have several friends of arab descent. They came from Yemen, Syria, etc. But none of them came from Saudi Arabia (the only Arab country that I find so annoying, other than Kuwait). I have no problems with my arab friends.

    So… if you’re not Saudian, why are you so upset? Beside it’s a fact that I stated (female migrant workers get pregnant in Saudia Arabia, and — here’s the funny thing — they’re the ones who are sent to jail… not the raper [their boss]). Until they fix their policy, nothing will change my view about Saudi Arabia.

  36. Clown Puncher Says:

    What about the arab countries where they cut off your hand for punching a clown?

  37. Grammatical Indian Says:

    Hmmm… I discovered the bile blog a few weeks ago and really liked the content and the comments for their humor and incisiveness.

    I’m an Indian and, of course, I didn’t like some of the comments by Hani in this and the previous blog. However, I think the feedback to all this is even more pathetic.

    The premise of the bileblog is to make negative over-general comments about one community or the other - which is what makes it funny.

    The feedback only underscores the fact that _any_ community has its legion of genitalia-pulling members.

    Please keep this blog about genitalia-pulling java communities and free from genitalia-pulling other-sorts-of-communities….

  38. JavaPro Says:

    In response to Clown Puncher, it depends on whose clown you are punching. People are very particular about their clowns and you can’t really go around punching their clown whenever you feel like it. For instance, consider the Grammatical Indian who doesn’t like his clown punched in his genitalia-pulling communities. It’s best to leave the clown punching out of his community.

  39. Hojetoleslam Weird Al Yankovic Says:

    > Indians are _genetically_ indistinguishable
    > from North Europeans.

    This is well-meaning PC bollocks, but utter bollocks nonetheless.
    Differences in appearance between indians and north europeans are a result of genetic differences. (differences in appearance between north european A and north european B are also a result of genetic differences).

    Whether those difference are the slightest bit important over and above aesthetics is another question.

    And everybody, stop being rude to this David guy, he rocks.

Leave a Reply