No more consoles!

Now, I’m not one to regularly hop onto the latest and greatest framework like some cheap two bit whore, as many are wont to do. You won’t see me dangling from the rafters screaming like a deranged baboon about how great spring/struts/tapestry/whatever is. Still, I realise that all these things have their users.

What is baffling however is the inevitable cry of ‘make an Eclipse/IDEA plugin!!’ that is guaranteed to occur from one in every 15 users.

Now, I’d like something explained to me. If your framework is THAT complicated, THAT confusing that you need to paint it in with pretty pictures, don’t you think something has gone wrong? If the config file format is so unintuitive that you cannot just type it all out after doing it once or twice, then you’re screwed from the outset, and you need to reconsider your choice of framework in the first place.

UPDATE

For some reason, this bile entry is now showing up as the latest one. To get the latest (and for an explanation on this bizarre behaviour), use the bileindex on the right to find your bile of choice.

31 Responses to “No more consoles!”

  1. boxed Says:

    False face must hide what the false heart doth know.

  2. Matt P Says:

    I pretty much agree.

    Most editors with dtd/xml completion are enough for editing config files.

  3. Geoff Says:

    The target audience is the key. If the IDE tool for a framework is aimed at the VB crowd, then it should not really be a “tool for that framework” at all. It should be an application building tool that happens to use a particular framework. In that case all of the under plumbing should be hidden (see IDEAs fabrique – which I don’t like BTW).

    On the other hand, aim the tool at the hardcore developer crowd and the environment is completely different. If such a developer has chosen an IDE,like Eclipse, they have done so because they believe it makes thier job easier/faster/more fun. A framework tool in this environment must not include any of the cruft that a tool for the previous audience provides. Going clickety-click in a million dialog boxes does not improve the experience for these users. DTD based XML completion (if appropriate to that framework) is the minimum. I think a great developer tool for a web framework is one that makes text editing easier in the context of the framework and also one that can catch and mark as many errors that would cause runtime errors as possible. That way you can reduce the cycle:

    edit -> deploy -> bug -> edit -> deploy -> bug, etc etc.

    Of course I’m biased as I did build a tool for the latter audience.

  4. Howard M. Lewis Ship Says:

    Counterpoint: I really like what Geoff Longman has done with his Spindle plugin. He doesn’t just edit the files, he has hooked into Eclipse’s build pipeline to validate the files (using the actual Tapestry parsing and validation code). Thus you see a lot of errors at build time that you wouldn’t otherwise see until runtime.

    I was demoing Spindle for the crowd at the Boston NFJS and was finding new features as I was using it. For example, in Tapestry you can (if you want) split the definition of a component between the HTML template and the XML page specification. Spindle was aware of this; when I used control-space (name completion) in the HTML editor, it prompted me with just the ids of components that were in the page spec but not *yet* in the HTML template. He’s eating his own dogfood, and it shows.

    I strongly agree about the fact that NEEDING a tool is a bad design smell. Tapestry’s approach has always been to seperate the HTML, the Java and the XML so that off-the-shelf editors can be used for each, effectively. But a tool, such as Spindle, that HELPS you in intuitive ways is a great thing. Rather than just change the way I view my raw XML data, Spindle improves my overall approach to building Tapestry applications … that’s a model for everyone else to (try and) follow.

  5. Howard M. Lewis Ship Says:

    BTW … my comment was a parallel comment to Geoff’s; I didn’t see his until after I posted mine. Guess we’re both just blog hounds!

  6. uptight and wedged in Says:

    THIS IS THE BILE BLOG NOT SOME TECHNOWHORE SHOWCASE MEAT JERKING FACILITY!!!

  7. boxed Says:

    XML files in themselves are the type of thing that makes people drool over stupid tools. Webwork1′s .properties files are where it’s at: no fuss, no fucked up long typing with < and > all over the place, just the facts in a simple format.

  8. UUD Says:

    Tapestry is a piece of dog shit (like struts)

  9. Patrick Lightbody Says:

    Hani,
    You are assuming that plugins are merely needed to mask complication (ie: complex configuration files). In the case of WebWork, the config files are pretty brain-dead simple, so making a plugin for that isn’t worth it.

    But making a plugin to do tasks you find yourself repeating is most definitely worth the investment. For example:

    * How many times do you find yourself cutting text and replacing it with an i18n key?
    * How many times do you find yourself tracking down a problem and trying to quickly figure out what view is mapped to an action?
    * How many times are you using the tag and switching back to the object on the top of the stack to see the available properties?

    The point is:
    making a plugin isn’t to hide complexity, but rather to automate repeatability. There is a BIG difference.

    Patrick

  10. Robert S. Sfeir Says:

    http://www.jamesholmes.com/JavaServerFaces/console/

    Hani, is this what set you off? I had only known about Struts and Spring consoles by James Holmes, this one must have just popped up. It is getting out of hand, and I find myself ditching those consoles anyway because it’s easier to just deal with the XML anyway… How hard is it to copy and paste and make a couple of changes?

    R

  11. Brian Pipa Says:

    For those that must use Struts and don’t use Eclipse, there is a nice standalone Struts console written with Swing here:

    http://www.jamesholmes.com/struts/console/
    I have been using it for a week or so and really like it.

    brian

  12. boxed Says:

    Thou churlish tardy-gaited death-token!

  13. Anonymous Says:

    i.love.men

  14. i.love.men too Says:

    We should see each other and make some babies.

  15. A Gay Man... Love Chubby Older Man Says:

    Hi uptight and wedged,

    I agree with you, we all (gays and straight men) should be tugging each other’s unmentionable here, not discussing some new technical framework / object oriented methodologies.

  16. Anti Gay Says:

    Since when bileblog become a gay venue?

  17. Felicity Says:

    I wish I had an Eclipse plug in that could aggregate my favorite blogs and let me post replies

  18. Bobesz Says:

    OK, let’s throw Eclipse/IDEA away and write code with Notepad… or, even better, vi…

  19. Anonymous Clown Puncher Says:

    Hani – your craft and the pride you take in it is quite evident in your bilious rants. However, a dangleberry is a plant. You obviously wanted “dingleberry”. Just wanted to make sure the large masses of uneducated, unwashed readers know what to plug into dictionary.com when they are confused.

  20. The Lord Says:

    THE LORD COMMANDETH: THOU SHALL NOT DISPARAGE VI, IT IS HOLY. THOU SHALL NOT USE A FALSE IDE. BEFORE VI, ALL SHALL TREMBLE!

  21. nevyn Says:

    Hani,

    I know you’re really good at describing the things you dislike.

    How about you do something even more constructive and educate us on the things that you do like?

  22. The Dictionary Says:

    Bile: 1. Bitterness of temper; ill humor; irascibility. 2. A digestive juice that aids in the digestion of fat.

    I think this blog is aptly named and described.

    If you’re looking for flowers and strawberries and puppies, try http://google.com/search?q=flowers+strawberries+puppies+java

  23. test Says:

    test

  24. Kristopher Schmidt Says:

    When Hani first mentioned ‘make an Eclipse/IDEA plugin’ I thought he meant make an IDEA plugin for Eclipse !! That would utterly rock, then I could edit XML files in IDEA from inside my Eclipse editor, and I could use plugins from either one without even switching application windows!!!!!

  25. Anonymous Bastard Says:

    Hani, you are sooo running out of steam.

  26. Hani Says:

    Some people call me the space cowboy, yeah
    Some call me the gangster of love
    Some people call me Maurice
    Cause I speak of the pompitous of love

    People talk about me, baby
    Say I’m doin’ you wrong, doin’ you wrong
    Well, don’t you worry baby
    Don’t worry
    Cause I’m right here, right here, right here, right here at home

    Cause I’m a picker
    I’m a grinner
    I’m a lover
    And I’m a sinner
    I play my music in the sun

  27. The BileBlog Rocks Says:

    Just get viPlugin for Eclipse and after you learn vi, you won’t need any of those sucky gui plugins.

  28. Mitchell Morris Says:

    I’m appalled to find myself on the other side of the fence from you Hani. Having written an embarassingly large body of code to be turned over to level 1 and level 2 support people, I now always build the configuration file editor as I’m building the application. Why? Because the support people seem to periodically develop a talent for screwing up the config file and making my telephone ring at 3:00 in the morning with some sort of stupid production outage. I write a config editor for them (standalone Swing apps, mostly) out of pure self defense. You might be able to get away with saying “use ‘vi’ and be careful” with your products, but you’re a lucky man if so.

  29. Matt Says:

    I think I have to agree. I haven’t found a framework plugin that is worth its weight yet. Most of them have more bugs than they have features. And for what to edit an XML file that should already be easy to edit if the framework is worth anything. Hmmm isn’t one of XML’s toutings that it is easily readable?

  30. Strawberry Alarmclock Says:

    If you’re looking for flowers and strawberries and puppies, try http://google.com/search?q=flowers+strawberries+puppies+java

    No, that actually takes you to bileblog too.

  31. Archimedes Trajano Says:

    I think editors with dtd/xml completion is already too complicated. I’d rather rely on code completion rather than strings.

Leave a Reply