Brandon Diamond
CS190

Project Titles

1. Healer: Video gamers, ages 13-65

Healer is a video game concept that leverages a number of new ideas in team-oriented real time strategy. By utilizing two modes of play, Healer will encourage players to work together and collaborate in ways that are atypical of the current state-of-the-art in game design. Thus, Healer is useful in the sense that it presents an engaging and fun gaming experience.
The specific users of this game are all video gamers of a sufficient age to be interested in a video game of this nature. The game idea itself- an interplay between the evolution of complex units using genetic algorithms and learning, and traditional strategy gaming- will require a variety of disparate skills and can certainly be scaled up to a PC-scope project.
Further, from the complex graphics engine, to the physics and AI involved, the game is certainly divisible into a variety of compelling components, each of which must work together in real-time. Further, C++ would be the de-facto standard for implementing a game of this nature, and it would be no trouble doing so under Linux.

2. WireWorld: Netizens, all ages

WireWorld is a vido game / metaverse concept that draws heavily on several ideas touched upon by some modern MMORPGs such as WoW and SecondLife. Essentially, WireWorld is a minimalistic virtual realm with the sole “currency” of Wires. Wires are used to build interfaces and objects as well as the components that might be assembled to imbue said objects with behaviours. A graph-based programming language will be implemented to allow “non-programmers” to jump into the construction process.
As WireWorld will be a new approach to the metaverse concept, it is hard to predict just what type of user’s would be most drawn to the network. Early-adopters would most likely include gamers; once the environment catches on, other users seeking a more immersive online experience as well as the creative opportunity presented by the Wire mechanism would most certainly begin to log-on.
This project is certainly difficult and complex enough to be a PC-scale system. It is also divisible in that there are a number of graphics, networking, and programming languages components that can be implemented seperately.
C++ would be employed and a multi-platform client implemented. The server will be implemented under Linux.

3. HyperJAX: 13-50 year old internet users, non-technical users

HyperJAX is a web-based HyperCard clone that affords non-technical web users the opportunity to build web applications easily and effectively. Applications could be for personal use, distributed use, and shared quite easily. A community can be structured around the application builder, and built using Java web technologies.
For the first time, non-programmers will be able to drag-and-drop interfaces together and draw connections between buttons and actions. A scripting language can be implemented for advanced users. The capabilities of HyperCard will be mimicked to provide an intuitive and proven interface to users. Certainly, applications should be usable from the desktop just as easily as they might be used by groups of people over the internet.
Implementing this system would certainly require quite a bit of work; there are programming languages issues, UI issues, web programming issues, and data management issues. A variety of components can be extracted, each presenting unique challenges to the programmers involved.
While this project doesn’t use C++, I understand that non-C++ projects have been considered in the past. If indeed C++ is a requirement, we might build a “pallette-oriented IDE,” essentially the same tool but restricted to a desktop environment. This project would be equally fun: we would strive to build a full-fledged GUI-producing scripting environment that would allow for rapid prototypes and “pallettes” to be constructed in no time at all. Even under Linux.

4. Group Management - Members of various clubs; student government; administrators; professors

While this idea is engaging, as presented here- it doesn’t seem too different from some systems that are already available. Perhaps a heirarchical approach might be taken to allow for “officers” and the delegation of tasks. In other words- it seems a bit more useful to build a system for the administration of clubs with a front-end for plain old club members.
An example of such a system is Bugzilla; however, this is a software QA suite. I do not know of any system that allows a president to submit tasks to a vice-president or secretary; a system that allows expenditures to be logged and so forth. This system would have to be customizable and probably ought to be web-based.

5. Minor League Scheduling - Baseball players in the RI area; minor league-ers; baseball fans.

I like that this project benefits a member of the community. However, I’d feel better about applying my skills (and those of my peers) to a project that helps students or benefits a particular charity. In other words, while this project might be fun- I’m a little hesitant as I would suspect some schools nearby might benefit from a similar project- one to help teachers, or parents, or even students. I think we should discuss some community projects, and I think we might consider some more charitable options.