I've come up with several long term projects that would be fun to work on. Many of them are doable in a 10 - 20 year time frame, even if I'm the only one working on it.
This software entity would tutor a student is various subjects, and would adapt itself to the student. This would require a personalization engine of some sort. The biggest problem is that what I envision would almost need a complete AI. Granted, I can go very far without one, but not as far as I want. And one of the criteria I'm setting for myself is that any large project I choose has to be completable to my specifications.
This bit of software would create an entire RPG game. A story would be generated from a set of story elements, which would be refined and expanded upon in leter versions. There would be a wode variety of game play options. The graphics would start off simple, mostly to test it, and get better later. New expansions would allow a broader array of themes, such as western, eastern, science fiction, historical, etc. When creating a new game, the user can take elements they enjoyed from an older game and reuse them, effectively making sequels.
This project would require a broad array of knowledge and skills far beyond programming. It's a lot of generative content for story, audio, and video. The program itself would be big, but the games it generated would be bigger, I think. Granted, the program would have all of the graphics and audio saved, but the game has to have everything put together.
This is the project I seem to come back to. Each element is doable, if daunting. The biggest issue is bringing it all together to create a playable, and enjoyable game. I'm really leaning toward this one.
Find Your College Website
Create a website that helps a person find a college or university, focusing in the US, for now, that gives a comprehensive search. Environment, specific classes, research interests, town population, temperature, etc. There would be many options to use, including perhaps a rating of how important a specific search criteria is. Want a university near a community college, coffee shops, a park, is in Georgia, offers a French Literature major with classes in French culture? Just run the search. All colleges would be rated. If nothing is returned, alternate recommendations would still be returned if a single criteria was changed/made more open.
This is another fun idea that can be expanded. Want to find a city to move to based on certain criteria? The same setup can be used. Make it part of the same website, even. This would be a smaller project, and might be fun to do on top of a larger one.
Virtual Halloween Town
This is a combination of two ideas: a Halloween town diorama and a virtual world. It wouldn't be one of those stupid towns with the odd skeleton, witch, or vampire, like you can buy in stores. This would be a town like what you would find in New England, except every night is Halloween. Kids would go door to door for candy, teenagers would explore a 'haunted' house just outside of town, and everything would be explorable. Each person would be unique, as would each house. This is a more personal project, not something to really show the world.
3D Space Shooter with Spoken Commands
This space shooter would mostly operate as any other space shooter (follow behind/inside the ship and shoot the bad guys), except that it would allow dynamic shielding, letting you change where the energy is flowing. Other features would include atmospheric controls, asteroid collisions, ejection system, realistic model of the solar system, etc. It would be the spoken commands that would set it apart from other space shooters. Imagine being tailed, systems failing, and your wingmen trying to help. To gain time, you could say something like, "redirect shields to aft" to gain that time.
This system would take an image of a music score and give two files: a playable audio file and a MusicXML file. Some software like this exists, but mostly just makes the MusicXML file. I actually have milestones worked out, such as what each version would be capable of.
Sign Language Tutor
Here is another fun one. Using a bit of computer vision, I could create a ASL translation system using an HD webcam to help people learn and practice ASL. Granted, I don't know ASL, but I could learn while creating the system. It would be a useful program for many people and would encourage more to learn the language.
Japanese Language Tutor
Granted, there are a lot of language learning software out there, some Japanese specific, but mine would be a bit more complete than most of those. It would offer a great many options, including the tried and true flash cards and rote practice as well as simple games, reviews/quizzes, and audio/visual elements. I would also try to incorporate some of the elements from my Intelligent Tutor idea into it.
And that is my current list. I'm curious to see what any of you have to say about these. I know one of my faithful readers has thought about the first project on the list. I'll list any others I come up with, after waiting a few days to rethink the sanity of the idea. Case in point, one of my ideas was a complete AI system. I did mention that the one I choose needs to be completable, right?