Monday, October 9, 2000

Developer Career Tip #0018---Is it time to learn C#?

Developer Career Tips #0018

Is it time to learn C#?

For those of you not familiar with C#, Microsoft, in June, announced C# as the 'replacement' for J++ in the next version of its Visual Studio Suite, which will be released sometime in 2001.

http://msdn.microsoft.com/vstudio/nextgen/technology/csharpintro.asp

Those of you who read my Careers tip last week in which I discussed Visual Basic and Java salaries may be wondering whether C# is a language that you should learn?

The answer is not a simple one, for a number of reasons.

First, C# has not officially been released yet, and won't be until the next version of Visual Studio is released sometime in 2001. You can download a beta version from the Microsoft Web Site if you wish

http://msdn.microsoft.com/downloads/

and there is some preliminary documentation available from Microsoft as well

http://msdn.microsoft.com/library/default.asp?URL=/library/prelim/csref/vcoriCReference.htm

Second, at this point, there aren't many jobs calling for a knowledge of C#. I maintain a web page devoted to C# at

http://www.johnsmiley.com/csharp/csharp.htm

and if you check out some of the links that maintain job sections, you'll see that there are few jobs asking for a knowledge of C# (not surprising, since the product has not been released yet).

Third, and perhaps most importantly, the importance of the C# language in the grand scheme of things to me is cloudy at best. For instance, is C# a replacement for J++, a replacement for C++, or a possible competitor to Java?

If you read Microsoft's announcement concerning C#, Microsoft plainly states that their intention is to bring Rapid Application Development to the C++ programming community. In light of the advice I give to my students to learn Visual Basic (for its ease of use and marketability) and then, if possible, Java, for its hardware portability, C# just doesn't fit into that picture.

On the other hand, many analysts believe that Microsoft is positioning C# as a competitor to Java---in which case the picture changes a bit. If C# somehow manages to cut into the Java market, then learning C# isn't a bad idea. And being the first person on the block to know a suddenly popular language is a great place to be.

However, I think it's way too early to make that investment of time and energy. Learning C# at this point will be difficult for most people. Your options to learn C# are pretty limited---use the Microsoft documentation to learn the language, or purchase one of the few books on C# available on the market. And if learning this way is not your cup of tea, other options are virtually non-existent--as best as I can tell there are no formal classes on C# being offered.

The bottom line is that you should wait and see what becomes of C#--if it looks like a winner at this time next year, there will still be plenty of time to get up to speed and to enter the potentially lucrative C# programming pool.

No comments: