Code diagrams enable 'point-and-click' programming. Yeah, right.
Anthony has been thinking about this sort of thing (see his Visual Programming posts), but I remain profoundly sceptical.
Posted to Software development by Simon Brunning at May 22, 2003 10:43 AMActually, Oracle Designer used to be *pretty good* at this. Develop process model, system model, apply layouts and it does a pretty good job of generating your entire application.
I used it for some applications - the learning curve is way too steep. Also, you've to conquer the urge to open VI and just type in some damn code :-) Define business needs and processes properly and patiently, rest can be taken care by Designer.
Posted by: Babu on May 22, 2003 03:54 PMI'm currently doing some work for integrating information between applications with an EAI. The EAI we use is called Webmethods, and most of the 'coding' is done thru point-and-click. We have what is called a 'Flow Service' which you fill with flow steps. You have branching, looping, grouping, etc. blocks that we put together to create the service. I do miss real programming, though (opening up Eclipse and type real code). The application translates the flow services to Java code, btw.
Posted by: JavaGeek on May 23, 2003 03:42 PMAs part of the project that I am on right now, we have a consultant "writing" code for the IVR (interactive voice response system). I put "writing" in scare quotes because actually the system uses a GUI interface. You simply drag and drop and link up various steps of the process in a big visual-editing screen.
He hates it. You see, it ONLY has the visual interface. If there were a way to write code for it, he would MUCH prefer that. Then he could organize the code. He could use naming conventions. He could maintain it under source-code control. But he can do none of these, and the system we are building is complicated enough that the visual diagram is nearly impossible to work with.
Read The Pragmatic Programmer[1] and you'll find their excellent explanation of the power of plain text[2].
[1] -http://www.pragmaticprogrammer.com/ppbook/index.shtml
[2] - http://www.developer.com/tech/article.php/618941
I too, was a big fan of Oracle Designer. I would probably still be using it to this day to generate code if they had only turned Oracle Developer into a decent development toolset, ah Sedona ...
Anyway, where was I? The interesting observation with Designer was that it was easier to develop applications using generated code.
But, and there is always a but. But, your initial templates, preferences and application structure had to be set up by someone who knew both Oracle Designer *and* Oracle Developer very, very well indeed.
Post generation was where the real benefit lay (consistent code anyone?) but a rigourous development discipline had to be adopted to stop cowboys (i.e any programmer) from going into the generated module code and breaking it. It is a wonderful thing to be able to change a business rule at the functional level and be able to cascade it down throughout your different models and then into your actual application code with just a couple of button presses - and it worked.
For an interesting take on the whole model driven development paradigm check out gentastic (http://www.gentastic.com/). It started out as an extension to Oracle Designer but has become what Ace is trying to be, and I believe you can even get it to generate Python.
Oh, and I heard good things about Forte before Sun bought it, but haven't heard a sausage since.
Posted by: Andy Todd on May 27, 2003 12:25 PMI used to use Synon/2 (later renamed as Cool/2E, later renamed as fuck knows what) on the '400. A fantastic tool once you had the hang of it, but the learning curve was steep. If the database was defined properly, and you knew what you were doing, you could generate huge amounts of working code very quickly - you just had to insert business rules, and pretty up some screen designs.
But if the database was badly put together, it was a nightmare. And if you fought against the "Synon way", and tried too hard to get it to write the program that *you* would have written, then it would fight you back...
Interestingly enough, my company has just taken on a client with a Synon/2 system knocking about. It should be pretty stable by now, but I know who'll end up with their hand up the cow's backside if anything goes wrong. And it was put together by someone fresh from a training course. Shudder...
Posted by: Simon on May 28, 2003 07:56 AMI want to start a web site called :
I hate Synon or whatever the hell its called.
I was a happy rpg ile programmer, I used beatiful
free form code to make programs the way I wanted.
And now for some reason I started a new job and they have synon here and guess what : I fucken hate it.
-Ed
Give it time, Ed. Using Synon is totally unlike using RPG. You'll need to learn how to use it, which takes a fair while. And don't try to make it white the program that you would have written - it won't happen. In fact, don't even *look* at the RPG unless you need to.
Posted by: Simon Brunning on February 4, 2005 10:30 AM