We're all beginners at some stage
In writing my chapters of Professional DevExpress ASP.NET Controls, I suddenly realized that there is really no way anymore to know everything about the OS, the platform, the run-times, or the language we use in our daily work. Sure, way back in the days of MS-DOS 6.22, you stood some chance of knowing most of it, but nowadays, especially as we're now learning more and more about Visual Studio 2010 and .NET 4, there's no possibility to make the time to learn it all, let alone say you know it.
Given that axiom, surely it makes sense that, if we are to use some fancy new tech in our app, we should spend some time in learning about said tech? For example, I hadn't actually written a web app that used AJAX before I wrote that part of the book. I could have just gone to our devs, thrown my weight around (it is considerable) and ordered them to make me an app or two and tell me how they did it, chop chop, but I decided to drop out and learn what it was all about through reading the documentation and writing some silly little throwaway apps.
Too often we don't do that, and too often we get irritated that something doesn't work the way we expect. Like everyone, I'd love for all software to be so intuitive that you don't have to crack open the help, but that utopia is very much in the future. Heck, even some iPhone apps aren't that intuitive.
The ability we should be cultivating within ourselves, then, is the ability to research, to experiment, and to learn about new software and not just take it on trust that we know innately how it works. This is the new job aptitude of the 21st century.
Julian M Bucknall, CTO
Comment on Julian's message