What I don't like about technology
Ok, here's what I don't like about technology. There's way too much of it. Specifically computer software technology, even more specific development. There's just too much stuff that's fascinating, fun to learn about and fun to play with. In .NET its extremely apparent. Now don't get me wrong, I love programming and using .NET I really wouldn't change a thing. But it is daunting, there's soo much cool stuff there, so many different things to play with and make use of. Specifically in the Web technology arena (ASP.NET) there's:
Custom http handlers and modules: a fascinating and extremely powerful tool for web applications. They bring in a lot of the power of ISAPI filters & extensions with a minimum of the risk. Even in the latest versions of IIS Isapi filters were very very risky as they ran under a very priviledged account and usually within IIS. HTTP Handlers mitigate against a lot of that risk, and are easier to program, Wow! Powerful stuff.
Web Controls: Another huge and very powerful tool that ASP.NET brings us. These guys singlehandedly simplify the maintenance and development of an web application in ways I'd never ever thought would be possible. They basically bring the power of Client Server development to the flexiblity of the Web world. Awesome! Throw in some databinding (to anything) and these get that much cooler.
.NET's Object Oriented Nature: Here's another one, I love the fact that i can write my own data provider if i so choose. Perhaps one to connect with a mainframe or *NIX based data source. Its really cool that I've got this power and that I don't have to go to C/C++ to use it. I Love C/C++, but there are many times when its just much faster and much easier to write in a managed language. The code is simpler and there are many fewer ways of shooting myself in the foot. .NET's OO features also are incredibly useful in asp.net. In classic asp, if i wanted data on the presentation layer, i'd most likely return a recordset or xml document. Now both of these had their flaws, with ADO i was kinda pinned to something database based and it put my data access mechanism in the central core of my app which i never liked. with XML it was ok, but translating the data to xml took time and xml is big and bulky at times. Now in .NET i can just send a collection back and forth. Very very cool, i build the collection using CodeSmith or something similar and then add my enhancements to it (i enhance the collections so they can maintain state tracking info, in otherwords, they know if they've changed and how they've changed. Also any removed items are copied to a secondary collection called deleted so they can be tracked as well). With the collections and objects as the central themes/core of my application i can push the database down to where it belongs, the data layer. I don't have my application's forms/layouts/control names dictated by my db schema. And i can easily switch databases or even storage mechanisms if i so desire. I like it.
Ok, now here's the problem I'm having. With all of this cool stuff out there, so many things to learn and play with where does one start? How does one reach an expertise in all aspects of .NET, ok that's probably impossible. But I've never been able to say “I'm just gonna learn this technology a little” I can't just know enough to get by. I've got to learn every little bit i can about the technology whatever it is. Its this quality that led to my last three book purchases: Understanding the Linux Kernel (anything with moving parts is a source of fascination & the linux kernel has moving parts, lots of em), Expert C, and SQL Server 200 High Availabilty. Here's what I'm getting next: Developing Microsoft ASP.NET Server Controls and Components I still feel, and have for a while; like a kid on christmas morning, there are too many cool toys and only soo much time to play with them. I guess my focus is probably gonna be OOP and ASP.NET WebControls/Components, but that's a very very wide range and probably not much of a focus.
Oh by the way, I loved watching the Giants beat the Rams last weekend! Something about the way they play that team but the Rams QBs always seem to have a very rough day with the Giants. I'm looking forward to a spectacular weekend, Michigan vs Notre Dame & (on monday) NY vs Dallas. There will be much much football this weekend.