All things around us revolve around programming(not exactly everything, but mostly the gadgets,cars) but many of us do not take keen interest in how some of these thing do the magic,truth be told, personally i didn’t pay even much attention to how a simple phone works or even that remote we like to play with back at home.
This however is not a crime since for some reason we were all created differently which gives us the liberty to choose what to know and what to leave out.the only challenge here is that most of what we choose is based on what we’ve been told by our peers or even parents,you know there’s that career that our parents think is very good and are almost certain that you will definitely make it as long as that’s the career path you follow, that issue i covered in my earlier post some time back.
Back to the issue of programming, let me take this honor to inform all those reading this that,
“Everyone can be a prgrammer”
Now i know that those who call themselves programmers will strongly disagree with this simply because they’ve been taught or are being tought that the concept of programming is only meant for the chosen few. This is not in any way way true and the reason is very simple.
Am not very certain whether the ministry of education does reviews of what is tought in schools to make sure its relevant to the current technology trends. if they do it, then something is missing in their research.
From the time my ears started hearing french, i always wanted to learn the language so badly but unfortunately, in the primary school in which i was, it was not being tought so for the seven years i spent in primary, the only language i was exposed to was English. Then when i went to secondary, there was French , however i had already lost the interest which in a way discouraged me from taking the french lessons seriously..now why am i bringing up this story??
If only the stakeholders understood that programming needs to be introduced at a lower level,only then would you find a good number of programmers that are very comfortable and skilled at what they do. Even those that call themselves programmers are not that good “professionalwise” simply because they got exposed to programming at an old age.
we all love to admire the likes of Mark Zukerburg, Bill gates..and all the others whose names rhyme with tech startups that involve programming. one thing about some of these guys is that they started programming at an early stage and that gave them an opportunity to learn more in a short time, they took advantage of the ignorance of those around them(which is not a crime) but given the opportunity, why would you let just one person take advantage of very many people that have the same brains and can do even better?
The other challenge has more to do with our culture in Africa, many of us don’t like to challenge ourselves and we take things lightly so whenever something appears difficult, then we opt out and take the easy load. We need to learn that not everything will be served on a silver platter, for the good things, a little or more effort may be required.
From the little experience I’ve had with programming, one has got to really put in so much love that even when the program doesn’t deliver the desired results,one keeps on trying until its perfect, this is not a quality that easy to posses especially as a student. alot of attention is put on how a particular part of the program is to appear, where it’s put, how you use it, there’s is a variety of programming languages and they appear soo different from each other that at times its confusing to even those teaching and this limits one’s ability since they have to specialize in just one or a few related languages.
In just the one year I’ve spent, we’ve only covered 2 programming languages and i can’t even call myself good at either of the languages but when you look at all the assessments, its all good with beautiful A’s that are just to appear good on the CV but when it comes to the real world application, there’s much more to be desired.Not that am very bright, but rather the mode of assessment is more theoretical and predictable as opposed to the practical aspect that is much more relevant to the current trends in programming.
Programming is a fun activity only if one can really understand what they are doing and can be able to explain it in the simplest way possible, if you can translate all the complicated lines of code like “printf(“My Love”);” so that in the layman’s language it’s simply “display these words on the screen “My Love” This would make sense but how many our our so called programmers can actually explain their code. This brings to to another point, those that have been privileged to learn programming are so selfish that most of what they know is basically kept to themselves due to the fear of competition, this i can understand since we live in a competitive world where survival is only for the fittest, however sharing knowledge is not as bad as some us may think coz in one way or another we are always learning from other people even when we don’t realize it.
Programming would be so easy if only it was introduced to the kids at an early stage in their lives where they are looking out for something fun to do with themselves, give yo kid a ball and most likely he will love football, give them a computer and may be they will be programmers. The issue here is not even resources but rather a matter of policy. Last year, Computer Studies were expanded to cover even the advanced level of Uganda’s education system after many years of failed attempts to extend the subject from Ordinary Level, the interesting part is that most of what was added is not as advanced as was expected which is not a good sign because when students get to university, its only those pursuing computer related courses that get a chance of looking at programming yet its one of those things that probably everyone needs in the era.
Am happy to note that some organisations that obviously have realized this importance are making progress by introducing programming at an early stage, one of the outstanding one’s is Code
Code.org is Code.org is a non-profit foundation dedicated to growing computer programming education.Their goals include:
Spreading the word that there is a worldwide shortage of computer programmers, and that it’s much easier to learn to program than you think.
Building an authoritative database of all programming schools, whether they are online courses, brick+mortar schools or summer camps.
The vision is that every student in every school has the opportunity to learn how to code. We believe computer science and computer programming should be part of the core curriculum in education, alongside other science, technology, engineering, and mathematics (STEM) courses, such as biology, physics, chemistry and algebra.
Code.Org’s strategy is a simple as just introducing programming to all those interested starting with the “kids” in schools what’s even more impressive is the advisory team that’s made of people that can so far be considered as having made a lasting impact in the feild of programming some of them include:
Marc Andreessen – Co-founder Netscape, Co-founder Andreessen Horowitz
Ron Conway – SV Angel
Jack Dorsey – Creator of Twitter, Founder and CEO of Square
Stuart Feldman – Google Vice President of Engineering. Former president, ACM
Drew Houston – Dropbox CEO
Mehran Sahami – Associate Chair, Stanford Computer Science Education
Brad Smith – Microsoft General Counsel
Jeff Willke – Amazon.com Senior Vice President of Consumer business
The Founder, Hadi Partovi is is an entrepreneur and angel investor.Hadi was on the founding teams of Tellme and iLike, and was an investor or early advisor to numerous startups including Facebook, Dropbox, and airbnb.
From the site, you can Learn to code interactively for free with various Links to some of the available websites that provide tutorials like Codecademy my favorite one that enabled be get a good understanding of programming.
The part which i would love every parent to pay attention to is the kids apps like RoboLogic (iOS)
Drag commands to move a robot. Age 4+
Drag commands to move a robot. Age 4+
Help a robot-arm solve puzzles. Age 8+
Move the Turtle (iOS)
Drag/drop code to move a turtle. Age 8+
Kodu (xBox, Windows)
Design a 3D game world. Age 8+
Learn to program using Ruby. Age 12+
Most of the parents have phones that are so smart that they accomadate as many apps so why not get some of these apps and instead of your kids playing games that don’t prompt their thinking, they can build a foundation from which programming will be adopted as a hobby and career path
There are many other organisations that have made it their priority to make sure programming is made so easy and my prayer is that the government realizes the importance of this particular area and makes a move,as the saying goes;
“It begins with you”
The question to the programmers is “How many of those in the younger generation have you inspired to take programming? and what are you doing to make it easier for those that come after you to learn programming?