Joe,
I wasn't actually questioning whether or not DNN should be in C#. I was simply wondering if anyone else has noticed an trend towards using C# more so than VB.NET. It is the chat topic afterall.
Partly what prompted the question was the last time I was through here (a few years ago) I don't remember seeing as many references to C#. Doesn't mean anything, and I'm not trying to prove a point. It just surprised me that's all. In combination with my own observations I thought I'd ask the forum here as I figured there should be a quite diverse membership with respect to language usage.
In response to your comments, I fully agree with not touching a framework and as such the language of the framework is irrelevant. I've had the oppourtunity to work with LLBLGen, CSLA.NET, and I've even rolled my own basic frameworks. In all cases, as you stated, it is a mistake to modify a framework not maintained by yourself. As for the extensibility that leads me right back to my original question.
What is your feeling on the amount of C# development now as compared to 2-3 years ago?
Also, unwittingly you and the previous poster answered another question I had about DNN which is 'What is the common practice for custom development in DNN?'
Thank you to both of you,
Peter
Joe Brinkman wrote
Peter,
I have to second Chris's comment here. Many of us on the project actively develop in both C# and VB and have projects in both WAP and WSP. While the syntax for the two languages may be different, at the end of the day what matters is execution and interoperability. .Net is a great platform in that it allows different pieces of a solution to be developed in different languages but seamlessly work together.
While there was a lot of call early on for both a VB and C# version, that has quieted down somewhat in the last couple of years. As people became more familiar with DotNetNuke they realized that changing the core application is a very bad practice (it essentially creates a nightmare trying to perform upgrades). The core team has always promoted using the built in extensibility to provide your desired functionality. Once you do that, you will find that the truly relevant pieces of code are those that you are writing and maintaining - which can be in any language which runs on the .Net platform.
In many respects, this is analogous to Microsoft Word. It is not that relevant what language Word is written in, as long you are free to write documents in the language of your choice. So my suggestion to you is to create whatever modules, skin objects, and providers you wish in whatever .Net language you wish and don't focus so much on the core platform language, since you probably shouldn't be modifying that code anyway..