Hollis: For Developers, 'One Size Fits All' Doesn't Fit

In an industry changing as rapidly as the technology industry, there's no such thing as a universal solution. That was the primary message of Billy Hollis's keynote address at Visual Studio Live! earlier this week. Hollis, principal consultant with Next Version Systems, spoke on the current state of conventional wisdom in the application development world and how developers can and should take a more realistic, practical view.

"I've always had a bit of a contrarian view," said Hollis. In fact, his keynote session was entitled, "There's No Future in the Past: A Critique of Conventional Thinking on the Radical Changes in Our Industry."

"There are certain things people push as the only way to do things, and they just aren't universally applicable," he said. "My skepticism is shared by lot of people, but they don't hear that message in public."

Some of the conventional approaches with which Hollis takes issue include the widespread use of JavaScript, HTML 5, Agile and the move to unit test everything. Those are all valid technologies and processes, he said, and they have their place, but they aren't suitable for every situation. "All these things have value. All these things apply. They're just not the universal solution," he said. "People want clear answers. There's a demand for clear answers. That creates people who will give them those answers, even if they're not entirely accurate."

Hollis stated that the pace of technology advancement and the pace of change in the way organizations do business are out of sync, which helps create an imbalance. "The average small business expects their software to last eight to 10 years," he said. "Any technology changing as fast as [JavaScript and HTML 5] aren't going to be good for them."

And it's not just changes in technology that outpace organizational evolution, according to Hollis. Development practices and business processes also need to change. "There are certain processes developers like," he said. "Certainly development teams, depending on the size, that's a good approach. Others don't need that. It can be a straitjacket on how you think about software development."

Testing is another process upon which developers and businesses often place too much emphasis, said Hollis. "There's a fixation on unit testing. Everything should have a unit test," he said. "Unit testing has enormous value. I just don't believe you should be dogmatic about it. It gives up a lot of innovation in the client space." Certain aspects of visual code, he said, defy the processes of unit testing. "If you unit test everything, you're committing to not using those techniques, even though they're good for the users."

He said this has nothing to do with shortcomings of technologies like JavaScript and HTML 5 or development processes like unit testing. "I don't recommend against any of those things," he said. "It's just that they are not universal. There are circumstances when it's OK to not use those things."

It all comes down to matching the solution with the challenge, Hollis said. "Our industry is changing too fast for there to be one true way of doing anything."

Visual Studio Live! was held May 5-8 in Chicago. The next event is on the Microsoft campus, from Aug. 18-22.