New-age Transactional Systems - Not Your Grandpa's OLTP
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Gavin Terrill on Jul 31, 2007
I'm a big fan of incremental search. But incremental search isn't just for navigating large text documents. As applications get larger and more complicated, incremental search is also useful for navigating the sea of features that modern applications offer.Jeff looks at the Ribbon control introduced in Microsoft Office 2007 and suggests that an incremental search feature would be solution to the problem of not being able to find a command, if the command is not installed in the ribbon. In fact, Microsoft created an add-in called "Scout" that provides this functionality, but have decided not to release it and at this time it is unknown if it will even be available as a separate plugin.
If the evolution of the web has taught us anything, it's that search inevitably becomes the dominant navigation metaphor . Simple applications may be able to get away with menus and toolbars, or better yet, a ribbon. But as the application grows larger and more complex, it's faster to incrementally search for the feature we need.While incremental search has been used extensively in the past by programs such as emacs, the feature has started to appear in the broader context of operating systems and websites. For example, QuickSilver is often touted as the quintessential tool for OS X. Vista has jumped on board with the Instant Search feature. Apple recently revamped its website and now features incremental search that filters content from the site, listing shortcuts grouped by areas of the website - products, the apple store, support etc. In the follow up comments to Jeff's blog entry, Christoffer Lernö notes:
After the redesign of Apple's website, it is now MUCH faster and convenient to use search than to actually navigate to the subpage you want.Are we experiencing a paradigm shift in application navigation? Are the days of traversing a maze of menus and remembering convoluted keyboard shortcuts numbered? What are your thoughts?
Agile Practices to Improve Project Management Organization (PMO) Effectiveness
A practical guide to choosing the right agile tools
18 agile and lean practices for effective software development governance
Improve Java Garbage Collection, Runtime Execution, and JVM visibility with Zing
Are the days of traversing a maze of menus and remembering convoluted keyboard shortcuts numbered?
I think that incremental search can act as a bridge between keyboard shortcuts and menu traversal. For instance, I wouldn't want to search for an "apply bold" action when I have internalized the CTRL+B shortcut. It does seem to fit well when you want to trigger a seldom-used action (mail merge, anyone?) that previously required a menu hunt to activate.
FWIW, I've written a small paper [1] on this, in 2005. It does not much more than drop a few ideas, but it is highly related to what you have written about and paints a slightly more comprehensive picture.
[1] Axel Rauschmayer, "Semantic-Web-Backed GUI Applications"
www.pst.ifi.lmu.de/%7Erauschma/bib/#rauschma:is...
The Search box in OS-X which utilizes the Spotlight technology is used in many interesting places including the System Preferences (Control Panel for you Windows folks).
I don't know how often I've been sitting in the various incarnations of the Windows control panels looking for a particular feature. In OSX I just type in a keyword or two and get a nice subtle highlight over the control panel icons that relate to that keyword.
I wholeheartedly agree with this trend, and as this shows I don't think we need to go as drastic as the ribbon, with its initial but tremendously alienating effect on users. Of course Microsoft has had a history of this... Don't know how often I've seen a novice user open up one of my menus on Windows looking for a function that's there on their computer but doesn't show up on mine :(
It's a great old idea. Emacs has been using this "next UI paradigm shift" for more than a decade.
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
5 comments
Watch Thread Reply