Far-fetched dreams and hair-brained schemes... Change widget code to strategy pattern for some things? Add code for widget progress indicators Calculator: Add a pretty printer that prints the names of constants. Specialized additional information Add an additional query handler like MathQuery to deal with the following types of request. This is based on the theme of a search engine being a "machine to answer questions" rather than a machine to search. Is this a good way to go Birthday of, Date of Birth - outputs answer in box Date of death of, Age of, Weight of, height of, Would need some serverside component. man program name - takes an excerpt of man page a create a link to the full page. This would need some serverside componet. This would be very useful when trying to use linux commands on a windows machine. graph of / plot of [sin x, x]- Produce a graph of the relevant plot on the client side. Very much a maybe. (twright: I have already got an experimental version of this working using plotr and the calculate functionality - but plotr doesn't handle negative numbers well). Also might count as overkill. integral of - Return the correct algebraic integral (like the integrator.com) This could be done server side using an open source algebra package like maxima of axiom with sort sort of caching sitting in front of it. solution of equation - Similar to integral of. ... in french - Does a simply look up in an english to french dictionary - serverside. when is good friday? what is the date next thursday? definition of - Shows a box with the definition from wiktionary. anagrams of - Shows a box... rhymes with - Shows a box... location of - distance from x to y - route between - probably VERY difficult to do. Meta ---- Create a test-harness that directs a browser to interact with the webpage with various browsers using COM. Could be quite difficult to do in practice. Also this might fix the design too much. Technology: firefox - see xpcom IE - com opera ? This is probably easy to do by loading test pages and looking at the DOM using javascript. Change testing to jsunit Create tests for more of the normal search functionality.