Is Visual Basic A Waste of Time?

ya, java would be a better start. visual basic might be fine for the microsoft world. really programming is about concepts. once you understand the concepts it is easy to switch languages. where the complexity comes in is in understanding what libraries are available and how the language works with the operating system, display, GUI interfaces, etc. Visual basic makes a lot of this fairly easy. In other languages it can be very complex.
 
It's unfortunate that you're not going to get your feet wet in programming on something more modern, but VB6 will teach you the basics (control loops, strings, arrays, conditionals, etc...) If you're going towards networking you'll probably be doing VBS, which looked a lot like VB5 the last time I used it. HTML isn't a programming language, and doesn't have these concepts without an additional scripting language. I don't know anything about flash, so I can't comment on that.

If you're going to be programming in a Windows environment for desktop apps, C# is what everyone's looking for in the job market. C# is .NET for people who grew up learning C, whereas modern VB is .NET for people who grew up learning BASIC. They currently both use the same libraries and the difference is mostly just syntactical. If you're going into the Web on Windows, you can also do ASP in these languages.

I've stopped coding on Linux/BSD years ago, so I don't know what they're using these days.

FWIW, I'm an industrial automation programmer using VB .NET for data transfer and ASP for visualization.
 
VB.NET is functionally equivalent to C#.

A .NET developer should have a working knowledge of both.

Keep in mind that, as a professional developer, you will likely be tasked with maintaining some legacy code or integrating existing code. It is very likely that a .NET shop will have VB.NET code (and even some VB6 code) lying around.

You'll find in a programming career that a lot of devs badmouth languages they don't know / don't want to learn / think are too old... successful developers can quickly learn the idiosyncracies of any programming language and your strength in the market will depend heavily on your adaptability.

Most developers lose out on opportunities because they take strong positions against technologies which comes off (to me) as an unwillingness to learn new things. If you have a problem with a technology then it should be voiced during design-time... but you should still make an effort to be competent in prevalent technologies in your field.
I'm a .NET dev who works primarily in C#... but few things annoy me more than when other devs shit-talk VB.NET simply because they don't know how to use it.
 
^ this

Especially if you goto work for a company that's been writing code for 25+ years like I do. We have millions, and I'm talking on the order of 25+M lines of RPG code that runs at customers around the world. Lots of folks say RPG is a dead language (better go explain that to IBM since they are still expanding/improving on it). Do they teach RPG in "modern" programming classes? Usually not. Want to work in an IBM shop? Better learn either RPG or COBOL. Sure, I do a lot of Java and C++ code, but I also have to get my hands dirty in RPG on a weekly basis.

But more important than the language itself is knowing HOW to program and HOW to learn a new language and how to pick the right language for the job. End of the day it all compiles down to machine code. The different languages bring different strengths of built in constructs and libraries to make use of (so you don't have to reinvent the wheel on a daily basis).

Some are better at handling string data (PERL). Some are better for rapidly prototyping out programs (C#, VB, and other .NET languages). Some are better at math (FORTRAN). Part of being a programmer is knowing what tool to use for the job. Just as an artist has many brushes at their disposal, the 3" wide brush isn't always the best choice.
 
My company still runs software written on VB6. Yeah, it has its own issues, some hard to track bugs, but it makes good money and we still have a few contracts to keep it running until 2014. Used to run it on hundreds of servers 10 years ago, now they are all virtualized on a single rack in a data center.

I still use VB6 and some quick and dirty vbscripts to write small utilities to convert data, but nothing serious.
 
VB.NET is functionally equivalent to C#.

A .NET developer should have a working knowledge of both.

Keep in mind that, as a professional developer, you will likely be tasked with maintaining some legacy code or integrating existing code. It is very likely that a .NET shop will have VB.NET code (and even some VB6 code) lying around.

You'll find in a programming career that a lot of devs badmouth languages they don't know / don't want to learn / think are too old... successful developers can quickly learn the idiosyncracies of any programming language and your strength in the market will depend heavily on your adaptability.

Most developers lose out on opportunities because they take strong positions against technologies which comes off (to me) as an unwillingness to learn new things. If you have a problem with a technology then it should be voiced during design-time... but you should still make an effort to be competent in prevalent technologies in your field.
I'm a .NET dev who works primarily in C#... but few things annoy me more than when other devs shit-talk VB.NET simply because they don't know how to use it.

This is probably the best response.

VB.NET is an artifact left over from last century - a necessary evil. My current job is working in C#, but the database model all my stuff eventually winds up being called into was written 10+ ago in VB6 and ported to VB.NET. I rarely touch the VB code, but I have had to take a peek in there before.

That being said, Microsoft has made it abundantly clear that C# is going to be their direction in the coming years. If I were just now getting started on programming, I would definitely start with C#. Don't be opposed to VB.NET, because if you end up with a career in programming you will have to touch VB eventually, but I probably wouldn't start there as my first programming language. Especially since VB.NET makes it so easy to write bad code.

Also, people don't listen to idiots suggesting you start with PHP, Perl, or other similar products. The same thing with VB holds with these languages - they are popular because they were the lucky "chosen ones" 10 years ago, not because they are good. Trying to start with learning PHP will only end in frustration as you try to wrap your head around their frustrating whack-a-mole APIs and backwards design patterns.

Start with a real programming language (C++, C#, Java, etc.), and if a job at some point in the future requires you to do so, pick up VB or a scripting language. It's easy for programmers to pick up scripting. It's not very easy for scriptwriters to successfully transition to programming.
 
My guess your going to be using Visual Studio 2008 or 2010 in that class, thus as I know it, you'll be programming in .NET. From what I've heard, VB6 is kind of a dying language that isn't really OOP(not 100% sure on this). Hopefully someone with more experience can chime in. Its been a few semesters since I took the class and can't remember all the details.

OOP is not the end all be all anyways, and really, this is HS


see if they will let you learn perl or python or C#

but even vb6 or vb.net will teach you some foundational knowledge and terms

Also, people don't listen to idiots suggesting you start with PHP, Perl, or other similar products. The same thing with VB holds with these languages - they are popular because they were the lucky "chosen ones" 10 years ago, not because they are good. Trying to start with learning PHP will only end in frustration as you try to wrap your head around their frustrating whack-a-mole APIs and backwards design patterns.

Start with a real programming language (C++, C#, Java, etc.), and if a job at some point in the future requires you to do so, pick up VB or a scripting language. It's easy for programmers to pick up scripting. It's not very easy for scriptwriters to successfully transition to programming.


every language has flaws, hes talking about a high school class. dont take it so seriously. a college class doenst even get that in depth in a semester

loops are loops and passing data into and out of files never seems to change much, which is likely as advanced as he is going to get

not to mention, no matter your personal feelings, (like how I hate java and LOL'd at it as a suggestion) all the programming jobs around me are c/++,scripting/perl/python, SQL, vb or .net.(well and PHP I suppose)

also 'idiots' talking about php/perl etc? really? how high is that horse you are riding on?

unless hes thinking of ruby on rails hes probably fine(well and your php comment isnt innaccurate thats for sure, they seem unreliable at best at making choices in new versions)


where I work we have old ass vb macros in access, SQL, PHP, javscript, java, and ASP/ASP.net

and some python/sql since we have some ESRI GIS stuff laying around.

its def not about whats best, and I suppose the lottery comment is spot on. some languages might be alot more dead if places didnt 'choose' them like esri chose python


I am also no genius or full time programmer
 
Last edited:
I'm shocked by your dismissive attitude towards OOP. The entire industry is moving or has moved there, failing to learn it is doing yourself a career disservice.

every language has flaws, hes talking about a high school class. dont take it so seriously. a college class doenst even get that in depth in a semester

But it is serious. It can take years of frustration to break the bad habits formed by starting on a bad foundation like PHP.
 
I'm taking a highschool tech course and have an option of what i want to do, from what i read on visual basic on urban dictionairy they say it's a waste of time, if i'm going to learn programming, I want to actually learn programming, should i keep my visual basic plan (worked on for 2 Days) my other options are basic html & flash to summarize this course sucks
Don't worry about what learn (you're only going to be covering logic and loops at first, which are the same in any language). Also, don't worry learning to program in a 'bad' languages or habits as this will help you appreciate why they're bad;) Besides, you have years of learning in front of you (if not a lifetime) and things are constantly evolving.

VB has the stigma attached to it because or it's origin 'Basic' as a toy language. But it is pretty much the same as C#, just a lightly different syntax (I don't like it much myself as I find it too wordy). Yeah, there are some differences but the gap is getting less and less which each version of .net. Also, it doesn't help that most people writing VB aren't programmers, which is why there is some awful code out there (like haunter's:p)!

PS: Start using some decent research sources! Even just wiki for a quick 101.
 
Not exactly. There are language features in one that aren't in the other.

VERY few.
One example that comes to mind is the unsafe keyword in c#.

The vast, vast majority of what can be done in one can be done in the other. They both compile to the CLR.
 
I agree it's not that different from many other threads.

My post is deliberately unspecific; I hope the other posters are not being deliberately inaccurate.
 
Back
Top