All entries for June 2004

June 30, 2004

Java take 3

EJB 3.0 is going to be a whole new ball game. Swept away are home interfaces, interfaces are hidden away in metadata, and no longer are you forced to make abstract subclasses coupling you to the container – so EJBs will be able to use inheritance and polymorphism, it'll be just like OO! All the same, I got a strong sense of deja vu when they proudly announced how EJBQL will one day have aggregation – it's so much like how last year they proudly announced that now EJBQL can order its results. Still, JDO2 will be along before EJB3 so they will be playing catch-up for a while yet.

On the subject of JDO, went to a talk describing how to use JDO and JSF together, which recommended doing it exactly how I've done it for mass mailing, which was nice. Still got a couple of tips out of the talk and one genuine "ah-HA!" moment.

Now I have a couple of hours free to go bask in the hot-tub before the evening's round of BOFs. Still no fog although it was cloudy for a couple of hours yesterday.


June 29, 2004

Java One – 2

As the geek in front of me IM'd to a friend (while also recompiling Java software, reading news websites and listening to the talk as well)," JSR-166 rocks@. Tiger has a whole new concurrency package which takes concurrent programming in Java to a new level with much higher-level tools – much less wheel reinvention needed (and much better performance to boot). Makes me wish I still had need to write large-scale parallel code.

Sadly the "IDE shootout" was cancelled. I did go to a session in the NetBeans Day today. Some good new stuff coming, especially the very cool performance profiling stuff.

Scott McNealy was fun as usual. Java gaming is really arriving this year. And he made the point I've never understood – where's the outrage about Microsoft viruses? MS donates vast wealth to charities but the cost to the economy of all the viruses that exploit their crappy software dwarfs that.


First morning at Java One

Writing about web page http://java.sun.com/javaone/

I was expecting the launch of Tiger, Java 1.5, but it transpires that they're just releasing beta 2 and are aiming for final release at the end of September, when it will be called Java 5. However, they did open-source Java 3D live, and promise that Project Looking-Glass will go open source too. It looks good.

In the overviews of what's up-and-coming, I was surprised by the emphasis on the new Notation feature in the Java language, which I had thought of as minor, but it was a key theme in the summaries of what's upcoming in J2SE, J2ME and J2EE - it's going to change the way we write Java (and enable a lot more standardising of tools, which can only be good).

I've also been to the 'Web Tier State of the Union' where Craig McLanahan of Sun put succinctly what I waffled about somewhat in my talk: JSF is a user interface framework not an application framework – that's why it's not a complete 'controller' in the MVC sense. He suggested running JSF in front of Struts, letting JSF do all the UI work and Struts be the framework on top of the domain model. Not very tempting to me. This was in response to a question – as so often, it's the Q&As and the BOFs that are the most interesting parts, which is why it's so good to come to Java One rather than just reading the slides on the web.

My last BOF of the evening finishes at 20 past midnight, so I'll update again tomorrow. At least I won't get any more sunburnt – the sun has been blazing down since I arrived.


June 22, 2004

On Lists and Crossings Off

It's been a fairly satisfying few days at work. Last week I got the JSF version of group email fully working and made a dozen changes to the MLE domain model. In the at-risk period this morning I moved the live versions of the MLE apps onto the new database model. So now all the MLE apps use LiDO version 2 and the new model classes.

As well as these major things I've sorted all the outstanding bugs that needed fixing, replied to all my email, and updated JIRA and my Fiendish Master Plan UML Diagram.

Crossing things off lists is so satisfying.

Later this week I'm off to Java One. When I'm back, in July, unless there's anything new that needs doing, I'll be able to spend some time on developing a user interface for using arbitrary groups for things like seminar groups.

Now my blog's updated – that's the lot!


June 10, 2004

LiDO 2 live

As of 8.30am today, the live OMR system uses LiDO 2.1.3. Looks fine. We'd only tested it for a few days on the test system, but some fixes urgently needed to go into live so I went ahead and redeployed it.

LiDO 2 has lots of improvements. The best thing is that the OR mapping metadata is now in a separate XML file from the JDO metadata which makes both of them much cleaner. We still have one very minor issue to do with a metadata warning that I'd like ti go away.

Apart from doing the fixes, installing and testing LiDO 2, working with Libelis to pin down the issue, and being ill for a couple of days, I haven't got any further with JSF. Happily I've now cleared enough things off to get on with it for a couple of days.

Gave my talk on JSF to the e-lab java devs yesterday. Managed to waffle on for an hour and a half which is double what I thought it'd take. Good job I didn't have more demo code to go through!


June 03, 2004

Why JSTL is worse than scriptlets.

Chris May wrote, in a comment to one of my earlier entries:
Scriptlets are morally wrong (and may make you go blind) anyway

I don't think scriptlets are that bad. I don't think they break the Model-View-Controller pattern (not that I'd care much if they did) – if you need logic to traverse a data structure in order to emit table rows, or to make a button look different according to some attributes of the user viewing it, that is surely view logic anyway. And they have the advantage that, in my experience, they are the quickest way to build web pages. Sure, in an ideal world all code would be in nice neat classes, but in a world with ambitious and immovable deadlines and barely enough developer time to meet them, they're a good way to get going quickly. I think the worst you can say about them is that because they're less structured than classes, they're harder to maintain. But sometimes you need to sacrifice maintenance to meet delivery deadlines.

I was never sure how I felt about JSTL as a technology and by now I'm firmly against it. Putting logic inside custom tags on a web page has all the maintenance difficulty of scriptlets, with some added because of the lack of transparency. Custom tags are a bit like operator overloading in C++ – a double-edged sword, concise but capable of hiding important goings-on. In addition, because they're interpreted rather than compiled they're slower, and they require the developers and maintainers to learn a whole new dialect. And because of the logic is expressed in a different dialect, you can't do what you can do with scriptlets, which is when you realise you want to re-use code (or just improve its organisation for ease of maintenance), you can refactor it straight out of the JSP and into classes. JSTL just has to be copy-and-pasted to be re-used. Now enough of that will make you go blind.


June 02, 2004

On Experience

I'm finding bugs in the Reference Implementation, and noticing typos in the O'Reilly book, so I guess I'm past the novice stage in JavaServerFaces.

June 2004

Mo Tu We Th Fr Sa Su
May |  Today  | Jul
   1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30            

Search this blog

Tags

Galleries

Most recent comments

  • Good luck, Jon. Thanks for your helps in the past 3 years. by Hongfeng Sun on this entry
  • Good luck in the future by Mathew Mannion on this entry
  • It is indeed. And when I look out of the nearest window at work, I see Charter Avenue, where parking… by on this entry
  • There's very little free parking on the rest of campus, so why should westwood be treated favourably… by on this entry
  • I live in Earlsdon. I can drive, but haven't since I came to University here in 1990 (I never left –… by on this entry

Blog archive

Loading…
Not signed in
Sign in

Powered by BlogBuilder
© MMXXII