March 21, 2006

Delphi in Schools, My Personal Take

There (yet) another thread on Delphi in schools, which reminded me of my very own experience.

There is a rather long thread in the delphi non-tech newsgroup about ways to promote Delphi in schools. You can read it here (on my old forum front end) or better here in my new one (whcih is AJAX-based). The thread is interesting with a post from John Kaster stating:

We could (and should) offer Delphi for free to schools, and it's something several of us are suggesting as an avenue for DevCo.

and Steve Trefethen echoing:

Since the announced spin out there have been numerous internal conversations about how the approach of getting our tools into schools need to be reexamined.

My Personal Experience

Some of the people who have posted in the thread talk about their own school experience with Delphi or Pascal, so I thought about mentioning mine here. I didn't start programming in Pascal. My first computer was a ZX Spectrum I still own. It came with a pre-built BASIC, but I soon figured out that for extra performance some Z80 assembly was required. Still, I did get a Pascal compiler (don't remember from which vendor) on that machine. At that time I was in high school, but programming was not on the school horizon, and quite new anyway.

At university, my first programming class was heavily based on Pascal the the notions of this language (type system, algorithms plus data, procedural programming, recursive programming, and the like). By the time I had bought a OC, an M24 from Olivetti to be precise, and the programming class required the use of Turbo Pascal of the language/development tool of choice, to be used for learning but also for a larger project to be completed for the final exam. Mine was a find-the-shortest-path-in-a-complex-graph type of project. Lots of pointers and recursion, for sure.

So, Turbo Pascal was my first university language, and version 3 was the first I used. Later, the operating systems class required us to learn C, while the more software development classes introduced me to OOP (with Smalltalk), LISP, Prolog, Eiffel, Ada, the early C++, and many other languages. Of course, Java didn't exist back then as by 1990 I had my degree. I know that later the university I attended has moved towards Java quite a lot, but I regret this is happening.

To me learning the basics of programming with a pure OOP language is misleading. Functions and data are bound to objects, but must be understood as separate entities. The abuse of class functions of some pure languages would confude a newcomer. An idea of stack, heap, memory, pointers and the like is quite helpful, even early in the learning curve. At the same time, getting into the gory details of C can be more confusing than it is worth.

So I still think that Delphi in theory could be a very good choice as a learnign language, as Pascal has always been, but I see that C# and Java are very attractive as they are free and promise more work opportunities. We'll see if DevCo can reverse the negetive trend in terms of school adoptions (and also of work opportunities).



"I will never deal with Pascal language anymore!"... yeah, you wish! :-) 

When I was only a child, friends of mine have never
wanted to come to me for playing with my computer (a
Commodore 16) because I used to get them bored showing
them some Basic program listing, useless for everyone,
but exciting for me. :-)

In high school I started working with Turbo Pascal,
and I've often found myself thinking "why should I
learn this? what could all this stuff be useful for my
work? As soon as I get out of this school, I will
never touch anything that has something to do with
Pascal language anymore!". ;-)

Ooops...surprise... I could not imagine I would have
become such a passionate Delphi lover as I am.
As Morpheus from "The Matrix" says:
"Fate, it seems, is not without a sense of irony". :-)

Speaking about Delphi in schools, it's a great idea,
but I think the only way for DevCo to accomplish the
mission of spreading Delphi is making it available to
students at a very reasonable cost, so buying Delphi
for homework won't be nothing different from buying a
book. And teaching Delphi at school is an experience
that I would really like to try. :-)

Comment by Marco Breveglieri [] on March 21, 02:24

Delphi in Schools, My Personal Take 

It's a graet idea.

I learned pascal in university (yeah, it more than 10 
years ago). Then Delphi 1.0 came out (Someone in my 
class showed it to me), and It was so exciting!. How I 
wish they have taught us Delphi, to create real apps 
and not just console 'exercises'.  So here I am, a 
delphi user since version 1.0 ;-)

This is bound to be good for Delphi. I wonder if 
universities will approve though. They seem to like 
languages such as Scheme or Eiffel, or java for real-
world experience. At least in israel ;-)
Comment by Ron Mertens [] on March 21, 07:30

Pascal was designed for teaching programming 

Getting to hearts of young people is the only way to 
secure long-term future of Delphi.

Worth noting that Pascal was designed "to be 
suitable also for teaching in an academic 

Comment by Pawel Glowacki [] on March 21, 15:29

Delphi in Schools, My Personal Take 

Marco, I think Pascal It's the best language to 
explain computer science arguments in a "formal 
way": my experience in Computer Science at Pisa 
University show this clearly.
Pascal is an high level language very simple to read 
and really complete. Turbo Pascal version 5.0 come 
in my life in 1990 after some experience under UNIX. 
It's a great and good experience to tranform "paper" 
programs in computer running programs.
So I think Pascal is the best language for training 
purpouse. I like to remember one of the milestone 
book in Computer science from PASCAL inventor: 
Niklaus Wirth's Algorithms + data structures = 
Comment by Bertoncini Luca [] on March 21, 21:48

Delphi in Schools, My Personal Take 

In past, i teached computer science for some time in
an italian high school. I teached Pascal with Delphi 1.
Other teachers prefer C and Java.
My experience was that my students understand concepts
better than the other and love Pascal.
Better knowledge means more use.
DevCo should be pervasive in student's world.
Comment by Claudio Checcerin on March 23, 07:02

Post Your Comment

Click here for posting your feedback to this blog.

There are currently 0 pending (unapproved) messages.