John Traenkenschuh was puzzled by developers who seemed reluctant to switch from VB 6 to Visual Basic .NET. Then a little experimentation showed him that something even better is coming soon: Visual Basic 2005. Using an old familiar teaching program, he shows how new features make the transition worthy even of those old VB 6 diehards.
VB6: app.path
VB7: System.Windows.Forms.Application.ExecutablePath
or System.Windows.Forms.Application.StartupPath
or System.AppDomain.CurrentDomain.BaseDirectory()
or System.GetEntryAssembly().Location
…
๐
or
top of code:
Imports System.Windows.Forms;
elsewhere:
… Application.StartupPath …
VB6 seems to have a very strong following that is reluctant to move on to .NET. Now I’ve never written anything in Visual Basic, but this hardware engineer I knew used to use it for quick gui apps and swore by it.
So what exactly makes the transition to VB.NET so painful?
So what exactly makes the transition to VB.NET so painful?
The anal-retention.
VB7 didn’t keep the sweet sweet ease of use and Language-to-IDE integration that VB6 had.
VB2005, though, does. Tight integration between languagea nd ide, plus a lot of stuff to make programming more quick and comfortable in Visual Basic.
Skip 7, go to 2005.
Skip 7, go to 2005.
You are right about that. The removal of stop-&-go was one of the biggest backwards step in features between 6 and .NET.
So what exactly makes the transition to VB.NET so painful?
Put simply, VB.Net, and .Net in general, is not a rapid application development tool. Microsoft now doesn’t have one. Many projects due to their small size and timescales, simply are not compatible with the full object-oriented way of doing things and I doubt whether improvements like generics or anything else is going to make the situation any better.
Expect to see some terrible and unmaintainable systems written with .Net (and by idiots who think VB.Net is VB) that are infinitely worse than anything written with the mess that was classic VB. The tool simply does not fit the job, no matter how many ways Microsoft tries to get the quare peg to fit in the round hole.
I use C# nowadays, but I did a lot of VB6 programming. Yes, VB6 is easy… but only for simple tasks. It can quickly gets ugly and “serious” VB6 code is full of kludges and dirty tricks to get around its limitations.
But one thing that I really disliked in VB6 is that its (built-in, standard, whatever) libraries are a joke! Sure you can extend, but it just adds to the mess. At least .NET comes with a rich set of good class libraries.
Right. VB6 was very good at productivity and infacts many companies used it for presentation / UI logic while keeping the core of code inside C++ components. However, VB6 was *very* limited as a language.
The key difference is VB.NET is not a secondary language anymore and it has been created to allow developers to exploit the full power of the class libraries.
Of course, that also means MS had to drop a few (but widely used) features which made VB6 very handy. However, I can’t understand reasons for complaining. VB6 has been end-of-lifed (let’s say that way) and old VB developers might decide to stay with VB6 (whose code will be still supported for a long time) or switch to a new thing called VB.NET.
I used VB6 and I recommend learning VB.NET. But that’s not mandatory…
vb6 developers are not switching to vb.net for the same reason they are not switching to java. vb.net is nothing like vb6. vb.net it just c# with a little bit of vb syntax thrown in.
Oh and the vb6 to vb.net wizard does not work. There is to many things that you could do in vb6 that don’t work in vb.net. Things like the variant do not have a direct equivalent. You get so many fixmes and warnings that for many programs it is just easier to rewrite the program.
WTF? To publish shit like this is lamer than lame. Even people who use VB have no respect for it.
I read a survey I think it was about a year ago,
maybe 2, in which the survey asked which programming languages did people use for their applications for
Windows. The percentages were stunning. Something
like 90% of all Windows developers (people paid to
write programs to run on Windows) use Visual Basic.
My memory could be bad, but I’m pretty sure that was
correct.
–Johnny
So you don’t have a TI calculator do you? The only choices there are ASM and BASIC and I tell you there are programs that ASM is not suited for. Like it or not, BASIC is a popular language, you find its dialects almost anywhere and it’s not going away. Oh, and its programmers are motley beyond the age of 12 believe it or not.
> WTF? To publish shit like this is lamer than lame. Even people who use VB have no respect for it.
VB is very popular in the industry (e.g. to write HMI for factory automation applications).
If you really think VB looks or feels like the old BASIC, you are seriously mistaken.
(saying that as a C developer)
Migrating app from VB6 to VB.NET is probably a waste of time, for any complex app the effort will be significant. Not using VB.NET for new apps though… (looking forward to the return of edit-and-continue though…)
And comments such as “No real programmer codes in BASIC past age 12” are just silly. VB.NET has similar syntax to the BASIC many of us used at 12, but that’s about as far as the simillarity goes.
I suspect that going forward, VB.net doesn’t have much of a future. It’s been created to imply a migration path from VB6 to the .NET world, but the language is so different from VB6 that the path doesn’t really exist.
C# is ultimately Microsoft application development language of choice for the future. Anyone moving from VB6 would be best advised to learn C#
WTF? To publish shit like this is lamer than lame. Even people who use VB have no respect for it.
Obviously the ranting of an immature “1337” C coder. If this person had done any work in the real (aka: Corporate) world, they would see that VB not only thrives there, it rules. Still.
Take a look at Monster.com, or ComputerJobs.com and see how many VB positions are open vs. pretty much any other language. The results just might surprise you.
/No, I’m not a VB advocate
//Yes, I code in C/C++, as well as VB, Java, Perl and Python.
///Yes, I have quite a bit of experience in Corporate programming and do know what I’m talking about.
If this person had done any work in the real (aka: Corporate) world, they would see that VB not only thrives there, it rules. Still.
Yes, sad but true. However, this tells nothing about VB as a language. The corporate world has its own rules and some of them are totally lame.
Yes, sad but true. However, this tells nothing about VB as a language. The corporate world has its own rules and some of them are totally lame.
Yep, you’ve got a point there. At the place I was working before, they had a lot of PowerBuilder, Clipper and Turbo Pascal applications that had been developed over quite a lot of years. They were systematically either decommissioning them, merging them into something else, or rewriting them into VB.
I think a lot of the reason corporations use and stick with VB is the large pool of developers it has garnered over the years. In Jacksonville, Florida, you can almost lean out a window, spit, and hit a VB developer ๐
Leaving the issue if VB is a real language I think microsoft has already enough advertisingroom.