Geeks With Blogs


Google My Blog

Catch me at: The List!

My InstallScript Utility Belt My Amazon Wishlist
My Standard Disclaimer

Chris G. Williams Beware: I mix tech and personal interests here.

Someone at work noticed I was toting around a C# book lately and asked me “you're a VB guy, why the hell would you want to learn C#?

Before I could answer, he continued... “case sensitive? ughh...  semi-colons? no support for edit and continue? no constant compilation? etc...” (he went on a for a couple minutes)

To me, the answer was obvious. I'm learning C# for the same reason I learned VB.NET. Because I can. Because I don't want to limit myself to knowing a single language. (Even if I didn't learn C#, I wouldn't be guilty of only knowing a single language, but I digress.) Because Microsoft doesn't use VB in product development. If C# is good enough for Microsoft... certainly it's good enough for me.

Also, and I've said this before, learning C# is making me a better VB.NET programmer. By forcing myself to start at the beginning with C#, instead of just mentally converting everything into VB, I'm reading about new ways to look at things. When I go back to VB (remember, I'm doing VB.NET all day and C# at night) I find myself thinking about what I read or tried the night before.

Also, some may take this as heresy, but case-sensitive languages are your friend!! (I can hear the anguished souls crying out as I type this...) It's true though. Nothing is worse for learning than having an IDE that automagically fixes all your mistakes for you. C# forces me to get it right. Oh sure, the Intellisense kicks in now and then and helps out, but it's a lot less forgiving than VB.NET, which means I have to really think about what I'm doing.

Thinking about what you are doing is the first step to remembering what you did. Don't believe me? How many times have you driven home from work and have been unable to remember a single thing about the drive (unless something of particular interest happened along the way.) By forcing me to think about it and get it right (myself)instead of doing it all for me, I'm learning faster. When I go back to VB the next morning, I find myself more productive BECAUSE I'm thinking about what I'm doing and not relying on Intellisense to fix everything for me. (Don't misunderstand... I LOVE INTELLISENSE, but... I think it keeps Novice Programmers as Novice Programmers for far too long. I'm not one of these people who advocate turning it off altogether, that's just dumb.)

I still love VB, we've been together a lonnnng time (about 12 years now.) We fight a lot and I cheat on her now and then, but I always come back! I had a brief flirtation with Perl once, but it never really went anywhere. C#, on the other hand, could give her a run for her money.

Posted on Tuesday, December 27, 2005 6:58 AM General Interest | Back to top

Comments on this post: Adventures in C#, cont...

# re: Adventures in C#, cont...
Requesting Gravatar...
Which book/books are you reading to learn C#? I just ordered John Sharp's book to start and I'm waiting on Donis Marshall's book to be published.
Left by Richard on Dec 27, 2005 9:46 AM

# re: Adventures in C#, cont...
Requesting Gravatar...
I'm finishing up Petzold's excellent "Key of C#" book and then I'm going to read the 2.0 specific stuff in "Core C# and .NET" (Perry)

I've also got "Effective C#", the "C# Cookbook" and "Pro C# 2005 and the .NET 2.0 Platform" which I probably won't read cover to cover, but will use as references.
Left by Chris Williams on Dec 27, 2005 11:35 AM

# re: Adventures in C#, cont...
Requesting Gravatar...
Just a quick note: VS 2005 does have Edit and Continue for C#. It also has the "using" statement (for automatic try/finally usage of IDisposable's) for VB.
Left by James Manning on Dec 27, 2005 6:04 PM

# re: Adventures in C#, cont...
Requesting Gravatar...
oh I know... but I wasn't inclined to argue with him.
Left by Chris Williams on Dec 27, 2005 7:26 PM

# re: Adventures in C#, cont...
Requesting Gravatar...
Yes! Soon you will be preaching about the need to rid the Microsoft development platform of VB forever just like the rest of the REAL programmers! ... Just kidding buddy. Good to know you'll be speaking in tongues any day now!
Left by Tobin Titus on Dec 28, 2005 8:09 AM

# re: Adventures in C#, cont...
Requesting Gravatar...
Never happen!! I love love love VB, and I see a strong need for it. It's designed for different things and different people than C# is, and that's fine.

As long as "they" keep the two languages distinct enough to actually be two languages, I'll be happy.
Left by Chris Williams on Dec 28, 2005 8:11 AM

# re: Adventures in C#, cont...
Requesting Gravatar...
You can't argue with those religious people. I prefer C-style languages myself since I am lazy and don't like to type more than I need to, but I write in what ever language the client requires. Most people who get on their high horse on either side of the fence don't know what it really looks like on the other side.
Left by Tim Murphy on Dec 28, 2005 9:07 AM

Your comment:
 (will show your gravatar)

Copyright © Chris G. Williams | Powered by: