Making an Argument Against Using Visual-Basic?
ethan_clark asks: "I work for a small company (< 10 employees) as a software engineer. The company got its start with a software product written by the owner in VisualBasic. He hired me to assist in rewriting the software – only catch is, he's stuck on having it re-written in VisualBasic. This scares me, but I honestly can't make a good argument against VB because I'm not familiar enough with it.
So my question is twofold: I am looking for some confirmation to my suspicion that VB isn't the greatest language for large projects; and If VB isn't good, arguments against using it. If it is good, what arguments would you use to argue for it (for my sake)?" If you are going to argue against a language, it is best if you do so after you become familiar with it so that you can argue fairly on its merits and deficiencies. VisualBasic, like just about every other language, has its place. For the sake of discussion however, what tasks would VisualBasic not be suited for?
What kind of troll article is this anyway? Some guy gets a job in a VB software house, to re-write a VB app in VB and then complains because he doesn't know VB? And starts heaping on it, even though he's never used it much? How is this newsworthy?
They guy is a nutcase. He's hiring people to rewrite everything and falling into the same trap. Obviously, he's wasting his time and money.
Avoid his NDA, and keep looking for the next job. This one won't last long anyway.
Friends don't help friends install M$ junk.
Friends don't help friends install M$ junk.
You're an amateur website developer, aren't you?
-matthew
"THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
"You can mix and match all you want. Just create a library of C# classes and you can use them in any of the .NET languages. "
.NET ready or have been modified to run on .NET.
Yes, just like COM. Remember how you used to be able write activex objects in any language and call them from any other language. It's just like that except it doesn't support all languages, only languages that are
Oh and it's a little slower and eats more memory. That too.
evil is as evil does
Java and .NET virtual machines are stack based, a side-effect of being designed by language programmers as opposed to chip designers. Translating from a stack based language to a register-based assembly language is a "heavyweight" operation. This means Java's and .NET's compilers and virtual machines have to be many times larger and slower than a register based virtual machine. Anyone who blames the slow down on something else has no clue (i.e. the toolkit). In contrast, Inferno's virtual machine (dis) - being designed by chip designers - was inspired to use a register based system that more closely matched the internal workings of real-world processors. They found, as RISC designers would have expected, that without a load-store design it was difficult to improve the instruction pipeline and thereby operate at higher speeds. They felt that all future processors would thus move to a load-store design, and built Inferno to reflect this.
Plan 9 from Bell Labs.
I think I speak for everyone here when I say...
HOLY BAD ENGLISH, BATMAN!
Anyhoo; VB may well be the language that many people start their programming careers with, but it shouldn't be. VB is a poorly conceived language in terms of syntax structure and consistency, not to mention that it lacks a vast number of functions which you would expect to be native to the language, not to have to load DLLs to access them.
Also, it's Windows-only and proprietary, and you have absolutely no idea what VB is doing at any given time.
Goten Xiao
I agree completely. I've run into, i think maybe 2 programs that actually require the .net runtime (i refuse to install it), and even so there are multiple versions of the runtime, it's not clear which is which or which you need to run said program, etc...
.net runtime and it just crashes saying 'missing dll' - if this is so crucial to the microsoft 'platform', you'd think that they'd at least KNOW which dll's are those that require dot net and give you an appropriate message etc...
run a program without the
in my opinion, if you are writing an application that depends on an external library to be REQUIRED, which may or may not be installed on the users' machine, then you are going to run into problems.
Since it sounds like this is a product that will be used outside of a controlled environment (ie withing a specific company, you know what you are running the app on), then you are asking for a technical support nightmare.
the only remotely successful installation of a vb-based application was for an ntranet applicatoin for a software company i used to work for, but even this was the result of 'gee, we need a quick app, lets use VB because it will let us develop it super quick' and ended up being used for like 10 years, as the company expanded 1000% times the size, and kept trying to keep the program running & working etc...
anyways, that's a whole other story - this was back in vb 5 (or prior) days when you couldn't even make a 'real' vb application mind you...but then again, anything that requires a 'runtime' to me isn't a real application. java, yes i'm looking at you.
Gekido's Lair
Yes, that 1995 interface is what I'm talking about. Vista will almost bring it up to KDE 2.x standards, but VB has been "depreciated" and probably won't come along for the ride as usual.
Friends don't help friends install M$ junk.
I'm unconvinced. I think he's making the decision using a fairly unreliable algorithm, being: make technical decisions you don't understand.
http://outcampaign.org/