Microsoft Developers opinion needed

Associate
Joined
27 Jan 2007
Posts
465
i've been coding in C# for a good 5 years and i have a offer to a new job. Problem is that this new company decided to standardise all coding to VB.

My question is will converting be an issue you think? Should i turn it down as such? The rest of the job seems dam cool and more importantly allow developers to work in a more autonomous fashion which suits me.

I need some opinions to help me make my decision please.
 
Last edited:
i've been coding in C# for a good 5 years and i have a offer to a new job. Problem is that they decided to standardise all coding to VB.

My question is will converting be an issue you think? Should i turn it down as such? The rest of the job seems dam cool and more importantly allow developers to work in a more autonomous fashion which suits me.

I need some opions to help me make my decision please.

I don't think conversion would be that hard, but I seriously question a company who standardizes in VB of all things. I hope they aren't programming anything too serious...
 
Why is VB thought of in a bad way? I mean i kinda have the same opinion but often been told it doesnt make a lick of difference, tis only syntax after all.

Is the fact that VB devs arnt as techie? Arnt as harcore? arnt as good?

Oh and serious as in financial software.
 
Why is VB thought of in a bad way? I mean i kinda have the same opinion but often been told it doesnt make a lick of difference, tis only syntax after all.

Is the fact that VB devs arnt as techie? Arnt as harcore? arnt as good?

VB.NET is a lot better than the older VB but it still doesn't allow for code to be a tight and efficient as the more mature languages like C++

It's no just syntax it is code that is produced when compiled. VB.NET would be fine for writing Applications as long as they are not too complex.

Back in the days when you had 64K of RAM to deal with you learned how to program properly.

I can't see any problem with this job though, apart from VB programmers command lower salaries!
 
I don't think conversion would be that hard, but I seriously question a company who standardizes in VB of all things. I hope they aren't programming anything too serious...

Without getting into the .net dev language holy war stuff. I would have to disagree there. There is little between VB.NET and C#. VB.NET is nothing like the preconceptions that people have after using VB 6 and below.

VB.NET and C# are equal and aimed at different people. C# is used to attract Java, C and cpp to the .NET platform. VB takes care of the VB6 people, FoxPro and VBA programs. With the coming addition of the DLR and IronRuby et al this cleans up all the other devs left and gives everyone a nice and gentle way to program for the .NET platform. See MS did there, take care of the devs and rest will follow. Other platforms so take note tbh esp Apple with Objective-C, bloody reference counting and Coca.
 
Why is VB thought of in a bad way? I mean i kinda have the same opinion but often been told it doesnt make a lick of difference, tis only syntax after all.

Is the fact that VB devs arnt as techie? Arnt as harcore? arnt as good?

Oh and serious as in financial software.

It shouldn't be too hard, as they are both using the .NET methods, which are called in a very similar fashion I beleive.

VB is thought of as 'bad' because unlike C, it doesn't let you define your own data types, it doesn't let you define short/long/double sized data types, and you don't have access to pointers the way you do with C.

In other words, it's a verbose high-level language giving you little if any control to the 'lower' levels of programming.
 
It shouldn't be too hard, as they are both using the .NET methods, which are called in a very similar fashion I beleive.

VB is thought of as 'bad' because unlike C, it doesn't let you define your own data types, it doesn't let you define short/long/double sized data types, and you don't have access to pointers the way you do with C.

In other words, it's a verbose high-level language giving you little if any control to the 'lower' levels of programming.

Thanks. That was kind of what I was trying to say. Only I haven't done any serious programming since Uni and could not remember all the terms...
 
i've been coding in C# for a good 5 years and i have a offer to a new job. Problem is that this new company decided to standardise all coding to VB.

My question is will converting be an issue you think? Should i turn it down as such? The rest of the job seems dam cool and more importantly allow developers to work in a more autonomous fashion which suits me.

I need some opinions to help me make my decision please.

Depends really, you got to question a company who decides to code in VB though. C# is a much nicer language. Would you be happy to code in VB all day? If the rest job seems cool and you will enjoy it I don't see why not.

VB developers are pretty much the lowest of the low when it comes to coding though :) I wonder do you really want to be a Microsoft only language programmer? You do limit your self.
 
It shouldn't be too hard, as they are both using the .NET methods, which are called in a very similar fashion I beleive.

VB is thought of as 'bad' because unlike C, it doesn't let you define your own data types, it doesn't let you define short/long/double sized data types, and you don't have access to pointers the way you do with C.

In other words, it's a verbose high-level language giving you little if any control to the 'lower' levels of programming.

There comes a trade off though with speed of development and performance. You could write a .Net app to manage stock for instance and it would take half the time to develop than the equivalent in C/C++. Where as a something that ran at boot time to manage the users enviroment would be utterly useless in .Net.

.Net is not as performant as lower level languages but you have to judge on a situation by situation basis. So the purist programmer in me thinks everything should be written in ASM or C but unfortunately the needs of the business need to be taken in to consideration.
 
VB.NET is a lot better than the older VB but it still doesn't allow for code to be a tight and efficient as the more mature languages like C++

It's no just syntax it is code that is produced when compiled. VB.NET would be fine for writing Applications as long as they are not too complex.

Back in the days when you had 64K of RAM to deal with you learned how to program properly.

On the contrary; unless you have a specific reason for choosing C++ or C (e.g. needing low level system access), then it makes far more sense to develop in .NET for all but the most performance-critical applications, from a business point of view.

Edit: dotnetwill put it pretty well.
 
Last edited:
Okay, thanks for the opinions guys.
Seems low level pointer use is main difference... i take it high level event-delegation pointers are still ok... hmm i'll find out.

Found this which seems useful:

In summary, when evaluating programming languages for .NET, the choice between C# and VB.NET is largely a matter of personal preference. In the past, VB may have been looked down upon by some developers who considered it to be inherently less powerful than other general purpose languages. But VB.NET is altogether a different beast from VB6. It is every bit as powerful as C#, it has full access to the .NET Framework and its compiled applications should generally be just as fast and efficient as similar applications written in C#.
The only major difference between the two languages is that C# can break out of the ‘managed’ world of .NET to support unsafe code should this be required. However unsafe code is, as its name suggests, inherently hazardous and you may feel that it is a good thing to avoid using it. Explicit use of pointers is seldom required when programming .NET. If you really feel that you cannot do without pointers, then C# would be a good choice of language. If you are happy to work within the managed world of .NET, then C# or VB.NET would be equally suitable for your purposes.
Of course, there are other .NET languages available too. At first sight, C++ might seem the most attractive choice for programmers with previous experience of that language. You need to be aware, however, that the .NET version of C++ is best used for manipulating unmanaged memory. In most cases, C# would be a better choice of .NET language for a programmer with C++ experience. Unlike C++, the C# language was specifically designed for the .NET Framework. It benefits from a simple syntax, garbage collection and type safety to eliminate many potential bugs.
For Java programmers, the J# language provides a Java-style alternative to C#. It offers the easiest migration path for projects developed using Microsoft’s Visual J++. However, bear in mind that the syntax of C# is also very similar to that of Java. Moreover, both Java and C# provide garbage collection to reclaim unused memory, they both avoid pointers by default and implement a simplified form of single-descent object orientation. Unless you have a particular reason for selecting J#, therefore, the C# language should generally be preferred.
 
Okay, thanks for the opinions guys.
Seems low level pointer use is main difference... i take it high level event-delegation pointers are still ok... hmm i'll find out.

Found this which seems useful:

<snip>

One (significant, imo) difference between C# and VB.NET is that VB.NET doesn't support anonymous methods, which is a big disadvantage for it in my opinion. This isn't so much of a problem in VB 2008, though, which supports lambda expressions.
 
VB.NET is a lot better than the older VB but it still doesn't allow for code to be a tight and efficient as the more mature languages like C++

It's no just syntax it is code that is produced when compiled. VB.NET would be fine for writing Applications as long as they are not too complex.

Back in the days when you had 64K of RAM to deal with you learned how to program properly.

I can't see any problem with this job though, apart from VB programmers command lower salaries!

Considering their both compiled to IL, I find it hard to believe that the compiled code from VB.NET is worse than compiled C# code.
 
I use C# all the time... I like it better then VB I would rather do this:

If()
{

}

Then this..

if()

End if

I think its a lot more tidy....

Stelly
 
Ok, anyone else know some common difference? Give me a better idea of what i should be aware of.
I know "dim" is like creating a variable. iteration is stright forward.
Object creation different?
Method creation? "Ref" can be used?
 
God I love these arguments :D

The numpties who have sweet **** all experience other than been taught a curriculum that is out of date and will change before they leave uni always come out to give their little snippets of information.

OP:

It's simple. If the team you work with are VB.Net literate, then you're gonna have to learn VB.Net. Why? Because they probably don't know C#, and it's all very well you going in there with a good C# experience and your talk of what C# can do better than Vb.Net but fact is, you have a day off, take a holiday, go on a different project and how are your team meant to understand your code?

Likewise if and when the times comes to migrate over to C#, you're at the forefront and will be able to lead others.

But do ignore the comments about Vb.Net not been used by 'real' companies. I'm not at liberty to say but I'd have the biggest smug grin here if I name dropped a few major companies that have their entire department running, dare I say, VB.Net code.
 
Back
Top Bottom