There has been a lot of buzz in the Force.com community about Visualforce ever since this new feature was introduced at Dreamforce in 2007. Many developers were excited about the presentation capabilities of Visualforce Pages, which allowed them to leverage the powerful functionality built into standard Force.com applications in virtually any user interface scheme they could imagine.
But the technology behind Visualforce includes more than just a flexible way to present pages. The ability to control the way that any page interacts with Force.com objects is, in my humble opinion, even more exciting than the interface flexibility presented by Pages.
A small proof of this flexibility is offered up in a series of articles describing how to implement dependent picklists in a more flexible manner. What will look, to your end user, like a standard set of declarative dependent picklists is actually implemented with a handful of Visualforce code. However, the values for those picklists, as well as the dependent relationship, come from two related objects, which means you can add values, and specify dependencies, without going into the Force.com Builder. You can also store additional data attributes for each picklist value.
The first part of the article, located here, introduces the general problem to be solved. This part will give you links to Part 2, which explores the code needed for the picklists themselves, and Part 3, which shows how to use these picklists with Visualforce Pages to control the display of information based on the picklists.
Check out these articles for some practical examples showing off the logical power of Visualforce!