It’s critical that developers be as flexible as possible—the days of the GUI-only programmer are probably gone forever. The industry needs flexible developers who understand business needs. It’s important that programmers not limit themselves by becoming good at just one narrow area, such as GUI development. A better approach is to move up the value chain by understanding the needs of others in that chain. Moving up the value chain is mostly low-tech hard work: reading, observing, making presentations to colleagues, and trying out techniques such as design patterns.