Hacker News new | past | comments | ask | show | jobs | submit login
Computer Science in Vietnam (fraser.name)
216 points by skybrian on March 17, 2013 | hide | past | favorite | 49 comments



I have just graduated from VNU (Vietnam National University), major in Information Systems and I don't recall being taught any of these. I live in the capital so I'm sure my curriculum is the standard one, approved by the Education Ministry: studied about Windows 3.1 at grade 3 (circa 1998), Microsoft Office suite at grade 5, Pascal at grade 8 (secondary school), Pascal again at grade 11 (high school). For high schoolers, we also have to study either IT class or mechanic class for a few months. At college, we study C/C++/Java/PHP but no mention of functional languages. The last exercise is too hard and I would agree with luckymoney that it is only given in gifted school/class.

What I'm trying to say is that the story is pretty one sided. The school website[1] is currently down but I have found the school in the department website[2]. The school appears to be one of the first three national-standardized schools in Da Nang. It also focuses a lot in using IT for management and teaching.

1: http://www.bevandan.vnn.vn/

2: http://pgdthanhkhe.edu.vn/donvi/detail/48491409.aspx


Yes I agree with you. I am Vietnamese American who has bootstrapped a few startups in Saigon (Ho Chi Minh) for the past 4 years. The school described by the author is an exception, not the norm.


Ignore my prying if this is too personal, but for someone in your situation your English is incredible. How did you get it? Do you have native speakers in your family, or have you spent much time in an Anglo country?

Here's why I'm curious. If Vietnam's education system is producing students with such mastery of so foreign a language, that says something impressive about Vietnam's education system and, by extension, about Vietnam. In a roundabout way, it adds credibility to the OP as well.


I guess I graduated from a decent college and I live in the capital. Most of my peers are pretty good at English especially writing and reading. Our listening/speaking suck big time though. We have foreign language classes since grade 3: English, French or Russian (not common). The courses focus on grammar. I have heard that our grammar may be better than those of native speakers (no confusion between "your" and "you're" for example).

About myself: I just read HN, join English communities like Reddit, Quora. I try to travel but nothing much.

Regarding OP, his experience is just an exception. There are many other good or bad things in our system. And if you ask me, I will say the education in the U.S. is superior tbh.


Hey, you're in Ha Noi? I'm half Vietnamese, might be going back soon. What's your email?


Yes I'm currently in Hanoi for now. I have my address in HN profile page (not sure if you can see it?).


Nope, not visible. You should put it in the 'about' section as well.


Can't see yours. Try mine, in my profile.


What's you're Quora user? You seem like an interesting fellow to follow.


All I can say is Bravo.


Thank you. If you happen to visit our country don't forget to ring me ;)


> I have heard that our grammar may be better than those of native speakers

Not better, just closer to an arbitrary standard that has been held up as 'correct' by some subset of academics (who are not, by the way, linguists, as linguists are too knowledgeable about language to try and define what 'correct' means).


While English is taught from elementary school, it becomes much more important in high schools in Vietnam. There is at least one English-only class at most schools. Some schools do Vietnamese in the mornings and English-only classes in the afternoon, while at other schools every class except Vietnamese Studies is taught in English.

I've been involved with many high school and college exchange students from Vietnam over the past few years and some students I've been working with recently speak English at the same level as native speakers with no discernible accent. One of my current students scored over a 2200 on her SAT. It's really amazing. From my experience, and from what I've been told, the emphasis on English language studies has increased within even the last 5 years in Vietnam. Each year, the students that I work with here in the US speak better English than the students from the year before.


In Vietnam, those students who have decent English skills and score high on English standard tests study most of their English outside school. They often took extra courses regularly and study in groups. The quality of English education in primary and secondary schools in Vietnam is much much worse.


>> There is at least one English-only class at most schools. Some schools do Vietnamese in the mornings and English-only classes in the afternoon, while at other schools every class except Vietnamese Studies is taught in English.

Those are international schools. Their tuition are usually very high, and way out of the price range for most families in Vietnam. Normal schools where I live (Hanoi) only teach in Vietnamese.

We do have English class once or twice a week where we learn the basics of the language. But it does not provide us enough exposure to the language. To improve our language skills, we usually have to take extra classes after school.


There are a great many high schools that supposedly teach foreign languages. Very few (none that I've seen) of them produce anything remotely like this. In fact, there are many university graduate native speakers of English who can't write as well as sondh. This is something truly extraordinary and it makes me want to learn more about Vietnam.


What an interesting article! That set off my bullshit detector about half-way through.

"School boards fight to keep CS out of schools, since every minute spent on CS is one less minute spent on core subjects like English and math. The students' test scores in these core subjects determine next year's funding, so CS is a threat."

School boards fighting to keep CS out of schools? Huh?

I followed the link, and found a story from 4 years ago about how kids can use the internet but don't know much about it. The most supportive paragraph I found is from a quote by Computer Science Teachers Association's Chris Stephenson "Stephenson said computer science classes might be an unintentional casualty in the push to increase academic standards. Computer science is not considered a core subject by the No Child Left Behind law, which influences school priorities and budgets."

Looks like the CSTA were the ones pitching the piece to the Post, but who knows.

What I do know is that we need more Computer Science taught in schools, and the U.S. is definitely falling behind. But what I don't know is this idea that school boards are actively fighting CS in the schools. Not until somebody can show me something better than he did. (I'd also caution against stories about one school district here or there being extrapolated into some kind of a national disease.)

Please pardon the nit-picking -- this was a really good article all-around -- but this is an important subject in the states. The conversation over here is not advanced by throw-away accusations from left field.


If CS isn't on the list of things that we measure, doesn't it stand to reason that it's going to get the short end of the stick?

Whatever you measure, that's what you get more of, sometimes in a way that is not at all what you were expecting, and often at the expense of things that aren't measured.

We've all seen management-by-measuring go sideways in the business world, why should schools be different?


Having CS as a "core" thing that everyone must learn might actually be very unfair and destructive. Even at the collage level where people choose to go into computer science we have a very high failure rate and people still aren't sure why. I doubt there are enough teachers up to the task, also anyone that is qualified to teach CS is also capable of making twice as much money by not teaching CS.


> What I do know is that we need more Computer Science taught in schools

Why?


I can tell you it wasn't available in my high school.

We had one class called "Web development" that was nothing more than playing with a WYSIWIG editor. One student was kicked out for creating their webpage in Notepad, because the teacher thought it was "hacking". This was discouraging.

I enrolled in the local community college during high school and took a "Programming 101" class. We learned how to use if statements, variables, functions, simple loops, and almost made it to arrays after _3 months_. 102 and 103 weren't much better. This was also discouraging.

The head of the CS department eventually told me not to waste my time taking the CS classes there, that they were worthless and won't transfer, and I should wait until I get to a university.

Is this what we want?


You can't understand and be productive in today's world without understanding computation.


Many, many people are.

It might not seem like it when you work entirely with computers but it just isn't that big a part of what most people do day to day. A computer is a tool, no different than a hammer in most peoples jobs. They read their email, browse some websites and do what ever specific thing in whatever specific application their jobs tell them to. They don't need to know anything about what the computer is doing and they don't care to know. Cars make more of an impact of peoples lives than their computers do but we don't have someone constantly saying how we need to make everyone a mechanic. Eating is more important to life but we don't have a movement to make everyone a chef.

Knowledge of how a computer works or how you make it do something someone else hasn't written an app for is just not at the same level that reading, writing and arithmetic are. Step back from what you do all day and actually watch what people do. Knowledge of why stuff happens on the devices they use just isn't that important. They know what button to hit and that's all they need to know to be productive in what they are doing.


Computation should be at the same level of importance as reading, writing and arithmetic, given that no other paradigm is contributing more to job obsolescence right now.

But, sure, you can be productive without understanding computation. I should have said "maximally productive". Even a chef benefits from understanding how recipes mimic algorithms.


> Cars make more of an impact of peoples lives than their computers do but we don't have someone constantly saying how we need to make everyone a mechanic

Actually I have seen many care enthusiasts who criticize people that don't change their own oil and spark plugs.


Although I appreciate the effort that went into developing Blockly Maze, I am unclear as to why it was developed, rather than suggesting that Scratch be used to teach elementary school children in Vietnam. The Scratch development environment is available in 44 different languages, including Vietnamese. It is free to download from the MIT website. It's a fantastic tool for teaching programming concepts to children. Both of my children, ages 5 and 9, have been busily creating their own games and animation using this tool. Are there restrictions that would prevent the export of Scratch to Vietnam?


Neil wrote Blockly and the maze demo for other purposes. (He has shown it off at Maker Faire before.) For this project he just adapted it.

https://code.google.com/p/blockly/


I hope the OP can go here and see this, but I am currently in Vietnam as well. I am a CS student studying aboard in the US, but I was born and raised in Vietnam. I am currently on vacation. Hope we can get in touch :)

And yes, I can confirm these education is true. However, the level of the last problem was taught to very few chosen gifted student in a very limited selected school. I do remember me learning about matrix, dynamic programing, graph theory, various pascal optimization for quicker run. The rule was, if you program run more than 1s, you're out(except stated otherwise).


I'm not sure (primarily because I can't see the images) but that sounds like a basic flood fill question doesn't it? Does everyone in Vietnam do competitive algorithmic programming? (That sounds like what you're describing.) That's really interesting, because where I'm from that's typically taken only on interest, and there aren't that many interested.


I studied at Ha Noi University of Science, High School for Gifted Students and I can confirmed about algorithmic programming part. People consider math/algorithmic stuff is a major skill for CS; without it, do not even consider going CS major.


Rant Ahead....

I'm waiting for the person to pipe up saying they are going to outsource their development to Vietnam after reading this article. Stuff will happen, the hype will be replaced with reality and there will be lots of work cleaning up the mess.

I have worked on two rails projects that were done by two different teams over there. Both were so bad that the only real answer was to rewrite from scratch.

Are there good developers over there...yes. Those developers will be the exception like they are everywhere in the world.....and won't be the $10 an hour guys. A good educational system helps, but at the end of the day even if you are really good at solving academic problems (which a lot of engineers worldwide are not), unless those skills are combined with discipline such as TDD, the ability to interface with a client and understand the domain....... a lot can break down.

I have no doubt that what the author saw at this one school was true. But what if you went to one of the best elementary, high schools and colleges in the US.....which happened to be clustered in the same area....and then said that the US system is awesome after having visited a really advanced magnet school and the Stanford computer science department....both on guided tours by the administration where they are going to put their best foot forward and only show the gifted classes.

After all, the quality of the Stanford CS courses must be representative of all American schools such as ITT Tech and your run of the mill 2 years party schools.


Sorry to hear about your bad experiences. If you need a high quality partner in outsourcing to Vietnam, please shoot me an email codersquare.com AT gmail.com . I'm the CTO at codersquare.com . A promise made that you won't be disappointed


Hey codersquare, your web site navigation is broken.


"I asked what a teacher's salary was. $100 per month. So I went to an ATM and bought them a second teacher for the next year."

That's got to feel good.


Actually the general situation in VN is not really different from what author described about US CS education for high school students. In VN, CS is literally translated and understood as Information Technology. Students, parents and teachers still focus primarily on natural science subject like Math, Physics and Chemistry because they are needed for the University Entrance Exam, considered as the terminal goal for every student, as well as traditional subjects required for high school graduation. For CS/IT, a typical high school student in VN most likely never know the advanced topics shownn in the article. They are only taught the basic of Pascal at best, as well as daily usage of MS Office, Windows, DOS. Only students enrolling in specialized classes will get trained in those topics, usually for national/international competitions. Another thing to note is the primary school mentioned by the author is located in Da Nang, arguably the best city in VN. Its local government recently has invested a lot in education. It is good to see their effort showing very promising result.


Your article's great! I'm an IT guy in Vietnam and I really appreciate your help with IT teaching for Vietnamese students.

However, there're some points which I don't agree with you:

1. This school seems to be a good one in a great city in Vietnam. No way they're lack of money to hire enough CS teachers to teach their students. No offense, your help's great. But I just don't agree with the reason they (the school) told you.

2. Broadband Internet connection is cheap and popular in cities nowadays. A lot of Vietnamese students have ADSL or Fibre connection at home, so I don't think the school "can't afford a reliable internet connection". There're even educational service plans with much cheaper price.

3. The CS program you mentioned in your article is the advanced one.

Again, I love your work. Thank you ;)


No way they're lack of money to hire enough CS teachers to teach their students

The level of bureaucracy is unmeasurable. Money leaks.


I walked into a high school CS class, again without any advance notice. The class was working on the assignment below (partially translated by their teacher for my benefit afterwards). Given a data file describing a maze with diagonal walls, count the number of enclosed areas, and measure the size of the largest one.

What the OP was seeing is probably a special class in a high school for gifted students. Since winning national and international student competition is kind of a big deal in Vietnam, most major cities and provinces have such a school, but it's not easy to apply to them. All schools require applicants to take some tough and competitive entrance test that may have math problems harder than those in SAT or even GRE. As a result, the students who get in are usually the best of their ages, and they will be trained rigorously and restlessly for three years with the sole goal of winning a major programming contest such as IOI. That means they are the exception, not the norm. Most high school and even university students in the country can't tell what a loop is, let alone solving algorithmic problems.


Another Vietnamese here. I have been oversea for a while so I don't know how exactly things have changed over the years, but in my time things were totally different from this. When I was in primary school, they didn't teach anything related to programming. Only when I got to grade 8 that we got to learn Pascal (which I decided to pick up myself since grade 6). Most of my friends struggled big time with it in the next 5 years. They didn't even understand the basic concepts. But I guess the one to be blamed is the way programming was being taught back then. It did not create any motivations for people to study. So I'm glad that it has changed, for the better.

Regarding the part where author said "Vietnam is a 100% Windows XP monoculture" is not quite true. Especially in the recent years. Many people have adopted Windows 7 and even Windows 8, and stuff like Android smartphones or iPhone are getting more and more prevalent. I guess what happened is that schools don't have the budget to upgrade both software and hardware. That will take some time.


I would say Computer Science education (K-12) in the United States is far from uniform and that the author unfairly generalizes. I moved around a bit as a kid, and these were my experiences:

Grades K-1 (Lincoln, NE): Messing around and playing with Apple eMacs (think stuff like Kid Pix Studio)

Grades 1-2 (Fremont, CA): Pretty much nothing

Grades 2-3 (La Habra, CA): Pretty much nothing

Grades 3-5 (Palo Alto, CA): Using some older Apple hardware, by this point we were doing written assignments in Word.

Grade 5-6 (Irvine, CA-stayed here through high school): A dedicated "Computer" class (met maybe once a week) where we learned the Office suite and practiced touch typing. I learned from friends that they had actually been practicing touch typing from a very early age, so it was probably standard to be at about 50 wpm in Grade 5) This was the first time I recalled having very large computer labs in school.

Grade 7: A daily class period (for one trimester) where we learned very very basic html (FRONTPAGE - LOL) and other things. As a kid who had a budding interest in computers at this point, I felt this class to be unbearably slow paced and rudimentary. So slow paced in fact, that I don't even remember what else was covered because I didn't learn anything new.

Grade 8, 9, 12: Nothing, but basic computer literacy was necessary for things like writing papers and presentations.

Grade 11: Took AP Computer Science, which in my opinion condenses much of the "early start" CS the author mentions into a single year later on. I'm not sure which is better, but I'm pointing out that if you have an AP CS course, it's likely going to cover all of the rudimentary stuff very quickly anyway. For those unfamiliar with AP CS, it covers the rudiments of OOP (inheritance, polymorphism, etc.) as well as some of your basic sorting algorithms and easy recursion. Also took a C++ class during this time at a local community college (transferable units), which in my opinion, was even LESS rigorous than AP CS.


This post does not describe the typical school in Vietnam. Unless it has dramatically changed over the last 6 years, last I recall, the most programming was taught in high school was some Hello world and how to use loops. Having said that, I was selected (via an MS Excel test) into a "gifted" team since 8th grade that was trained algorithmic programming to compete with other school districts. But that's not typical and is in no way the regular ciriculum.


I'm Vietnamese and when I was young, I was not taught those thing :) probably they are added recently


Just for fun I took a crack at the maze problem and ended up with a (quasi-)linear time union-find solution. Maybe I over-engineered, but I'm very impressed if schoolkids are really learning about algorithms like that.


Inspiring article. Also looking back to the root of the site, I'm in awe of how much one person can blog in a quality manner! Pretty jealous!


This guy should give a TED talk.


Wow! And I used to think India is great..


It's pretty much the same in India: LOGO -> BASIC -> Java + problem solving.


Sadly, the next step appears to be:

-> using Turbo-C++ for DOS (to learn pre-1998 C++) at university


They still have it installed on some of the PCs at my school, but it's never used. But yeah, they way they deal with whatever they do teach is pitiful. No generics, exception handling, threading etc with Java. :-/ (worst part: kids are taught to tack on "throws IOException" at the end of the signature every method "where they want to use I/O" without any explanation of why that is the case.) They still use an ancient (and bugged) version of JDK and insist upon using deprecated classes.

The main problem here is that the teachers themselves aren't up to date and don't really know what they're teaching that well.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: