Hello, Rush, Thank you for your message. It's nice to keep an open discussion going about the issues that face us and to see different perspectives. I often think of our industry as an elephant that we, acting as blind people, are trying to describe and deal with. Each of us sees a different part of the beast, and none of us has the whole picture. That said, responses are interwoven below. Rick ============== Richard Conn Principal Investigator, Reuse Tapestry http://xenadu.home.mindspring.com/ -----Original Message----- From: Kester, Rush W. [mailto:[log in to unmask]] Sent: Tuesday, April 11, 2000 2:31 PM To: 'Richard L. Conn'; [log in to unmask] Subject: Rapid application development VB vs Ada (was RE: What the competition looks like Richard, I know this is an old thread, but "The times they are a changing." IMHO, for the better. RLC> Absolutely. Our industry changes with amazing speed in multiple RLC> directions simultaneously. Common threads, such as a desire for RLC> improved software reliability, are emerging. GtkAda now provides the GUI widgets you are seeking and the available widget set is growing rapidly. What's important is that unlike VB, they are portable to non-Microsoft platforms. It works with Win32 and any platform that support Windows X11. This means that the applications developed on Wintel platforms can run on Linux, Unix, & MS Windows, etc. For more information see, http://gtkada.eu.org/ RLC> This is a good thing. Depending on who you talk to, Microsoft Windows RLC> accounts for 90-95% of all the computers in the world, so this approach RLC> extends to cover the remaining 5-10%. That's probably millions of RLC> computers. I saw a statistic the other day that the average American RLC> is supported by 265 computers in a single day (how they came up with RLC> THAT number, I have no idea ;-). However, I am not seeking GUI Widgets RLC> any more ... I found what I was looking for in Visual Basic and the web RLC> technologies. The applications I'm working on that need GUI interfaces RLC> are satisfied well by these two technologies and I'm not compelled to RLC> change at this time. My customers are happy with my choices and the RLC> results of my work. I agree with your point on the importance of domain analysis. I can't argue whether or not VB is well engineered. It's advantage is its close tie with Microsoft and Intel PC's. But this is also its disadvangage. RLC> Very seldom is a double-edged sword not present. There are advantages RLC> and disadvantages to every such choice we make. The AdaSage effort developed a similar component set with high-level abstractions for application development. Unfortunately, AdaSage was taken over by those who saw only its profit potential and decided to keep it as proprietary rather than manage its growth in an Open Source environment. From what I can tell, it died as a result. RLC> In preparing the next Ada and Software Engineering Update, I checked RLC> into the current status of AdaSAGE, and one of the Ada references on RLC> the update points to their website. From my inspection, I concluded RLC> that it appears to be alive and still growing. I noted fairly recent RLC> updates to it. I can't speak about the politics behind it. As you well know, there are many Ada component sets out there. What is lacking is a group in the Ada community to organize and integrate them into a powerful component based architecture. I agree that four of your five domains: GUI development, data manipulation, OS-based device control, and communications in general (and web in particular) have great potential. I also agree that because of its widespread use, the MS Windows OS cannot be ignored, but the world of students and the software industry should be broader than Microsoft. RLC> We are in complete agreement here. Why not devote our considerable talents and energy to making Ada's component set into something well engineered to meet future software needs. RLC> Our talents are fairly rare and valued by many. They should be applied RLC> where there is the greatest potential for Return on Investment (ROI). RLC> Of course, it would be nice to define what ROI means in a measurable RLC> sense so that we know if we are improving it ;-) You cited PITAC as being a perfect match with Visual Basic. I'm not sure I agree with this conclusion. Per, http://www.whitehouse.gov/WH/EOP/OSTP/html/presstest/19980810_2.html the first research goal of the "President's Information Technology Advisory Committee" (PITAC) is: "Research on software, with special emphasis on design and production techniques and enhancing software reliability." IMO, this is an area where Ada systems standout as good examples, and Microsoft systems poor ones. The executive summary of the PITAC's Interim Report http://www.ccic.gov/ac/interim/ states, "We have become dangerously dependent on large software systems whose behavior is not well understood and which often fail in unpredicted ways." IMO, This is symptomatic of proprietary systems like Microsoft's and less so of Open Systems where user organizations can go to the source to determine how/why the software will behave. RLC> First of all, I never said PITAC was a "perfect" match ... just that RLC> VB was addressing it. No solutions to these problems exist yet. RLC> I think your brush strokes are too broad on this one and don't prove RLC> the point you are trying to prove. All of us, including Microsoft, RLC> want to enhance software reliability. The $160,000,000 Reliability RLC> Initiative part of the $2B Windows 2000 development effort indicates RLC> in some ways Microsoft's concern in this area. Reliability comes RLC> from effective systems engineering followed by effective software RLC> engineering backed by a serious commitment by the entire development team RLC> to developing a quality product. Different languages, such as Ada, RLC> Java, and Visual Basic help in different ways and similar ways, but RLC> are no replacement for the culture of the development team. Going RLC> Open does not solve the problem by itself ... years ago, I installed RLC> X11R4 on a Sun using the source code, noting the hundreds of known RLC> defects reported therein. Going proprietary does not solve the RLC> problem either ... Brooks spoke of IBM's knowledge of 1,000 documented RLC> defects in their OS/360 source code and their decision to not try to RLC> correct those defects for fear they would introduce worse defects in RLC> the process, and we all have experienced Microsoft Windows crashes. RLC> Open communities are trying to fix things, as are IBM and Microsoft. RLC> I think the problems in the PITAC's Interim Report are more symptomatic RLC> of a lack of emphasis by all development team members on quality RLC> and our general lack of understanding of how to create complex RLC> systems. But we are changing, learning, and growing, and the pace RLC> is phenomenal. Rush Kester Software Systems Engineer AdaSoft at Johns Hopkins Applied Physics Lab. email: [log in to unmask] phone: (240) 228-3030 (live M-F 9:30am-4:30pm, voicemail anytime) fax: (240) 228-6779 http://hometown.aol.com/rwkester/myhomepage/index.html RLC> Rick Conn (see my URL below for access info) > -----Original Message----- > From: Richard L. Conn [mailto:[log in to unmask]] > Sent: Thursday, December 02, 1999 1:36 PM > To: [log in to unmask] > Subject: Re: What the competition looks like > <snip> > I haven't seen any arguments to convince me that VB > is not right for this climate or the need to make > learning fun is not justified. Both work effectively. > > The PITAC report I spoke of the other day speaks of > Component-based Software Engineering. That's where I > see VB fitting in like a glove, and that's were I see > Ada lacking. The VB GUI is not just buttons and text > boxes (THAT was the first day). It is also dynamic > list boxes (a form of linked list without the pointers), > drive list boxes and directory list boxes and file list > boxes which combine to allow you to navigate a file > system without programming any system calls, the chart > control which allows you to configure and draw 16 kinds > of charts (bar, XY, line, area, pie, both 2D and 3D, etc) > without worrying about manipulating pixels, the common > dialog control which allows for 6 common program needs > (open a file, save/create a file, select a printer, > select a font, select a color, and invoke online help) > with almost no effort, and so on. The standard packages > in Ada95 are very good, but no where near this level of > abstraction. Assuming the components are reliable > (which they seem to be), you can put together massive > applications with very few lines of code. They work the > first time (in my experience) and you are done and ready > to move on. The Web Browser I wrote in 1 hour on a > Sunday morning was part of what made me trigger my first > message. > > The domain engineering which went into VB really shows. > We see the five target domains clearly: Windows OS > interfacing, GUI development, data manipulation, > OS-based device control, and communications in general > (and web in particular). The VB controls operate at such a high > level of abstraction that you don't have to worry about > the low-level details and can concentrate on the problem. > Ada was a significant step in the right direction, but > VB is a much bigger step. Ada could be there as well > (there's no technical reason why these highly abstract > component features cannot be added), but the cost of > such an effort would be really significant. > > Component-based SE is a PITAC goal for the future. > > Well, that's the last 21 message responses in a nutshell. > > Another opinion, > Rick > ---------------------------------- > Richard Conn, ASE and PAL Manager > http://xenadu.home.mindspring.com/