1. General Questions
    1. What is Visual Basic?

What is Visual Basic? Only the worlds most widely used development language. What does this mean? Well quite basically a person or a team of people wrote all applications you run on your computer. Visual Basic is one of many programming languages that people use to make those applications.

Microsoft announced Visual Basic 1.0 in May of 1991, since then windows application development has never been the same. Visual Basic was the first language to introduce Rapid Application Development (RAD) for the Windows platform. It integrated a very powerful engine with an environment that made the programmers life a lot easier. Allowing them to develop their windows applications 20-80% faster then any other method available.

During it’s short life Visual Basic has continued to break records and set forth many new standards to which all other languages would conform. As a matter of fact, Visual Basic during it’s almost 6 years in the market place has outsold ALL other programming languages, many of which had been around for 10+ years longer. Even today as new programming languages, and new versions of older ones, are introduced most of them are based upon the original concepts Microsoft developed and Visual Basic introduced to the world. A couple good examples being Delphi and VC++, both are visual development environments that owe very much of their existence to Microsoft when it set the standards and broke all rules with VB 1.0.

Many die-hard programmers that use other languages will testify to the death they owe nothing to VB and VB isn’t a very good language, but they are just fooling themselves. Microsoft since day one has had big plans for Visual Basic it has introduced countless new standards and countless new ideas to the programming community. Today we find Microsoft integrating Visual Basic into all of their MSOffice programs. We see VB taking on wings as it migrates to the World Wide Web with VBScript. We find Visual Basic still breaking the rules and continuing to amaze us.

One of the most disputed facts is how much of a following Visual Basic actually has in the world. Many VB programmers are constantly put down because, even today, some see it as an inferior or beginner language. In reality Visual Basic has come a long way since the early days and has greatly matured as a language to now be a fully functional and advanced development language ready to tackle anything you throw at it. There is no need for VB developers to hide or be ashamed of using VB just because the word "Basic" is in its name. In reality VB is anything but "basic" nowadays. Yes it’s still the easiest windows language to learn and use, but it also has the power and advanced features for the real programming pros that makes it an all around winner. Creating apps on a very rapid scale and doing so easily, creating very powerful apps that will integrate perfectly with windows, the Internet, and hundreds of other professional applications are just a couple reasons why developers continue to migrate to using Visual Basic.

Next time someone comes up to you saying VB isn’t a professional language, well try tossing back a couple of these indisputable facts. You must excuse me for the links proving these but many of the direct links to the statistics are outdated when I went looking for them. With the frequency MS and the independent research companies update their sites they seem to have gotten lost in the shuffle ( then again it HAS been 6 months. ) So all of these are links to professional business sites that still refer in part or in whole to the information.

When Visual Basic 4.0 was released it broke ALL records set by all other languages for sales. Within less than one year of being on the market over 1 million copies had been sold.

IDG Books
Visual Basic Secrets
http://www.ishops.com/softpro/1-56884-872-2.html

Visual Basic 4 is now the best-selling development tool of all time, with over a million copies sold. There is no better way for users to master the vast system of extensions, techniques, and third-party tools that have developed along with this complex programming language than with this hot title. A bonus CD-ROM comes packed with all the book's working code samples, plus many third-party developer products and custom controls.

There are approx. 4.5 million developers in the world that make windows applications.

Silicon Investor
A Silicon Investor Pick for '96
http://techstocks.com/picks96/Jan_9.html

"Microsoft's role is to help ensure that the 150 million users of Windows and the 4.5 million developers for Windows have what they need to ride the Internet tidal wave." - Bill Gates

There are more then 3 million developers using Visual Basic to create their windows based applications. Do the math 4.5 million – 3 million = 1.5 million not using VB. Granted you will have some developers that will overlap using VB equally with some other language such as Delphi or VC. But we are focusing on what language is used most by each developer. Most developers know more then one language but use one a lot more then the others. When you compare the VB developer numbers vs. the numbers one gets from the other languages there just is no comparison.

http://www.summsoft.inter.net/vba/vba5faq.htm
http://205.185.183.34/html/e1_060496a.html

"More than 3 million developers are actively creating applications with Visual Basic and Visual Basic for Applications, making this technology the most widely used development environment in the computing industry," said Ted Johnson, Visio co-founder and vice president of worldwide products. "Our early commitment to ActiveX technology has played a critical role in establishing Visio as a graphics solution platform. Now, by providing customers with the same Visual Basic language technology used in the Microsoft Office suite, we can share our Visio-based developer expertise more efficiently with a broader audience, and one that is already familiar with VBA as a development language."

In the end the recurring phrase you find is " Visual Basic is the worlds most widely used programming system. " I could only find one reference still on MS’s site that hasn’t been redone 50 million times that still had any part of the statistics. This is a very bad example it doesn’t have anything in it really showing the numbers but it does none the less have the quote saying VB is the most used. Coming from MS that means a lot considering they make many of the other languages such as VC++.

http://www.microsoft.com/hk/press/prvbs.htm

There are literally thousands of other references throughout the web giving statistics and greater information on the subject. I wish I had saved some of the statistical htmls a few months back so I could show you the raw numbers, but I didn’t bother thinking I would ever need to list them anywhere. If you wish more information on VB its usage statistics etc do some web searches or call Microsoft, I’m quite sure they would be more then happy to give you the statistics.

- Dave Sherman

[ Return to Table of Contents ]

  1. Where can I get Visual Basic?

To order Microsoft Visual Basic or other Microsoft Visual Tools, or to receive a reseller referral, in the United States or Canada, call 1-800-621-7930, Dept. A334WB. Outside the United States and Canada, please contact your local Microsoft subsidiary.

[ Return to Table of Contents ]

  1. What is the latest version, and is it worth upgrading?

The latest version of Visual Basic is currently 5.0. Visual Basic 5.0 offers many new functions and options too numerous to mention all of them here. When you look at all of the changes, two of them stand out as being the biggest improvements.

Visual Basic 5.0 now has a native compile mode. What this means is VB will create fully compiled exes rather then p-coded ones. Visual Basic does this by exporting your project to an intermediate language that is then compiled using a c++ compiler. So in the end what we find ourselves with is a very fast performing exe. Don’t let this fool you though, the p-code compile mode is also much faster then it was in VB4 and the previous versions. From a standpoint of which mode to compile your programs in though, the native compile mode yields program performance results about 20% faster then the p-code compile in vb5 but both are extremely fast.

Probably the second biggest improvement is the ability to now create ActiveX controls and documents. For quite some time now programmers have been limited into being forced to use VC++ or some other language to do this. With VB5 this is an issue no more. Create ActiveX controls quickly using the development tools provided with Visual Basic 5.0. Creating controls in VB5 yields pretty much the same results as you get by creating them in VC++ except you can develop them many times faster in VB5. Remember the ActiveX controls are compiled using the native compile mode, using the same compiler VC++ uses to compile its programs and ActiveX components.

In the end in upgrading to VB5 you will notice huge performance gains in just about every area. VB5’s functions and methods benchmark normally much faster then those of VB4’s or VB3’s. When you add the speed enhancements/performance gains you see in your projects, with being able to develop your apps faster then ever before, with being able to use/access more functions and more tools then ever before there just really is no comparison. If you are still unsure if upgrading is the right solution for you, you might want to take a trip on over to MS’s site, below you will find some links to find more information on VB5.

What's New in Visual Basic 5.0?
http://www.microsoft.com/vbasic/docs/vb5new/vb5new.htm

Top 20 New Features in VB 5.0
http://www.microsoft.com/vbasic/docs/vb5new/vb5new1.htm

What's New in Internet Development?
http://www.microsoft.com/vbasic/docs/vb5new/vb5new2.htm

What's New in the Development Environment?
http://www.microsoft.com/vbasic/docs/vb5new/vb5new3.htm

What's New in Data Access?
http://www.microsoft.com/vbasic/docs/vb5new/vb5new6.htm

You can find this information and much more on MS’s site. If you are unsure of upgrading or just curious about the new features take a trip on over, it’s just a click away. 

[ Return to Table of Contents ]

  1. Why VB? How does it compare to other languages?

First off this section is NOT intended to start any programming language wars. It is intended to provide the users with statistical facts and present them with information from some of the leading professionals in the business, allowing the reader to make their own choices.

What do you think is the most important factor that effects a program’s performance? Just a hint, if you think it’s the language its made in you are wrong. While the language does play an integral role in a programs performance it is more the programmer’s experience that a program if effected by. A programmer of many years has the experience needed to optimize and create his programs better then a programmer of a few years. I have seen expert VB 4.0 programmers create programs that rival and surpass many Delphi 2.0 and even some VC++4.0 programs. VB 4.0 in many benchmarks shows itself to be slower then these other languages, so how is it possible a program made in it can be faster? Plain and simple, the programmers who made those VB programs had many years under their belts and knew exactly how to optimize their programs and use little tricks/trade secrets to speed up their applications tremendously. An expert programmer can make any language a winner really, so the argument over which programming language performs better is really not a good argument. Because it’s the programmer or team of programmers that make or break the program, not the language the program was written in.

March 17, 1997
Looking Forward

'Smaller in Java' doesn't always mean better
By Mark L. Van Name and Bill Catchings
http://www.pcweek.com/opinion/0317/17cvn.html

Just because an application was developed in Java [or any other language], however, does not mean that it is a better program than one written in another language. Program quality depends less on the language than on the skill of the developers, and no language is a guarantee of good code.

Similarly, the smaller of two applications is by no means necessarily the better. The larger program might simply provide more useful features, or provide the same features in a better way. Being larger, of course, is also no assurance of being better—you cannot judge application quality by size alone.

Which brings us to the last linchpin of this pitch: Fewer features are better, because most people never use most features. What's wrong with this argument is that the market has voted once on this topic, and it chose the large, feature-rich applications.

This being said for those that want more information on the actual language engine speeds continue reading, for those that don’t you can just skip this part.

The competition in the programming language industry can get to be quite annoying with the same arguments constantly being brought up. Personally I’ve gotten quite disgusted with all of the misinformation, lies, slander, and propaganda passed about. Most of it seems wagered against Microsoft and Visual Basic by people who I can only assume do not bother to educate themselves to the facts for one reason or another.

VB vs. Delphi

On paper the major competitor of Visual Basic 5.0 is Delphi 2.0, I say on paper because it has been written up as such in many places but in reality Delphi never has posed much of a threat to Visual Basic mostly because of market place. Delphi programmers and programs have very little market, the average amount Delphi programmers are paid isn’t very much, but most of all the big corporations didn’t want to invest millions of dollars training their huge programming departments in a language that never had much backing to begin with.

Looking closely we find Delphi really isn’t that bad of a language. In fact Delphi 2.0’s speed was very close to that of VB4.0’s, each had it’s own strong points and weak points and they balanced out for the most part. Since then however, Visual Basic 5.0 has hit the scene with a big bang.

Carnegie Technologies, a premier provider of leading edge information technology services, preformed a study comparing VB4, VB5, Delphi2, And PowerBuilder5. Out of the 12 tests they preformed, VB5 ranked in first place in 8/12, faster then Delphi 2.0 in 9/12, and faster then VB4 in 11/12. Out of the 4 tests VB5 didn’t take first place in, it ranked second place in half of those four, and in the test where it ranked slower then VB4 it was slower by under .040 of a millisecond.

  Test 

Visual Basic 5.0

Delphi 2.0

Display  Empty Display 

52.509

26.851

Labels 

.316

1.295

Bitmaps 

1.226

3.296

Database  Overhead 

9.745

7.838

Small Retrieval 

.340

.612

Large Retrieval 

.251

.110

OLE Automation  In Process Let 

.000294

.084

In Process Method 

.000295

.082

Out of Process Let 

1.066

2.572

Out of Process Method 

1.039

2.572

Language  Sieve of Eratosthenes 

360.625

3323.82

String Manipulation 

900.35

48.13

http://www.microsoft.com/vbasic/docs/vb5bench.htm

In overall performance, as shown by the Sieve of Eratosthenes test, they found VB 5.0 to be approx. 10 times faster then Delphi 2.0, and over 15 times faster then VB 4.0.

At the end of their report, Carnegie Technologies reminds the reader of the many other points developers should consider when choosing a language.

You can view the report for yourself at Microsoft’s web site, just follow the link under the table above.

Despite Delphi’s actual performance the biggest blow to Delphi’s standing is oddly enough, Borland who makes it. Borland is in some very serious financial problems right now and many analysts are expecting them not to be able to pull out of it. They lost 3 top executives last year, including one who left to join Microsoft, and their problems continue to worsen today. The last quarter they had a net loss of almost 10 million, and made about 15 million less then the previous year. Because of all of the loses they were forced to cut over 15% of the work force at their headquarters. A good part of the problem according to Borland is their existing products, such as Delphi, aren’t selling in the market with the fierce competition it’s getting from Microsoft’s Visual Basic and Powersoft’s Powerbuilder.

Losses, layoffs at Borland
http://www.news.com/News/Item/0,4,4540,00.html

Borland posts $9.8 million loss
http://www.news.com/News/Item/0,4,4797,00.html

Borland loses exec to Microsoft
http://www.news.com/News/Item/0,4,3814,00.html

The above articles show Borland is in a lot of turmoil. What does this mean to the Delphi programmers and the language itself? Nothing good that’s for sure. The stability of the company that makes a language and how much corporate backing a language has greatly effects it success and sales. Look at it this way, would you spend millions training your employees in a product from a company that won’t be there next year?

There are two possible outcomes for Borland here. If they go out of business the language will undoubtedly die as well. Programming languages are constantly changing to meet the abilities the new computers and operating systems provide. If Borland goes out of business who is going to make the new versions? No matter how good a language is, it can’t survive long without the company to make new versions, provide technical support, and fix bugs.

On the flip side, if Borland does manage to delay or even turn-around the current trend they are on, they have already lost millions and millions of dollars and cut 15% of their work staff from their headquarters. With less programmers and less money to use towards development of new / existing products what is going to happen? Can a language continue to be revised as often without the programmers to do it? Can a language be upgraded and new things added to it without the work staff to research and develop these new technologies? Lastly without as much money to devote to their projects will they be of the same quality?

VB vs. JAVA

There really isn’t too much to say here. In the VBScript vs. JAVA Script category only time will tell which is accepted to be the better standard.

We can look at it from a different perspective however, compared to a fully compiled ActiveX Add-In and applications that integrate the Internet and the VBA engine into them, an interpretive language is not the best available solution.

Silicon Investor
A Silicon Investor Pick for '96
http://techstocks.com/picks96/Jan_9.html

"Yes, they licensed Java... they had to in order to prevent a riot on Wall St. The real story is: (1) Java is just a programming language (2) Java is pathetically slow - interpreted! (3) Visual Basic will do all that Java can do and more (4) VB is integrated into Excel, Word, etc. Imagine being able to buy an Excel worksheet that has built-in Internet hookups to load information off the net (e.g. stock prices, TV shows, etc.) Imagine a Word document that could do the same thing! The whole idea of a browser is archaic... each application should be Internet-ready. Coming soon from MSFT!" - Steve Lerner

VB vs. VC++

In reality VB 5.0’s major competitor is VC++ 5.0. Many will say, " You can’t compare those, it’s like comparing apples and oranges." They’d be right, the two languages are based on totally different structures and concepts. So what we will look at instead is the future of each, their role in the programming/world community, their ease of use, how rapidly you can develop your robust programs in them, and the performance one will get out of each. Visual C++ is made by Microsoft just like Visual Basic so both languages have a very stable company making them and providing support for them so that isn’t really an issue discussed in this comparison.

Microsoft is constantly taking on new frontiers and is continually expanding its market. Much of the future of the World’s computers relies quite heavily on Microsoft. We all go where Microsoft takes us. Microsoft’s catch-phrase, "Where do you want to go today?" takes on new meaning when you consider how much of an effect MS has on the world, it’s computers, and the future of both. So it makes a great amount of sense that which ever products MS places in the forefront of their plans, as they relate to their other products and the companies / worlds future software, those products would take off in more then one way.

Visual Basic is the language that has stepped up to the plate on this one. Microsoft chose it as the language to integrate with all their MSOffice programs. But not only is MS backing and supporting VBA5 as the language of choice to integrate with it’s software but so are 50 of the MAJOR commercial software development firms in the world. Leading companies such as Adobe, Autodesk, Texas Instruments, Rockwell, Seagate Software, NetManage, McAfee, Symantec Corp, Micrografx, Visio, and many more have all licensed it for use in their applications. Visual Basic programmers can now not only write stand alone solutions, but now they can create integrated solutions within many other software packages. To see what some of these companies have to say about VBA5 visit the following link:

http://www.microsoft.com/vba/license/vbawho.htm

With the rapid growth of the Internet Visual Basic has also found a home developing for it, integrating with it, and redefining it as we know it. VB is taking on many areas previously thought to be only for VC++/C++. But unlike those languages VB has gone beyond that to be integrated into the web and many other places. VBScript jumped up to the challenge and has been in use on the World Wide Web proving itself ever since. Areas such as creating ActiveX controls/documents for use in programs and on the WWW was formerly not something to even be considered in VB. With VB5 however, MS added full support so now VB programmers can create ActiveX Controls, Documents, and DLLs.

In the long-standing tradition of BASIC, VB continues to provide a very quick and easy to use programming environment and language. This makes it great for the beginners because it’s so easy for them to learn. However unlike the BASIC’s of the past, Visual Basic provides an exceptional amount of advanced functions, methods, and routines. These provide the expert with many options, add to that the ease of the language and the expert’s job is quite faster because most of the structures/coding require a very small amount of work to accomplish the same task that could take pages in other languages. All of this coupled make VB an excellent choice for both the beginner and expert alike.

VC++ on the other hand is more geared towards the expert, making it a very tough language to learn and not at all a language for anyone new to programming. VC++/C++ can be quite cryptic; this makes coding a rather slow process for the experts as well as for the beginners. VC++’s cryptic code does have a purpose to it; many feel it is a form of job security because in many instances only the original author is able to decrypt the meaning/purpose of the code unless it is commented extraordinarily well. VC++ also does provide a more direct way of being able to access a computers lower-level functions, but those same functions can still be accessed in other languages directly or via DLLs. VC++ is a very good choice for C++ programmers looking for the next logical step or looking to migrate to the windows platform.

Lastly we look at the performance of VC++ 5.0 exe’s vs. VB 5.0 exe’s. We find that the performance between the two compilations is almost exactly the same. In fact it’s quite comparable to the performance we saw back with VB4 and Delphi, each one has it’s own strengths where it is faster then the other but in the end they balance out. According to the some professional developers that use both, they have made it quite clear they have seen no performance difference except when accessing low-level functions. Actually there is a very good reason for the performance being so close in benchmarks. When you compile and exe in VB5 using the native compile mode it actually exports your project to an intermediate language that is read in, supposedly, by the same C++ compiler and linker VC++ uses. It doesn’t really matter, whether they are the same exact one or slightly modified, what matters is they both yield pretty much the same end result in performance.

VisualC++ 5.0 & Visual Basic 5.0 & Visual Studio 97
http://www.microsoft.com/visualc/press/vsentpr.htm

....
Performance enhancements
All the new versions of products in Visual Studio 97 offer faster performance. The performance of existing programs created with Visual C++ will typically increase about 10 percent after they are recompiled using Visual C++ 5.0. Further, Visual Basic 5.0 with its new native compiler now provides performance that is very close to that of Visual C++ in language execution.
....

Seeing that the project is compiled into C++ some might argue why not just make it in C++. Quite simple really, in VB you can make in 1 day what takes you 7 to make in C++ and you get pretty much the same results. Couple that with all the support for VB and all of the apps that integrate VBA, it provides the VB programmer with an expandability/integratability previously unheard of. So in reality you get the best of both worlds, the RAD and environment from VB with the speed of C++ all in one language, VB 5.0.

- Dave Sherman

[ Return to Table of Contents ]

  1. What are some other good sources for information?

There are many Web sites out there dedicated to the Visual Basic programmer, Below are a few of the better ones we have found. If you have a VB site that you think should be listed here drop us a /MSG on IRC.   

Phaethon's Visual Basic Help Page
http://www.awod.com/gallery/rwav/robertjh/vbasic/   

Carl & Gary's Visual Basic Home Page
http://www.apexsc.com/vb     

Microsoft’s VB Home Page
http://www.microsoft.com/vbasic/

Codd Multimedia Home Page; Home of VB Online
http://www.vbonline.com/

Advanced Visual Basic
http://www.duke-net.com/vb/

Ask the Visual Basic Pro
http://www.inquiry.com/techtips/thevbpro/index.html     

The Cobb Visual Basic Website
http://www.cobb.com/ivb/index.htm

Visual Basic Broad-Band Network
http://www.geocities.com/SiliconValley/4548

[ Return to Table of Contents ]