Archive for January 2011

XNA Development Progress: Brian O’Keefe

Run Dead screenshot

A screenshot from Run Dead showing the night cycle

After a long winter break, DCS continued its meetings by starting with Brian O’Keefe’s progress with his new XNA game: Run Dead. Brian brought in his laptop and hooked it up to the classroom projector. After showing us the progress he made, Brian went over the various pieces of code and reviewed the improvements. The list of improvements include:

  • stellar parallax backdrop
  • improvements to the camera’s anchoring system
  • new animations and character art
  • addition of “virtual controllers,” which allow for a more robust AI
  • introduction of a day/night cycle tied to real time

Brian discussed the different specific code changes that lead to where the game is now. Expect more details on the progress of the game on Brian’s site,!

    Binary Search with Tom Rush

    Our first meeting of the semester started with a presentation by Tom Rush. Tom brought in his copy of Programming Pearls by Jon Bentley and started discussing one of the earlier points in the book. Bentley challenges the reader to reproduce the binary search algorithm in code. Our group began to discuss the different ways to begin, and Tom grabbed a marker and went to the whiteboard.

    Conceptually, each member of the group was able to recall the algorithm, and we were able to develop psuedo-code similar to the final answer. The main point was revealed in the next section of the same page of Programming Pearls:

    “I’ve assigned this problem in courses for professional programmers. The students had a couple of hours to convert the description above into a program in the language of their choice, or high-level pseudo code. At the end of the specified time, almost all of the programmers reported that they had correct code for the task. We would then take 30 minutes to examine the code…90% of the programmers had errors in their code. Given ample time, only 10% of professional programmers were able to correctly solve the problem.”

    Tom also developed a program in Python to test the code developed by our group as well. It was a great reminder that teaching requires regular reinforcement.

    Lukas joined in near the end of the presentation and was able to show his CR-48 laptop to the group. Congrats Lukas!

    DeadCoderSociety Winter Break

    At the end of the semester, the DeadCoderSociety joined together to have a meal and break from classes. In the meantime, we’ve improved different parts of the society:

    1. The IRC channel is more active than ever before. If you’re interested, feel free to join us on Freenode in #deadcodersociety. You can use your favorite IRC client, or you can use the web-based interface here.
    2. A collaborative effort has begun that will help Stockton Computer Science students more-easily access course materials. More details to come!
    3. In an effort the keep the talks open to members unable to attend, we’ve begun taping the meetings for internal access.

    Cheers to the DeadCoderSociety!

    Second Round of Lighting Talks

    This week, Tom Rush, Jason Schollenberger, and Brian O’Keefe all shared different topics, covered in the PDF available for download below. Tom opened by discussing the A* algorithm and showing his implementation in Python. He also discussed pygame, a set of Python modules for game development.

    Brian discussed a user-powered website he created called, “Lets Hate Everything“. It’s similar to, where users can submit a pet-peeve, which are then voted on by other users of the site. It was developed in PHP and uses MySQL on the back end, as well as AJAX to enhance the user experience.

    Jason discussed the X10 Home Automation protocol and its benefits. He showed off the power of the SDK provided by X10 with a few sample scripts, which control the light in his bedroom. We were able to witness a live demonstration using a webcam he set up prior to the meeting.

    Please download the PDF available below for additional information!

    DCS Minutes