We don't need no GridView!
We had today a user group meeting, where we had a presentation about the new features of Whidbey. Already familiar with most of the new features I saw, I was still amazed by the wealth of new features over there, including especially Master Pages, new Server Controls, Personalization etc.
However, this made me think. Looks like most of the features added to the new VS.NET are actually MS-in-house implementations of products that are available today as a 3rd party product. I can mention, as an examples, the GridView control, the TreeView control, the Master Pages and, of course, the ObjectSpaces. All these components are available today as a free components or full blown 3rd party products. Is that what we really want the .NET to become? I think there are some problems with this concept:
1. It will kill small companies with expertise in various areas of the .NET framework. No company which offers a great / flexible / beautiful DataGrid based component will survive against the not-so-great-and-quite-average MS born GridView.
2. The market will unify around average, sometimes limited, components. Instead of using advanced O/R mappers, for example, everyone will use the ObjectSpaces. Alas - you can't use it with Oracle! But will software vendors continue create O/R mapping tools just because of that? I doubt.
3. Maybe the worst of them - the .NET movement may come to an end. Yes, I know that may sound a bit radical, but think for a moment: The reason that software movements, such in the Java or .NET community, are created, is that their developers just LOVE what they do. They feel challenged by the platform. The .NET or Java geek wakes up in the morning, and the first thing he thinks about is: “How can I improve what I devloped yesterday until 3:00AM?”. He knows he can improve the platform, add new features, create new projects and workspaces, and make the platform alive. But if he will know that all what he wants to do already exists, though in a limited form, he just won't bother. Instead of creating his own DataGrid, he will compromise on the GridView. And compromising is the worst enemy of the geek. Compromised geek is not a geek - he is a plain normal 9:00-17:00 developer. And movements are not created by such a developers. One of the reasons of the huge success of Java is what it lacks - it does not have, until recently, something similar to the WebForms architecture. There is nothing like DataGrid, Repeater, DropDownList and so on. There is EJB, but there is such an argument about it that there are some really good alternatives for it. The geeks looked at Java and said - “Hey, there's a really good platform, let's improve it!” and a new movement was born. The geeks (not the same one, unfortunately...) said the same about the .NET, but the moment they will start saying something like “Hey, there's a really good platform, let's use whatever it gives us, because it already contains everything we need.”, it will mark the end of the platform.
So, please, Microsoft. Continue give us such a great core platform features such as Generics, Async ADO.NET, Design Time Improvements and so on, but let us, the geeks, create our own GridView, TreeView and all the other fancy staff that makes us swear for you forever.