Microsoft Developers Respond To .NET Criticism
bonch writes "Richard Grimes of Dr. Dobbs Journal wrote an article entitled Mr. Grimes' Farewell, in which he discusses what he feels are inherent flaws in .NET, and how he is abandoning his .NET column. Grimes argues that .NET is merely thin wrappers to Win32 calls (Avalon uses message functions that date back to 16-bit Windows), that Microsoft has abandoned confidence in both .NET and sales of Longhorn, and that the framework itself is too large and poorly implemented, most of it ported from past APIs like WFC and VB. Dan Fernandez, Microsoft's Visual C# Project Manager, has responded in his blog. Richard Grimes appears in the comments to defend his criticism, referencing first-hand disassembly of .NET APIs using ildasm. Scott Swigart has also responded to the criticism of Visual Basic .NET. Apparently, Mr. Grimes struck some nerves."
PHP lets you do that, but you have to progam it. Page date? Sure. Put in a URL parameter for "recordstart=" and "numofrecords=". Sort by a column? Sure, put in a parameter for "col=" and "sortorder=" - there are a hundred ways to do it. Then in your PHP code you read those parameters and craft a SQL query to do the deed.
Sounds fine, right?
ASP.NET developes can do that with literally two clicks and setting a property or maybe two. Then you create a stored procedure for your query (abstracting out that phase), and your users can sort by any column, page with user-definable page lengths - without generating a new query to the server (whereas your PHP example probably generates a query on every page request). If the user has a new-ish browser he/she can resort without another page load, as well as probably re-size the number of records on page. If the user is on an older browser or one without javascript enabled the script automatically detects this and serves a static copy, much like the one you generated with PHP.
ASP.NET is a good platform for web-development. It's language independent - C#, VB.NET, Python, even Perl! is possible. It is event driven and object orietated, and serves proper valid XHTML or HTML. It allows great object re-use, encapsulation, and verification possibilities. It is fast to develop in and performs well under load.
Very solid technology. (That being said, I am still primarily a PHP4 developer). A lot of the functionality of ASP.NET can be recreated manually with PHP4, and much of can be done natively with PHP5. But most PHP developers don't. Instead they manually code the same drudge-work of reading URL parameters, generating and parsing SQL-statements, and writing really un-resuable bits of code.