Dan Gilleland posted on September 15, 2006 07:18

My work life is one of extremes. That's partly due to the fact that I'm an IT instructor at a technical school, and I have to know a "bit of everything" and (hopefully) a "lot of a little bit" in order to teach.
This term, I'm teaching an introductory programming course in Java and a fourth-term elective in Macromedia's Flash. Already, that's got a bit of variety, but it doesn't stop there.
On the side, I like to do DotNetNuke programming, and I'm currently doing some custom modules that involve interfacing with an external database (other than the one for the DNN portal) that's an Oracle database. I'm accessing the Oracle database through MS's DAAB (Data Access Application Blocks), and 'cause I'm not an Oracle programmer, I'm having to learn a bit about what makes it different from Sql Server. On top of that, I've been picking up a bit of a passion for TDD (Test-Driven Development or Test-Driven Design), and I've been just loving the cool refactoring tools that are available for Visual Studio.
In the past few years, I've also dived (somewhat) deep into DocBook and I've toyed some with XML & XSLT. Often, I get into a technology or a toolset because of a promise (or hope) that it will lead me closer to my techno-nirvana of being able to integrate all my disparate IT work more and more seamlessly. I do technical writing for the "intro" programming levels, and for a few advanced programming. I like to show how some of the things in IT that seem miles apart in their focus are actually quite closely related (such as the fields of graphics design and the approach of client-server/3-tier programming). I've got scads of Visio documents, Word & PowerPoint documents, DocBook articles, and sample code in C++/Java/VB. I've got reference materials, tutorials, samples, exams, labs, etc. in all kinds of formats, and I want them all to play together nicely.
I want, ultimately, to have all my work searchable, easy to re-organize, and portable. XML, of course, will be part of the solution, but not by itself, and certainly not just in its hard-core format (i.e., hand-crafted XML & XSDs, with XSLT, etc., all in a text-editor). It's vastly important to use tools that enhance productivity, not impede it, and too often the advocates of some technologies are so into their own little "Geekdom" that they fail to see that. Likewise, I want technology to make my life easier, more productive, and (especially as the years go on) more resistant to my tendency to lose & forget things. Oh yeah - I also want it all to be cheap. I want to be able to do a lot, do it quickly, and have lots & lots of control, so it can be both uniquely what I want and easy for others to take and shape into what they want -- I want to paint fine details with a big brush in a hurry.
While that's all a bit of a dream right now, I'm still holding on to hope because I see more and more tools & technologies converging and I see more and more of the "big players" in IT working toward making their own world play nicely with others.
And, yes, despite all my interest in intense IT development, I do like teaching newbie programmers, even though it feels at times like I'm having to "slow myself down" to give them a chance to keep up. In a way, I'll probably always be at extremes when it comes to the IT world, and that's ok, 'cause it's nice to think of myself as into "extreme programming."