The South African Department of Basic Education has decided that the only Delphi and nothing else will be used to teach programming in our schools. Many of us became aware via Derek Keats’ blog post. On his blog, is a scanned copy of Circular 9/2013 which communicates this decision. Even the Digital Portfolio Committee of the Cape Chamber of Commerce has issued a statement on this matter and are convening a meeting on 16 October 2013 to address this.
That Delphi is old is irrelevant. For me, the issue is that Delphi is not current. Old and current is not the same. For example, Python is old. Python v1.0 was released in 1994, but it is still current. It is still under very active development and a popular choice for building software in today’s world. Delphi is old and has tried desperately to keep up with the times. Delphi is no longer current. Please do not bother pointing me to Embarcadero’s Delphi XE5. Do your own homework on its market share and developer mind share.
Currency makes the things that we wish to achieve today and tomorrow possible. Currency of software languages and tools instills wonder and amazement for the current generation and next. It was C that did it for me when I was starting out. That I could make LEDs flash sequentially when connected to a parallel printer port, left me breathless. Delphi excited some people in 1996. It excites nobody anymore. It has lost its currency decades ago. It no longer inspires people that imagine possibilities in the world of cloud, mobile, touch and the Internet of things.
Certainly, we can teach kids programming using Delphi and Pascal. We’ve taught programming with Pascal for years. And, yes, design is the hardest aspect of programming and we can argue that language is an implementation detail. This argument may stand up in the generality of teaching programming. But it falls flat when it comes to specifics of teaching programming in South Africa.
The reality is that South Africa does not have a significant software development sector. As one of the BRICS we have an expectation that our software development sector should be comparable, in relative size, with our “developing” sisters. Get real. We just don’t have enough developers in South Africa to build a significant software development sector. What we do have is a marginal sector where the majority seats are occupied by a minority group. I can only foresee a significant software development sector when the majority of seats are occupied by the majority group in South Africa. Let me cut through the euphemisms. The majority group are not white. The minority group is predominantly white. But this is not a race issue, it is much deeper than that.
We are in a software development crisis in South Africa. We do not have enough software developers. Forget talent, simply on quantity, the minority group cannot fix this situation. We need black software developers to fill the seats, first with numbers. The black talent drought is a different problem, but let’s just stop the black software developer drought. We need the numbers first. The majority of our kids go through state schools will be left uninspired by Delphi, and turn to other careers. Software development is not even close to being a common career option for all South African kids, and the Department slams the door shut.
Kids in private, independent and previously advantaged schools will be ok. I know this because my son attends a private, independent school. These kids will be inspired. They will feel that sense of wonder and will reach for a career in software development. And we will continue fooling ourselves building a software development sector with a minority group.
I wonder whether the Department of Basic Education knows that it is responsible for the under-development of South Africa. Yes, Mr. SG Padayachee, you and whoever is advising you are killing an entire generation of software developers. It is a genocide of software developers.