I recently attended the first Parallel Programming MeetUp in Santa Clara California at Intel HQ. The event was put on and hosted by my colleague, Parallel Computing Community Manager, Kathy Farrel. The event was attended by developers, students and academics and was both informative, in that it brought together folks from various segments of the parallel programming community, useful, in that it helped them build contacts with teach other and with Intel and fun. There was even pretty good food considering it was a corporate event ;-)
For students in an undergraduate computer science course-who most likely have no “real world working experience” in their chosen field of study-it is extremely difficult for them to understand why what they are learning is important. They are left wondering how they can apply their skill-sets outside of the classroom. I personally remember that some of my favorite classes at UC Berkeley were rich with examples and stories about how concepts in the lesson plan mapped to the world outside my college environment.
Sure they are complicated, feature many lines of code, involve frameworks, engines, and systems spanning various facets of computer system. But that's what makes them the most appropriate vehicle for education. Let me elaborate.
I've known for awhile that I could sometimes infect a student; get them working on a problem/project/idea, where they spend lots of time outside of class on this effort. It hadn't occurred to me till today that this notion could be generalized to one student infecting another student.
The culprit catalyst has a two word title: Project Euler.
It was a sunny day last Thursday in Paris after a very stormy night, I was sitting in the sun filled conference room with 80 deans and Rectors of the top universities in Europe attending the European Computer Science Summit where the first Keynote speaker Dr.