Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Must use VB.NET (no C#) :( 2

Status
Not open for further replies.

dragonwell

Programmer
Oct 21, 2002
863
US
Well, I was about to take a job when, just at the last minute, they throw in a provision stating that all programming will be done using VB6 or VB.NET, and that at some point in the future the team will experiment with C# and then decide what language will be used.

Now, being a C# programmer, this is bothering me. I've made a considerable "investment" in learning C# and I think that it will be much better for my career to concentrate on mastering it, rather than fooling with VB.NET. Sometimes I even think that VB.NET will be obscure in the not-so-distant future- with C# work really taking off.

My way of thinkig is that if you're using .NET, what difference does it make if one programmer is using VB and the other C#, since almost always if yuou know one you know the other.

I think this odd provision is based on the fact that these people are old-school VB guys, just getting into VB.NET and they think that C# is going to be really foreign.

I want to take the job but I'm afread that I will HATE having to use VB.NET!

Confused...
 
I feel your pain. I have a client that demands everything be done in VB rather than C# because a "developer friend" of his has convinced him that VB.NET code runs faster than C# code. That's horse-puckey, of course, but it isn't good for business to tell a client that his friend is full of it.

It all depends on your own feelings on the matter. You could become the C# evangelist and preach its virtues until they either see the light, or get tired of hearing you preach.
 
Code that you create will at some point have to be worked on by others. The business has decided to limit development between two languages. So if you created something in C#, and other developers hadn't used it, they would not be able to work on your code.

I'm not sure why you would hate using VB.Net. Its not that big of a difference, IMO.
 
I'm sure we all have our preferences about what is the "right" language for any given application. But from the corporate perspective, there are a few more parameters that the preferences of an individual programming is determining which is "right".

I find your statement interesting: "My way of thinkig is that if you're using .NET, what difference does it make if one programmer is using VB and the other C#, since almost always if yuou (sic) know one you know the other." I then ask you that very same question. What difference does it make?

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 
>> What difference does it make?

:) Exactly. If a someone wants to program in VB.NET, that's fine with me. If I ever have to debug it, I can stand it for a few days. But when I'm really cooking (thinking in C#) I'm going to cringe when it takes me three lines of code to declare a variable, set it's value from a method call and cast to to another type when I can do all that in one line of C#. Point is, I wouldn't demand that all employees use C#, even if it's my preference, nor would I require that everyone configure their mouse right-handed because someday I might have to sit at their machine.




 
But you do want to dictate to the business what tools they should allow you to use, without regard to the big picture?

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 
The difference is that they are the employer, they determine how things are to be done and what technologies are to be used. As an employee you may try change their opinion about C#, this may or may not have an effect on what technologies they chose to implement. If your as opposed to VB.NET as I read you being then you best not taking the job because you may end up not enjoying what you do.

"Shoot Me! Shoot Me NOW!!!"
- Daffy Duck
 
Well, I'm not a dictator; I'll either grin and bear it or find another job. I just want to stay "sharp" for when the next job comes along.

Thanks the input - it helps.
 

But when I'm really cooking (thinking in C#) I'm going to cringe when it takes me three lines of code to declare a variable, set it's value from a method call and cast to to another type when I can do all that in one line of C#


Ummm, OK. This looks like one line of code to me.

Code:
Dim myBool As Object = CType(BoolReturningFunction(), Boolean)

If a business mandates use of VB, and you want the job, then its best to know it quite well. It's not a good idea to make everyone else learn it that already works there so they can debug code written in a language that only the new hire knows.

If you owned the company, would you want your producted coded in a language that only one employee knew how to debug and modify?
 
I guess I am also looking for encouragement from C# programmers who also write VB.NET --- someone to say "aw, it's not so bad." Anyone?
 
It will be as good or as bad as you cause it to be, especially considering your belief of relative technological equality between the two. It then boils down to attitude and perception.

Good Luck
--------------
As a circle of light increases so does the circumference of darkness around it. - Albert Einstein
 

Ummm, OK. This looks like one line of code to me.

Dim myBool As Object = CType(BoolReturningFunction(), Boolean)


You're right. OK... maybe I was overreacting. Thanks again - it helps!

 
someone to say "aw, it's not so bad." Anyone?

Nope. It's that bad. (j/k)

As previously mentioned, VB.net and C# are so similar in functionality that, after a while, you really don't notice the difference. I would certainly rather code in C# , but I can do VB when I need to (after the compiler finishes screaming at me for ending every line with ";").
 
Dim myBool As Object = CType(BoolReturningFunction(), Boolean)

If they're really old-school VB types, they'll insist that that isn't VB.
;-)

What I've seen in the VB.NET forums is that people aren't making an effort to use the framework -- they're relying on the Microsoft.VisualBasic compatibility library. If you want to cheese them off, you should write all your code without that namespace (if possible). It'll be legal VB, but won't look like anything they're used to.

someone to say "aw, it's not so bad." Anyone?

It can not be that bad -- it depends on how good a bunch of coders they are. If they're using variants (or the new equivalent, the Object datatype), then you'll be in the 4th level of coding hell (weak datatyping).

Chip H.


If you want to get the best response to a question, please check out FAQ222-2244 first
 
I don't see any major differences between C#.Net and VB.Net. I never bothered to take the time to learn C#, but I have had to sit down and write in it a few times and other than a few differences in syntax it is the same exact language.

Ultimately learning VB.Net will be good for you. No matter which .Net language you use your are going to be learning more about the libraries and so on, so advancing in one variant (heh) of the .Net group will also advance you in another (although not tot he same degree if your struggling with syntax).

In the end it all comes down to one thing: I still like Python better than both of those ;)

01000111 01101111 01110100 00100000 01000011 01101111 01100110 01100110 01100101 01100101 00111111
The never-completed website:
 
I agree with Tarwn. Beyond that, my contribution is that I was once offered a position involving UNIX, Cobol and Vi. I turned it down. From reading your posts, you might be happier letting this position pass.
 
OhioBill raises a good point. Do what makes you happy. If your not happy in your work then you job performance will eventually show it. Taking a job because you need a job or it pays more or what other reasons may come up isn't always the best thing. Taking a job that you know you will be happy doing will be taking a job you will succeed in and advance both your skills and your standing within the company.

"Shoot Me! Shoot Me NOW!!!"
- Daffy Duck
 
Been playing around in VB.Net and am pleased to find that Intellisense puts in the "End If" when you type "Then". (I was worried about little things like that - "}" compared to "End If").

All in all, after this thread, it's plainly obvious to me that the VB.NET issue is not the main reason I am nervous about the position.

Thanks for all your input anyway!
 
If you think the Intellisense is good in .Net, check out the new way to declare a property coupled with the Intellisense. Try typing "Public Property Something As String" and press enter. Its a lot easer to work with than VB 6.
 
I think it's funny when people make a big deal about the differences between VB.NET and C#. Once you become familiar with the syntactical differences, which are sometimes very small, you realize it's quite easy to toggle back and forth between both. What's neat is to create a project in VB.NET and then do the same project in C#, and then encompass it in the same project. The code runs the same speed. Look at the code and it's quite similar, especially if you are accessing databases with ADO.NET. Personally I think it's good for one's versatility to be able to switch between languages...isn't that the aim behind .NET in the first place? There seems to be some arrogance from C# types that somehow VB.NET is not a "real" language...that all "professional" applications are done in C#. There are some purposes that C# work better for and others that VB.NET work better for, and others that C++ work better for. For instance if you are going to integrate the Microsoft Office Suite into your project, VB.NET is usually a better solution. VB.NET is a full-fledged OOP language that can play with the big boys. Just because it doesn't have a C in the name doesn't mean it can't be used as a solution in complex applications. Personally I like working with both and because one development shop may prefer one above the other, I think it's good to know both.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top