hi all, here's another rant, its directed at our Educational system, but done in a less brutal way than the 'last' nuclear exchange between Red and Rafe ;-) Sabar guys you both got your points, ....
Have a read and pls comment... Critique of MQA Computing Program Document --------------------------------------------------------------------- Ah, I make a bold claim, I finally may have figured out a possible reason why our august Universities produce thousands of graduates that are 'unemployable' as far as IT is concerned. The blame must solely rest on the shoulders of the MQA (Malaysia Qualifications Agency) under the Min. of Edu. Its also known as LAN (Lembaga Accredition Negara) http://www.mqa.gov.my/ This 'organ' sets the 'standards'(sic) for all HEPs(Higher Education Providers) in the country, both local and foreign. Yes, even if MIT or Harvard were to set up here, their 'standards' will be governed by them! And it covers not only IT, but also Bitotechnology, Medicine and Health Sc. etc.... I downlaoded a PDF on the subject area of Computing: http://www.mqa.gov.my/garispanduan/ENGLISH%20Computing_6.1.10_doc.pdf This does not cover all parts of IT, Netwk Engin.(SysAdmin) etc.. is handled by other docs. (so this rant may not apply to the Netwk Engineers, SysAdmins etc..) But it covers all aspects of higher edu for 'Computing': - the type of courses and professionals it develops, presumably for our HR needs... - the qualifiactions required to enter and awarded upon completion, - the 'programme objectives' what the course try to achive, the type fo skills grads. will have - what the syllabus should cover - the accredition, way marks/grading are accorded - Learning Outcomes, what skills/knowledge the grads. will be equipped with (!?) note: Compared to a similar document for BioTech and Engineering, the curriculum seeems to be far less detailed when compared to IT. A lot of freedom seems to be given to instituitions to determine their own. Why then should our industry be so closely scrutinised? As a quick summary, here are my interpretations, I may be wrong, and if so soemone please prove me wrong! It seems 'programming skills' are not required for BSc grads, but are required for Diploma grads WTF, !? (Learning Outcomes, Diploma, pg 14,i). It seems 'programming' is considered a lowly skill suitable for Diploma holders, whereas BSc grads are suppose to be System Analysts and and Proj. Managers!? And BSc grads are suppose to have 'entrepeneurial' skills (pg15 Generic Learning Outcomes, vi) - so they can be the next Facebook I suppose... If this is true, it sets a dangerous and unreal expectations for the students! No wonder most Comp. Sc. grads. don't want to do programming or can't code! And they want to be SAs and PMs? No Way! Without knowing or having done extensive programming, they won't have the depth of knowledge to manage progrmmers, let alone win their respect. They won't be able to evaluate the complexity and timeline required without understanding the tools or its methodology. Worst still, they will end up making the technical decisions, instead of the programmers that are actually doing the work! (Does a construction site-supervisor tell his carpenter what tools he should use? NO!) It just means they make 'dumb' managers which the coders can fool! Also they (grads) probably think they don't need to do programming, and they can straightaway be PMs and SAs.... but the market and employers certainly don't agree! Holy Dilbert! The fact is that our Unis are producing PHBs (Pointy Haired Bosses) the clueless yet arrogant boss of Dilbert in the comic strip! Haris(OSDC) was trying to form a committee to try and introduce FOSS into Education. I would think the work should start with the MQA. Also who are the people that make such major decisions that affect the future of our nation, are they qualified? Do they have industry experiance? Are they free of vested interested? Are there HW or SW vendors among them? I think most of you who are serious about parctising IT and developing the SW industry in Malaysia will agree with me that some of these decisions are seriously flawed. I certainly hope that such errors in judgement are due to the fact that they have been misinformed, and HOPEFULLY they will allow us, members of the FOSS community to provide an alternative POV. Below are the rest of my rant.... based on sections of the document, you may have to read it to get the full details, I have included some quotes taken from the docuemnt, they are like this "....", the rest is my inputs. Also those sections 'notes:' I would welcome all comments, especially from the authority concerned, lets have a healthy discussion on this. And no F words ;-) Intro: ------ No date as to when the docuemnt was drafted. The file name carries a probable date, but the document itself does not have a date, change-history or list of authors, strange! The BioTech document has all these! It acknoledges that Computing moves at a amazing pace, yet if rate of change is so critical, this document should have a date and be revised at regular intervals by 'authorised experts'. It defines the "Programme Standards for Computing" for the following certification levels: Certificate (Malaysian Qualifications Framework MQF Level 3), Diploma (MQF Level 4), Bachelor’s Degree (MQF Level 6), Master’s Degree (MQF Level 7) and Doctoral Degree (MQF Level 8) Objectives (Pg 6) ---------- "These standards are designed to encourage diversity of approach within a framework that is compatible with the national and global human resource requirements and the socio-economic needs. They cannot be seen as a syllabus and no form of prescription is intended in the amount of time devoted to each component or the order in which the material is presented. Higher Education Providers are expected to combine, teach and assess the subject matter creatively " "The development and implementation of this Programme Standards is to ensure that the graduates meet the professional requirements and expectations in their respective fields. Higher Education Providers must take cognisance of the rapidly evolving subject matter and introduce effective and sustainable programme improvement. In doing so, the providers should also ensure that the graduates obtain the necessary skills to function effectively " comment: from what I have been told, the HEPs (Higher Edu Providers) have to stick to this pretty closely. Either that or I have been misled, and academia were too lazy to create their own syllabus and just accepted what was pushed upon them. Coverage: (pg 10) --------- I am just looking at the BSc degree programs.... but theres all the rest, from Certificate to PHd! It defines curricular and standards for 4 professional fields: and with its definition... Computer Sc ------------ Produce Computer Scientists who can work in a wide range of fields from theorectical research, SW development and drive innovation. It offers a wide foundation to allow studens to adapt to new technologies and ideas. Includes web technologies, Robotics, Computer Vision, Intelligent Systems(?), Bioinformatics. note: to 'innovate, research' is a tall order, it means going beyond what others has done and hence means you must already have a very strong foundation. Standing on the shoulders of giants requre that you are familiar with the giant! Information System ------------------- Integrate IT with business processes to provide solutions for entreprises. View technology as a means of generating(?), processing nd distribution of information for (entrprises, gov...?). Practioneers are to be familiar with specific applications, database apps., spreadsheet Off the Shelf SW. Then goes and talks about Payroll Accountg, Invrntory Systems, etc... Note: no mention of ERP systems (hey Red1, comment!), Business Intelligence (Raja?), how about mobile-computing and the role it an play for entreprise, NO FOSS! Information Technology ----------------------- Graduates are trained to focus on application, deployment, and configuration needs (of IT) for organisations and people over a wide spectrum. They are responsible for planning, infrastructure, selecting HW and SW, and integrating configuring and customizing these systems to meet business needs. note: Personel here play a major role in selecting HW & SW and hence impacts the success of FOSS. SW Engineering --------------- Discipline of designing, developing and maintaining SW that is reliable and efficient. It must be affordable to develop and maintain and take into account issues like scalability and reliablity in safety (mission-critical?) applications. "Software Engineering programmes produce graduates who can understand user requirements and develop software systems. Software Engineers are expected to develop systematic models and reliable techniques for producing high-quality software on time and within a budget." note: reliable, efficient, affordable, scalable, relaible, mission critical, all this means FOSS right? ;-) MQA needs to be enlightened about this! Programme Objectives (Bachelor, pg 10) -------------------------------------- Generic Programme Aims for a Bachelor’s Degree are to prepare graduates who i. possess skills for lifelong learning, research and career development, ii. have communication, team, leadership and interpersonal skills, and aware of the social, ethical and legal responsibilities, and iii. have entrepreneurial skill and a broad business and real world perspective. note: to produce entrepreneurs, it would be helpful to equip them with fianancial and business skills. I don't see this being done anywhere. Comp Sc guys are bad at writing Biz Plans and filling out MDEC forms ;-) Subject to the specialisation/major/minor in a particular Bachelor’s Degree and its nomenclature, the Specific Programme Aims for the four (4) disciplines identified in this Programme Standards are: A. Computer Science The Programme should prepare graduates who i. possess fundamental knowledge, principles and skills in Computer Science, ii. have strong analytical and critical thinking skills to solve problems by applying knowledge, principles and skills in Computer Science, and iii. possess theoretical computing knowledge in analysing, modelling, designing, developing and evaluating computing solutions. B. Information Systems The Programme should prepare graduates who i. possess fundamental knowledge, principles and skills in Information Systems, ii. have strong analytical and critical thinking skills to solve problems by applying knowledge, principles and skills in Information Systems, and Programme Standards for Computing iii. understand business requirements and have the ability to plan, design and manage business Information Systems, with the relevant technology and knowledge to enhance organisational performance. note: What? No mention of BI, Decision Support, Statitical Analysis tools and skills here? C. Information Technology The Programme should prepare graduates who i. possess fundamental knowledge, principles and skills in I ii. have strong analytical and critical thinking skills to solve problems by applying knowledge, principles and skills in Information Technology, iii. possess the ability to design, implement and manage Information Technology solutions and resources, and recognise the impact of technology on individuals, organisations and society, and iv. possess skills to integrate various technology solutions. D. Software Engineering The Programme should prepare graduates who i. possess fundamental knowledge, principles and skills in Software Engineering, ii. have strong analytical and critical thinking skills to solve problems by applying knowledge, principles and skills in Software Engineering, and iii. are competent in applying appropriate methodologies, models and techniques that provide a basis for analysis, design, development, testing and implementation, evaluation, maintenance and documentation of a large scale Software system. Learning Outcomes: ------------------- Diploma Comp. Sc. "i. write computer programmes using at least one Industry relevant to software development environment (? grammatical error?)" Bachelors Comp Sc. "... iii. demonstrate theoretical computing knowledge in analysing, modelling, designing, developing and evaluating computing solution note: There is no mention about developing SW?? Does that mean BS holders get to become Analysts and Project Managers, and the lowly task of programming is left to the diploma holders? !! Curriculum Design ----------------- for Bachelors (pg 20) % Compulsory Modules: (Bahasa Kebangsaan, Pengajian Malaysia, 8-25 Pengajian Islam/Pendidikan Moral, ?? Core Modules & Paper 46-73 Common 18-29 Speciliasation 17-55 Elective 9-24 Ind. Trng. 5-10 note: Firstly the ranges and percantages dont add up! What does the "Compulsory Modules have to do with Computing! Perhaps these could be better spent on the socio-poilitical issues related to IT, like Privacy, piracy laws. Privacy & confidentiality ethics... At a rough estimate only 75-80% of the course is dedicated to IT, and that include Industrial Trng. If that is not relevant (as it usually is) that leaves only 70-75% of the course being relevant! In the similar document for Engineering by MQA, the Compulsory Module takes up 9-15% (the upper range) is less by 10% compared to Computing! Is Computing considered a lesser subject that needs to be 'filled-up' by useless subjects? Body of Knowledge (Bachelors, pg 42) (rest is more rant...) ------------------------------------ This refers to the subject matter to be covered by the various types of courses in the various disciplines. Looking at the tables, there are glaring ommissions! And they are somewhat simplistic.... I am sure many can poke holes into this! What is MISSING!: 1. No mention of FOSS and the impact it has of the IT as a whole and espcially on the Internet, and Web apps. Also to delve further into what FOSS can offer in the various areas: - Cost Savings and Total Cost of Ownership - SW relaibility and security - Performance and efficiancy (hence requiring 'less' hardware) - Support and speed of response to issues and problems 2. Cloud Computing, Virtualisation, Software as a Service all these concepts are left out. They obviously havn't heard of Google! 3. Programming paradigms and languages - why such a narrow focus? expose students to a wider range of languages, because they encourage different ways of thinking and solving problems. Best tools for the job etc... why be a monoglot? Heard of Lisp, Forth, SmallTalk, PiLog...? Or even the wildly 'common' ones like PHP, Ruby, Python, Perl - why no mention/comparative study between compiled/static and dynamic /interpreted languages? What about JIT (Just in Time compilation), or Tracing Compilers being implemented in Javascript engines by Google and Apple/Webkit? - why talk only of OOP, what about Functional programming? and when talking of OOP why no mention of SmallTalk, the OOP language that started it all? What about Declarative vs Imperative syntax/language? - Functional languages becomes more relevant in Web apps, heard of Javascript? Its functional! So are many 'scripting' languages. - no mention of CVS (Code Versioning System) or code repositories? One of the most important 'Best Practices' in SW Engineering, how to do SW Engineering lor? 4. Operating Systems concepts - Why no mention of UNIX? It pioneered all the current concepts (well almost) of Operating Systems or has implementations of it... or Linux where you can actually look at and 'tweak; the source code? Too tough? How to do 'Research' or Innovation otherwise? - Concurrency, a big thing in todays multicore CPUs just gets a mere mention.. What about the different concurrency models: Threading vs Processes, Asynchronous (event based...) preemptive vs cooperative, coroutines and generators.. (yes these are esoteric subject, but hey BSc guys are suppose to be equipped to do research, leaving porgramming to the lowly diploma holders....) 5. Design (& methodology, and related to Proj Management) The curriculum still seems to be orientated towards classical top-down SSADM (Struct SW Analysis and Design) from Cobol days, that build large monolithic SW, that take very long cycles and are obsolete when they are released! What? no mention of Agile methods for SW development?, Xtreme Programming etc. that have had huge success on the FOSS and internet world What? no mention of UML for modelling and as a design tool? Ever heard of the term Use Cases, Class Diagrans..? How to do OODesign without UML?? What about Design Patterns? Concepts like shared, dynamic linked libraries. Frameworks and why they are different from libraries.... And using CVS and Code Repositories as an integral part of projec management? What about bug & issue tracking? And Unit Tests? Test Driven Design concepts? ...and the list goes on... no wonder we produce obsoleted manpower... -- #------- regds, Boh Heong, Yap -- To unsubscribe from and detail about this group http://portal.mosc.my/osdc-my-mailing-list-information MOSC2011 http://fb.me/mosc2011 MOSC Survey 2011 Awareness Of OSS Certification http://survey.mosc.my/mosc-survey-2011-awareness-oss-cert