Jump to content
Xtreme .Net Talk

Recommended Posts

Posted

At work today and talking to a programmer, trying to tell him about the problems in his software. Anyway, got onto other subjects and talking about VB. His comments,

 

"Well, VB is nearly a proper programming language now"

 

He uses Delphi to do his programs, and from what I have seen of what he does, there is nothing that delphi does that VB can't do, except write multiplatform apps (unix, linux, etc)

 

I would like to know who else hears this a lot when it comes to VB? I just don't think that people who use other languages realise that VB.Net is up there with the rest of the languages. I know that each language has its own uniqueness and can accomplish certain tasks easier than others, but when it all comes down to it, they all can be used to code a typical database application.

 

Anyway, I had to bite my tongue when talking to him and it just makes me wonder if I should invest some time to explore other languages.

 

The section I work in doesn't do any hands on developing, but we hire consultants to do the work. And the guy who uses Delphi is one of them. I don't know how many times I have told them I can do the same in VB, save them money and time, but it seems when you mention VB, they look the other way.

 

Sorry for dribbling on a bit, but it's a frustrating thing I deal with every day.

 

So, any tips on how to convince management to go with VB would be greatly appreciated.

  • Administrators
Posted

Language choice seems to have almost religious significance amongst some people and nothing (at all, ever, even if they lived to be a thousand) will shake their preconceptions of a language.

Initial in the days of VB1 and 2 it was a simple language that was lacking in a lot of ways, but still gave a reasonable way to throw a GUI app together. VB3 introduced data access and quickly became a popular choice for RAD development of simple data driven apps, but couldn't really compete with a language like C/C++. Then VB4 (shudder).

VB 5 and 6 introduced some basic OO concepts and allowed (with maybe more effort than a more powerful language) large scale, enterprise applications to be developed. The main problem was COM introduced a lot of complications (limited OO, reference counting etc). Other languages like Delphi, C++ could wear a COM interface for interop but rarely used it internally - VB was stuck with COM throughout.

 

With VB.Net the choice has become a lot more academic - inheritace, interface, exception handling, threading, memory management are consistent between all .Net languages (as well as the majority of OO languages) and few people would say C# is 'nearly a proper programming language', yet VB has almost exactly the same feature set (plus one or two things C# doesn't).

 

The next release introduces some of the C# features to the VB language (the using statement when dealing with IDisposable for example).

 

Everyone knows the framework was written in C# so that's the best language. In fact parts of the BCL are coded in VB.Net (I have this on authority from 2 project managers from the VB team) and some of the nicer features in the next release (the My object) are coded in VB as well.

 

This misconception of VB's position is something the VB.Net team are aware of and are actively seeking to dispel some of the myths. Certain points have been raised with them (i.e. better samples, more samples in VB, more MS articles using VB rather than nearly all being C#, possible depreciation of legacy VB features like CInt etc) and they just need to prioritise which can be actioned in the next 6 - 12 months short term and then in subsequent releases for the more long term approach.

 

Without being too much of a zealot myself :) Delphi is a powerful language - it's just not one I've had any call to use or develop in, so my experience is limited (but it did impress me, but the pascal based systax is something I've disliked since college). I don't consider myself to be either a VB or a C# developer but a .Net developer anyway.

 

The next generation of the framework adds support for things like Generics to make both C# and VB.Net even more of a competitor to Delphi etc.

 

Just my 2p worth there.

Posting Guidelines FAQ Post Formatting

 

Intellectuals solve problems; geniuses prevent them.

-- Albert Einstein

Posted
Everyone knows the framework was written in C# so that's the best language. In fact parts of the BCL are coded in VB.Net (I have this on authority from 2 project managers from the VB team) and some of the nicer features in the next release (the My object) are coded in VB as well.

 

Isn't this what makes .Net so great?

 

You can code mainly in C#, then do other parts in vb.net (or visa versa). So long as the language can handle what you're doing, it's all fine.

 

In fact I see that as a great strength. I can code all day in VB.Net and if I come across something thats harder to do in vb.net, I can create a C# .dll to handle it.

Posted

That's cool Robby... but I find it hard to see what is so difficult to code in a language to be forced to change to another. I know that C# can support operator overload and that VB.NET can't.

 

But what VB.NET can do that C# can't do ? Or what C# can do that VB.NET can't ?

Why switching language so often in a project ? Only to stay in touch with all language maybe ?

 

Please light my way.

Since the beginning I work with them and... the only difference I found between them... is the operator overload...

 

More explication please.

"If someone say : "Die mortal !"... don't stay to see if he isn't." - Unknown

"Learning to program is like going out with a new girl friend. There's always something that wasn't mentioned in the documentation..." - Me

"A drunk girl is like an animal... it scream at everything like a cat and roll in the grass like a dog." - Me after seeing my girlfriend drunk and some of her drunk friend.

C# TO VB TRANSLATOR

  • Moderators
Posted

In this particular solution it's because I already had a couple of base classes done in C#, so I merged them all together. And this mandate was for a VB.NET solution, but they don't mind a few C# projects in there, anyway, these base classes needed no modifications.

 

I could've just referenced the assemblies but they do want the all the source code on hand. (understandably so)

Visit...Bassic Software
Posted
Ah ok... that's what I tought... no big problem in a language to be forced to change. Only a boss that want a specific language ;) lol

"If someone say : "Die mortal !"... don't stay to see if he isn't." - Unknown

"Learning to program is like going out with a new girl friend. There's always something that wasn't mentioned in the documentation..." - Me

"A drunk girl is like an animal... it scream at everything like a cat and roll in the grass like a dog." - Me after seeing my girlfriend drunk and some of her drunk friend.

C# TO VB TRANSLATOR

Posted

Doesn't C# have better documentation capabilities (currently) also? I think that would make me want to lean towards C# for making .dlls.

 

Someday I'll get a chance to work in C# :)

Posted

But what VB.NET can do that C# can't do ? Or what C# can do that VB.NET can't ?

Why switching language so often in a project ? Only to stay in touch with all language maybe ?

C# cant ReDim arrays :o, one of the main reason why i dont tend to use it

 

 

Everyone knows the framework was written in C# so that's the best language

:s if it was programmed in C# then wahts with the bad intellisense

 

--

I agree with PossiblyDamp - VB has come a long way.

VB.NET and C#.net are very similar (well they are based off the same framework) :p

I honestly dont mind using C#(just hate the Redim's and the intellisense :p)

 

pent

My VB.NET Game Programming Tutorial Site (GDI+, Direct3D, Tetris [coming soon], a full RPG.... you name it!)

vbprogramming.8k.com

My Project (Need VB.NET Programmers)

http://workspaces.gotdotnet.com/ResolutionRPG

Posted
"Well, VB is nearly a proper programming language now"

No it is not. Yes it is functional, but its syntax is unwieldly. Totally inferior. Yes, non-programmers can program in it but its construct is not on a par with other OO languages.

 

He uses Delphi to do his programs, and from what I have seen of what he does, there is nothing that delphi does that VB can't do, except write multiplatform apps (unix, linux, etc)

Delphi could do lots of things that VB pre .net simply could not do. VB pre .net was simply awful

 

VB.Net is up there with the rest of the languages. I know that each language has its own uniqueness and can accomplish certain tasks easier than others, but when it all comes down to it, they all can be used to code a typical database application.

Everything is harder to do in VB, that is, if you know how to do it in the other languages.

 

Anyway, I had to bite my tongue when talking to him and it just makes me wonder if I should invest some time to explore other languages.

By all means - YES!!! DO!!! Delphi, BTW, came WITH the source code used to create Delphi. A wealth of information and technique.

 

The section I work in doesn't do any hands on developing' date=' but we hire consultants to do the work. And the guy who uses Delphi is one of them. I don't know how many times I have told them I can do the same in VB, save them money and time, but it seems when you mention VB, they look the other way.[/quote']Sounds to me like these guys know what they are doing!

So, any tips on how to convince management to go with VB would be greatly appreciated.

On the contrary, encourage them to stay away from VB. In short, VB ( any flavor ), by its very syntax, encourages poor design and implementation. You have to jump through too many hoops to do some very simple things.

 

I find that VB programmers (IN GENERAL) do not understand the concept of delegation, as this language construct was not available pre .NET.

 

I am currently taking a VB6 app and converting it to .NET. It has done nothing but reinforce my utter disdain for the language and has worn out my patience for programmers who think VB is so damn great. It isn't. It absolutely bites. Even the .Net version sux. Who cares if it can now do anything that C# or delphi.net can do? It is still the god awful VB language construct ("withevents", "handles", [increase list ad nauseum] . . . )

 

Anything But VB. Who cares if VB has a great user base????

If everyone jumped off a bridge, would you follow?

Ford Taurus is the best selling car in the US, it still is a piece of crap and I won't buy one.

 

Brittney Spears sells a lot of albums - do you own one???

Why not? She because she sux and you know better.

And you probably laugh at people who think she is great right?

 

Well I laugh at programmers who think VB is great. It just shows how little they know.

But by all means, keep using it. It just means more work for me in a couple of years!!!!

Joe Mamma

Amendment 4: The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures, shall not be violated, and no warrants shall issue, but upon probable cause, supported by oath or affirmation, and particularly describing the place to be searched, and the persons or things to be seized.

Amendment 9: The enumeration in the Constitution, of certain rights, shall not be construed to deny or disparage others retained by the people.

Posted
So you'll Delphi.Net and C# are solid buisiness tools, but managers would be stupid to use VB.Net... because of it's syntax is different... and different syntax leads people to poor programming?
Posted

I totally agree with you Joe Mamma. I don't like VB syntax. One thing we can't say however... it's that the same program in VB.NET will run faster on C#. They have the same compiler so it'll be similar code. BUTTTTTTTTTT..... I hate VB syntax. No matter how simple it is... Manager can now work in VB and make "big" (let me laugh) program and big economy(let me laugh again) by using it. They'll only lost time. Bad structured program means long time to maintain ... long time to correct bug... And did you ever saw a manager make some comments in his code ? The next programmer who's going to correct this code will have a lot of problem understanding where all of this is going.

 

VB syntax is awful... and those who use them are worst... I don't wanna get near a VB.NET project unless you pay me more than necessary.

 

(With the same voice of Golum) I Hateeeee VBBBBB !!!!!!

 

:p

 

N.B.: Continue to program in VB... I'll make big money :)

"If someone say : "Die mortal !"... don't stay to see if he isn't." - Unknown

"Learning to program is like going out with a new girl friend. There's always something that wasn't mentioned in the documentation..." - Me

"A drunk girl is like an animal... it scream at everything like a cat and roll in the grass like a dog." - Me after seeing my girlfriend drunk and some of her drunk friend.

C# TO VB TRANSLATOR

  • Moderators
Posted

Hmm, I knew this thread would take a turn for the worst , now that you've all had your say....

I'm not at all surprised by any of the comments or insults that I've heard thus far and it saddens me that there are so many narrow minded people that cannot see past their own hand, by I digress. :(

Visit...Bassic Software
  • *Experts*
Posted
No it is not. Yes it is functional, but its syntax is unwieldly. Totally inferior. Yes, non-programmers can program in it but its construct is not on a par with other OO languages.
In this particular case I would agree that VB's syntax is rather lacking compared with other languages. However, that doesn't make it a bad language, by any means.

 

Delphi could do lots of things that VB pre .net simply could not do. VB pre .net was simply awful

 

Everything is harder to do in VB, that is, if you know how to do it in the other languages.

I'm not even touching these comments, since we've been here before already, a few times.

 

By all means - YES!!! DO!!! Delphi, BTW, came WITH the source code used to create Delphi. A wealth of information and technique.
Agree. Look at as many languages as you can, but don't limit yourself to one (and don't force yourself away from any either...).

 

Sounds to me like these guys know what they are doing! On the contrary, encourage them to stay away from VB. In short, VB ( any flavor ), by its very syntax, encourages poor design and implementation. You have to jump through too many hoops to do some very simple things.

 

I find that VB programmers (IN GENERAL) do not understand the concept of delegation, as this language construct was not available pre .NET.

 

I am currently taking a VB6 app and converting it to .NET. It has done nothing but reinforce my utter disdain for the language and has worn out my patience for programmers who think VB is so damn great. It isn't. It absolutely bites. Even the .Net version sux. Who cares if it can now do anything that C# or delphi.net can do? It is still the god awful VB language construct ("withevents", "handles", [increase list ad nauseum] . . . )

Your superiority complex is becoming tiring. Despite what you may believe in your head, we all have our own opinions, and yours is just as meaningless as everyone else's.

 

Well I laugh at programmers who think VB is great. It just shows how little they know.
You've collectively insulted half the people who visit this board, as well as some of the greatest programmers I know. Watch yourself.
Posted

I had no idea this would turn into a huge flame war.

 

IMO the bottom line is this:

Each language has its own advantages and its own disadvantages.

The end result is what really matters.

Rather than telling people to stay away from a language, tell them to explore new languages and let them decide for themselves. A VB programmer might hate C++/C#'s syntax. A C++/C# programmer might hate VB.NET's syntax. This is an endless dispute.

 

We're going to get nowhere by arguing - your language choice is your opinion, and everyone is entitled to one. Yes, some languages might be more powerful than others - but as long as you learn the language of your choice it doesn't matter.

My VB.NET Game Programming Tutorial Site (GDI+, Direct3D, Tetris [coming soon], a full RPG.... you name it!)

vbprogramming.8k.com

My Project (Need VB.NET Programmers)

http://workspaces.gotdotnet.com/ResolutionRPG

Posted
C# cant ReDim arrays http://www.xtremedotnettalk.com/images/smilies/redface.gif, one of the main reason why i dont tend to use it

Given the robust Collection Classes, Redim is archaic.

 

feel free to use this, if you need:

 

public class ArrayManipulate
{
public static Redim(ref object[] objArray, int length)
{
		object[] newObjArray = new object[length];
		Array.Copy(objArray,0, newObjArray, 0, Math.Min(objArray.Length, length);
		objArray = newObjArray;
}
}

 

like this

 

	
int[] iArray = new int[4]{1,2,3,4};
ArrayManipulate.Redim(ref iArray, 3);
// iArray now {1,2,3}

string[] sArray = new string[4]{"1","2","3","4"};
ArrayManipulate.Redim(ref sArray, 3);
// sArray now {"1","2","3"}

 

No you might say its not as simple as Redim x(5)

but I rarely find a need for 'dynamic arrays' in .NET given the fantastic collections classes.

 

Almost never do I need to redimension an array where this won't suffice.

 

int[] i = new int[1000]

//do somthing with the array here

//then reinitialize

i = new int[5]

 

again, I almost bet, if you find a need to redim, there is a better way.

 

Simply an opinion.

Joe Mamma

Amendment 4: The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures, shall not be violated, and no warrants shall issue, but upon probable cause, supported by oath or affirmation, and particularly describing the place to be searched, and the persons or things to be seized.

Amendment 9: The enumeration in the Constitution, of certain rights, shall not be construed to deny or disparage others retained by the people.

  • *Experts*
Posted

From sin's original thread, he only asked two questions:

1. Do you hear "this type" of comment a lot (VB isn't a proper language)?

2. Any tips on how to convince management to go with VB?

 

For #1, if you do hear comments like that, just ignore them unless you just want a pointless argument. It's not much different than any other opinionated and mostly baseless comment. The only thing you should take away from that conversation is that the person making the comment is someone who likes to spout their opinions.

 

For #2, why convince them to go with VB? It sounds like YOU might know VB, but the contractors know Delphi (mostly). I'd say management is choosing to go with contractors, so let them do the work in whatever language they want.

 

The question management should have is not what language to use, but one of consistency and project management. They should make sure that all the systems being build use a consistent language (hopefully) for maintenance purposes. Also, a project manager is needed to ensure that the code is "good", again for maintenance once the contractors are gone.

 

Now if you're asking about #2 because YOU want to do some programming (in VB.NET or otherwise), then go talk to your boss and let him know!

 

-Nerseus

"I want to stand as close to the edge as I can without going over. Out on the edge you see all the kinds of things you can't see from the center." - Kurt Vonnegut
  • Leaders
Posted

Joe Mamma and ArchAngel:

 

You have yet to provide a single solid example that supports your argument that C# provides real productivity gains over VB.Net. Perhaps you could do so.

Those who live by the sword get shot by those who don't!
Posted

Yeah... I can do so... but I won't be revelant...

 

I like C# because it's more quick and have some operator overload (which I use often).

 

HOWEVER... I put effort in learning VB.NET as much as I put in learning any language. To put an end to this flame war... I have a big opinion that will make people think again before flaming VB Programmer.

 

You have the absolute right to hate a language. But you don't have the right to say that ALL programmer that work ONLY in VB.NET and VB6 (hummm... not OOP but don't care) are BAD programmer. Some are so damn good.

 

Here is my point... you MUST learn the most used language or the incoming language. It's clear that C# is incoming and that you must learn to work with it. But VB.NET will be used by most of VB6 user and you'll finally have to work with somehow. So the philosophy in computing is : "Learn as much as you want because someone else will take the job you can't do". That mean that C# and C++ programmer shall take a look at VB.NET and VB6 (VB.NET) user shall take a look at C# (C++ might be a little too hard for them).

 

Now... everything is clear... other "opinion" are sensless... "facts" are more important. And the facts are there is a LOT of people who use VB... so better learn to work with it.

"If someone say : "Die mortal !"... don't stay to see if he isn't." - Unknown

"Learning to program is like going out with a new girl friend. There's always something that wasn't mentioned in the documentation..." - Me

"A drunk girl is like an animal... it scream at everything like a cat and roll in the grass like a dog." - Me after seeing my girlfriend drunk and some of her drunk friend.

C# TO VB TRANSLATOR

Guest
This topic is now closed to further replies.
×
×
  • Create New...