C# vs. VB Adoption
Is C# really gaining ground against VB? Readers weigh in.
Letters to Visual Studio Magazine
are welcome. Letters must include your name, address, and daytime phone number to be considered for publication. Letters might be edited for form, fit, and style. Please send them to Letters to the Editor, c/o Visual Studio Magazine
, 2600 El Camino Real, Suite 300, San Mateo, CA 94403; fax them to 650-570-6307; or e-mail them to firstname.lastname@example.org
. Note that the views expressed in the letters section are the opinions of the letters' authors, and do not necessarily reflect the opinions of Visual Studio Magazine
or those of 1105 Media.
C# Vs. VB Adoption
Patrick Meader's Editor's Note on C# versus VB adoption ("C#'s Exploding Mindshare," November 2007) rings true for job advertisements in Sydney, Australia. The main reason why C# is preferred as the .NET development tool is that VB.NET is changing so much with each release, whereas C# is remaining constant. This has led to the view that development in VB.NET might not be stable because changes might be required with further releases. Also, it appears that Microsoft is using C# for product development, which also contributes to the belief that C# is more stable than VB.NET.
Personally, I think that the auto-formatting in VB.NET (indenting, adding brackets to methods, and so on) makes it easier to develop in VB.NET, especially since the product appears to be stabilizing now.
I've just read Patrick Meader's Editor's Note, and, based on my experience, I concur that C# seems to be gaining ground. Eight years ago, state government was all VB6 and various incarnations of FoxPro/VFP. Very quickly after .NET arrived on the scene, we saw changes. Both FoxPro and VB began fading out, and although VB has lingered on, it's mostly for maintenance on legacy applications now. All new applications are written in C#. I've worked in four distinct and separate branches of state government over the last eight years, and C# has become the standard in all of them.
Most of the programmers I know support this change, including me. The C# syntax just feels cleaner, and there's no negative stereotype to it, as VB had in some circles.
Now if Microsoft would just make programming a bit easier (remoting, anyone?), I'd be happy.
Received by e-mail
I've been in the IT business for 36 years now, and Patrick Meader's editorial on C#'s ascending market share isn't the first time I've read articles predicting doom for my OS/language/editor tool of choice. Patrick makes some valid observations and brings up some valid questions about both the magazine and my coding. (Perhaps he should be covering Java based on those numbers!)
These are language wars, as there used to be OS wars, as there were network wars, as there were hardware wars. I don't pay them much mind, but the market share does fragment as a result of them.
More interesting to me, though, is the type of coder and author who uses these tools. C# articles tend to be above my head most times, citing esoteric invocations of some OO rules or using some fancy coding styles that obscure the value in what is authored. The base assumption seems to be that C# coders don't need schooling in programming fundamentals, such as commenting or writing clear, maintainable code for simple, understandable functionality, whereas VB coders simply want to get the job done. There seems to be (at least) two mindsets driving coding trends.
The "flag-bearers of change" seem to be the lovers of obscurity and brevity.
At this point, the institutions have made their technological choices and the prophecy will be self-fulfilling. But it's rather funny how the same situation existed when C was the rage language, and then C++ became the rage language, which is now being displaced by C# and Java.
It's a shame, though, that all of these changes were made by software makers trying to garner or preserve market share for reasons other than language usefulness.
I'll make the migration, as I've had to do decade after decade, but somehow I know this isn't the last migration!
I enjoy your magazine. Keep the articles simple and teach some value lessons to the newbies.
President, Tech Masters Inc.
Patrick Meader's conclusions about VB versus C# language usage based on book sales might have a simple explanation: C# is more difficult to program in, so publications written about it are in higher demand. I've programmed in VB for several years. My last book purchase was more than five years ago.
Received by e-mail
Activation Schemes Not Vulnerable to Crackz
I was pleased to see Ken Cox's review of Desaware Licensing System in the November 2007 issue of VSM (First Looks, "Secure Your Intellectual Property").
I do need to point out one technical error in the article, however. Ken wrote in the review: "Any activation scheme risks spawning a key generator on a crackz site (click here for a comment from Dan Appleman, President of Desaware.)
This is actually the exact opposite of the case (for this and any other activation system). Non activation-based systems risk spawning a key generator because all key validation is done on the client site, and the key is generated algorithmically.
The whole point of an activation-based system is to eliminate the risk due to key generators. In fact, keys on our licensing system are ultimately GUIDs, and for a key to be valid, it must exactly match one that was generated on the server. Thus, in the strong security scenario, where every key must be validated against the server, a key generator can't be implemented.
President, Desaware Inc.
The review of ComponentOne Studio Enterprise, "Create Rich Apps" (December 2007) listed the incorrect author. The correct author is Don Kiely. VSM regrets the error.
This story was written or compiled based on feedback from the readers of Visual Studio Magazine.