Computer Science Teacher
Computer Science Teacher - Thoughts and Information from Alfred Thompson

June, 2009

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Games As Database Projects


    Several years ago I heard a talk by a professor who taught a database course. The case study if you will was a massively multi-player role playing game. is explanation was that all a MMRPG really is is a database with a cool (usually graphical these days) front end. All the complexity of a serious database is still there. Plus there is the added complication of multiple people making updates, spreading information across multiple systems and oh by the way it has to be fast. This all came back to me as I was playing Spymaster last week.

    Spymaster is an online game that is closely tied to Twitter. Liz Lawley has some thoughts on the spymaster twitter game that explain what it is and some of the issues with it in some detail. Recommended reading even if the rest of my post isn’t so interesting. When I first started playing the game it reminded me of a project one of my students did many years ago. It was a single player simulation sort of game that allowed the player to play against the computer. It was really very simple and the user interface was crude and basic. It was a first programming course of course so that is to be expected. The problem I had with it was that it was all luck. How well you did was solely dependent on the random number generator. Still it demonstrated the concepts I was looking for which was good.

    Spymaster also is highly dependent on chance. But the chance is affected by things that are somewhat under your control. That is where the database comes in. There are many properties associated with each player so when the “attack” each other those factors tip the scales of randomness. It’s not that difficult in theory to create such a game. Creating one that scales to the level of Spymaster is of course more difficult as is building the very nice looking user interface. But I’m toying with the idea of creating a template sort of game. A simplified game that students would be able to expand and examine to learn about databases. And network communication since what’s the point if there is not multi-player activity?

    I figure that the first thing to do is to figure out the database. Well once I figure out the nature of the game that is. Right now it is just a thought in progress. I’m open to ideas, suggestions, people telling me that it is a stupid idea or a so-so idea or even a great idea. What do you think? Perhaps someone has done it already?

    BTW you can follow me on Twitter @AlfredTwo and if you want an invitation to play Spymaster let me know. I can always use members of my organization. :-)

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    How Much Feedback Can You Give On Projects?


    When grading student projects the easiest thing in the world is to assign a grade and give that as the sole feedback to the student. It requires the minimum amount of work and it satisfies the need to have something in the grade book. Doing that always frustrated me as a classroom teacher. I just didn’t see how a mere was contributing to the learning experience. And yet writing out detailed critiques and highly individualized essays just takes too much time. This is especially true if you assign a lot of projects and have a number of classes doing them. The minutes add into hours very quickly. Its a problem.

    What I eventually did was to create a little program that I used to help me grade. basically this program read in a comma delimitated text file that included comments – advice, praise, credit, things missing, etc. These comments would be displayed on a form with checkboxes next to them. I would check off all that applied and fill in a textbox that was provided for things I didn’t anticipate. As I reviewed the project I would check off the boxes and the grade would be calculated. I did have an option for tuning that somewhat but since I was usually pretty clear on what expectations were missing those requirements usually dictated the grade. I also allowed for bonus points. The results would be saved to still another file and/or printed out.

    The students received a pretty detailed report on what they did right, left out, got extra credit for and so on. This was by no means perfect but it was a start. I was also able to look at the ending comments and get a good feel for what topics were covered well and which not so well. this was very useful to me in determining where review was required and where I needed to change things next time I taught that material.

    There was/is still a part of me that would have loved to have spent some time individually with each student doing a code review of their projects. Not really practical I’m afraid. I did try to find some pieces of code worth going over with the class and I like to think that was helpful. And sometimes there was a student (or two) who really needed some 1 to 1 time – usually after school – to “get it.” Tough to find that time sometimes with students having sports and work and homework and ones one desire to have a life. But a lot of good learning (for me as well as the student) happened when those things did work out.

    I wish we could always teach everything one teacher to one student but that isn’t practical. So we walk the line between enough and not enough. What sort of things to you do to provide more feedback in less time and effort on your part?

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Latest XNA Curriculum Resources


    Highlighted XNA Resources on Faculty Connection


    XNA Lab in a Box

    Developed in partnership between the Microsoft Innovation Center in the Netherlands and Avanade Netherlands, this three day set of XNA tutorials and courseware was designed to provide over 50 faculty and teachers from the Netherlands with hands on experience of how to teach and build 2d and 3d games with XNA Game Studio in a lab environment.


    XNA Game Studio Workshop

    This material was created by Kelvin Sung, Associate Professor of Computing and Software Systems from the University of Washington, Bothell, Washington. Based on the Microsoft XNA framework, he presents a simple programming abstraction and guides participants in developing a simple 2D "Block Breaker" game. Participants will have access to all source code and step-by-step development guides.

    Learn Programming with XNA

    "Getting Started Making Games with C# and XNA Game Studio" is a programming course for senior high school or undergraduate students with no prior programming experience. It is intended to engage students with the craft of programming by the creation of gameplay using the XNA game framework.

Page 6 of 8 (22 items) «45678