Hackathon 2006
From JhuAcmWiki
Contents |
[edit]
Goal
Get ACMers more experience creating useful things in a peer-to-peer style rather than a top-down style. 989629575813702959321758
[edit]
Structure
- 5 PM: Lightning (5-10m) talks by each project author about what the project does
- 5:30: Distribute people to projects, deal with other resource allocation questions
- 6-9: Hack (and eat? we'd need money to achieve eating)
- 9: It's "over", go home, unless you want to keep hacking. (-:
[edit]
Participation
[edit]
Project "owners"
If you have a project you want improved, edit this page (or email acm@acm if you want discussion) with:
- Your name
- A brief project description
- A concise but precise description of the specific improvement you'd like Hackathoners to work on
- A guess as to how much work that would take
- (Preferable but not necessary) A URL for more info about the software and the license it's distributed under
[edit]
Participants who aren't owners
- Email us (to officers@acm if just to leave a note; to acm@acm if you want a discussion) saying you're interested, preferably listing what your skills are or the kind of thing you'd like to work on. Don't worry if you're low on skills; we can perhaps bring you up to speed with what you'll need.
- Feel free to edit this page with a suggestion for a project. We'll see if we can find someone to lead that project.
[edit]
Projects
[edit]
Proposed
- Arthur Danskin: Triplex Invaders / Gravity (triplexinvaders.infogami.com)
- Triplex Invaders is an Alien Invaders style computer game written in python with pyopengl and pygame
- Gravity (need a better name) is a spaceship game where the player can fly around in the solar system (with gravity).
- Both games use most of the same code
- easy potential improvements (a few hours):
- distutils installer
- Add new weapons / enemies
- Gravity has no enemies right now (but most of the structure is there)
- very long improvements:
- network multiplayer (I have no idea how this works)
- Patrick Carter: HopSwap
- HopSwap is the (at least) preliminary name I have given to the book swapping website/mailing list hybrid that I have been planning based on a suggestion made to the mailing list
- HopSwap is in its current, nebulous form based on MySQL, PHP and other components of DHTML
- Only a very basic skeleton exists (or rather will by the time Hackathon rolls around)
- Basic features:
- the pretty, the UI needs a major dose of aesthetic beauty
- improving matching (currently it can only match on ISBN, but I'd like to add pattern matching on the title/subject/etc)
- other minor features as suggested by the public/other members
- Long Range:
- intelligence, some way for it to learn preferrences without the need for additional user interaction, beyond the normal trading and offering of books
- Rich Ercolani: Toaster
- The ACM toaster hasn't done anything useful in a while. This should be fixed.
- Augie Sodora: nSIP
- nSIP is a .NET implementation of RFC 3261 (Session Initiation Protocol)
- It is designed to be as extensible as the protocol, so adding support for different headers, etc should be trivial
- Is written in C#, so hopefully it will compile in Mono once they get generics working
- Work that needs to be done:
- Test for RFC 3261 compliance
- Implement some timers
- Work that needs to be done after that:
- Implement some basic stateful user agents or APIs to aid in the development of a UA
- Add compliance for supplementary RFCs
- More information can be found at http://sf.net/projects/nsip
- Augie Sodora: GibPhone
- GibPhone is a .NET (C#) communication program
- Every single aspect of the program is extensible, and if it's not then it should be
- Work that needs to be done:
- Plugin repositories: Because plugins can be downloaded by the core, the plugin manager should be allowed to check certain locations for updated versions and different plugins (like Yast, Yum, adept, etc). A standard for repositories must be defined and documented.
- The contact list will be a hierarchial data structure that is mirrored in an XML file. The schema will be enforced and published.
- Sessions must be implemented. It should be possible to obtain a list of open sessions and information about them.
- A scheme must be devised for the extension of interfaces or the publishing of interfaces. It must be possible to determine what a function does and be able to categorize it properly. This is the really really revolutionary part that involves rewriting slightly more than half of common lisp. We basically need a way to implement first class functions in C# that have a generic calling convention and can provide several generic ways to get argument data from the user.
- More information can be found at http://sf.net/projects/gibphone
- Brendan O'Connor: Risa
- The JHU Events Calendar
- See risa.acm.jhu.edu
- Proposed projects that could happen in a few hours:
- Better CSS for find_by_day
- Reworked Calendar?
- Blocker: Not yet open sourced
- Brendan O'Connor: Heraldry
- See identity.acm.jhu.edu
- Proposed projects that could happen in a few hours:
- Add public profile support?
- Implement OpenID 2.0 Messaging
- ?
- Blocker: Not yet open sourced
- Albert Lee: Google Voice Search
- Call the ACM office and get a simple interface for e.g. Google Local with speech recognition. Festival for output, perhaps CMU Sphinx for continuous recognition.
- Setting up Sphinx will be a pain
- Train Sphinx to be accurate
- Settle on a Google interface
- Make sure Festival pronounces addresses intelligibly
- Creative primitive voicemail-ish menu (or use Ravenclaw?)
- Blocker: Not yet implemented
- Call the ACM office and get a simple interface for e.g. Google Local with speech recognition. Festival for output, perhaps CMU Sphinx for continuous recognition.
- Albert Lee

