[Estimated Reading Time: < 1 minute]

OK, so perhaps not exactly what they said but they have said that C# (as well as C and PHP) are not to be taught as part of A-Level Computer Science any more, and they have recommended using Pascal/Delphi (from a list of other languages including Java, Python and VisualBASIC).

Full details available here, courtesy of The Register.

12 thoughts on “UK Examination Board says: Teach Delphi, not C#”

    1. Um, the link to the original story is in the posting – the story came from “The Register”. The reasoning is likely to be (but I’m speculating) that teaching should be about the fundamentals and the basics, not about training in popular languages. e.g. Pascal (or Java or Python etc) are considered better languages to teach how to write/understand containers, rather than teaching how to use a particular container library in a particular language/framework du jour (and let’s be honest, Delphi probably only get’s mentioned as the only real surviving implementation of Pascal, which was designed in the first place as a “teaching” language).

  1. Lets hear it for the Brits. (But then as a Brit Delphi user I would say that, wouldn’t I!)

  2. @I think this a very smart view.

    We have trend here in Austria too to teach people specific frameworks even in IT schools (age 14 to 19). This is not wrong by default – it has big advantages for job entry. This alone and not knowing the underlying doesn’t help at all on a mid term.

    The usage of objects is definitly the first step the second is required too frameworks are reallity. Getting educated to one specific plattform is to early in schools – reallity is different. The demand is not in the area of .net – there are many developers. And to graduate to be a development slave – then it would be better to go to a different school.

    In Linz here we have the big advantage that applied informatics is combined with building compilers, designing languages … and early focused on object orientation. We did our lessens in pascal too, learnd to design containers … it was a very good experience. They put you on many languages and system from Smalltalk, Oberon, Java, C# to others. Not everyone is a compiler architext in the end – we had parallel programming and virtual runtimes too, hardware design. With little practice beside in the early years you get a very realistic view of the possible and to differentiate the levels the systems are made of.

    In school this is lttle early, a solid underlying is important a lot more than knowing tiny parts of a framework with I’m sure > 150.000 classes.

  3. I see the link now. Sorry. I was half asleep 😛

    And their recommendation makes sense: “The board “highly recommended” switching to Pascal/Delphi because it is stable and was designed to teach programming and problem solving. ”

    The keyword here is “stable”. No big changes to the language with each version.

  4. The first way of getting to know a class system is usage. Binding people to only one specific plattform does not make sense in school, nor does this make sense on universities – it never makes sense. So these suggestions are somehow ok. Getting to know the underlying is appreiciated. In school for me programming should be lots of fun and fundamentals – digging into the underlying problems.

    Universtites at least in Europe put people on several languages, different plattforms … I think this is early enough for architecture of containers. We learned it in a good context buy a prof who did with us UX, compilers and brought object orientation to our attention. 4 courses – this is a solid fundament.

    What happens here in .at in schools is – the economy wants cheap geman speaking programming salves that know Hibernate and all these things, the IDEs. This is important too … .as Java and .net are made up of about 10k classes – I hope they don’t have to learn them by hear;-). But a specific OR Mapper, don’t know…

  5. Delphi is great, but it’s propriety and quite expensive and currently runs on Windows only.
    Don’t see how anyone can suggest Delphi for teaching programming principles. That’s crazy.

    1. Because, Arni, this course is about teaching programming, not about workplace training. When teaching someone the principles behind a b-tree implementation you need a language which makes those principles clear and accessible. Pascal was designed from the start as a teaching language, which is clear without being overly verbose and concise without being reduced to hieroglyphics. For a workplace training course you tell someone that needs a b-tree to use the BTree class in the System.Containers namespace (or whatever), but in a programming course where you want to teach them how to IMPLEMENT a b-tree, you use a language that allows you to concentrate on the principles without getting bogged down in the language itself.

  6. Teach Delphi, not C#!
    I agree with you.
    Delphi – bright future!
    it is clear as noonday!
    God’s, afflatus!!!
    Ukraine / Odessa./ Aleksandr!

  7. The biggest problem IMHO is that Delphi is an expensive license. C# have free implementations that start perform fairly well today. Also, even the code clarity may be better upfront, the “abstract” syntax that C# provides, is fairly good today. Also is much closer to the level of most codebases are (that are written in C, C++, Java or Objective C, all C based languages to one degree).
    At the end I will have also to say that Delphi looks and behave a bit off as of today, with old libraries, which do not handle things that a virtual machine (as Java or .NET) do not need to handle. Picking Lazarus as a Delphi replacement I think is kinda of a joke. Probably if Delphi will take the educational path, will need to do mainly two steps: have a limited educational version (like Express versions from Visual Studio) or to have a good free package for people wants really to write on their platform like Lazarus enough good to make people to use it
    As for me, being an ex-pascal addict, I consider that Delphi’s strong points were at the level of year 2000, but today, without a dramatic change, they can only compete with somelike C# 2.0 as they have mostly the same feature set (it miss dynamic objects or Linq).
    Making Delphi’s compiler opensource can change the fate of this language I think. People can fix it’s problems and probably port Lazarus to it. And it will mean that if someone will want a toy IDE, can take Lazarus and for professional take, it should buy Delphi. Also being OSS can make some things that were not that good, like compiler bugs to be fixed faster, or newer compiler infrastructure (like ARM or x64 support) to be contributed at one level by community.

  8. What about teaching to use Lazarus (OpenSource Pascal/Delphi implementation) and FreePascal?

    Bonus for getting the skill for life to create cross-platform-apps easily.

Comments are closed.