Several developers attending Microsoft's VSLive! Conference in San Francisco last month say they plan to rewrite their applications rather than port them to the new environment. Many note that such a step represents a substantial change for Visual Basic users, who will have to adapt to the new tool's object-oriented programming model. Some say they will leave their existing applications running in the old Visual Studio 6 environment and use Visual Studio .net for new applications.
"The stuff that's out there already works well," says Sam Cooper, a senior programmer at Seattle insurance company Safecoan. Cooper says he sees no reason to move existing applications to the new environment.
Do you need to change?
Frank Gillett, an analyst at Forrester Research, says one of the most compelling reasons for a user to switch to the .net environment is to enable Microsoft applications to talk to non-Microsoft applications via XML-based Web services. But if they have no need for that functionality or any of Visual Studio .net's new features, they should leave their existing applications alone, he says.
However, Gillett does recommend that corporate users reconsider their commitment to Microsoft's development environment, because the new tool represents such a major step for Visual Basic users.
"The effort required to do that is similar to the effort required to switch to Java," Gillett says. "So if you're going to make the effort to step up to full distributed computing and object-oriented programming, stop and reconsider, 'should I switch to Java?' "
Keith Covington, director of IT at GameStop, a Texas-based retail chain with more than 1,000 stores, says his company will decide within the next month if it will move its Visual Basic applications to Microsoft's .net tools or switch to Java.
What does the change mean for developers?
Covington notes that although GameStop is a Microsoft-centric shop and has Microsoft skills in-house, it must weigh trying Microsoft's new tool, which is "not as mature as some other options" and which brings "a shift in the programming paradigm for our development staff".
"They're going from a procedural, functional-based programming model to object-oriented, and that's not an easy leap to make," Covington says. "Do you bet the business on applications you're deploying on the .net framework with a developer base which is new to this technology? It's beginning again."
Microsoft group product manager John Montgomery says some early adopters going from Visual Basic to Visual Basic .net have told his company that it's "not the major change people think it is." He notes that the new tool is "building on 10 years of experience that we have bringing customers up to speed."
Lilya Epstein, a systems developer at California-based wastewater-management company MWH Global, says her personal preference is to stick with Visual Basic rather than switch to another programming language. "I feel comfortable with Visual Basic more than anything. It kind of warms the soul," she says.
But Epstein says she will try to migrate applications before she considers rewriting them, to try to preserve the time and effort she spent building objects in Microsoft's Component Object Model. "When you work for six, seven years, you've got a lot to lose," she says.
By contrast, Joe Hartman, applications development manager with HydroChem Industrial Services in Texas, says he doesn't believe in porting code. "It seems to me you get a bad compromise that never works as well," he says. Hartman says his company will have to decide whether to rewrite its Visual Basic payroll, accounts receivable and accounts payable applications in Visual Basic .net. "If we do, we'll probably start in the next six months," he says.
Hartman attended the VSLive! conference to look at Microsoft's new C# language, but he's now questioning if that would be the best move for his company. "Since we have a Visual Basic background, it would take a lot to convince us to do otherwise," he says.
Should you port your applications?
Steve Sommer, CIO at Hughes Hubbard & Reed LLP, a New York-based law firm with 1,100 employees, has decided otherwise. He says he plans to have his developers gradually shift the company's financial, document-management, mail, database and Web applications from Visual Basic to C#.
"The way it compiles is much quicker because it's native to .net, and to me, that's where the future lies for programming within .net," he says. Sommer hopes the switch will help him retain developers "by giving them something different and more exciting to do."
Sommer estimates the price tag for the Visual Basic to C# move at $3m (£2.1m) to $4m (£2.8m), not including hardware. But he says he thinks it will be faster and less expensive to start from scratch than to convert the Visual Basic applications to C#, a process he doesn't believe produces "solid code."
Daniel Appleman, president of California-based Desaware, which makes add-on components and tools for Visual Studio, says attendees should not port their code unless there's good economic justification.
"A lot of people will be doing Visual Basic 6 code for some time," Appleman says. "Just training costs will be substantial. We are at the start of a big and long transition. This transition is comparable to the transition from 16-bit to 32-bit Windows. .Net's a big deal, but big deals don't happen overnight."