What was Your Senior Project?
Caydel asks: "I am a third year CS major. This year I have a two-semester senior project course in which I can spend two semesters on a project of my choosing. I want to write something very cool, which at the same time provides quite a challenge to me, and serves a useful purpose; however, I am having trouble coming up with good ideas. For those of you out there who have done a similar course, what did you do? What would you have done differently? Which languages did you use? How many skills, that came from outside of your CS courses, did you use?"
You should develop an application that will take into account numerous global and business factors to show CEOs - in real time - what their total cost savings is based on their outsourced and offshored efforts over what they would have spent if they had not done so. Then it should give projected savings for "what-if" conditions, such as laying off more employees, moving more work overseas, ignoring more labor laws. You get the picture. It could even be a sweet little Dashboard Widget to make that dashboard crap useful for once!
You could even make a version for employees that shows them what the going rate of their work is elsewhere in the world so that they can begin to plan accordingly and start drinking that free(ish) water rather than that $4/gallon milk. Or start walking 50 miles to work instead of spending a week's salary on a day's worth of gas. Or start wearing yard trash bags instead of clothes. You know - to make the average American worker more competitive with the global labor force.
Or even better, you could build on existing TTS (text to speech) libraries by creating a utility that will modify input so that it sounds more twangish or nasal or laid back. That way call centers overseas could connect these to their PBX systems so their engineers sound more "American" to american end-users looking for tech support.
But perhaps you want to make something that will actually help *you* in the long run. In that case, perhaps you could develop some sort of program that will let you travel back in time to pick another major for a career that isn't so washed-out. I'm not sure what sort of schooling is available for janitorial work, but I'm sure there are vocational training centers you could look into!
Here's an idea... scour sourceforge for a project where the idea is great and the implementation is usable but the code and efficiency is really bad.. then rewrite it from the ground up with elegant code and at the end of it all... submit it for the rest of us to use.
FYI it doesn't have to be a web app either... lots of standalone applications out there too but of course if it can publish reports, logs and status to a web monitor app even better.
A fool throws a stone into a well and a thousand sages can not remove it.
You could try one of the ideas from Summer of Code that didn't make the cut. The summer-discuss group was full of ideas. http://groups.google.com/group/summer-discuss?hl=e n
"Scientists have proof without certainty; Creationists have certainty without proof" -Ashley Montagu
Seriously, forget all this "I want to do something really cool and useful!" stuff. That's a good way to wind up with an overly complex that takes too much time and risks not getting done.
For my senior project as an electrical engineer, I built what was just about an Apple IIe from the ground up. I designed the entire MC6502 microprocessor in VHDL, broke it up into component pieces and programmed them into different CPLDs, wired it all together with a RAM, a ROM, and a few serial controllers to take inputs from a keyboard and send outputs to a monitor, and wrote some simple demonstration software for it. I got an A
Another kid in my class hooked up an infraed sensor to a relay, and configured it so when you stand under a ceiling fan, it turns on, and when you walk away it turns off. He got an A, too.
The other kid was smart. I was dumb.
Remember, after you get your first job, no boss will ever care again, ever, what you did in college.
We don't have a state-run media we have a media-run state.
Amusing anecdote: I was an undergrad at the University of Missouri, Rolla and bored in my Senior AI course. Well, a little bored. We seemed to be spending an inordinate amount of time studying Expert Systems, a path that I thought would yield little fruit in achieving true machine intelligence.
After one of the Expert System lectures I asked Professor Arlan DeKock whether Expert Systems didn't seem a little bit too much like more sophisticated if-then-else branching systems, perhaps with a bit of if-then-else-maybe thrown in. He considered that for a little while and asked what I'd rather be working on. I said Natural Language Processing. Perhaps something like Zork.
He said, "Well, isn't that just a slightly more sophisticated version of a compiler?" He had me a little bit, but I was willing to give it a shot. He told me I'd never finish it by the end of the semester. That sounded like a challenge, so I took him up on it.
I did a ton of research on NL parsing and imperative command processing and eventually learned a ton about linguistics, Zork, object-oriented programming and AST parsing in LISP. A fantastic adventure. (Thank you Messrs. Winston and Horn)
As to when I finished, well, believe it or not I actually had a minimal space adventure coded and tested and ready to demo for Dr. DeKock 3 minutes before it was time. Of course, my other studies took a *slight* hit. 8-)
The really crazy thing was that the good Doctor was getting into and playing the adventure. One of the puzzles in the adventure prevented you from leaving a room until you gave a can of oil to a robot. He would block your way to the exit otherwise. Rather than solving the puzzle the inteded way, the professor picked up the robot and put him in his backpack. I didn't take physics into account and my adventure let him do that. He then exited the room and the robot could do nothing. The game / adventure actually let him do that and handled it properly.
I was a little dismayed that the *user* won by doing something I hadn't expected, but I was thrilled that my system was logically processing a world that in a moderately sophisticated way.
I got an A.
Then I got some sleep.
...with rice and beans on the side.
Oops, I'm sorry -- that was my señor project.