Archive for June, 2007

Commit/Start Work & Rollback

Back around 1997 when I started using Gen (in it’s Composer 4 days) I had need to explicitly commit and rollback ( and by implication do a Start Worlk) on a Gen Batch procedure. Effectively, I wanted to set up my own Transaction Bounds.

Generically, Gen procedure steps commit on completion. We needed to commit each x-number of records.

Finding out that there was no explicit transaction-type statements in Gen was a little shocking.

When I questioned the TI Consultant that we had on site at the time, he said that because the tool is database-agnotic, it was not possible to generate Transaction-type code from a Gen statement.

My argument was that Gen generated Informix SQL, and simply by selecting a different technical design (and therefore database) we could get Informix-specific or SQLServer-specific, or Oracle-specific SQL for everything else – why couldnt we do that for Commit/Start Work and Rollback ??

In the end we resorted to coding it ourselves in EABs.

I think that since the tool has evolved considerably over the last 10 years, that by now we should have this kind of thing sorted out, and that we can have native transaction-controlling behaviour.

There was a discussion which I still think is valid, saying that there shouldnt be any technology-specific functions implemented in Gen – that all the statements should be operable on any supported platform – but then there are a large number of functions only available on the Windows 32-bit platform ( since they are implemented in OLE technology). This seems to undercut the “technology-agnostic” argument.

Surely there should be some way of introducing the transaction controlling statements into the Gen metalanguage ? Maybe the time has come for a DAR to be raised of the Gen development team in Dallas? In fact, I think I’ll do it !!!!!

So – this blog entry which started out as a bleat and moan session of the lack of transaction-controlling statements in Gen has led to me making a decision to get a DAR raised – great stuff !!!!!

Share

Be the first to comment - What do you think?  Posted by Gentalk Gaffer - June 7, 2007 at 10:26 pm

Categories: allfusion, ca gen, composer, gen features   Tags:

Model-Based-Development and Top-fuel Dragsters

It seems to me that over the last few years, the reliance on source code has decreased. To explain this further – most aplications today seem to be cobbled together, or “assembled” from components. This fills me with dread, simply because while there are people that can quite simply fit components together, and craft some “glue” code to allow them to function correctly together, are there people out there that can build components ?

This is analagous to the whole trend of “1st”, “2nd”, “3rd” and “4th” generation languages. When pure machine code was at its height in the 1950′s, before Assembly Languages were introduced to open up programming to the masses, it was a real skill to fit the program into 20, 30 or even 40 “words” of core store. Roll forward to the 1980′s and people with their “home computers” trying to use BASIC to program a full-functioning payroll system for the VIC-20 (yes – it was done!) – they still had the skills to program a computer sensitively and being mindful of the limits of their architecture and storage, and how to work around it.

Roll forward again to the 2000′s and people are mashing-up applications from GoogleEarth, Blogger.com and Multimap.com to make what I think are termed “rich” applications. Yes – they do allow those people to craft new and interesting sites/applications quickly, but could they craft an application from scratch? – could they code a line of code? – are their only skills “click to continue”?.

The point here is that model based development (such as Gen uses) does insulate the casual coder from the intricacies of the lower levels of detail – simply because Gen creates raw COBOL or C or Java – BUT – are the people doing the coding aware of what they are really doing ? Probably not!

The thing to note here (I think) is that people should only start using “higher-level” languages, model-based, or visual-based development tools if they fully understand what goes on under the bonnet.

Should a Gen procedure step fail to generate with a strange error message – when then ? The casual developer will not have a clue as to what to do to rectify the problem, whereas someone who understands what the tool is doing behind the scenes will know what to do to sort out the issue.

People SHOULD be allowed to use MBD-style tools like Gen ( I would promote GEN simply because of its power etc etc etc!!) BUT only after carefully understanding the underlying architecture of their particular site, only after understanding the traditional tools that the Gen build process uses – Visual Studio, Java Virtual Machine etc etc, so they can be empowered to solve their own problems.

The danger with this approach is that developers will then say “why can’t I use raw C or Java instead of this Gen thing ???”.

Well – some people learn to drive in small cars and leave it at that (Visual Studio 2007 programmer).

Some even learn how an engine works – and leave it there (traditional C programmer).

Then there are the people who drive top-fuel dragsters (Gen programmers).

They understand how their engines work and drive sensitively (albeit very quickly!)

They DO understand how their car works IN TOTALITY.

That’s my point here – UNDERSTAND the whole process from top to bottom – THEN design and build in Gen – you will appreciate what the tool does for you AND be able to sort out any mess!!!

Share

1 comment - What do you think?  Posted by Gentalk Gaffer - June 4, 2007 at 3:20 pm

Categories: Main   Tags:

CA gets good press

I know its not strictly Gen-related, but CA got good press today, concerning the new EITM strategy…..

http://www.theregister.co.uk/2007/06/04/computer_associates/

Share

Be the first to comment - What do you think?  Posted by Gentalk Gaffer - at 1:06 pm

Categories: Main   Tags:

« Previous Page