Wednesday, March 20, 2013

March Madness for my CS students

I'm trying something new this year: getting my computer science students to participate in March Madness by filling out a bracket on Yahoo. I have 70 students this semester (10 are female), and so far only 6 have joined in. I'm a little concerned that basketball may not be all that popular among my techie students, but I have just hit gold: March Madness explained with Star Wars:

In case you were wondering, who did I pick to win? With nothing but seeding information, preferences to states I used to live in, and a random number generator, I devised an algorithm which picked Louisville over Georgetown. Yes, there are much better ways of picking a bracket.

I'll update this post once the tournament is over and reveal which student(s) beat me.

Update on 3/25/13

Nine students decided to participate. A few others wanted to, but Yahoo produces some pretty lame error messages and is not helpful in redirecting users to the right place to join a league. I'm currently in first place, but considering my overall points possible is much lower than others', my fall in the rankings is assured.

Update on 4/1/13

Due to some big upsets, I've managed to stay on top. I only picked two of the final four (Louisville and Syracuse), but that's apparently much better than most since Yahoo says my bracket is in the top 99th percentile. Thank you, Syracuse. Did you see the poor kid from Louisville break his leg? It was like watching Joe Theismann all over again.

Update on 4/9/13

Louisville's impressive win over Michigan secured my first place finish. Had Michigan won, one of my CS1 students would have been the winner. Yahoo reports by bracket is in the 99% percentile... probably the best bracket I've ever had. However, I don't think my students were quite as thrilled as I was.

Monday, March 11, 2013

Back from SIGCSE 2013

Yesterday I returned home from the SIGCSE 2013 Technical Symposium in my hometown of Denver, Colorado. This is the forth time I've been able to attend this conference which brings together over a thousand CS educators to share the latest research and innovations in computing education. This year's conference was very insightful, and it was especially nice being back in the city I grew up in. The sun was shining with a comfortable 65 degrees when the conference began, and it was snowing heavily on the final day. You just don't get weather like that in Arkansas.

I quickly wanted to jot down some of the take-away points:

  • Use Live Coding whenever possible, and avoid discussing completed programs which bore the daylights out of students. I currently write a lot of code on the board, but I'm becoming convinced that my students might be better off if they watched me actually code in the IDE and run it.
  • Start using version control in my upper level courses since it makes working in teams much easier, and employers are looking for students who are comfortable using it.
  • Introduce user experience (UX) evaluations in my GUI course. We talk about how the user feels theoretically quite often in the course, but it can be a real eye-opener to witness what a real user thinks about your software in a formal evaluation setting.
  • Integrate one of the nifty assignments or something similar into my CS1 course. I especially like the Twitter Trends assignment which introduces students to Data Science. As the moderator reminded us, "The one thing students are most likely to remember about your course are the projects."
  • The next time I teach a game programming course, use the Kinect which has a great SDK and is available to educators for $150.
  • Will MOOCs be the end of the traditional university? Short answer: No
  • The inverted classroom seems to me to be the future of education. I would love to try it, but I can only imagine the amount of time it must take to create all those videos. Three years ago I spent a few months creating instructional videos for a book publisher, and it turned out to be a much more time-consuming task than I had originally envisioned, especially for a perfectionist like me. And the problem with CS is that our tools and topics seem to always be in flux, so a video may only last you a few years.
  • Harvard's CS50 course has got some great online notes and is even filmed. Next time my CS1 students complain my course is too hard, I'll point them to the CS50 website. wink
  • Microsoft's TouchDevelop is promising for writing mobile apps, but it frustrated me when I tried to use it. For students who are new to programming, it might not be that bad.
  • Zyante's animated, interactive textbooks are intriguing. Must evaluate further for my CS1 course.

Finally, it was good to see some old friends. For those Denver friends I did not get a chance to see, I'm sorry, but I hope to return soon with my family and catch up with more of you.