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-Thread: 103376,f40056d015b2ae33 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!postnews.google.com!22g2000hsm.googlegroups.com!not-for-mail From: John McCormick Newsgroups: comp.lang.ada Subject: Re: Suggestions for topics in an Ada course? Date: Mon, 12 Nov 2007 07:53:10 -0800 Organization: http://groups.google.com Message-ID: <1194882790.326239.115730@22g2000hsm.googlegroups.com> References: <4737291e$0$27064$4d3efbfe@news.sover.net> NNTP-Posting-Host: 134.161.242.208 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1194882790 7931 127.0.0.1 (12 Nov 2007 15:53:10 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 12 Nov 2007 15:53:10 +0000 (UTC) In-Reply-To: User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.1),gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: 22g2000hsm.googlegroups.com; posting-host=134.161.242.208; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 Xref: g2news1.google.com comp.lang.ada:18315 Date: 2007-11-12T07:53:10-08:00 List-Id: Hello Peter, I have been teaching Ada to students with C/C++/Java backgrounds for two decades. I have gotten many of these students hooked on Ada. Those students who have a strong dislike for software engineering principles are the least likely to appreciate Ada. I have some of my current course work on my web site CS 810:059 Our CS1 course (no programming background assumed) http://cns2.uni.edu/~mccormic/059 CS 810:063 A traditional data structures course for people with two semesters of OO programming in C++/Java under their belt http://cns2.uni.edu/~mccormic/063/ CS 810:188 A special topics course on concurrent programming with Ada http://cns2.uni.edu/~mccormic/188/ If they have enough programming skills, I would suggest you teach them concurrent programming in Ada. Burns and Wellings have a new book out that I plan to use this Spring - Concurrent and Real-Time Programming in Ada, Cambridge University Press, 2007, ISBN 978-0-521-86697-2. I suggest that you avoid GUI or graphics programming. The Ada tools are simply not up to what they have seen in C++ and Java. This observation is supported by a keynote speaker I heard at the SIGAda conference last week. He said that the new en-route air traffice control software now being installed is about 50% Ada and 50% C++. The C++ is for the intense graphics needed by a controller. The Ada is for the parts that can't fail. I'd be happy to discuss any of my work with you on or off the newsgroup. John > >I have the luxury of teaching a course next semester that can be about > >anything I want. It's a course on "special topics" and the content is at > >the discretion of the instructor. > > >I would like to teach the students some Ada. > > >The students in question are already competent programmers (in the > >college student sense, that is). They have taken two courses in C/C++ > >and so should be familiar with basic programming concepts, including > >concepts like encapsulation, (operator) overloading, and inheritance. > >The programs they have worked on so far have been typical programming > >exercises given in first courses: nothing large or complicated. > > >The course I'll be teaching has two hours of lecture per week plus a > >three hour "lab" period where the students can work on some sort of > >project or assignment in a supervised setting. So there is a fair amount > >of time available. > > >My thought was to cover the basics of Ada, the language, in the first > >half (third?) of the course. My expectation is that because of their > >background, the students will pick up the basic ideas fairly quickly. > >The question becomes: in what direction should I take the rest of the > >course? I would like to talk about something that shows the language in > >a good light as well as captures student interest. Some kind of > >introduction to a GUI library or network library might be good (the > >students have never done any GUI or network programming before). Also > >because I teach in a computer engineering curriculum, low level device > >control applications would be reasonable and appropriate as well. > > >Anyway, I'm sure I can put something together. However, I thought I > >would ask here to see if anyone has some suggestions for libraries, > >tools, etc, that I might look at as I prepare materials for next semester. > > >In case it matters, I'll be using the GNAT compiler. > > >Thanks! > > >Peter-