Last Train Home

April 29, 2003

John Lam

I just got off the phone with John Lam. Great guy. Really excited about the potential of code generation. So it's a mutual passion that we share. Although I probably didn't sound very passionate having been so tired.

It will be great if we can colaborate on something.

Posted by jherr at 01:46 PM | Comments (14)

John Lam and GSLGen

John Lam got in contact with me about code generation last night. He pointed me towards GSLgen, which I had never heard of. I contact the author of GSlgen to get some information and in return got a full article about code generation, and an offer on the content for half of a book! Amazing.

Posted by jherr at 07:02 AM | Comments (8)

XDoclet Case Studies

I put up some case studies on XDoclet last night. Good stuff from people who use XDoclet in production.

Posted by jherr at 07:00 AM | Comments (5)

April 28, 2003

New Devx article

Looks like Devx will be publishing an editorial I wrote on code generation later in the week. I'm hoping that this one generates a lot more buzz.

Posted by jherr at 03:54 PM | Comments (8)

April 27, 2003

Slashdot

Hey, if you like the Code Generation Network why not post something on Slashdot about us? It's free. It's easy. It's all volunteer. I can't really do something myself about it, or I would. Getting a Slashdot reference would really boost up our visibility.

Posted by jherr at 04:09 PM | Comments (6)

April 23, 2003

Roots of Software Engineering

During some research for a new editorial I camed upon the Roots Of Software Engineering article. I highly recommend this article. It's well written and well thought out.

Posted by jherr at 03:53 PM | Comments (2)

April 22, 2003

CGN Store

It blows my mind that I can use Photoshop, make a few graphics, and then get mugs and t-shirts and all sorts of stuff. Cool!

Posted by jherr at 10:46 PM | Comments (22)

CGN Announcements

You can get announcements of coming interviews and articles on the network by subscribing to the announcement list.

Posted by jherr at 08:40 AM | Comments (6)

AutoGen

Bruce Korb of AutoGen wants to do an interview for CGN. Cool. I'm hoping that I can get him, and all future interviewees, to volunteer someone in their user base to give a case study for the tool. I can only ask, right?

Posted by jherr at 07:41 AM | Comments (5)

New keyboards

Extreme Tech is running a series this week on new input devices. Something to keep an eye on I suppose. Especially as I get older. I've seen the vertical keyboard in action. The people who have used it swear by it.

Posted by jherr at 07:39 AM | Comments (2)

April 21, 2003

MySQL 4

MySQL 4 is looking good. I like the full text search and the transactionally safe table access. My only issue is the addition of innodb to a lot of the syntax. Adding 'innodb' to a table create tells MySQL to make the table transactionally safe. Once you have made a table space innodb, can't that just be assumed?

Posted by jherr at 10:02 AM | Comments (2)

April 19, 2003

Philip Greenspun article

Eric sent me a link to a cool success code generation story by Philip Greenspun. Thanks Eric!

Posted by jherr at 11:09 AM | Comments (2)

April 18, 2003

Fun with Safari

Here is some fun that you can have with the new Safari:

  1. Make sure you have tabbed browsing turned on in the Preferences.
  2. Open up the Bookmarks and go to the Bookmarks Bar.
  3. Create a new folder using the "+" button.
  4. Drag some links into it that you like to check on a daily basis.
  5. Open up a new window.
  6. Click on the name of the folder in the Bookmarks Bar with Shift+Apple held down.

This will open tabs for all of those links and start them downloading simultaneously. Then you can use Apple+W to close the tabs one by one as you catch up. Pressing Apple+W on the last tab will close the window.

Another way to do this is to go to the tab and select 'Open in Tabs'

Posted by jherr at 01:14 PM | Comments (8)

Twelve reasons to unit test

Twelve reasons to unit test attempts to sell unit testing and does a good job. Knowledge of what unit tests are and how they are written is implied. The article covers the benefits well.

Posted by jherr at 07:46 AM | Comments (6)

April 17, 2003

Is documentation holding open source back?

"Is documentation holding open source back?" is my first article for DevX. I didn't know what how large an audience that site served until my editor said that a newsletter point to the editorial went out to 175,000. Rock on!

Posted by jherr at 07:37 AM | Comments (3)

April 16, 2003

Cultural issues around MDA

After talking with Richard from ArcStyler I sent him a message that talked about two things. First why XDoclet was more popular than MDA, and second the types of concerns that people have with MDA. Both of these were just my opinion, or what I had heard when I had talked with people close at hand.

You might not know what MDA is, and that's part of the problem. It's not a drug. It's model-driven generation based on UML. It's an emerging standard from the OMG. The scenario looks like this; you have your whole project modeled in something like Rational Rose, you export the UML diagram as XML, and from that XML you generate the whole thing, or pretty close to the whole thing.

If you have concerns with this it's probably because you are not a big UML fan. Frankly, I could be hanging around in the wrong set, but I don't know many people that are UML fans. Richard said that most of his clients were European financial institutions. I'm going to generalize here, I think the software engineering culture of a European financial institution is drastically different from a startup.

So what are the issues around MDA for a startup style company? Here are some issues that I have heard:

  • UML itself is an issue as engineers only passingly familiar with it. Or UML cannot model your project, or various parts of your project, such as the application semantics.
  • Attempting to generate all of the code for the application is considered too ambitious for a single generator.
  • The culture of the company is such that only a few could be convinced about MDA. So it would be a hard sell.
  • Your project is not completely "spec'd out" before implementation. In the startup world does it ever happen that the spec is even close to reality?
  • You have a legacy code base where it would be difficult to adapt the generator to write code for your standards.
  • You don't have an architect/engineer work environment split. You only have engineers. The assumption is that MDA requires an architect/engineer methodology.
  • Generating 100% of the code can't happen, so building the other 20% or so that the generator leaves behind will be difficult.

I'm not saying that these are accurate or fair, I'm just saying that I have heard these and that means that these need to be addresses before the engineers behind them can be sold on MDA.

I'd love to hear what your thoughts MDA. I'm thinkng about turning this into a Devx op-ed piece or maybe an article on some other service. I get the feeling that if I extensively interviewed Richard, and the OMG guys, and got some material both from users of MDA and people that were negative about MDA that it would be a big article.

It would be an interesting article. Theoretically MDA, or something like it, is the cure to all of our software engineering woes. Why then, aren't we turning to it in droves?

Posted by jherr at 07:12 AM | Comments (3)

April 15, 2003

phpFormGenerator

phpFormGenerator is a great idea. I did something similar at Certive. The idea is to abstract the requirements for the form (fields, validations, etc.) then generate the form either dynamically or off-line to implement the form.

This has the advantage that your forms are consistent and that the user interaction and validation code can be debugged in one place because you are reusing the code in all of the forms.

For database applications this kind of tool is invaluable.

That being said, the demo site seems really slow.

Posted by jherr at 09:10 PM | Comments (17)

ArcStyler

I talked with Richard Hubert of ArcStyler this morning. He has an interesting point of view about MDA code generation and how it relates to J2EE and .NET. He looks at MDA generation as the new compilers. Where compilers used to take structured code and turn it into assemblers. Code generators take UML and turn it into J2EE and .NET code. Todays architects are, in some ways, tomorrows coders.

I'll be doing an interview with him fairly soon. I was thinking actually two interviews. One about MDA and another about ArcStyler in particular.

Posted by jherr at 11:54 AM | Comments (22)