
Photo credit: Wikipedia
About a year ago, I was appointed as the Chair for an internal committee for the Computer Science (CS) Department in NUS to study how we might improve the quality of teaching for the Department.
This is not something new. The CS Department takes teaching seriously, and it is our usual practice to periodically review our teaching methods. We had a similar Committee 5 years earlier in 2010 and I was then a member of that Committee.
I personally think that this review is very timely. The world is rapidly evolving. We have seen the emergence of new technology-based business models that are rapidly changing the ways that people live, work and play. The quality of our incoming CS graduates have increased markedly to AAA/A in recent years. And, there is now very little doubt that Singapore is heading towards a recession. My fear is that it’s going to be a deep structural and protracted one. :’(
On the last point, it is interesting that our profession will likely continue to do well for the next couple of years in spite of the recession. Last I checked, vacancies are still plentiful for the CS grads, employers are complaining vehemently that they cannot find people to hire and pay is still going up as a result. But let’s be realistic. The party cannot continue indefinitely if the economy continues to tank and doesn’t recover.
My hope is that our profession (maybe one of my students? :-)) would be the one that will revitalize the economy. It’s not inconceivable. The benefit of our small size is that one local Google, Facebook or Apple will be sufficient to prop up the local economy for the next 10 years.
But I digress.
While I am not in a position to lay out specific recommendations of my Committee, I would like to take the opportunity to articulate some of my thoughts on what I think the future of CS education ought to look like (since I have had a couple of months to ponder over it).
At the heart of any CS education ought to be technical skills.
CS is hard, and involves many painful hours holed up in the lab writing programs. I don’t believe that there’s going to be any change in this regard, or any way to escape this. New CS students will just have to pay their dues.
What we want to do is to equip our students with the foundations of Computer Science — programming methodology, data structures, computer organization, algorithms — and to do it well. These are topics that will remain the same some 20 years from now.
But we also know that technology changes rapidly. We know that deep learning and big data will be passe in 5 years. In their place, will be something else. So, we also want our students to be comfortable with an environment of evolving technologies.
Our focus will be ensuring that our student learn how to learn — rapidly.
For example, while we might not formally teach a platform like Ruby on Rails in school, our students must be able to pick it up on-the-fly or on-the-job.
Interestingly, while the CS sector is booming, we will likely see a large number of self-proclaimed IT professionals become jobless in the coming years. And the reason is very simple: they were never altogether very good in programming, and they have given up developing technical skills to become so-called project managers. Sadly, many of the project managers I have come across are merely glorified clerks.
We will encourage our students to continue focusing on developing deep technical skills even after graduation. We believe that investing in building up deep skills is the key to ensuring career longevity.
An important skill that our students need to master is how to collaborate and work in teams.
From good to great: picking up the soft skills
Stay updated on the go with our mobile app.
Get latest insights with smoother, more personalized experience through TIA mobile app.






