Which language are employers looking for - C# or VB.NET?

B

BLACKDOG157

I am starting to study dot net languages, and I'm wondering - which
language do employers look for - C# or VB.net? Are they both equally
powerful languages?
Thanks,
BD
 
N

Nicholas Paldino [.NET/C# MVP]

BD,

Yes, they are both equally powerful (they really don't differ too much
in terms of language features, although one could make the argument that
there are differences between the IDEs for the languages, with certain
features being offered by one IDE for one language, as opposed to the
other), since all of the functionality is in the framework anyways.

However, that doesn't mean there isn't a social stigma against one
langauge. VB is still looked down upon in some circles, so you might want
to take that into consideration.
 
S

sloan

I've had to develop in both. Currently in vb.net.

Having said that, if you've ever taken a java class, then go with C#.

C# is just ... "cleaner" to me. I can't quantify it exactly, it just feels
cleaner.

Another social taboo is that sometimes people with a strong vb background,
bring their bad vb6 habits over with them when going to vb.net.

...

The other small issue, but haunts me weekly, is that you're googling
something you want to do ... (I'll use "ftp" as an example)

you go to google, and you type in

"visual basic" "ftp"

and you get not only vb.net articles , but every vb6 , 5 , 4 , 3 articles
also you gotta wade thru.

when you google
"C#" and "ftp"
you'll find better matches, which saves you time.

I have in the past probably ID'ed about 5 or 6 "undocumented features" in
vb.net... aka, royal pains in the butt that I know I can do in C#, that
vb.net doesn't allow for.

One of the most annoying is "go to reference", where you click on a method,
and in C# you can find where it is called. in vb.net, it just isn't there.
(i'm talking about the VS2003 IDE development environment)


My advice is to go with C#, unless you have an exact reason to go to vb.net

Whichever you choose, you can write good or bad code in either. the
language choice doesn't help with that area. but you gotta start somewhere.

Good luck.
 
C

Clive Dixon

There are, so we are told, far more VB.NET developers around than C#
developers (though I haven't actually seen any evidence of this myself, at
least here in the UK). It could be argued that for this reason you may be
more in demand as a C# developer, though conversely of course there could be
fewer jobs to go round. You would need to do some market research on this.
Most companies will want to standardise on one .NET language used within the
organisation, and in my experience (OK, only 2 companies so far) this
standard language is C#, admittedly by default because most developers were
previously C++ rather than VB developers.

On that subject, in general one would suspect that old VB6 developers have
moved to VB.NET, and old C++ developers (who will often have also been
developing using MFC/ATL/COM/Win32 etc.) to C#. Employers may thus have a
preference for C# developers on a generalisation and presumption that they
probably have a larger skill set and breadth of experience. The actual
differences between VB.NET and C# are relatively minimal in terms of their
power, but undoubtedly VB.NET does suffer a lot from a lasting VB6 vs C++
stigma.

Note also that if you are learning the languages, Microsoft are nowadays
moving towards doing their code examples in VB.NET because of the supposed
larger number of VB.NET developers:
http://blogs.msdn.com/tomarcher/archive/2005/11/21/495282.aspx
 
A

Andy

I'd like to agree; C# seems much more cleaner. Also, VB seems very
very wordy comparivley. You have to type a bunch of extra words that
don't really make anything clearer.
 
G

Greg Young

My recommendation would be to focus on learning the framework. I work
interchangably in C#, VB.NET, and other languages like boo ... The fact of
the matter is that once you learn a language like C# or VB.NET learning
another is a rather trivial task (especially the move from C# to VB.NET,
VB.NET to C# can be more difficult if you are not familiar with C style
languages).

Cheers,

Greg Young
MVP - C#
 
K

Kevin Spencer

Employers shouldn't be looking for languages. They should be lloking for
programmers. That is, regardless of what language(s) you program in, it is
ultimately *you* and your ability that makes the difference, at least with
any employer that *I* would work for.

--
HTH,

Kevin Spencer
Microsoft MVP
Professional Numbskull

Hard work is a medication for which
there is no placebo.
 
G

Guest

BlackDog,
Did you post one of these on the vb.net group too? It would be interesting
to compare the comments.

As Kevin so astutely points out, employers look for programmers, not
languages. At least, employers who possess above room-temperature IQ's that
is.

I programmed in classic VB for years. When C# and .NET came out at the PDC
in Orlando in 2000, I made a conscious effort to switch to C#. It was painful
at first, because the C# compiler won't let you get away with all those bad
habits. But, it was the right decision. Also, it's a known fact that C#
programmers tend to be more highly paid, if that's worth anything to ya!
Peter
 
I

Ignacio Machin \( .NET/ C# MVP \)

Hi,

Greg Young said:
My recommendation would be to focus on learning the framework. I work
interchangably in C#, VB.NET, and other languages like boo ... The fact of
the matter is that once you learn a language like C# or VB.NET learning
another is a rather trivial task (especially the move from C# to VB.NET,
VB.NET to C# can be more difficult if you are not familiar with C style
languages).

I'm also of this opinion, the key is in the framework. I also ahve to
program in both and do so without any problem at all.

IMO the most terrible part of VB.net is the IDE , no idea why in the 21th
century you still are forced to write the entire sentence in one single line
of code. this is the most stupiest thing ever !

The same with not be able to find where a method is being referenced or be
able to modify a code while running in the debug.

Other than that VB.net is identical to C# , even Vb.net has features that C#
has not !! , like declaring a member friend
 
I

Ignacio Machin \( .NET/ C# MVP \)

Hi,

Peter Bromberg said:
BlackDog,
Did you post one of these on the vb.net group too? It would be interesting
to compare the comments.

As Kevin so astutely points out, employers look for programmers, not
languages. At least, employers who possess above room-temperature IQ's
that
is.

I went to an interview two weeks ago and he said if I had anything against
programming in VB , the reasoning is cause it was easier for the other
developers than C# :)
 
L

Larry Lard

Ignacio said:
IMO the most terrible part of VB.net is the IDE , no idea why in the 21th
century you still are forced to write the entire sentence in one single line
of code. this is the most stupiest thing ever !

Not the IDE, but the language. It's a tradeoff for not having to
explicitly terminate single-line statements, which let's face it are
the majority of statements.

Also, _
there is a statement continuation syntax.
The same with not be able to find where a method is being referenced or be
able to modify a code while running in the debug.

Both possible in VS2005.
 
A

Andy

Other than that VB.net is identical to C# , even Vb.net has features
that C#
has not !! , like declaring a member friend

In C# this is called internal..
 
K

Kevin Spencer

Andy, you're not doing VB.Net a service as a professional language by such
postings. First, you state that VB.Net does things that C# does not, and use
the "Friend" modifier as an example. Then you identify the C# equivalent.

--
?!,

Kevin Spencer
Microsoft MVP
Professional Numbskull

Hard work is a medication for which
there is no placebo.
 
A

Andy

Sorry, my post wasn't clear.

"Other than that VB.net is identical to C# , even Vb.net has features
that C#
has not !! , like declaring a member friend " was a quote by Ignacio
Machin ( .NET/ C# MVP ).

The line pointing out C#'s equivelent was me. I don't use VB.Net, I
personally don't care for it, so was compelled to respond to that
statement, since it did employ VB.Net did things C# didn't, when in
fact they can pretty much do everything the other one can.
 
K

Kevin Spencer

Ah, sorry. You are correct, of course.

There are a few differences, which actually result in C# being able to do
more (managed pointers, for example). There are some things in VB.Net that
are easier to do than with C#.

--
HTH,

Kevin Spencer
Microsoft MVP
Professional Numbskull

Hard work is a medication for which
there is no placebo.
 
D

David Browne

Kevin Spencer said:
Ah, sorry. You are correct, of course.

There are a few differences, which actually result in C# being able to do
more (managed pointers, for example). There are some things in VB.Net that
are easier to do than with C#.

VB does have Late Binding, implicit variable declaration and implicit
conversions.

Although overused in older versions of VB and still suceptible to abuse,
these are important language features that make VB suitable in some
applications where C# is not.

David
 
B

Bob Grommes

C# has late binding as well as VB.NET; it's just a question of being
more explicit and deliberate about it than you have to be in VB.NET.

I would agree that applications that have to do an extensive amount of,
say, ActiveX Automation, might be better written in VB, depending. For
example, VB's support for optional arguments fits nicely with the
antique use of that feature in legacy APIs such as the Excel and Word
Automation interfaces. In C#, you have to either pass in all 22
arguments to some of those byzantine functions, or write wrapper methods
around those, which is extra gruntwork. I don't see that as a
shortcoming of C# so much as a shortcoming of the automation interface.
But VB.NET *does* address that annoyance nicely.

However, you can do virtually any task in either language, or indeed in
any CLR-hosted language.

--Bob
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

Wonderful opinionated book on C# 16
C# and VB.Net? 44
VB.NET or C# 1
The Demise of C# 130
The syntax free feature of C# and VB.NET 9
Why bother with .Net language conversion? 6
c# number and words 5
c# vs vb.net 3

Top