Editor's//Comment
Are You a C#PRO?
You Should Be
By Elden Nelson
Year after year, in interview after interview, I havetried to trick Microsoft spokespeople into taking a stand on which .NETlanguage they prefer: C# or VB .NET. It's never worked. I have never been ableto get anyone to go public. "It's a lifestyle choice," they say, implying thatit's nothing more. And for a long time, much of the press has gone along withthis noncommittal philosophy.
Well, enough time has passed that I think I can say the.NET language you choose is not simply a lifestyle choice. Whichlanguage you use can impact the design and maintenance of your applications,and what languages you know can affect your salary or even your options ofwhere to work.
Choose Wisely
Before I launch into reasons why I think it's crucial foryou to learn C#, let me try to head off a flood of flame-mail by stating: I am notanti-VB. Furthermore, asp.netPRO is not going to stop includingVB code. For the foreseeable future, I plan to continue using the exact sametechnique for which language an article includes as I've always used: ask theauthor to include both VB and C# code for download if possible, but respect theauthor's language preference in the article itself. After all, in this magazine,ASP.NET - not any specific programming language - is the star of the show.
That said, which languages you know - and are learning -can affect your present and future development efforts. Let's take a look atwhy.
Power and reusability. Generics, which will beintroduced in the Whidbey version of Visual Studio .NET, is a major stepforward for code reusability. Even if the projects you're working on right noware fairly modest-sized, you want to be ready to extend your apps, or to moveforward and build large frameworks and business systems. For this kind of work,Generics is a key capability, and only one of several powerful new capabilities- you'll also find iterators, anonymous methods, and partial types - to appearin C# 2.0. Look forward to a discussion of these in the November 2003 issue of C#PRO.
Standards. A standardized specification for C# hasbeen certified by both ECMA and ISO. Now, that by itself might not seem tooexciting, but what it implies is actually pretty important. First,Microsoft (along with HP, Intel, and other companies) went to this troublebecause certain companies and government agencies require thiscertification before they will adopt a technology. By knowing C#, you - eitheras an individual or as a development house - increase the scope of youroptions.
Perception. Whether it's just or not, C# developersmake more money, get work more easily, and enjoy more prestige than VBdevelopers. In a representative anecdote (http://www.angryCoder.com/blog/entries/20030605.html),ASPSOFT president and asp.netPRO columnist Jonathan Goodyear describeshow, at his client's insistence, he converted a VB .NET code base to C#, thensays, "The overwhelming majority of my clients ... are resolute in theirinsistence on our use of C# while building their software."
Essentially, if you're using VB .NET and can make the timeto start supplementing your base of .NET knowledge with C#, it'll be worth yourwhile - if not now, then soon; if not in this job, then in the next.
Meet C#PRO
There are enough compelling reasons to start learning C#that in this issue you'll find a sneak peek at C#PRO. Inside, you'llfind some terrific articles that any developer who's chosen to work with .NET -and that for sure includes all ASP.NET developers - can make use of. I'mextremely pleased to have Jeffrey Richter - a Wintellect co-founder,well known author, and bona fide software legend (check out http://www.softwarelegends.com)- write about one of the unsung-but-powerful tools you can use to streamlineyour development: declarative programming. Bill Todd gives you a solidwalkthrough of using Borland's intriguing C# development tool (hey, C# isn'tonly for VS .NET developers anymore), C#Builder. And one of my all-timefavorite deep-thinking developers, Dr. Richard Grimes, answers yourquestions.
I've got a feeling I've opened - or reopened - a big canof worms here. So tell me, do you agree? Disagree? Think I've missed the pointaltogether? E-mail me at mailto:elden@aspnetPRO.com.
Elden Nelson is editor-in-chief of asp.netPRO and itscompanion e-newsletter, asp.netNOW.