I have been playing with an idea for several months now in my head. I want it to be easier for average people to program on their own. This is something that has been pursued in CS for a long time, and it is a bit of an impossible dream to many people. That said, I think this happens all the time. When I use Rules and Alerts in Outlook, I am hooking up to an event and programming against it.
Now when I think about this, I imagine the most interesting scenarios are where more than one application or web site/service need to play together. If I just want to build a whole new silo’ed application or web site, it is probably best done by full-time programmers with expertise. My mom is not going to rewrite her own Photoshop (heck I am not even going to do that). However, if my mom sells stuff on eBay and wants to automate resizing the pictures of her product line she just took and automatically posting them to eBay, neither eBay or Photoshop are likely to cooperate on her niche scenario anytime soon. You can go even further and say, why not have amazon.com show me the competing price on Walmart.com—another scenario not likely to be created by either company anytime soon. There are tools like Grease Monkey that do the latter today.
This is all a bit of a dream right now; and it's something academics and entrepreneurs have explored for years under the umbrella of end-user programming.
Tough thing likes this are worth going after though, but only if someone will use it when it existed. So I have been asking myself, what would I do if this existed?
One thing I’ve been doing lately is working on a quick utility that will crawl search engine results for instances of our product name and post that back into our team’s Sharepoint site. If the mention happens to be a complaint or failure, I wanted to put workflow around it that lets our team track it until it’s been responded to and resolved. If I was a seller on eBay, I might imagine automatically posting when I get new inventory in, and the process might automagically incorporate the latest pictures I have taken of my products (something eBay engineers are never going to know quite how to automate, since it will vary across sellers).
What would you create if something like this was available and every application and website in the world magically spoke the right language to work with such a tool?