On Tue, 2008-01-15 at 14:57 +0000, Alan Blackwell wrote:

> I've just come out of a meeting reviewing the choice of teaching 
> languages for Cambridge, so can report directly on the criteria 
> that were raised by my colleagues.

All my experience on these issues stem from the introduction of C++ and
Scheme then Miranda at UCL in 1985-7, and then the switch to Java in
1996-7.  Also the switch from Modula-2 to Java at KCL in 1997-8.  So I
am way out of date :-)

> First language taught here will continue to be ML, because it 
> allows clean expression of basic computational concepts.
>
> Second language is intended to offer an alternative paradigm to
> that of functional programming, for which the best choice is
> believed to be object-oriented programming. (Students encounter
> other paradigms, such as logic programming, in later years).
> 
> We believe that the feasible options for teaching OO programming
> at undergraduate level are presently C++, Java and C#.
> 
> We have most pressure from employers to teach C++ not Java.
> However, we think that C++ has disadvantages as a teaching
> language. We have most pressure from language suppliers to teach
> C# (well, from one language supplier). Despite both forms of
> pressure, we think that Java provides the best teaching language
> at present for basic object oriented concepts. 

I think you must not have the banks as your major pressure group.  As
far as I am aware they want Java and C# primarily and then C++ perhaps
with C.  The embedded systems community are fundamentally C and
assembler based with some C++, Ada and SPARK.

I think Java is the right second course in this context.  It bridges ML
and C++ reasonably, is wanted by employers (it is currently the number 1
language for use), and it really is multi-platform (with a few minor
caveats).  Despite Mono, C# is still Windows only.

> Furthermore, the tool sets and libraries are sufficient, that
> students are later able to carry out substantial personal project
> work in Java if they wish to. They are also able to choose other
> languages if they wish. Many Cambridge students do project work
> in ML, Matlab, C#, C++ and other languages, but the majority
> choose Java.
> 
> Based on the discussion I listened to, the statement that
> "applicants equate enrolling on this program => becoming great at
> Java => well-paid employment" is not true here, as Michael 
> suspected.

I think the point is that as long as Java and C# appear in the
curriculum over 3 years, the appropriate box has been ticked.

-- 
Russel.
====================================================
Dr Russel Winder                       t: +44 20 7585 2200
41 Buckmaster Road               m: +44 7770 465 077
London SW11 1EN, UK              w: http://www.russel.org.uk/

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to