# Tuesday, June 10, 2003

Las Vegas, Nevada (Speaking at Advisor DevCon)

DevCon is over! As fast as it started, it ended. I did two great sessions today, a repeat of my ADB302: DataGrid session and ADB206: C# for Visual Basic Developers. I had a lot of fun doing these sessions and the evaluations were great so far. I have really moved to C# and it is great to explain C# to other people who are considering moving to C#.

"Confessions of a C# from VB Convert"

I have been programming in VB for about 8 years, so it took a lot for me to mentally make the switch-but once I did, I honestly felt that C# is a more natural language for me. I don't regret all the years I spent in VB, the language treated me very well. But now that I am using C# (and have been for almost a year), I can’t ever see going back. Part of it is ego-you feel like a better programmer since you are using a more “advanced” language, and the perception in the marketplace is that C# developers are more valuable, a recent survey said that C# developers make and average of  $26,000 a year than VB developers. But the other part is the strictness of the language. I am a anal-retentive control freak and C# is an anal- retentive control freak language. That is why I love it so. I use to mock C# and say it was not a good language, but I was WRONG. Sorry to Patrick O’Toole and Conrad Frix who are still the die hard VB holdouts and feel betrayed by my conversion. (The evil Al Cadalzo had to tell them!)

Mike Groh was one of the speakers who attended my session on C# today and he and I spoke at lunch about some of the points that I made in the session. He said that the arguments I made were sound. He likes how C# is so much more compact than VB and thinks that the demos that I have show illustrate that point. I tend to think that C# just forces you to create more tight code than VB. Not allowing implicit conversion and forcing you to use a variable really appeal to me. Some things in VB really piss me off, like OrElse or my #1 gripe using = for comparison as opposed to every other language using ==. An equals sign is for assignment not comparison, except in VB! Ok, enough about C# v VB, at the end of the day it is just a "lifestyle choice". 

"Tumi Bag Obsessions"

All of my speaker friends use Tumi bags. You know that we are silly people and geeking out if we spend about 20 minutes talking about the bags. Ken Getz gave us a demonstration on how to put the bag on, you put your arm through the strap, hold the top handle with your free hand and then pull it over your shoulder to pull the other arm through. At no point is the weight of the contents of the bag on the strap. See we are geeks. No wonder why girls don't hang out with us. :)

posted on Tuesday, June 10, 2003 9:44:07 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [1] Trackback
Saturday, December 20, 2003 6:15:44 AM (Eastern Standard Time, UTC-05:00)
I realize that I’m responding to an old posting and I don’t normally read or respond to Blogs but since my name was mentioned I felt I had to say something.

First I’d like to say I’m not a “die hard VB holdout and feel(s) betrayed by [Steve’s] conversion”. I’m actually a pragmatist. I can see like anyone else where the market is going. i.e. New developments Employment opportunities. As such I currently work in C#, about to take a cert in C#, and occasionally post to news groups in both languages. Moving to C# from VB.net was pretty easy actually; much easier in fact than going from Foxpro to VB/Access, VB to VB.NET, or even WinForms to ASP.NET. In fact I would be just as happy coding in FoxPro 2.6 for DOS, but I made all of these transitions because I was paid to.

The truth is the hardest part about what we do has nothing to do with syntax. The architecture is the really hard part and is completely development language neutral in the .NET world. Which is why I'm complete language neutral and kinda hate the whole C# Vs. VB Vs. Next Big thing debate.

The only thing that’s really hard that isn’t language neutral is debugging. I’m curious as to what a study would say. My guess is that it depends on the construction, which would never really be the same in both due to language idiosyncrasies.

I would also like to mention some of my thoughts on the arguments made about C#’s superiority:

I really hate the oft-cited soporific “C++/C# is more compact or tight” argument. Yes C++ and C# are more compact. Does that make it easier to debug? Or even faster to write? I don’t know but I’m not the one with the compass of proof pointing at him.

I’m okay with the strictness argument except that doesn’t apply to me when I’m coding in VB since I use Option Strict. Anyone who doesn’t is going to have more problems than implicit conversion. By the way why does C# allow implicit up conversions of numbers?

Finally I’d like to end with a couple of points

- Region is a totally new keyword in both languages. Why did C# go with the vb style #region … #endregion syntax. Why not add another level of curly brackets to the mix.

- Intellisense is way better in VB then C#, which is really disappointing. Don’t believe me try
bool b;
b =
VB will give True or False to choose, C# doesn’t. Same thing happens with variables that are enumerations. Case sensitivity doesn’t seem to help matters. I’m sure they'll make the intellisence better over time.

- If you haven’t read Dan Appelman’s “Visual Basic.NET or C#...Which to Choose?” It tells you a lot more than I could regarding the subject. http://www.amazon.com/exec/obidos/tg/detail/-/B00005YX8N/qid=1071896799//ref=sr_8_xs_ap_i5_xgl14/103-0413282-1423868?v=glance&s=books&n=507846

-Finally if you’re going to say how one language better than another (regardless if you say Eiffel .net, Java, COBOL, VB or C#), don’t hedge and say it’s a lifestyle choice. It's like saying here’s my opinion, here’s why, and oh by the way it doesn’t matter.



Conrad Frix
Comments are closed.