C# developers going back to vb.net

  • Thread starter Thread starter Kevin
  • Start date Start date
Yes, I agree with your statement, but the point I am trying to make is
if people like apples why do they pretend to like oranges because the
majority like oranges and actually they are dying for a nice juicy
apple.

If in fact that was the case. But I see no evidence that people who use c#
are actually dying to use VB instead, nor the reverse. I am sure one can
quote someone here or there on both sides. But my quess would be that most
people are using the language they prefer. That said, if I owned a big
project I would pick one and stick with one. Yes you can use both and let
people choose which one they like, but now you have two different languages
to deal with and people always have to juggle mental conversion even if they
know both. Imagine doing code reviews with two or three different languages
on the table. Have two or more sets of standards, etc, etc. So overall
productivity would suffer I would think. So fact is, some companies need to
make a choice and stick with it.
 
I taught myself C using a pirated copy of Borland C+ 2.0, which ran on DOS.
I'm not sure what you're referring to, but you should bone up on your
history. Some of us lived through it.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Big things are made up of
lots of little things.

Larry Lard said:
Kevin Spencer wrote:
[snip]
C++ is an older implementation/derivation of C. It was designed for very
low-level access, BIOS/processor-level access, in fact. It was developed
prior to the advent of multi-tasking networked operating systems, and
before
it was possible to get yourself into too much trouble with
BIOS/processor-level access.

Thanks for reassuring me that I don't have to set too much store by
things you say.
 
Yes, Kevin, I actually worked for about 6 years almost exclusively with ASP,
VBScript and VB. I had my own consulting business, and the web database
market was just emerging. In fact, prior to working with ASP, I spent a year
or so working with IDC.

I got very familiar with VBScript and VB, and had no problems with it. I
actually got very comfortable with it, and of course, it was the only RAD
language around. That was its greatest strength. But the advent of the .Net
platform opened up a world of greater possibilities, and I embraced it with
great enthusiasm. In the beginning I worked mainly with VB.Net, as I was in
a primarily ASP/VB shop. But that was about 3 years ago, and I eventually
(after changing jobs) was able to get to the point where I use C# almost
exclusively now. About 99% of the time, that is, except when I have to tweak
some legacy app that is still around here.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Big things are made up of
lots of little things.
 
Ow. My head hurts.

I have no problems with women of any kind. However, I am married now, so
it's really very moot!

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Big things are made up of
lots of little things.
 
As many others, in my job I have to go back and forth between C# and VB.NET
quite often. Originally coming from Turbo Pascal I never really found a "true
love" since the DOS days. My opinion is that C# is a cleaner more typesafe
language that in almost all of my projects beats VB.NET in shorter
development cycles and far less bugs. In my opinion C# will be THE language
in the future.
 
Actually, I was a QBasic > VB6 > VB.NET developer and now I had the chance to
switch to C#, I was waiting the chance!!!

* C# syntex is derived from the mother of all languages C++ and that makes
it universal and not a language that only Microsoft developers know! If you
are an ASP.NET developer then you can write JavaScript in a similar way
without adding a "Then" to the "if" (not to mention PHP).
* if you are a common Java and .NET developer, maybe working on both
languages in the same time or migrating from a language to another, you woukd
enjoy C# versus VB.NET.
* C# is "Option Stric On" by default and there is no way to set it off (I'm
addressing lazy developers)
* You type less with C#!
* It is case-sensitive and senior developers might like to have same names
with different case!
* VB.NET bears some bad practices from VB6 like a string variable is empty
string by default, when creating an array you specify the top index versus
the count, etc...
* VB.NET developers that are from VB6 background tends to write code in the
same way they did with VB6 knowing that VB6 is OO based and VB.NET is OOP
language, so they give BAD reputation for the other non-OOB developers!!!

And the list goes on, do I need to say more? I hope I won't be forced to go
back to VB.NET, it sucks!!!
 
Well, yes, if you want to be perfectly literal about it. Even MS DOS was
"multi-tasking" in a technical sense, and this amounts to nit-picking, which
may make one subjectively feel superior, but contributes nothing to the
topic.

The point I was making was that C++ was developed at a time when low-level
programming was much safer, and programming in general was much simpler. I
wrote programs in C for DOS that performed interrupt calls back in the day,
did direct disk writes, etc. This would be catastrophic today, for the vast
majority of programming tasks. That is inarguable, and topical.

Forgive me, but I am much too old for geek swagger. At this point in my
life, I prefer to be creating powerful software, rather than comparing the
length of my "hardware."

--

Kevin Spencer
Microsoft MVP
..Net Developer
Big things are made up of
lots of little things.
 
Do you know Wikipedia, there is a lot stated wrong in your message

Well, Cor, by your own nit-picking standards, your English *sucks*.

http://www.ucl.ac.uk/internet-grammar/home.htm

Get over it, dude. There are more important (and helpful) things to do in
life than nit-pick. If you have a self-image problem, don't compensate. You
will only end up hating yourself even more. If you want to feel good about
yourself, try to make others feel good about themselves. What goes around
comes around.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Big things are made up of
lots of little things.
 
Kevin,

May I ask you if you did understand the message from Adam and did you think
he was right in that.

I did not want to pick on every row as you forever do.

I showed him a place to investigate what he wrote in advance, something that
your message as shown in this thread lack as well very often.

Cor
 
Kevin said:
Well, Cor, by your own nit-picking standards, your English *sucks*.

I rather think Cor was referring to content rather than form. And I
daresay his English is better than your whatever-his-native-tongue is.
http://www.ucl.ac.uk/internet-grammar/home.htm

Get over it, dude. There are more important (and helpful) things to do in
life than nit-pick. If you have a self-image problem, don't compensate. You
will only end up hating yourself even more. If you want to feel good about
yourself, try to make others feel good about themselves. What goes around
comes around.

Physician heal thyself!
 
Kevin said:
I don't know if I should even start this topic but here goes.
I'm an ex vb6 developer, now developing in C#.
The reason why I started developing in C# is because the company that I
worked for at the time standarised on C#.

Many of my friends working in previous companies that I worked for are
starting to move back to VB.Net. When I asked them why, it seems that
the next release of VB.Net seems very promising and they kinda see
themselves in the same position I'm in. It seems that at the time when
..Net was first released many companies basically forced developers to
work in C# because as in my case the company they worked for
standarised on C#, why these companies did this is beyond me because
most of their developers were vb developers, I think it's because it
was marketed that C# was the main language to use on the .Net
Framework.

Now many companies as well as management in these companies are
starting to realise that vb.net is not that different from c# and are
starting to give their developers a choice and thus obviously the move
back to vb.

The reason why I'm posting this topic here is because I'm wondering how
many developers using c# are ex vb developers and would actually like
to develop in vb.net. I have actually convinced my superiors to use
vb.net as another language choice and they have agreed.

We have just started a new project in vb.net about 3 mths ago and I
must say that it's still a damn fun language to work in, I'm actually
enjoying my work again. Productivity couldn't be higher as other c# (ex
vb6) developers in my department have also wanted to go back.

Wondering how many of you out there would like to move back to the
lighter side of life?

I started in vb.net and moved to a company that uses c#. I've been here for
almost 2 years and cannot see myself wanting to go back to vb.net. I have
nothing against it, I've just become very comfortable with c#.
 
Cor,

Afraid not sense make of you what I know. Headache is shown, dizzy forever
make me.

--

Kevin Spencer
Microsoft MVP
..Net Developer
Ambiguity has a certain quality to it.
 
You daresay a lot, Lard.

--

Kevin Spencer
Microsoft MVP
..Net Developer
Ambiguity has a certain quality to it.
 
Well, a lively discussion, that's for sure.

As a conciencious manager getting ready to embark on a GUI development
project I would like to launch my developers on the best path and platform.
This is "blank sheet of paper" development and primarily new grads. They
will accept whatever language I place in front of them, and, unfortunately, I
haven't been able to gleen much from this conversation on which of the two
would be best. (I won't go too deaply into my programming background other
than to say that I still prefer assembly language - protected, unprotected,
object oriented, ... it's all op-codes).

Anyway, I want to get my newbies started on the right path. Is there REALLY
a difference between the two? Will I hit a dead end with one or the other?
When I read the code snippets, they look *structurally* identical - is this
not the case? Is VB.NET more like C# than it is like VB6?

Help me do right by me coders!
 
<"=?Utf-8?B?Um9nZXIgQm95ZXI=?=" <Roger
Well, a lively discussion, that's for sure.

As a conciencious manager getting ready to embark on a GUI development
project I would like to launch my developers on the best path and platform.
This is "blank sheet of paper" development and primarily new grads. They
will accept whatever language I place in front of them, and, unfortunately, I
haven't been able to gleen much from this conversation on which of the two
would be best. (I won't go too deaply into my programming background other
than to say that I still prefer assembly language - protected, unprotected,
object oriented, ... it's all op-codes).

Anyway, I want to get my newbies started on the right path. Is there REALLY
a difference between the two? Will I hit a dead end with one or the other?
When I read the code snippets, they look *structurally* identical - is this
not the case? Is VB.NET more like C# than it is like VB6?

Help me do right by me coders!

There are a few reasons why it's worth using VB.NET in some situations:

1) If your coders really prefer VB syntax (eg if they've been using VB
for years, don't like C#'s "symbol" approach, and are happy to learn
the differences between VB6 and VB.NET)

2) If you need to use a lot of late binding - it's a pain to do it from
C#, but with VB.NET you can just turn option strict off, and so long as
you get everything right, you'll be fine. Just don't complain when it
doesn't give compile-time errors :)

3) If you're doing the kind of COM interop where optional parameters
would be useful


Aside from those, I would suggest using C#, for the following reasons:

1) As it was designed specifically for the .NET framework, it's more
closely aligned to it. It doesn't have a load of legacy quirks - about
the quirkiest it gets is in the switch statement. Compare this with the
various oddities of VB.NET which are basically there for backwards
compatibility, for instance the String "Nothing" handling.

2) It encourages you to do the right thing, by and large. None of this
"Option Strict Off" stuff (by default, no less!). No passing properties
by reference. More explicit event handling which makes it crystal clear
when you're subscribing to an event and when you're unsubscribing. The
"using" statement (coming to VB.NET in VS 2005, I believe).

3) It uses more standard terminology than VB.NET - null, internal etc.

4) XML doc comments (coming to VB.NET in VS 2005).

5) The language is smaller, and thus easier to learn. You need to learn
the .NET framework, of course, just as you do in VB.NET - but without
all the extras which are basically there for backwards compatibility.

There are specific things you can do in C# that you can't do in VB.NET
(just as there are some the other way round, as shown above) but these
aren't generally very important - unsafe code is very rarely useful to
most people. Operator overloading can occasionally be nice, but it's
more that it's great on some of the system types (TimeSpan, DateTime)
than that it's important to be able to overload yourself.
 
Jon Skeet said:
Aside from those, I would suggest using C#, for the following reasons:

<-- Snip -->

Another consideration; my former employer migrated from VB6 to C#. I was
involved in the process of reviewing CVs and interviewing candidates for
developer positions, both before and after the migration. We had great
difficulty finding VB6 developers of the calibre we wanted. Lots of
applicants, very, very few of them any good. Conversely, when we
advertised C# jobs we had fewer applicants but ended up choosing between
a number of superb candidates. We weren't offering any more money for
the C# guys.

Now, I realise that at the time C# was very new and that the people who
had acquired those skills were a self-selecting group. They were mostly
ex-C++ people or else people who were sick of banging their heads on
VB6's limitations and wanted a change. Things may have changed since
then, but I suspect that a lot of the people we rejected for those VB6
jobs now have VB.NET on their CV, and not C#.

So, not a comment on the relative merits of the languages, but a comment
on the ease of finding good developers amongst the two camps. I'm not
saying that there aren't good VB.NET developers, far from it, rather
that they may be harder to find.
 

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


Back
Top