From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,3885b7fd66a1db28 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-01-04 18:17:14 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!bloom-beacon.mit.edu!news-out.cwix.com!newsfeed.cwix.com!news1.optus.net.au!optus!news.mel.connect.com.au!news.syd.connect.com.au!news.bri.connect.com.au!bunyip.cc.uq.edu.au!not-for-mail From: "David Wright" Newsgroups: comp.lang.ada Subject: Re: Why is Ada a good choice for an ambitious beginner to programming Date: Sun, 5 Jan 2003 12:18:35 +1000 Organization: University of Queensland Message-ID: References: <5ad0dd8a.0212210251.63b87aba@posting.google.com> <3e140e05.3654845@news.demon.co.uk> NNTP-Posting-Host: d-233-137.stlucia.uq.net.au X-Trace: bunyip.cc.uq.edu.au 1041733032 21967 203.101.233.137 (5 Jan 2003 02:17:12 GMT) X-Complaints-To: news@uq.edu.au NNTP-Posting-Date: 5 Jan 2003 02:17:12 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Xref: archiver1.google.com comp.lang.ada:32552 Date: 2003-01-05T02:17:12+00:00 List-Id: "Bill Findlay" wrote in message news:BA3D31C9.1840%yaldnifw@blueyonder.co.uk... : On 4/1/03 22:55, in article av7olt$gh9$1@bunyip.cc.uq.edu.au, "David Wright" : wrote: : : > : > "Bill Findlay" wrote in message : > news:BA3A5BF1.177F%yaldnifw@blueyonder.co.uk...: : > : > : It was interesting to stand in the lab and watch CS (Ada) and EE (Pascal) : > : beginners working side by side. One day, about week 6 of term, the CS : > : students (using GNAT and AdaGraph) had nearly all successfully written a : > : program that animated balls bouncing around in a box. The EE students (using : > : Turbo) were nearly all grappling unsuccessfully with a trivial text-oriented : > : read-process-output loop. : > : > Hi Bill, : > : > You've convinced me; but the CS students (using GNAT : > and AdaGraph) were enrolled in a formal course ... : : So were the EE students. : In fact, they were enrolled in a programming module taught by CS. : (I was not teaching either group BTW). : : But I don't want to make too much of this. : Certainly there were other significant differences between the groups that : accounted for much of the disparity, but I'm quite sure the EE group would : have made better progress with the easier language (i.e. Ada). : That's the irony. : : > How can the self-learner find such interesting : > graphical programming projects in Ada? : : Well there is nothing Ada-specific about them. : The same exercise could have been done in Pascal. : : > NB!! Is there a particular text that you would : > recommend for this particular ball/box exercise and : > similarly engaging graphical forays? : : I'm not a graphics expert, so I would just look to a basic computer graphics : text as a source of ideas. Others may be offer a more concrete suggestion. : Why not look at LOGO and LogoMotion(?) to see what's done there & try to : reproduce it? ++++++++++++++++++++++++++++++++++++++++++++++++++ ** LogoMATion! You're thinking of the 70's dance hit LocoMOTion! 8-) ** Do look at the site when you're not in so much of a hurry. I guarantee you'll be impressed by its potential (if not by the clunky site design). Yes, good idea about reproduction in Ada. Discovery learning. ++++++++++++++++++++++++++++++++++++++++++++++++++ : : > Incidentally, graphics programming is immediately : > engaging for a beginner for obvious reasons. : : So is audio (especially music) processing, although the APIs are not well : supported in beginner-friendly software. : : > This is not a plug for LM and I would like to stay with : > Pascal or Ada if I can get to grips with some exercises : > that inject some colour and fun into the process of : > learning (e.g., the ball/box graphics exercises). : : If you are using GNAT on a Wintel system, all you need to get going is the : AdaGIDE IDE and the AdaGraph library package (and some neat ideas 8-). +++++++++++++++++++++++++++++++++++++++++++++++++++ I've downloaded the Aonix Object Ada IDE, which seems very cool on first impression. I haven't looked at its graphics potential yet, but I imagine I can do some interesting graphical things with this software. It has, among its online helpfile texts, a complete version of the famous "Ada 95 Problem Solving and Program Design" M. B. Feldman and E. B. Koffman. So there is much to be getting on with. I think that the difficulty is being paralysed by too many options. When you're self-learning, especially when it's a hobby, there's no compulsion or even pressure to adopt any particular programming language and, because each language camp claims to be 'better than...', it's relatively easy (for me, at least) to be seduced away from a prior commitment. It's like being stuck in dating mode when one's peers have mortgages and 2 kids. That's why it's important to get some feedback early on (producing cool, fun things) that one has made a good choice and that's the language chosen is worth persisting with. For example, a very recent newbie post in comp.programming, asking about which language to start with, received a reply suggesting Common Lisp! How ridiculous! A beginning programmer and Lisp! Where are the *beginner* resources for such a language. Of course, it's possible - anything is, but I think experienced programmers forget what a *newcomer* needs to stay motivated. Sure, Lisp as a second programming language, but for heavens sake! I'm risking straying far from the issue so I'll terminate here. Bill, thanks again. I really appreciate the lack of hype in your messages. It kind of adds to your credibility, if you know what I mean. David Down with one-eyed language evangelists and other misleading sprookers ++++++++++++++++++++++++++++++++++++++++++++++++++++