Learnable Programming in Thailand
chrisuehlinger.com
chrisuehlinger.com
First off, I grew up in Malaysia (next door neighbor to Thailand). My first time learning programming from a teacher/lecturer was rather horrid (I wish I had someone like you in my class). I have seen most of the challenges were due to the difficulty in visualizing how the codes transform to the end product.
I found Alice to be quite useful to introduce basic (types/conditional) to the first time programmer, but as soon as we transition from Alice to JAVA, many still struggled (dropout rate shot up).
If we can have a real time JAVA/C or any complied language, real time IDE. Student may not need to suffer from the pain of transitioning.
Regarding IDEs: I agree that we need better tools for Java and C. I think the key to solving this problem is making IDEs that developers can easily extend to meet their own visualizing needs. This is why I'm really excited about the Light Table project: It may not have a ton of features right now, but it gives you the ability to write powerful plugins to cover use cases the IDE developer hadn't thought of.
Context: I'm a Malaysian as well, grew up there but moved to Australia for Year 12 education and then uni. Am working in Perth now as a software developer. My only experience with the Malaysian tech industry is one summer 3 years ago that I spent interning at a Malaysian software firm (horrible experience).
Would really love to hear more about the tech scene in Malaysia.
In order to avoid that I'm investigating Racket--it's powerful enough that you won't outgrow it like you would with traditional learning languages like BASIC; in fact it's much more powerful than most mainstream languages. But it's still got fantastic support for visualizations and programming with images as values, so I feel like it'd be a good choice for a next step where you wouldn't have to compromise between "serious" and "engaging". The main drawback is that while the htdp.org curriculum is pretty solid for a textbook, it's definitely not as engaging as some of the interactive curriculums like http://learn.code.org or the one shown here. But the potential there is huge.
In the long term, we need to change the way we do programming everywhere, not just how we teach it. In the short term, I think students who can grasp the basics, find programming fun and understand why we use the console won't be held back by it.
A few years ago I donated a crap-ton of machines to a poor school in a remote part of China in conjunction with a private American NGO. I am going to visit another school with them next week and will see whether there might be scope for something similar there.
Of course, I have no idea once they have a room full of machines whether they can do much with them .. and I suspect they are probably used for games and web access exclusively. Something like you are suggesting sounds like a great use of these kinds of resources.
If the whole world is coding and though that is altering jobs as we know them currently and freeing up lots of people resources, we have a very different much more encompassing problem and opportunity.
Allocate your thinking and concerns there.