Programs to learn on?
August 22, 2010 3:36 PM   Subscribe

I'd like some program ideas to implement.

I'd like useful programming project ideas (Windows and web) that one person could feasibly implement and that actually solve problems or meet some need.

Currently I'm working on a library app for my personal use that will store cover images, a rating, reviews, etc. I'd like more ideas like that.

The goal is to have a useful and reachable objective so I can stretch my programming knowledge and learn stuff.
posted by jsturgill to Computers & Internet (11 answers total) 8 users marked this as a favorite
One that I did recently when I moved to a different platform was a grocery list app for my wife. The database end of the app manages a list of locations (aisles and such) in a grocery store, a list of items that references their location, and an inventory of items on-hand. As the items are used, my wife uses the application to update the inventory. When we're ready to go shopping, she can print a list of items that we need (based on their "threshold" level) that is sorted to match our normal path through the local grocery store.


Worked well for me. YMMV.
posted by ElDiabloConQueso at 3:59 PM on August 22, 2010 [3 favorites]

Write a web app that allows people to play Nomic (i.e. that allows for the maintenance of a constantly-shifting game ruleset with detailed histories of rules amendments/deletions, comments, multiple editors, and arbitrary extensibility e.g. subgames).

Yes, this is a selfish request. Minus the last pony feature it wouldn't be a complex task, really, but I imagine it'd be a time-consuming one - certainly an excellent way to learn database-backed web programming.
posted by waxbanks at 5:21 PM on August 22, 2010

Alternatively, try building your own Wikipedia, or eBay. Note that this is a traditional midterm project in some undergrad web-programming classes at MIT.
posted by waxbanks at 5:24 PM on August 22, 2010

Currently I'm working on a library app for my personal use that will store cover images, a rating, reviews, etc. I'd like more ideas like that.

The members of my DIY book scanning forum would likely be interested in using such an app, as would the members of mobileread. If you want feedback or users for this specific app idea, those would be good places to look.
posted by fake at 6:06 PM on August 22, 2010

I would like to see a webapp that takes a youtube feed and turns it into a podcast RSS feed. There are some challenges involved here that I've not invested the time to overcome, and the fact that everyone who claims to have done it now fails suggests it's not feasible anymore. You'll get to learn about xml processing, how podcasts work, and more.

I'd also like to see an personal inventory app that can figure out market value for things. Primarily my video game collection. There's lots of different open source inventory / library / collection systems, and at least one that can link to amazon, but none that will systemically get quotes from multiple sources and take the highest.

I'd like a system that monitors a specific page and produces an RSS feed of changes. I've hacked up an 80 percent version, but it's a good exercise and there's lots of room for improvement. You'll learn about XML processing, proper RSS generation, web monitoring systems and error conditions, and maybe version control systems. And if you set up Selenium so that you can monitor ajax results, that would be amazing. And you'd learn about web app testing tools!

I'd be great if someone hacked calDAV to support dependencies between tasks. You'd have to review the current protocol and determine how to extend it and the client to support this. The end result would be a pretty useful backend for project planning.
posted by pwnguin at 6:28 PM on August 22, 2010

It would be great if you built an add-on to Outlook that supplemented Tools Rules so that e-mails [in a user-defined category] get deleted after x days automatically, e.g., newsletters that become stale, etc. Right now the only option is to build a rule stipulating a specific date, not a rolling window.

Speaking of Outlook, it would also be great if one could stipulate that file attachments from [some category the user defines] should be automatically downloaded to [wherever].

It would also be wonderful if you built a program that suggested tags for .doc files upon initial and subsequent saves, based on content and format.
posted by carmicha at 8:46 PM on August 22, 2010

Start small. Build little apps that help you—ElDiabloConQueso's comment is excellent.
posted by sonic meat machine at 9:11 PM on August 22, 2010

Agree with sonic meat machine. You're probably already quite a bit more advance than I am. I just built a seemingly trivial C program to keep track of when X man-hours in a particular room are expended with people entering and leaving. (A tedious task I sometimes have to do by hand at work.)

On the way I ended up having to get familiar with time.h. Then I wanted to add this other feature so I taught myself some signal.h. Next I'm going to convert it to a GUI mac application with XCode and objective-C. Then maybe the ability to do multiple rooms at once. Maybe a network server or web application, who knows? Maybe someday it will turn into a homemade from radio shack parts single-task device.

This is all for fun and learning. I can't actually take my computer or even an iPhone to work with me, and can't install programs on the computers at work. I'm just doing it for the challenge.

Start with a simple thing that you would use. Then start adding bells and whistles until your application is clearly ridiculous. But at least you learned how to do it. It isn't always as trivial as it seems.
posted by ctmf at 10:00 PM on August 22, 2010

I have a requirement for an application which works with Windows Media Center. In short it needs to keep details of TV shows that have been recorded as part of a series and then delete any shows scheduled to record that have exactly the same title and description.

The reason for this is that outside of the USA, the series link information is pretty dire which means that rather than recording an entire season, you get every single episode of a show ever. Imagine setting up series link for CSI Miami and getting 22 episodes recorded every week, it really is that bad.

In terms of stretching yourself, you'll need to learn how to access the metadata of WTV files (using an external library) and how to access and manipulate the Windows Media Center object model.

It's something I can write myself, I just haven't got the time and the thousands of people who use Windows Media Center outside of the US will love you for it.

PM me if you want more details.
posted by mr_silver at 2:36 AM on August 23, 2010

Good IOU sites like Billmonk would be great to see on the web more often. You could incorporate some of the work you've done with your library app, aimed at providing ratings/reviews for borrowed entertainmen.
posted by samsara at 11:12 AM on August 23, 2010

Response by poster: Thanks for the suggestions.
posted by jsturgill at 1:19 PM on October 31, 2010

« Older I Hate McAfee   |   Cheaper, comparable alternative to iPod classic? Newer »
This thread is closed to new comments.