back to article Exam board deletes C and PHP from CompSci A-levels

A-level computer science students will no longer be taught C, C# or PHP from next year following a decision to withdraw the languages by the largest exam board. Schools teaching the Assessment and Qualifications Alliance's (AQA) COMP1 syllabus have been asked to use one of its other approved languages - Java, Pascal/Delphi, …

COMMENTS

This topic is closed for new posts.

Page:

  1. Chris Beach
    WTF?

    vb.net but not c#

    What the hell is behind this thinking? If one .net language is suitable for teaching then both should be. Arguably C# also has a seconday benefit of being similar in syntax to Java and C++ making the future learning of those easier. Which will be needed as you aint going to getta job with Delphi or Pascal!

  2. Tim Almond
    FAIL

    VB6? Dropping C#

    "Most centres offer Pascal/Delphi and Visual Basic as the language of choice for their students. This selection is based on the experience of the teacher in that centre and their own comfort with that language."

    So because teachers dabbled in some VB a decade ago, we're going to be teaching kids on VB. Oh joy. VB is such a terrible choice that it would be right off my list. It's terrible for exception handling, object orientation and it's dead.

    Python, C#, Java or Ruby are more sensible choices (what are universities teaching if not Java?)

    1. docbond

      AQA languages on offer for COMP1 decision

      The course is in two halves, candidates's choice of language for the assessment in the first half of the course has been reduced but there is no restriction on programming language in the second half of the course when candidates undertake a major project. A candidate may learn Pascal/Object Pascal/Delphi in the first year but may then choose to program their major project in year 2 in C# or PHP or F'# or Haskell or whatever. Once a student has acquired experience in one block structured OOP language they are able to pick up a second language fairly quickly.

  3. Bod
    Joke

    Forget all these languages

    ... they should be learning Ook! (or even Ook#)

  4. sT0rNG b4R3 duRiD
    Stop

    A-level computer science

    I would have thought that the way to go would be to teach the basics from ground up to get a fundamental understanding of how computers work.

    While RAD's like VB and Delphi have their place and I have used them (well, actually I would use Delphi but not VB), I am not sure that a Top down approach to teaching is superior to a bottom up.

    I learnt from ground up so that's maybe where my bias stems from.

    imho, leaving out c and what it actually represents is a serious failing but it may reflect the existing knowledge base of the educators currently in practice.

    Imho, you can't do c without some rudimentary understanding how a compiler actually works and some exposure to the underlying architecture, and usually when you learn c on a specific platform, while you can just do 'standard c' and be blissfully ignorant, you can also invariably pick up on how the OS has been cobbled together (be this linux, windows or Mac OS X). In other words, you learn a bit about OS's too.

    With this basic knowledge gleaned it's usually not hard to transition from platform to platform, language to language.

    Again I would say, do not underestimate the value of learning c.

    Maybe this is deemed no longer important. Maybe the goal of getting results without understanding anything too deeply is more important. Maybe that's why .NET stuff is there.

    1. docbond

      A Level Computer Science

      The first half of the course emphasises console/command line programming. The assessment involves students extending a console mode application. This year's task is noughts and crosses. Centres that teach Pascal use the console mode in Delphi. Console mode then leads on to Object Pascal programming which can be introduced in console mode including creating a forms/windows-based Delphi application from within a console mode application. Indeed, in Delphi it is possible to have both a console window and GUI application windows open at the same time so students get to see how a GUI event-driven application is created from the bottom up with the application writing and reading to/from both console mode and Window. This empowers students to also create their own objects at runtime in a Windows environment thus gaining a good insight in to how a graphical user interface is programmed. This leads on to students creating their own classes. It is also possible using Delphi to mix assembly language programming with high level programming as well as examining the effect on the registers of the underlying machine. Thus without leaving Delphi students can experience the full range from the bottom up.

      One of my students this year created an equivalent of Michael Kollings' Java-based Greenfoot system in Delphi as a proof of concept that a Greenfoot approach to teaching OOP could be done based on Delphi rather than Java. Is anyone interested in supporting the further development of this?

  5. Ben Cooper

    Pfft...

    I learned to program in BBC Basic, then in Forth, then 6502 assembler - the language you learn is in many ways irrelevant, it's the ways of thinking you learn that matter a lot more. The danger of teaching what industry demands is that what industry uses changes so frequently - much better to teach the transferrable skills that let you get up to speed in any language pretty quickly.

  6. Gerrit Hoekstra
    Paris Hilton

    Prepare your young for the future

    Prepare your young for the future by teaching them something they can actually use in real life!

    C# is just as good a vehicle to teach computing as any one other structured OO language. The difference is that it is widely used in industry. Who uses Delphi or Pascal in the real world?

    And VB?!? This was surely included because it was felt that the teaching staff are incapable of teaching a 'clever' language. No one uses VB in serious applications. Those who did, have regretted it - I have seen it many times...

    What can we expect next? That the education wizards dumb down history education by using Hello magazine as the text book?

    (Paris - for surely she is behind this dumbing-down conspiracy, so that she can look clever)

    1. docbond

      Who uses Delphi

      American Airlines flight reservation system is written in Delphi, I believe and the train arrivals/departures board at Shanghai central railway system is written in Delphi. I know because an ex-student of mine wrote it.

      C# is a very nicely designed language, after all it was designed by the designer of Delphi, I believe. But why not F#?

  7. Dave 142

    FORTRAN

    It's the only thing worth bothering with

    1. rciafardone
      Coat

      I dissagree

      I dissagree so hard that i injured myself... :D

      C and it childrens (C++, C# and somehow JAVA) are the best forever!!!

  8. Anonymous Coward
    FAIL

    C was the most awesome teaching tool ever, even if no one ever uses it afterward.

    It had 2 very important that made it a wonderful tool for teaching.

    1: It quickly showed you the students who refused to follow best practice. You prepare your code on paper first in C and it's easy to work it out. This stays true in anything you want to program in.

    2: Everything that was built after C looks like it. Some of the names change and most do away with pointers, but it still looks the same. Even SQL is easier once you've done C.

    I forgot another one. It showed most of us that the book you buy for 60$, or the diploma you buy for 10k$, is worthless if you can't just pick up a new language quick. Don't bet on what the paper says.

  9. Daniel Evans

    I fail to understand...

    Why anyone cares what A Level Comp Sci students do. Don't you do Maths or similar at A Level, and then do Comp Sci/Programming at Uni, in order to prove you're not a complete idiot who calls a spreadsheet macro a program, and can instead actually do programming? Not as bad as the "Computer Game Programming" courses, mind.

    1. Ramshackle

      Check the syllabus

      You mean the "Computer Game Programming" courses that generally teach physics, maths and C++ development? A lot of students enrol on them for the wrong reasons but their content tends to be far more practically useful than a good portion of the other compsci degrees you get these days (Media Technology anyone?). Also you can do more than one A-Level you know, room for maths AND comp sci.

  10. Mason Wheeler

    Re: Prepare your young for the future

    >Who uses Delphi or Pascal in the real world?

    Plenty of people, actually. Delphi is currently #9 on the TIOBE index, and it sees a lot of use in the real world. What it doesn't get a lot of is publicity. It's such a productivity booster, even compared with "more modern" languages, that a lot of companies treat it as a competitive advantage and they keep real quiet about it so their competitors don't pick up on it.

    1. Florian Klaempfl

      Pascal and Delphi

      List of known delphi applications: http://delphi.wikia.com/wiki/Good_Quality_Applications_Built_With_Delphi Examples of the list: Skype, The Bat!, Spybot Search and Destroy

      And if anybody is in doubt what can be done with pascal, have a look at: http://www.kanzelsberger.com/pixel/

    2. Steve Evans

      Delphi is a modern language!

      To anyone that hasn't tried it, Delphi is really nice. It's object Pascal.

      I came up the commodore PET route, Commodore Basic, then BBC Basic, then 6502 machine code, Z80, a bit of 68000 then 8086, VB, C and Delphi.

      Given complete free reign I go straight for Delphi. strictly typed and readable, not like C's compile anything but who knows what it'll do style! And the "please don't make me come back and modify it later" syntax!

      It's very hard to write the kind of security flaws we see every day if it had been written in Delphi, 99% of the time it just wouldn't compile. Buffer overflows of strings would be hard to exploit as Delphi has very powerful native string handling that doesn't rely on the programmer keeping tabs on how big his lump of allocated memory is and performing bounds checking manually.

      That's not to say you are insulated from the real guts of the machine, you could do it C style if you wanted to, but you'd have to be insane to really want to!

      Unfortunately on a day to day basis I have to use C... Oh well, that's microcontrollers for you, but I cringe every time I have to do anything with strings. I might as well be programming in machine code.

      If you want to give it a try go, grab FPC (Free Pascal Compiler) and the GUI front end Lazarus. Free and open source for Windows and Linux.

    3. docbond

      Delphi usage

      Brilliant answer!

  11. Anonymous Coward
    Happy

    Pointers and Recursion

    If you can code pointers and recursion, everything else should follow. So long as you pick a language that allows both of these then I don't care. I code hardcore C++ in a high-flying job now. My language at O-level was Basic (on a Commodore PET); at A-level was Pascal. My first year at University we used Modula-2; and subsequently we used C++, and various specialist functional or parallel languages (Haskell and Occam spring to mind amongst others).

    Since then, I've coded in various 4GLs, C++, and a bunch of domain specific languages. What I learnt when I was young was useful for principles, not detail (C++ at University looks very different to C++ now).

  12. Boris the Cockroach Silver badge
    Heart

    Make them

    learn ISO machine tool langage

    That will teach the little buggers the validity of error checking their code before some hulking great robot tries dismembering them

    Follow that up with a heavy dose of assembly... a nice obscure RISC processor will do and the horrid little things will never do Comp.Sci at university..... thus leaving the field wide open for us oldsters with real knowledge to charge an arm and a leg for it.

    More seriously

    We used to complain at university when various langages were jammed down our throats, spend 1 yr learning C++ and SmallTalk, then move onto C and Java with a dose of UML and SQL thrown in for good measure.

    We were taught howto solve problems, then implement the solutions in whatever langage we were using at the time.

    Which is exactly the way my apprentice gets taught on the robots.

    Look at the problem

    Produce a solution

    Write the solution into code

    Boris

    There again.... I still think 2 yrs of assembly will do them a lot of good

  13. Anonymous Coward
    Anonymous Coward

    Looking further ahead

    Of course none of the languages are really natively suited to parallel programming, mostly they just have extensions of hidden ways the compiler thinks it can gain a bit of a performance boost, all being well.

    Since we are now commonly at 6 desktop cores and 12 threads and the GPGPU advent will make this hundreds of cores, they are teaching languages which will be obsolete and inadequate just as this batch of victims leaves school / uni'!

    1. Mason Wheeler

      Re: Looking further ahead

      Paul: Nope. The Delphi development team is currently doing some very interesting research into parallel execution as a language feature, and there are at least two very nice open-source parallel libraries written by community members.

      I'm not sure where the perception of Delphi as outdated or not suited to modern programming tasks comes from, but it's just not true at all.

  14. Mark 65

    Jeepers

    For a techie site it's amazing just how many people here don't get that schools are there to teach the concepts not a precise implementation. You know, language constructs, what goes on under the hood and so on. They are not production lines for ready made coders for industry. As some have alluded to, if you teach someone the underlying fundamentals then they should be able to pick up the various implementations (i.e. C#, C, Java). It really is that simple. I remember having to do assembly language at school in order to demonstrate how things work under the hood. Have I used it since? No. Was it useful? At the time yes.

    For all those critics of it Pascal is a pretty standard teaching language - I certainly studied it 16 years ago at Uni (along with Prolog and Miranda for the declarative and functional aspects). Fortran 77 was for those in the Physics dept.

    VB though? Sketchy, real sketchy - unless they want to demonstrate how things shouldn't be done.

  15. JasonVokes
    Thumb Up

    A great language a great future...

    As we all know, Pascal was originally designed to be taught and many (including myself) have benefited from good structured programming practice using Pascal since school and have easily turned that balanced foundation into professional use of many languages.

    Object Pascal has taken the language to another level and paired with the Delphi IDE sees continuing and extensive, academic and commercial use around the globe.

    Embarcadero Technologies took over Delphi, from Borland, a couple of years back, where it has gone from strength to strength under their stewardship, investment and dedication. I would expect a significant gesture of support to the UK academic community from Embarcadero to support this AQA announcement.

  16. drumma5

    VB sucks.

    I work at a company now that does VB.NET and I have to say, everyday that I learn more about VB is another day I want to jump off a higher bridge. I learned C++ in highschool and a bit in college, learned Java in college, taught myself python, did C# in a previous job and am now learning Ruby on Rails in my spare time. I have to say VB is the worst thing I have ever had to do. It's ugly and wordy and the way handlers work is retarded. The board needs to take VB off and put another good language back on like C/C++ or C#. Something that resembles a coding language and not a 7th graders love letter to her boyfriend. "Not IsNothing AndAlso..." yuck.

  17. Anonymous Coward
    FAIL

    Toys

    "If anything, they should drop the obsolete and 'toy' languages in favour of languages like C#. "

    Only that Pascal is much less of a toy than C#. It is possible to write fast and efficient programs in Pascal like it is possible with C/C++, but that cannot be said about Java or .Net. The latter two are the toys that do all the beancounting in the big corps.

    As soon as you want to crunch 10 Terabyte of data in the shortest possible time you will prefer Pascal over C#. Or if you want to process 100Mbit/s of RADAR data. Or images larger than a stamp. Or simulate airflow around a car. Or anything else which is not beancounting.

  18. kissingthecarpet
    WTF?

    TRWTF

    As they say on thedailywtf.com when faced with an example of bad VB - "The real WTF is that they used VB"

    Pascal - Yes

    VB - NoNoNoNo

  19. Anonymous Coward
    Happy

    Re: Looking further ahead

    Maybe they should dust off the old Occam language designed for transputers back in the day?

Page:

This topic is closed for new posts.