Last Train Home

June 29, 2003

New generators

I added eight new generators to the site. Mostly, but not execlusively, .NET stuff. I couldn't add one becuase there wasn't enough information on their site to really understand what they are doing.

I've set up some interviews with authors of the current books on code generation. They should be interesting. If it works I'll do an authors series on the site with a new author each week.

Posted by jherr at 09:39 AM | Comments (0)

June 26, 2003

Welcome to the Next Generation!

CGN has it's first article by someone other than myself! (Though I suppose you could say that most of the interviews are written by other people, which just little bits of questions stuck in the middle by me.) Iain Falconer, from Gentastic found the site a couple of weeks ago and wanted to help out. He had an article that he had written for another publication that we were able to re-print. Thanks!

Posted by jherr at 09:20 AM | Comments (0)

June 23, 2003

Sexy computer

Damn, Apple makes one sexy computer.

Posted by jherr at 02:33 PM | Comments (0)

June 19, 2003

Java Persistence

Finally, George Reese summed up his thoughts on Java persistence. He gives a map of application requirements and persistence technologies. This should have been done so long ago.

How is it that .NET gets away with one database access technique?

Posted by jherr at 07:46 PM | Comments (4)

June 18, 2003

FAQ

We now have a Code Generation FAQ up on the site! Woo hoo! Let me know if you have anything you want to add.

Posted by jherr at 10:42 AM | Comments (0)

June 13, 2003

JSR 223 : PHP in Java

This JSR has me rolling in he aisles. Three years ago Sun marketing was telling us that developing with scripting languages was not suitable for real enterprise applications. Now PHP is going to become part of the J2EE standard! Bwah, hah, hah! PHP rocks.

Posted by jherr at 09:13 AM | Comments (0)

June 12, 2003

JavaOne

I was at JavaOne last night to talk with some folks at Compuware about OptimalJ. They want me to write an article about OptimalJ ahead of their release on July 21st. It will be a tough slog if I decide to do it because of the time constraints around the book release.

Anyway, after the meeting I went to their panel/dinner event where they brought up four experts on MDA and J2EE. One from Compuware, one MDA author, on J2EE author, and a writer from The Server Side. Plus one guy from Giga who acted as the moderator.

It was pretty tame. The moderator pitched softballs for 45 minutes while we ate a really nice dinner. The answers were fairly stock but there were some amusing gaffs when softballs were thrown and completely missed.

When the conversation was handed over to the audience the questions got a little more heated. I asked 'What about existing code and MDA'. The MDA author then went onto talk about how generation is great for creating adapater layers between old and new code. The J2EE guy then came in and said that the MDA guy had missed my point, which he had. After which the Compuware guy said that the only real solution was to have a process read the existing code base, convert it into UML and then generate from there. I don't think that is particularly realistic.

I came away from the meeting concerned that MDA was the only type of generation that people had heard about. Think about when you talk about a new feature in an engineering meeting. Sometime a feature that starts small gets ideas thrown in until it's either never started, or never completely implemented. At which point the people involved blame the feature, when they should blame themselves for featuritis.

I think the same thing may happen with MDA. You start with this small idea, "make programming less repetitive", with small applications that you can write in a couple of hours. But then you think about the more grand issues, "what if we could generate this over here as well" or "why generate 80% when you could generate 100% if you added this, that and the other thing".

What I really want is for people to understand that there is a range of code generation solutions. It's not just MDA. If MDA doesn't work for you there may be smaller tools that do.

Posted by jherr at 04:24 PM | Comments (2)

Graham Brooks Interview

I've put up an interview with Graham Brooks, who talks about his experiences with building a custom generator. I think it's worth a look and I would like to do more interviews with folks who have built their own customized generators.

The custom world fits a problematic space in code generation which is handling existing code bases. Most generators want to build everything from scratch, or you can't customize the templates. This makes using them on large existing code bases a problem. But if you write it from scratch it can fit into the existing code and also scale up to match your needs long term.

Posted by jherr at 04:00 PM | Comments (3)

June 10, 2003

Book stuff

The book is going well. I'm getting final pages from the typesetter now and feedback from the proofreader. If all goes well we should be at the press on the 15th and hit the July 1st number. Rock!

Now I sit patiently wondering if I really will have the first book written completely about active code generation techniques. I got a little scare this morning when I saw this from O'Reilly, but frankly, I have no idea what it is now. Something about executives, and whole applications, and lots of technical stuff. I don't know.

Posted by jherr at 08:05 AM | Comments (0)

June 05, 2003

TechRepublic CG article

Nice article on code generation for .NET in the Tech Repbulic. (Free registration required.)

Posted by jherr at 10:38 AM | Comments (0)

June 04, 2003

Codify Interview

We have a new interview up on the site. This one is with Joe Madia. It's about his Codify generator, which is a really slick piece of work. With this generator you can take existing code and make templates out of it that are parameterized. Then when you use the templates special comments are placed around the output fragment so that the fragment can be maintained as the template changes. It's like copy and paste coding, but done reliably and well. This is a great tool for existing code bases, which is an area where many generators fear to tread.

Posted by jherr at 09:52 PM | Comments (1)

June 02, 2003

One Page Guide

I've put a One Page Guide To Code Generation up on the front page of the site. This PDF prints as two pages, but it's really the front and back of one page. The front page is the usual spiel and advantages and such. The back page is a very cool decision tree for generators. You should check it out. It will be distributed at JavaOne from the DevX booth.

Posted by jherr at 02:59 PM | Comments (1)