• « October 2005 | Main | December 2005 »
  • XSLT:Blog[@author = 'M. David Peterson']/Main: November 2005 Archives
              • November 30, 2005

                Subliminal Messages From Firefox

                I've always wanted to start a conspiracy. Its too bad that the potential subliminal message I am refering isn't something with a little more "Suburban Myth" potential.

                What the hell am I blabbering about this time? Take a look:

                subliminal-fx-images-small.png
                (click the image for much larger view of all thea action)

                Now, I'm not seeing any sort of Satanic worship symbols, or any real effort to try and tell me to go and buy a Coke(although, if there is a way to embed such suggestions into the Firefox image I would bet Mozilla would suddenly find itself in a fairly lucrative situation ;) but there is the fact that its telling me to visit www.mozilla-europe.org...

                Hmmmm....

                Why? Whats at www.mozilla-europe.org? What kind of a conspiracy is Mozilla getting itself into here?

                Am I being abused by a subliminal message embeded into the background?

                I want my lawyer! ;)

                ---
                K, nuff' of that...

                Oh, by the way... In case you hadn't noticed, this is the "transition" graphic when a new tab opens in Firefox 1.5. With as many times as I click a link that trys to open a new window (I have it set to open a background tab instead) or hit Ctrl + T to create a new tab instance in Firefox -- I'm telling you Mozilla -- if you don't totally get muffed by someone who rushes to the presses with a "Moz/Fx Is Now AdWare" you could very well find yourself in a fairly lucrative situation. :D

                Mozilla, Please don't stoop that low... ;)

                Posted by m.david at 11:34 PM | Comments (2) | TrackBack

                November 29, 2005

                Civilization Anonymous : " I Said I Didn't Get Up."

                Civilization Anonymous

                Total Game Immersion. With 26 historical world leaders, 85 technologies, and 7 formal religions at their disposal, in many cases a hardcore Civ addict will actually think that he is “one” with the game, often mimicking the behavioral mannerisms, social interactivity and even fashion sense of historical figures throughout time. Genghis Khanism and Julius Caesarism are particularly accute manifestations of this syndrome. A Caesarism sufferer, for instance, can make a “Trekkie” (devotees of Gene Roddenberry' Star Trek franchise) look like a model of the acceptable social norm.

                Prop's to Sylvain for sending me the above link which contains a linked pop-up to a 3-4 minute clip that will leaving you crying after laughing til' it hurts... In fact, I sent my response to who I thought was Sylvain, which included the titled quote, to a somewhat puzzled Uche as I couldnt see straight enough to realize I had clicked his his name instead of Sylvains on my IM client...

                The video is where all the action is at although the site itself is pretty funny as well. But to save you the hassle of dealing with any misbehaving pop-up blockers or from extracing the embedded link such that you can bookmark just the vid, I've included the direct link below.

                http://www.civanon.org/movies/trailer.mov

                Thanks for laugh Sylvain! I was on my way out for coffee but I dont think I need it anymore as I'm most definitely wide awake from the near convulsions I had while watching this quick-flick.

                Ahh.. I'll get the coffee anyway... It's my favorite part of the morning :D

                Posted by m.david at 03:09 PM | Comments (0) | TrackBack

                More Than Just A Quote Of The Day

                ::► Nachrichten | XML Cup Winners Announced at XML 2005; Michael Kay, Norman Walsh Recognized for Contributions to XML ◄::

                "XML has been an exciting field during the last five or six years because it has been the catalyst for so many fascinating developments," says Kay. "It has brought about a convergence of the document and data communities, and joined computer scientists, software producers and software users. XML will be remembered as a field in which a new software development process was begun; an approach that acknowledges the capabilities of individuals as opposed to corporations and in which writing software is essentially a creative endeavor rather than a factory process."

                Posted by m.david at 02:43 PM | Comments (0) | TrackBack

                Don't Reinvent The Basics? Since When Did Sun Have Anything To Do With "Inventing" The Office Software Basics?

                ongoing � Catcalls

                Turning to the office-document space: right now the world has exactly one finished, delivered, standardized, totally-unencumbered, multiply-implemented XML-based office document format. You are the guys who want to introduce another, incompatible one. And I think that’s OK; but restrict your invention to the specialized Microsoft stuff that ODF can’t do, and don’t re-invent the basics. Why is this controversial?

                So I admire Tim Bray probably more than I admire most anybody else on this planet, so I am leaving room for the fact that I could simply be misinterpreting this part of the above statement:

                You are the guys who want to introduce another, incompatible one. And I think that’s OK; but restrict your invention to the specialized Microsoft stuff that ODF can’t do, and don’t re-invent the basics.

                First off:

                You are the guys who want to introduce another, incompatible one.

                I'm quickly running a historical regression test through my brain to see just where it was that things began to break as far as introducing new formats into the already crowded office document types namespace. While MS Office wasn't the first Word Processor, which, if I have my facts correct, the first GUI-based word processor was Bravo, which was followed by Gypsy. Both of these were created, in part, by Charles Simonyi who would later take a position with Microsoft and would eventually drive the development of Microsoft Word and Excel and who until recently(a few years back) continued as Microsoft's Chief Architect. Of course the market for commercial desktop applications didn't become possible until there was a solid base of desktop computers to sell licenses to use such software. With this in mind, it was the early 80's that Wordstar, WordPerfect, and MS Word would hit the market, I believe Word being the last of the three in 1983.

                I will concede that who beat who to market at this stage in desktop computings history would make a great question for Trivial Pursuit, But it would make a horrible basis for any sort of argument against Microsoft's "Pioneer" status in the office document processing software business.

                On the other hand, while StarOffice historically has its roots in the mid to late 80's, it wasn't until 1999 that Sun purchased the rights to StarOffice, so to claim that they had ANYTHING to do with the development of any sort of major office-type software developments anytime before 1999 simply means you haven't done your historical homework.

                Now, even if Tim is not so much refering to Sun and instead to Oasis and their efforts to develop the XML Open Document format, this only makes the gap even smaller as the Oasis effort didnt, from what I remmember, start until the 2002 time frame, and the first draft wasn't made available until the first part of 2004.

                So I geuss my question with this is:

                Just who's re-inventing the basics, and why?

                Sounds a lot more like politics and a lot less like a legitimate argument in favor of the obvious late comer to the game looking for any possible way to seem like the good guy (refering to Sun, not Tim... Tim is a good guy :) when in fact they are the ones responsible for confusing matters more so than anyone else. Thats not to suggest that the OASIS Open Document Format is confusing. In fact, just the opposite! But the mere fact that theres no legacy document formats to support is exactly the reason for the "agile" appearance and has nothing to do with Microsoft being slow. They just have 100's of millions of customer to worry about supporting and OpenOffice/StarOffice... well, definitely not 100's of millions, and even further no real concern for breaking compatibility between document versions... well, this does break compatibility, but when theres only a handful of people to worry about (of which are all anxious supporters of the new format anyway) theres certainly not a whole lot to lose, now is there.

                Now, can we all move on to something more interesting and exciting... Like compound document formats? ;)

                Posted by m.david at 12:34 PM | Comments (0) | TrackBack

                It's People Like This That Give XSLT The Undeserved Rap For Being Difficult

                Internationalexemelization - The Daily WTF

                via a recent link left in a comment by Jez the following Daily WTF (Jez, couldn't agree with you more, btw..) showcases why agility and language have a lot less in common with an agile programmer than one might hope to be the case.

                Now, before you jump all over for my undeserved comment in the title -- please look at the following description preceded then by (to be honest I'm surprised this even ran with blowing the stack, but theres no XML attached to it so its tough to know how deep the recursion could potentially go) what I would term a perfect representation of not only someone who doesnt understand XSLT, but anything even remotely resembling any type of code of ANY sort -- and then let me know if you think maybe, just maybe cases like this speak volumes as to why there are some people who should stop pretending they know how to program and simply move into middle management (although, I'm not sure the middle management folks will want this individual either... and I wouldn't blame them!):

                There are some developers out there who believe that XML is the greatest "innovation" in computer science since electricity. Believing that, apparently, all data and communication are best represented as strings with angle-brackets, they'll go to great strides to ensure that this "technology" is applied liberally throughout systems they build. Undeterred by the inherent constraints of a data interchange format and its related transforms, they'll make sure that XML is not only the driving force behind their projects, but their raison d'�tre.

                Joe works with one such a developer, and presents us i18n.xsl, the end result of his colleague's six straight days of work trying to get his fully-XSL solution to properly display HTML characters.

                
                
                <xsl:template name="Replace">
                  <xsl:param name="string" select="''"/>
                  <xsl:param name="pattern" select="''"/>
                  <xsl:param name="replacement" select="''"/>
                  <xsl:choose>
                  <xsl:when test="$pattern!='' and $string!='' and contains($string, $pattern)">
                    <xsl:value-of select="substring-before($string, $pattern)"/>
                     
                    <xsl:copy-of select="$replacement"/>
                    <xsl:call-template name="Replace">
                      <xsl:with-param name="string" select="substring-after($string, $pattern)"/>
                      <xsl:with-param name="pattern" select="$pattern"/>
                      <xsl:with-param name="replacement" select="$replacement"/>
                    </xsl:call-template>
                  </xsl:when>
                  <xsl:otherwise>
                    <xsl:value-of select="$string"/>
                  </xsl:otherwise>
                  </xsl:choose>
                </xsl:template>
                
                

                <xsl:template name="ReplaceLCWithHTML">
                <xsl:param name="input" select="''"/>
                <xsl:choose>
                <xsl:when test="$input!=''">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string" select="$input"/>
                <xsl:with-param name="pattern" select="'à'"/>
                <xsl:with-param name="replacement" select="'&agrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'á"/>
                <xsl:with-param name="replacement" select="'&aacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'â'"/>
                <xsl:with-param name="replacement" select="'&acirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'è'"/>
                <xsl:with-param name="replacement" select="'&egrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'é'"/>
                <xsl:with-param name="replacement" select="'&eacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ê'"/>
                <xsl:with-param name="replacement" select="'&ecirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ì'"/>
                <xsl:with-param name="replacement" select="'&igrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'í'"/>
                <xsl:with-param name="replacement" select="'&iacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'î'"/>
                <xsl:with-param name="replacement" select="'&icirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ò'"/>
                <xsl:with-param name="replacement" select="'&ograve;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ó'"/>
                <xsl:with-param name="replacement" select="'&oacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ô'"/>
                <xsl:with-param name="replacement" select="'&ocirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ù'"/>
                <xsl:with-param name="replacement" select="'&ugrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ú'"/>
                <xsl:with-param name="replacement" select="'&uacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'û'"/>
                <xsl:with-param name="replacement" select="'&ucirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ý'"/>
                <xsl:with-param name="replacement" select="'&yacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'œ'"/>
                <xsl:with-param name="replacement" select="'&oelig;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'ç'"/>
                <xsl:with-param name="replacement" select="'&ccedil;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'™'"/>
                <xsl:with-param name="replacement" select="'&trade;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'¢'"/>
                <xsl:with-param name="replacement" select="'&cent;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'©'"/>
                <xsl:with-param name="replacement" select="'&copy;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'®'"/>
                <xsl:with-param name="replacement" select="'&reg;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'°'"/>
                <xsl:with-param name="replacement" select="'&deg;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'&nbsp;'"/>
                <xsl:with-param name="replacement" select="' '"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'&shy;'"/>
                <xsl:with-param name="replacement" select="' '"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'·'"/>
                <xsl:with-param name="replacement" select="'&middot;'"/>
                </xsl:call-template>
                </xsl:when>
                <xsl:otherwise>
                <xsl:value-of select="$input"/>
                </xsl:otherwise>
                </xsl:choose>
                </xsl:template>

                <xsl:template name="ReplaceUCWithHTML">
                <xsl:param name="input" select="''"/>
                <xsl:choose>
                <xsl:when test="$input!=''">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string">
                <xsl:call-template name="Replace">
                <xsl:with-param name="string" select="$input"/>
                <xsl:with-param name="pattern" select="'À'"/>
                <xsl:with-param name="replacement" select="'&Agrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Á'"/>
                <xsl:with-param name="replacement" select="'&Aacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Â'"/>
                <xsl:with-param name="replacement" select="'&Acirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'È'"/>
                <xsl:with-param name="replacement" select="'&Egrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'É'"/>
                <xsl:with-param name="replacement" select="'&Eacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ê'"/>
                <xsl:with-param name="replacement" select="'&Ecirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ì'"/>
                <xsl:with-param name="replacement" select="'&Igrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Í'"/>
                <xsl:with-param name="replacement" select="'&Iacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Î'"/>
                <xsl:with-param name="replacement" select="'&Icirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ò'"/>
                <xsl:with-param name="replacement" select="'&Ograve;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ó'"/>
                <xsl:with-param name="replacement" select="'&Oacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ô'"/>
                <xsl:with-param name="replacement" select="'&Ocirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ù'"/>
                <xsl:with-param name="replacement" select="'&Ugrave;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ú'"/>
                <xsl:with-param name="replacement" select="'&Uacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Û'"/>
                <xsl:with-param name="replacement" select="'&Ucirc;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ý'"/>
                <xsl:with-param name="replacement" select="'&Yacute;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Œ'"/>
                <xsl:with-param name="replacement" select="'&OElig;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'Ç'"/>
                <xsl:with-param name="replacement" select="'&Ccedil;'"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'&NBSP;'"/>
                <xsl:with-param name="replacement" select="' '"/>
                </xsl:call-template>
                </xsl:with-param>
                <xsl:with-param name="pattern" select="'&SHY;'"/>
                <xsl:with-param name="replacement" select="' '"/>
                </xsl:call-template>
                </xsl:when>
                <xsl:otherwise>
                <xsl:value-of select="$input"/>
                </xsl:otherwise>
                </xsl:choose>
                </xsl:template>

                Posted by m.david at 12:25 AM | Comments (2) | TrackBack

                November 28, 2005

                OPML, Let Me Count The Ways I Love Thee...

                Building Valid Atom and OPML Is Hard (and It Shouldn't Be)

                Let's see, theres.. no, not that.

                Oh, and there's... oh HELL NO! Definitely not that.

                ---
                [quick-update: see footone one]
                ---

                Huh. I guess that means:

                OPML SUCKS! SUCKS!!!! SUCKS!!!!! SUCKKKKKKKKKKKKKKKKKKKKKSSSSSSSSSSSSSSSSSS!!!!!

                Did I mention OPML SUCKS!?

                I HATE OPML!!!!!!!(I promise, don't ask me how I really feel as I am actually holding myself back at the moment believe it or not. And no, I have no intentions of following this up with a "OK, I was just trying to get a response from the community. This is it. OPML SUCKS!)

                Why do we use it? Is there an OPML format that validates and can be accepted anywhere that accepts spec conforming OPML? What does spec conforming OPML look like? And who's idea was it to embed the positioning crap into the "header" of an OPML file? Does separation of data/content and layout ring a bell to anyone?

                I tell ya, I'm about on the verge to tell you how I really feel but I'm going to hold back and let DonXML chime in for now:

                I’ve mentioned the borked OPML Editor back when I released my OPML. The OPML site would seem the place to go to read the current spec, but Dave Winer’s OPML Editor creates OPML 1.1, but public spec is 1.0, and a spec for 1.1 is nowhere to be found. My OPML file was created with Dave’s tool, but does not validate when run thru the OPML Validator (which validates 1.0 only). So, Robert, how can you expect Bloglines and Newsgator to comply with a “spec” that is only buried in a tool? And even if the public spec was up to date, try reading the spec without looking at the example files. Go on, I’ll wait. Now try to tell me that you can create a valid OPML doc. Unless you have written OPML before, or have seen what Dave expects, you’ll be hard pressed to do it right the first 1000’s times. Odds are you will give up and take a look at what others are producing, and make yours look like theirs. That’s not a spec, that is cut and paste. And to make matters worse, OPML doesn’t use namespaces (that’s a known Dave issue, but the average XML developer might not know that).

                So a few weeks back Uche took it upon himself to pull a bunch of people into the Atom IRC channel to discuss what to use instead. His conclusion:

                XBEL.

                Now there's a format that makes sense. Good spec. Good support. Make sense. And "text" refers to NODES, not ATTRIBUTES, like it should.

                I don't know about you, but if given a choice between a recommendation offered up by Uche and ANYBODY else who offers up OPML as a solution...

                Actually, I would go with Uche's advice over somebody suggesting anything else for that matter. That's how much I respect Uche and any advice he might give. So that should pretty much sum up who I would go with if that person was suggesting OPML as the solution.

                I'll leave it there for now. But each and every time I encounter a situation where I have to deal with some form of OPML its only going to fuel the fire and... well, I'll wait until that happens until blowing my cap again. My desire is not to piss people of with random fits of tirade. But this isn't a tirade against a spec thats difficult to read, but in the end everything turns out to be OK as you can eventually figure it out, or look at a good example, create and XML Schema or RNG file for validation, and be done with it. How do you create a XML Schema or RNG file against 20 or so variations of the same "spec". Thats the point. There's simply know way to be sure what format the OPML you encounter will look like, no namespace to utilize as a way to determine thats its even some form of OPML in the first place, no consistent versioning that can at least send a hit your direction, so instead you have to try built transformation files that try to second guess what to do with each element, attribute, etc..., which sometimes requires rebuilding the tree, and reprocessing it which, in XSLT 1.0, requires a node-set() function of some sort which means is not cross platform... I could go on, but I think this is MORE than plenty...

                I will say that this is just nonsense. Propagating a crappy spec with no fundamental XML-based qualities to speak of is just flat out nonsense.


                [1] : If wondering why this little mini-rant its because I have been recently (like within the last 12 hours) making an attempt to write about this in the client-side XML book... its been one of those topics where you get so frustrated by trying to not only make sense of an XML data format that doesn't make sense, but then try to explain in words how to make sense of it to a fairly broad spectrum of potential readers. Its the third time I've come back to it(and its holding up an important chapter which currently has a big phat hole in it in regards to importing bookmarked Atom and/or RSS x.x data feeds to then index them, cache them, store various pieces in cookies for later comparison against the return value of a HTTP HEAD and potentially GET request to determine what, if anything is new(which reminds me... its so simple to write server side code that can create an MD5HASH of a file for later comparison, or even a simple script that can diff a cached version of file when that file changes and use this to determine if what the client has is the same as the client side file, and if no, return only the diff between the two (in a well formed Atom or RSS file). Shouldnt we just do that? Anyway)... hard to do when you are trying to write transformation files that adapt to who knows how many "versions"(read: interpretations) of the OPML spec exist in the wild) and after readining Don's post I decided to express my true feelings and then simply hope and pray that Simon can see my viewpoint and allow me to focus on either raw Atom or XBEL, or whatever else he feels is best. I fear that I may have to suck it up and just go with it, but we'll. If this turns out to be the case I promise I will do my best to cover it without opinionated smut... but its hard, so I guess we'll just wait and see.

                So now you know :)]

                Posted by m.david at 08:22 PM | Comments (0) | TrackBack

                Follow-up to 'OOP Ain't Agile' Post : OK, So Maybe I Stretched Things Just A Tad

                As I made apparent in my follow-up comments to this post, I kinda, sorta pushed the "OOP isn't agile" a bit further than is actually the case. I did this for two reasons.

                1 - To drive home the point that functional and dynamic languages are by their very nature agile and test driven.
                2 - To try and fish for comments from folks who normally wouldn't comment except to contend against something that was blatantly absurd.

                Sorry. Won't EVER happen again ;-) [fingers we're most definitely crossed when I typed this... made for some interesting typing I should add :D]

                I have copied over comments from Jez, Scott Bellware, [insert: and Joe], both all of which added some fantastic insite and understanding to the conversation. Beyond thanking them both all for taking the time to comment I plan to leave things as is and let both all of their follow-ups speak for themselves.

                Comments below:

                Update: I forgot about Joe's comments(sorry Joe!). I have added them below as well.

                Scott Bellware:

                I think you’ll find that more advanced TDD practice achieves the atomic values that you expressed an appreciation for. To wit, TDD in an OO language is all about using OO in a more atomic fashion and driving more atomic and recomposable designs.

                Most of TDD design work drives at the heart of the reduction of cyclomatic complexity and the reduction of execution path depth as well as the introduction of a greater degree of loose coupling as supported by interaction testing through mocks and dependency injection.

                To refute Agile’s importance to OO, you’d have to refute TDD’s place in Agile, and quite possibly Martin Fowler’s book on refactoring as well as Joshua Kerievsky’s Refactoring to Patterns book as key Agile texts.

                I would personally agree with you that Agile isn’t only applicable to OO, but because OO is prevalent right now in the Agile community, much of the tactical Agile implementation practices have been built to support OO.

                It will be interesting to see what comes of the forays into functional programming at Microsoft. And yes, LINQ and C# 3.0 subsumes C-Omega.

                Jez:

                OK, I was trying to needle you a bit. I was also about to go to bed.

                In your follow up, you’ve largely made my point for me.

                Your opening statement was that agility and OOP were polar opposites - north and south, up and down, hot and cold.

                You’ve moderated not to OOP can be agile, which is fine with me. I take your point that some languages are more friendly, can I put it like that, to agile development. However, programming in Scheme, say, doesn’t automatically mean that someone is “doing” agile development. Do I because agile when I put down my C++ compiler and pick up Saxon8? When you move from XQuery to Java does the way you work suddenly change?

                Agile development is about process, in the widest sense. It’s about your mindset. As a programmer, every decision you take is a design decision and affects, in some way, the finished piece of work. You’re an agile programmer, not a programmer who uses an agile language. Tools and languages can help you, but they can’t make you.

                If the trend you detect toward functional languages in C# plays out as you suspect, then perhaps we will have a big pile of better tools. And that’ll be great, and hopefully we’ll be able to more, more quickly. It won’t automatically makes every programmer an agile programmer, though.

                As an aside, I’m not really qualified to comment on traditional OOP languages are not dynamic languages, but I suspect there’s an army of Smalltalkers who’d disagree :)


                Joe:

                If OOP isn’t agile, what is — procedural programming? Seat-of-the-pants hacking? Punch cards? Don’t mix speed with agility. Building up something fast and changing it fast doesn’t necessarily mean it’s agile.
                Heck, just about any codebase is agile at first based solely on it’s size. But as the codebase grows, OOP and a good IDE will help keep you agile. Have you ever used a good OOP IDE with refactoring tools?

                Posted by m.david at 08:50 AM | Comments (4) | TrackBack

                November 25, 2005

                Let It Snow, Let It Snow, Let It Snow...

                AccuWeather.com - Salt Lake City, UT Watches and Warnings

                THE NATIONAL WEATHER SERVICE IN SALT LAKE CITY HAS ISSUED A HEAVY SNOW WARNING...WHICH IS IN EFFECT FROM 6 PM THIS EVENING TO 12 PM MST SUNDAY. THIS WARNING COVERS ALL THE MOUNTAINS OF UTAH NORTH OF ABOUT BEAVER AND THE WASATCH MOUNTAIN VALLEYS. THE WINTER STORM WATCH FOR THESE AREAS IS NO LONGER IN EFFECT.

                A STRONG COLD FRONT WILL MOVE ACROSS UTAH SATURDAY. AHEAD OF THE
                FRONT...RAIN AND SNOW WILL DEVELOP IN THE MOUNTAINS THIS EVENING
                CHANGING TO ALL SNOW DURING THE NIGHT. THE SNOW WILL THEN
                CONTINUE...HEAVY AT TIMES...ACROSS THE NORTHERN AND CENTRAL UTAH
                MOUNTAINS AND MOUNTAIN VALLEYS THROUGH SATURDAY AND SATURDAY
                NIGHT THEN TAPER OFF SUNDAY.

                ACCUMULATION OF 10-20 INCHES IS EXPECTED IN THE MOUNTAINS OF CENTRAL
                AND NORTHERN UTAH BY SUNDAY MORNING...WITH 6-12 INCHES IN THE
                WASATCH MOUNTAIN VALLEYS. LAKE EFFECT SNOW SHOWERS ARE ALSO EXPECTED
                SATURDAY NIGHT AND SUNDAY MORNING...WHICH WILL ADD TO THE SNOW
                AMOUNTS SOUTH AND EAST OF THE GREAT SALT LAKE...POSSIBLY BY QUITE
                A BIT.

                Bring on the Chowda' BABY!!!! WOOOHOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO!!!! :D

                Posted by m.david at 11:49 PM | Comments (0) | TrackBack

                Saxon-B 8.6.1, Saxon-SA 8.6.1, and Saxon 6.5.5 Now Available

                SourceForge.net: saxon-help

                From the above link to Dr. Kays post to the Saxon-help mailing list earlier today:

                I have published three maintenance releases this morning:

                Saxon-B 8.6.1 http://sourceforge.net/project/showfiles.php?group_id=29872

                Saxon-SA 8.6.1 http://www.saxonica.com/download/saxonsa8-6-1.zip

                Saxon 6.5.5 http://sourceforge.net/project/showfiles.php?group_id=29872

                Michael Kay
                http://www.saxonica.com/

                Posted by m.david at 05:44 AM | Comments (0) | TrackBack

                A Holiday Wish To You All

                In driving home from Thanksgiving festivities with my family here in Utah, the following statement popped into my head for some reason and I thought I would quickly share it with you:

                Geeks Don't Dream

                We Imagine, We Believe;

                And Then We Achieve

                To those of you who feel there is simply no chance of happiness in your holiday season, just try and do this one thing that follows below, and then do your best to remember that the space that is currently occupied by tonights darkness will tomorrow be occupied by Light from the Son(sic).

                That one thing?

                Believe in Something.

                Happy Holidays to you all :)

                Oh, and BTW...

                You don't have to believe in God for the last sentence in the above parapgraph to have meaning. Son and Sun can quite easily be interchanged; Either way and whichever way you believe, the light from tomorrow's Sun/Son will make itself known to all of us, and it will do so in a way that makes the most sense to each of us as an individual. This is the wonderful thing about Freedom and Choice:

                We get to make those determinations on our own.

                Not everyone in this world has such luxury, and in fact there could very well be more that don't have that luxury, than do.

                If you are one of the lucky ones(and I count myself most definitely amongst the lucky ones), don't ever forget just how lucky you are to have what you have. Please don't ever disrespect those in whom have given their life such that you can live in the world that you do.

                They believed in something.

                Shouldn't you believe in something too?

                Posted by m.david at 12:11 AM | Comments (0) | TrackBack

                November 23, 2005

                Batik Project(Apache SVG Library) Now Available On .NET Platform?

                Kurt asked me a while back if I wouldn't mind looking into the possibility of recompiling Batik, Apache SVG Library project, using IKVM(ikvmc.exe to be more precise) to then, of course, be made available for the .NET platform. My last attempt was probably 6 months ago and there were several problems that I ran into that seemed large enough to discourage trying to make any attempt at hacking together a fix.

                However, in looking through the latest change log from the latest IKVM 0.22 release I noticed this entry:

                Fixed bug 1310397.

                Which if you visit the link you will see the following summary:

                ---
                Exception compiling Crimson.jar
                I'd like to be able to use Batik, the Apache SVG
                implementation, in .NET. batik.jar compiles without
                error however realised that it is necessary to compile
                Crimson for any application to run as this library is used
                to parse svg (xml) documents. As you will know,
                Crimson is provided as part of the Java runtime but is
                available from the Apache site.

                Compiling this jar generates:

                InvalidOperationException: Type must be declared
                abstract if any of its methods are abstract.

                I'm submitting this issue for your review based on the
                you blog comment that if it can be dne in java...

                Best wishes

                Bill Seddon
                ---

                Given the fact that the bug is now fixed and the trouble ticket closed, I wonder if this will be enough to allow both Crimson and Batik to compile correctly and as such become available to .NET developers?

                That would be sweet! I will make an attempt and see what happens. I'll post back the results here in a bit.

                [UPDATE: Just noticed on the System Requirements page for Batik that:

                Java Virtual Machine A Java 1.3 or greater compatible virtual machine must be present.

                Which means that, technically speaking, the Java Language Conversion Assistant 3.0 (which supposedly will convert a Java language project based on J2EE <= 1.3 although I have had some wierd results that suggest otherwise) could also be a possibility. Not that this is all that crucial given the work of the SVG# project that I posted a link to last two days ago. But having several options to play with certainly can't hurt and could even help given that they are both open source and could easily utilize the generated code-base to fill in any holes temporarily while a more rock-solid platform is built based on pure .NET FCL programming.]

                [UPDATE: While things seem possible there are so many external dependency warnings that have pushed me to the point of wanting to build each piece of Batik from source such that I can gain a much better feel for what's needed and what is not. While its something I would like to do, its not something I have time for at the moment and as such have added to my list of "Cool things to look into as time permits." If and whent it does, I will look deeper into this, unless of course somebody else get's this up and running before then. If that happens to be the case and any of you hear/know about it, would you mind leaving a comment? Thanks!]

                Posted by m.david at 08:07 AM | Comments (0) | TrackBack

                IKVM 0.22 RC1 Now Available

                IKVM.NET Weblog

                It took a little longer than usual, but I finally managed to put together rc1 of IKVM 0.22 based on GNU Classpath 0.19. For the first time, this release also includes binaries built from the GNU Classpath generics branch. Many thanks to Andrew John Hughes for doing the work that makes this possible.

                This is actually old news as Jeroen posted this over a week ago. However, I was just about to sit down and put some work into the latest Saxon.NET bits based on Saxon 8.6 (another post I missed from the beginning of the month -- yikes!) and in doing so checked to see what the latest news on the IKVM front happened to be. The above linked post is the latest :)

                Posted by m.david at 07:51 AM | Comments (0) | TrackBack

                Is The Agile Development Community Barking At The Wrong "Big Dog On Campus"?

                [UPDATE: OK, this graphic speaks VOLUMES:

                badrating1.gif

                So does this entry(where this graphic was pointed out... click the image to view the article that it came from) where you can also find the following two comments:

                Scott Bellware(contains lots of references to other bloggers and what they had to say): "Rather than shape up Visual Studio to be amenable to Test-Driven Development, and in its ignorance of the nature of Test-Driven Development, Microsoft’s marketing people have simply tried to snow job the developer community into swallowing a wholly different definition of Test-Driven Development. And the very text outlining Microsoft’s understanding of Test-Driven Development betrays its almost complete ignorance of why Test-Driven Development is effective and why it is practiced in the way that it is. So, this is for the folks at MSDN. Listen up… you’ve already embarrassed yourself once, and you’ve embarrassed your insider and MVP communities by association this time as well..
                Larkware: "Microsoft really needs to do a couple of things here. First, they need to yank the offending content from MSDN before any more people notice how stupid they look. Second, some of the more prominent Microsoft agile bloggers need to step up to the plate to explain what they're doing to evangelize within the company so that this sort of thing is less likely to happen again in the future. "

                Hey Microsoft, forget what I said in this post... you need to fix this NOW! or your going to start losing more than just your most valuable employees, but also your Most Valuable Professionals as well. Don't fix this and, like this graphic, it will speak volumes as to just how valuable you regard the feedback of both your MVP's as well as without a doubt the most valuable resource you still have left: Your development community. Clock's a tickin']

                Scott Bellware [MVP] : Microsoft Takes it on the Chin Over Test-Driven Development

                On Test-Driven Development and Agile, Microsoft seems to have has lost its way, lost its courage, and lost its ability to innovate. The exodus of Microsoft’s brain trust is just one facet of the current sorry state of affairs of the occupation of its once fertile territories by an army of self-perpetuating, mindless, marketing zombies who are completely cut off from contemporary software tool requirements and are feeding product development with regurgitated goals from product usability tests of days gone by.

                This is an interesting post, and I'm not going to contend the points that Scott has brought to the surface. Getting the entire definition, focus, and point of Test Driven Development this far off and out of focus is ridiculous. Microsoft needs to fix this and fix this fast!

                But this brings up an opportunity to point out what to me as well as many others in whom I have the pleasure to work with seems so blatantly obvious:

                What does Agile Development and OOP have to do with each other?

                Answer:

                NOTHING!

                Agility and OOP are polar opposites. Why are we spending our time worrying about teaching newcomers to OOP how to properly build applications using Object-Oriented coding methodologies when, if we are doing what we SHOULD be doing, should instead focus our time on promoting programming paradigms that at there very core are agile.

                First off, just to be sure we are all on the same page, according to Merriam-Webster agile means:

                ---
                Main Entry: ag·ile
                Pronunciation: 'a-j&l, -"jIl
                Function: adjective
                Etymology: Middle French, from Latin agilis, from agere to drive, act -- more at AGENT
                1 : marked by ready ability to move with quick easy grace
                2 : having a quick resourceful and adaptable character
                - ag·ile·ly /-j&(l)-lE, -"jI(l)-lE/ adverb
                ---

                With this in mind, again I ask:

                What does Agile Development and OOP have to do with each other?

                Answer: See same question and answer from above.

                OOP is, for the most part, a great way to make your code base extensible, while at the same time inheriting all of the capabilities of the underlying objectified hierarchy. This is both good and appealing.

                But doesnt the very foundation in which OOP is built upon, often refered to as "The Three Pillar's of OOP" suggest everything BUT agility?

                When I think of the ability to adapt, I don't think of of a Pillar, I think of something much smaller, much more basic, but ultimately the most important particle that in turn gives substance for a Pillar to be formed in the first place.

                What is it that I think of:

                An Atom. (can anybody see where I am going with this? :)

                In both nature and in computing, Atom's are the foundation of true and pure agility. An Atom can be used to build anything and everything, which in my book is EXACTLY what agility is all about:

                The ability to adapt.

                Just and idea, but instead of focusing our time on pushing OOP in directions it has no ability to ADAPT to, why not instead focus on functional and dynamic programming languages that by their very nature are adaptive. Functional and dynamic languages can easily be used to teach Adaptive Development methodologies without making the students we are teaching desirous to rip out the very foundation of the hair follicles from the frustrations of attempting to build agile software with non-agile development methodologies and languages.

                Now with this in mind lets now focus on what Microsoft it doing right in the field of Agile Development.

                To do this lets quickly look at three individuals (there's quite a few more than this, my apologies to those of you who I didn't include, but for sake of brevity I am focusing on the core individuals behind the development and drive towards a more agile development platform):

                Erik Meijer
                Anders Hejlsberg
                Don Box

                What are these three folks working on in an attempt to bring a more agile development world to the CLI(.NET Platform)?

                COmega

                Linq, XLinq, and DLinq

                Scheme

                To be fair, Linq, XLinq, and DLinq incorporate a lot of what COmega is all about, and to be honest I have no idea if COmega has now been swallowed up in these three technologies, or if it will continue on as the primary "research language", testing out new ideas and development methodologies as the years continue (anybody know the answer to this?)

                But how does Scheme play into this? Read this post to gain a greater understanding, which ultimate leads to Don Box's recent post, "Scheme is Love" which was later followed up by "More on Scheme."

                So whats my point?

                Last year at Chris Sell's Applied XML Dev-Con after a brief "audience participation" poll regarding XQuery and XSLT 2.0, Chris Sell's said kind of outloud and kind of under his breath "It really doesn't matter as in ten years we're all going to be programming in Lisp anyway" which, for those who were unfamiliar with Lisp would have taken it as a joke and just as quickly forgot he even said it.

                But I didn't forget. Nor did I take it as a joke. Chris Sell's (for those of you who don't know(BTW... If you don't know who Chris is you really ought to be ashamed of yourself... REPENT!)) is someone who is VERY close to the development heart of Microsoft. Do you think he might know something that we don't(besides the obvious given his "Legends of Software Development" status)? Yeah, I bet he knows A LOT of things we don't know. Do you think that Don and Chris might be slowly but surely prepping the development community for a time when, as Chris predicted, we will all be developing in Lisp or derivatives like Scheme?

                Now, lets take it back a few notches and recognize that as great as Lisp and Scheme are, not everyone is LITERALLY going to be programming in these languages. But I can guarantee you that with the direction that Erik Meijer and Anders Hejlsberg are taking the C# programming language, encapsulating much of what the Haskell (Functional) programming language is all about, there will be very little difference between Lisp, Scheme, Haskell, and C# in or about the same 10 year time frame that Chris predicted.

                I've mentioned this before, but I will quickly point it out for those of you who might be unaware. Since its very first release the .NET platform has shipped with 'clisp' as a demo/sample for tool developers. Depending on whether you chose the default installation location for the SDK this can usually be found at:

                C:\Program Files\Microsoft.NET\SDK\v1.1\Tool Developers Guide\Samples\clisp

                As I stated in the linked post from above, do you think thats an accident?

                No, it's not.

                Do you think its just possible that Microsoft is preparing for a development future with Agile Development at the core of its focus?

                Yeah, I think they are.

                Like I state in the title:

                Is The Agile Development Community Barking At The Wrong "Big Dog On Campus"?

                My own answer to this is a most resounding YES, they are!

                What "Big Dog On Campus" should they be barking at?

                If they are making OOP the heart of their Agile Development focus, the Big Dog they should be barking at is themselves.

                Posted by m.david at 03:41 AM | Comments (7) | TrackBack

                November 22, 2005

                Index of Bob DuCharme's Transforming XML Columns Now Available

                I just heard word from Bob DuCharme, one of the true "Legends of the XSLT Community", that he has created an index to all of his "Transforming XML" Columns from XML.com. You can find this index here.

                Bob has been writing this column for quite some time and the wealth of information that is available to the XSLT developer is truly remarkable. I have been reading and learning from Bob's column for many years, and I know I'm not the only one. I would definitely bookmark this page and add it to your standard list of reference material for both XSLT 1.0, 2.0, and XPath 1.0 and 2.0. Truly great stuff!

                I am also about to add it to the list of resources in the left hand column of this site so if nothing else you can always access it from there as well.

                Thanks for the info Bob! I've definitely got this page bookmarked and plan to reference it often. :)

                Posted by m.david at 11:55 PM | Comments (0) | TrackBack

                SharpVectorGraphics (aka SVG#) releases 0.4 alpha

                SourceForge.net: SharpVectorGraphics (aka SVG#) releases 0.4 alpha

                Just noticed this post regarding the SVG# project in which is spearheaded by several of my "partners in (legal)Hacking Crimes" in Jeff Rafter(also co-developer along with Karl Waclawek of the SAX.NET project(not to be confused with Saxon.NET, although I doubt much any of you were all that confused)) and DonXML(speaking of Saxon.NET... :)... I had heard rumor from both these folks that something was in the pipeline and, sure enough, here it is.

                SharpVectorGraphics (aka SVG#), the C# SVG implementation has released a new alpha version available at https://sourceforge.net/project/showfiles.php?group_id=46621. Some of the new features and enhancements from v0.3.1 include: Interactivity Events Rendering Updates Rendering to HDC Scripting Source Code Reorganization Improved <use> support Improved Coordinate Handling *Warning: This project now contains unsafe code blocks to support image transparency and hit testing, additionally, security models for scripting support is still under development. This release is fairly complete for single-pass rendering, however scripting and interactivity updates will demonstrate bugs in masking and invalidation. Please give it a try and report findings to the svgdomcsharp-developers mailing list on the https://sourceforge.net/projects/svgdomcsharp/

                I've come to expect nothing but greatness from the likes of these guys, and yet again and as always, they've delivered.

                Excellent work guys!

                Posted by m.david at 03:36 AM | Comments (0) | TrackBack

                November 21, 2005

                Kurt's XML Conference Presentation Is Now Online

                Just got done with an IM conversation with Kurt in which he had me test that his presentation slides from XML 2005 were working correctly in Firefox 1.5. They are, so you may want to check them out if you havent had a chance yet...

                NOTE: If wondering why he did'nt just check himself... Given his role he builds his instance from source, so there's no way of really knowing for sure if what you see is the same thing he intended for you to see without gaining validation as such from external sources.

                Also, given that IE doesn't support the XHTML content-type or the proper XML binding language used for his presentation you need to use Firefox 1.5 to be able to view the slides.

                Posted by m.david at 07:26 PM | Comments (0) | TrackBack

                Sylvain's Blogging XForms

                XForms

                I'll be the first to admit that it's taking me a lot longer than I had planned to get going with XMLBlog.NET, XQueryBlog.com, XFormsBlog.com, and XPathBlog.com. I still plan to, but have set them aside(with basically everything else except a few items I work on to help clear my head) until after both books have gone to press(Q: Does the tech-book industry say "GTP'd" in the same way the software industry states "RTM'd" or do they use "RTM'd" as well... No worries, guess I'll find out soon enough :)

                In the mean time, Sylvain Hellegouarch is starting to blog his experiences with XForms at http://sh.xformsblog.com. Excellent!

                For those of you who do not know Sylvain(repent of your evil ways!) you will learn soon enough that he is an incredible software developer with a high level of enthusiasm that has a tendency to put a smile on your face when you read his thoughts, ideas, and in particular his code. Great stuff!

                From his first entry:

                Hello everyone.

                This should be a place for me in the coming weeks to talk about XForms. I have been playing with XForms for a while and I've been quite frustrated about the difficulty to find content about it. There are some books (such as XForms essentials by Micah Dubinko) but overall it's fairly hard to find a place with examples.

                Enjoy!

                Posted by m.david at 03:56 PM | Comments (0) | TrackBack

                November 18, 2005

                IronPython 0.9.5 Now Available

                IronPython: News item

                via yesterdays announcement from the IronPython GotDotNet workspace:

                We’ve just released the latest version of IronPython – 0.9.5. We’re continuing to drive towards full Python 2.4 compatibility with bug fixes and the implementation of more standard built-in types and modules. With these improvements we now pass 8 more tests in the standard CPython regression test suite. At the same time, we’re also improving .NET/Python interoperability with improved support for subclassing from C# classes and a better experience using Python objects in WPF GUIs.

                IronPython 0.9.5 can be downloaded here.

                In addition to this, according to the Miguel de Icaza's recent "Mono Directions" status report(see section labeled 2.0 Support):

                The core is complete enough that the latest versions of IronPython and Nermerle work with it.

                Given that IronPython 0.9.5 was released yesterday and Miguel's report was from a week or so back I can't say for sure if this statement is still true. If anybody happens to know the answer to this and wouldn't mind leaving a comment it would be much appreciated.

                Enjoy!

                Posted by m.david at 08:33 PM | Comments (0) | TrackBack

                JScript Add-in for Mono-Develop

                Cesar Lopez Nataren�s weblog

                Came back for lunch and noticed this entry on the Monologue(syndicated site of Mono-hackers) site:

                Evan Briones just sent me a screenshot showing his brand new JScript's add-in for MonoDevelop; check it out:

                He offered the help at #mjs on the weekend and two days later he showed me that, yeah!

                Very slick!

                Posted by m.david at 07:58 PM | Comments (0) | TrackBack

                Offline Today, At Salt Lake City Library Playing Catch-Up

                I'm heading off to the Downtown Salt Lake City Library here in a bit such that I can avoid distraction and get caught up on book-related matters... If you send any correspondence it will be after 9 p.m. MST before I am able to respond.

                BTW... Here's a few pic's of the Downtown SLC Library -- truly a spectacle both in person and in pic's:

                [NOTE: All photographs Copyright Timothy Hursley.]

                slc-library.jpg

                slc-library-interior-commons-2.jpg

                slc-library-interior-commons.jpg

                Posted by m.david at 03:48 PM | Comments (0) | TrackBack

                Like It Or Not, Web 2.0 Is Here and It's Here To Stay

                Venture Capital: A new breed of Internet startups is here

                Ask any bonafied hacker what he thinks of the term "Web 2.0" and I doubt much that the word "positive" will be found next to the word "response" if you were later asked to describe the response you were given.

                Well, as it usually does, fate has gone and taken a back-hand to the face of each of us, putting us in our place and showcasing to the world why you will rarely find a good hacker serving a term as a marketing professional at any given XYZ Software Company -- Like oil and water, really... oil and water.

                From one of my hometown newspaper's (Seattle P.I.) come's the above linked article which start's off with:

                The latest buzzword in the technology industry can be a little tough to define. Interactive Web sites that tap the knowledge of users? Collaborative technologies for small teams? Software delivered over the Internet as a service?

                Well, at least it can be said that we gave a solid effort at derailing the Web 2.0 Express... and when you can't beat 'em(marketers) join 'em(their cliche' marketing terms)...[1]

                "All aboard'!"

                [1] Did I just use a cliche' marketing term to describe the act of joining up with a cliche' marketing term.... blahhhh!!! I feel so dirty... blllluuuckk... I'm taking a shower.

                Posted by m.david at 02:34 PM | Comments (0) | TrackBack

                Ray Ozzie's Blogging (again)

                Blog

                via Dare Obasanjo's recent piece I learned that Ray Ozzie is back at it again in regards to blogging. From Ray's MSN Spaces blog he starts his first entry with:

                When I first began blogging back in August of 2002, I explained that I was doing so to learn more about the nature of the link-centered medium, and that blogging might represent a new and more effective model of interaction in the "public space".

                As Microsoft's CTO who will oversee the technical direction and subsequent activitees in regards to their software-based strategies, keeping "in touch" with Microsoft via this space is probably not such a bad idea. Subscribed.

                Posted by m.david at 01:52 PM | Comments (0) | TrackBack

                November 16, 2005

                IRC'd by Atom

                Copia

                Hey, if you can come up with a better title, I will happily change it... in the mean time it's stayin' right where it's at... :>D

                John L Clark and I separately needed a place to hang out and discuss Atom. The Atom Wikis talk of "#atom on freenode IRC network", but that channel was empty when John and I separately checked. In the hopes of reviving such a useful forum he and I now stay logged on there. If you're interested in Atom, consider joining us. I'm currently working on several Atom projects, both billable and non-billable, so I expect I'll be knee-deep on the format, and maybe the protocol, for a while.

                I guess since, technically speaking, one of the projects Uche could be refering to is LLUP (doesn't have to be Atom-based, but all of the work done thus far is Atom-based so, for now anyway, its Atom-based) I guess that means I best get my a$$ on over to Atom IRC channel...

                Maybe you should head on over to? If yes, guess I'll see ya there... (although I seem to be having a connection problem... probably a blocked port... I'll be there soon enough, you go on ahead without me, I'll catch up :D

                Oh, BTW... Sylvain has been developing several cool CherryPy-based sample apps to help newbies get started with the CherryPy framework, one of which, opkee!, happens to be a blogging tool with a focus towards the Atom syndication format. The other, atomixlib, is built on top of Amara to be a pure Python API for Atom. If Python just so happens to be your cup of tea I would add both of these to your pyPhatLittleApps list.

                Enjoy!

                Posted by m.david at 11:41 AM | Comments (2) | TrackBack

                Announce: XSL training and no-charge UBL to PDF formatting announced at XML'2005 (XSL List)

                While this is obviously more suited for the announcements section of this site, given that the main feed has been pretty much all I have had time to keep up with on any sort of regular basis (something that will change... just not right now.) I figured why stick it all the way to the back of the site when I can fill a bit of the void that exists even on the main feed post's. Besides, given the fact that this is from Mr. G. Ken Holman himself it seems only fitting to bring whatever it is he has to say, offer, or otherwise promote to the very front of the line, as this is a spot that he has obviously MORE than earned...

                As such, I will let his post to XSL-List earlier this morning take it from here(BTW... If you need XSL-FO, XSL-T, and/or overall XML training for you and/or your employees and you simply want the very best there is in North America, you basically have two choices: G. Ken Holman and Craine Softwrights and Mulberry Technologies. There are some other good ones as well, and bringing consultants into the picture theres definitely a few more folks I would need to add to the list (see the main page of this site for just such a list) but in regards to training? There's know one like these guys. When you've been working with XML-like markup languages since the early days of SGML like both of these folks have, it would a bit difficult to try and suggest otherwise:

                ---
                In a XML'2005 poster in Atlanta today, Crane Softwrights Ltd. announced the availability of commercial-grade publishing of UBL instances to PDF format with freely-downloadable components[1].

                Using digitally-signed XSL-FO stylesheet manifests, users of the Universal Business Language 1.0 vocabulary[2] can use the Crane UBL XSLT/XSL-FO stylesheets unchanged to produce quality PDF renderings from UBL XML document instances using the Java-based Ibex Signature Edition XSL-FO processor. There are no charges to download and use these components to produce UN Layout Key renderings of instances of UBL's eight document types.

                Also announced is the scheduling of publicly-subscribed XSL training[3] in Denver Colorado the week of March 13-17, 2006: 3 days hands-on XSLT followed by 2 days hands-on XSL-FO. Discounts are available for early registration and for attending both sessions.

                Please let me know if you should have any questions on either of these announcements.

                . . . . . . . Ken

                [1] Follow the "Free resources" link in the home page noted below.

                [2] The OASIS Universal Business Language (UBL) defines a generic XML interchange format for business documents. UBL is designed to provide a universally understood and recognized commercial syntax for legally binding business documents and to operate within a standard business framework such as ISO 15000 (ebXML) to provide a complete, standards-based infrastructure that can extend the benefits of existing EDI systems to businesses of all sizes. UBL is freely available to everyone without legal encumbrance or licensing fees.

                [3] Follow the event links in the "Announcements" section on the home page noted below.

                cc: UBL-dev, UBL TC, XML Dev, XSL List, Yahoo-XSL-FO, XML-L, XML-Doc

                p.s. sorry for the duplicates to subscribers of multiple lists


                --
                Upcoming XSLT/XSL-FO hands-on courses: Denver,CO March 13-17,2006
                World-wide on-site corporate, govt. & user group XML/XSL training.
                G. Ken Holman mailto:gkholman@CraneSoftwrights.com
                Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
                Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
                Male Cancer Awareness Aug'05 http://www.CraneSoftwrights.com/s/bc
                Legal business disclaimers: http://www.CraneSoftwrights.com/legal

                Posted by m.david at 03:30 AM | Comments (0) | TrackBack

                November 15, 2005

                You Don't Often Hear About The Good Things Happening Inside Our Government. Maybe We Should Try And Change That?

                ONE Blog

                Proving yet again he is THE Rock Star of ALL Rock Stars and yet even more so a Man among the common man, Bono recently had this to say about the progress made in the last year by the Bush Admininstration:

                U2's Bono makes fiery case for rocking the world with ambitious mission to eradicate global misery

                “Wearing pink-tinted, wraparound glasses beneath a beat-up, perfectly molded straw cowboy hat, the U2 front man said that although the United States has much work to do and more money to give to fight poverty and AIDS, the Bush administration had gone from a "standing start" to tripling its aid to Africa over the past four years. He singled out the president's Emergency Plan for AIDS Relief, which has put a quarter-million Africans on antiviral medication in the past year.

                It is an amazing thing he's pulled off," Bono said. "Three years ago, people would laugh openly, in your face, at the idea that we could work with the administration on this stuff.

                It would be a lot easier for Bono, The Edge, Larry, and Adam who collectively form the band U2 to sit back, relax, and enjoy there unbridaled fame, fortune, and all there is that comes along with being one of the greatest Rock Bands of all time.

                But instead they use this same said fame and fortune to broadcast and promote change in a world where change is badly needed. And when they win, instead of patting themselves on the back they bring light to the fact that some pretty amazing changes have taken place both inside an administration no one believed even cared, and because of an administration that's proven that, apparently, they do.

                Something to think about.

                Posted by m.david at 10:51 AM | Comments (0) | TrackBack

                At Long Last : Pics Of Kurt Cagle, Russ Miles, and myself In Seattle

                Kurt, Russ, and myself with some stupid a$$ look on my face at lunch last January.

                Originally uploaded by xmlhacker.

                At the end of last January Russ gave a presentation to the developers at Amazon as part of their Friday Learning series. Normally "outsiders" are not allowed at such events. But with cunning skill Russ(I think he may have been a ninja in a previous life as his skills are truly breath taking to watch ;) was able to distract the guard at the entrance while Kurt and I snuck past. It was either that or maybe Russ was just able to convince the folks at Amazon to bend the rules a bit such that Kurt and I could attend... it really could have been either one but I like the sound of the first one better. As such I'm sticking with that story until someone calls me out on it. :)

                Anyways, it was a quick trip and I forgot to snag batteries before I left from Salt Lake International earlier that morning. With a somewhat rushed schedule I didn't have a chance to pick up a pack until we left Amazon and went to lunch. As such, theres only a few photos... but I've mentioned them a couple of times and keep stating "Oh! I need to get those posted..." but it never seems to have happened.

                Well, the thought hit me again a few minutes ago and it seemed that I simply had to get this done now before an entire year had passed without marking it off my task list (its been 9 1/2 months since these were taken). So I set aside my current task and uploaded both this set as well as a timeline-based photo-log of the "experience" of opening up the box of my first Mac until the moment the OS was up and running and I was ready to go.

                I'll blog more about my overall Mac experience when I have more time. In the mean time, please enjoy this previously linked sequenced set of photos that I honestly believed up until about a month ago would never, EVER exist.

                Enjoy!

                Posted by m.david at 02:11 AM | Comments (0) | TrackBack

                November 13, 2005

                Blog-Title-of-The-Day [via Copia]

                Copia

                This actually could become a more common post as I kind of like the idea of just posting a blog entries title and dubbing it "Blog-Title-of-The-Day"

                Hmm... I guess we'll see... in the mean time the first official XSLT:Blog "Blog-Title-Of-The-Day" award goes to Uche Ogbuji and his blog entry title:

                Don't give me that monkey-ass Web 1.0, either

                I like it! It's definitely got some staying power for sure :)

                Enjoy your Blog-Title-Of-The-Day enhanced day!

                Posted by m.david at 07:00 AM | Comments (0) | TrackBack

                November 12, 2005

                Comments and TrackBack's Are FINALLY Back On | Oh, And Has Anybody Seen The New beta.msn.com Homepage?

                So I finally took the two minutes it required to track down the correct movabletype files (I'm still running on 3.14 -- I've heard some horror stories regarding the move to 2.0 doing all sorts of funky things to URI's, blasting away customized templates, etc... anyone care to ease my mind or are my concerns justified?) that I had previously ripped from their CGI-based single-threaded stranglehold on the server at various stages over the last few months... So this means not only my blog but Kurt's as well... He's going to be oh so happy when he finds out as he's been patiently putting up with my "Oh crap! I forgot... I'll get that taken care of ... uh ... soon." for quite some time now.

                I'm not so sure now still qualifies as 'soon' given its been several months+ since my first stated 'soon'... but they're on so at least there's that, right?

                Oh also -- My good friend Kerry Woolsey from many years past -- years before either of us would start our first positions at Microsoft within a couple of months of each other back in '96 -- recently informed me that the project he now manages -- the MSN Home Page (and I believe all MSN-related Portal's if I read his job description correctly, but it's obviously of no major importance -- suffice it to say he manages the MSN Home page which in and of itself is a behemouth of a project -- if he does more than this... DAMN! is all I have to say.

                Anyway... Point? Take a look at http://beta.msn.com. And tell me if you see anything missing... [HINT: Like 75% of everything that used to be there!][EXTENDED NOTE: While Firefox development is underway, its best to view the above link in IE... I quickly checked and it seems the Ajax-styled content loading is not loading in Firefox at all at the moment... but it should be somewhat obvious that things are still under development so I'm thinking forgiveness of such things is probably an OK thing for now :)]

                I have to take my hat off to both Kerry and Microsoft in general as we all are undoubtedly aware, revenue is what drives every business in every part of the world -- so to chop off a significant chunk of any potential revenue in the name of usability and simplicity --

                -- that takes some big phat kahona's to not only think and believe, but to then also say it and do it. BIG HUGE PHAT ONE's!

                In a world where "MORE!, MORE!, MORE!!!!" drives 99.100% of business decisions I'm finding it really refreshing to see someone finally taking claim to the remaining 0.9% to then stand-up and state:

                "K.I.S.S my A$$ 'MORE! MORE! MORE!!!!' I'm playing the 'less is better, simple is best!' card and you're gonna like it."

                You know, before now I wouldn't have thought anyone was brave enough to take a stand against such matters, no matter what company they work for or who they report to. But then again, you don't know Kerry like I know Kerry. So even though I wouldn't have thought it possible, am I surprised he was able to pull it off?

                No. Not even in the slightest.

                If I were to try and give you a good example of just how much talent and raw natural leadership Kerry has, I would have you think about this:

                Kerry is one of the more politically active, motivated, and minded people you will ever come across... but not the argumentative "I'm right and you're wrong so neener, neener, neener..." type, just the plain and simple "matter-of-fact" type (if that makes sense.) He's also a conservative and a fairly staunch conservative at that.

                If any of you are familiar with the University of Washington and its general political atmosphere, conservative would not be a word you would use to describe it -- unless of course you were to preface it with the word "Not", then yeah, that would work...

                So given this quite significant fact, one would probably assume that the political leadership at the University, in particular the Graduate Student Body leadership, would take on a similar mindset and overall "look-and-feel" of the general student body population they represented, right?

                Well, lets take it one step further... To give you a feel for what I mean by "not conservative" this individual would have to win over the hearts and minds of a student body in which was able to pursuade the University's Board of Directors to allow an unmarried gay couple the benefit of insurance coverage for their partner, but to disallow any coverage for a straight unmarried couple who had been living together for equal amounts of time. [NOTE: Please don't take that the wrong way -- I'm not trying to stir debate or make any sort of political statement of ANY sort... I'm just simply trying to lay the groundwork into understanding what I am refering to when I say "the University of Washington is a VERY liberal school!" It is!]

                So with this in mind, as previously mentioned, one would assume that the possibility of a vocally outspoken conservative being elected into the position of the University of Washington Graduate Student Body President would be similar to the current Mike Tyson's chances of winning a schoolyard fist-fight with the seventh grade bully -- not good. In fact, not good AT ALL!

                Yet somehow and in someway... Kerry found a way to pull off the victory.

                Was I surprised?

                No. Not even in the slightest.

                But you don't know Kerry like I know Kerry. To me (and to the rest of our closely knitted group of friends) it just made sense. No matter who you are or what your difference of opinions may be, Kerry is someone you just simply respect. That's it, pure and simple respect.

                Here's that link again...

                Posted by m.david at 10:38 AM | Comments (0) | TrackBack

                November 11, 2005

                Mono 1.1.10 Now Available

                Mono 1.1.10: Release Notes.

                From the Mono Project Downloads page you will discover the following entry:

                Current Stable Version: Mono 1.1.10 (Release notes Nov 11th, 2005 (http://go-mono.com/archive/1.1.10))

                From the above linked release notes:

                We consider Mono 1.1.10 stable to recommend it for all users. Those upgrading from the 1.0.x series should note that these notes only contain the differences between 1.1.9 and 1.1.10. All of the changes since 1.0 are documented in the following release notes: 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, 1.1.7, 1.1.8 and 1.1.9.

                There a quite a few updates and feature additions that are fairly significant. However those that jumped out at me the most (setting aside the fact that they are listed first on the release notes... I promise, I read the whole page :) are contained in the mod_mono headings and the Windows.Forms heading:

                mod_mono Auto Configuration

                mod_mono 1.1.10 features a new auto-configuration system which allows ASP.NET applications to work without having to make any configuration changes to Apache.

                The experience of the new auto-configuration system is similar to PHP: any file that has one of the ASP.NET extensions will automatically be handled by Mono.

                mod_mono and virtual hosts

                Mod_mono now works correctly with virtual hosts, and it is possible to use the mod_mono control panel to restart individual servers.

                Windows.Forms

                ...

                Drag and Drop for X11 has been implemented.

                ...

                Nice! I can tell you from experience that the Auto-Configuration of mod_mono with Apache coupled with the auto-detection of an ASP.NET extension being passed to the proper handler is a gift straight from the Mono-God's (whomever or whatever they might be :) and Drag-and-Drop capabilties for X11/Windows.Forms implementation... It might seem trivial, but I'll venture out on-a-limb on this one and state that this capability alone will be the cause of some extensive Windows.Forms-based applications being developed for Linux-based X11 systems.

                One other update that caught my eye (again, there are quite a few more than this, but I mentioned the Mono JavaScript compiler once before and the updated Mozilla test-suite numbers are interesting to say the least)

                JavaScript Compiler

                ...

                Status 6981 successful tests out of 7229 from Mozilla's test suite.

                ...

                If I've done my math correctly (: I'm 99.100% certain that I have :) that's just over 96.5% of the 7229 tests contained in the Mozilla test suite successfully passing (: given Brendan Eich, JavaScripts creator, just so happens to run the technical show for the Mozilla Foundation/Corp I think its probably safe to place the Mozilla JavaScript test suite into the "this is the test suite that matters most" position, wouldn't ya' think? ;) At last check a couple of months back it was just over 70% in regards to passed tests. That's a pretty significant increase made in a pretty small space of time. My hat goes off to whomever did the work in this space... Very nice!

                Things are really beginning to get even more interesting over in the land of Mono.

                Posted by m.david at 03:36 PM | Comments (0) | TrackBack

                November 08, 2005

                A Warm-Hearted Thank You And A Very Special And Important New Induction Into The XSLT:Blog "Legends-of-the-XSLT-Community" | Oh And A Couple Of Additional Announcements As Well

                [NOTE: My apologies for this blast of entries all at once. I've been buried deep down under over the last, well, for a while now. As such, there's a bunch of posts I have piled up that I need to get out. For now, this is the last one and probably will be for another day or so while I continue forth on my venture to see just how much development and writing I can cram into a days worth of working time. Or is that waking time... same thing I think ;)]

                So with that brief interlude, I'll cut to the chase:

                For those of you who have not noticed already, we have two new entries into the Legends list that, quite honestly, I never thought would be listed. Not for any other reason beyond the fact that, until now, Opera and XSLT were simply not two words you often heard in the same sentence, unless of course separated by "does not support Client-side"

                I can't say I know for sure why the sudden change of heart/plans, but I do know that as the creator of the CSS standard and the history that exists between XSL(as in XSL Formatting Object or simply FO, although inherently XSLT got pulled in via the "guilt by association" clause) and CSS, this had to be a pretty difficult decision for Opera's CEO Håkon Wium Lie to make, but I can honestly and truly state that I am grateful that he did and am excited to welcome him into the XSLT Blog Legends family.

                As such, as the writer/editor/developer of XSLT:Blog I would like to extend a warm welcome and thank you to the latest two entries into the XSLT:Blog/Legends-of-the-XSLT-Community:

                Mr. Håkon Wium Lie and his company, Opera Software.

                I want to apologize to Mr. Lie for not taking care of this before now. Ironically, the reason it has taken this long is the very fact that the future of the Opera browser now includes XSLT and XPath 1.0 support.

                How is that ironic?

                Well, as a few of you know I have been developing a title for O'Reilly Media whose subject matter is "Browser-based XML Processing and Presentation with XSLT and CSS." Of course with --

                * 15 million users BEFORE they announced they would no longer be charging a licensing-fee for an ad-free version of the browser
                * The fact that they would be discontinuing the ad-based browser all together
                * The fact that Opera provides EXTENSIVE CSS support (for what I hope is obvious reasons)
                * Opera provides support for SVG Tiny(now) and SVG Basic(part of the 9.0 release, although I didn't know this until I read the same mentioned 9.0 changelog) [which is another area of coverage, all-be-it small, in my title, as well as XAML and XUL to round out coverage of client-side and/or browser-enabled markup languages -- the titles focus is XHTML as the primary format for a majority of the code samples and included browser-based applications]

                -- this meant that I couldn't just ignore Opera as far as providing complete coverage of all major browsers that supported the various topics covered within the title. Of course without XSLT/XPath support in Opera there was a significant amount of "Opera work-arounds" code samples and related text that suddenly became obsolete. As such, a lot of the past two weeks has been spend cutting out all of the above mentioned code and text and reworking things throughout that in any way, shape, or form, suggested "this won't work in Opera", or,"unfortunately this is not a complete cross-platform solution", etc...

                But please don't feel sorry for me (something tells me that very few tears will be shed on my behalf after reading the above, but, you know, just-in-case.. ;) as what has required an extensive amount of rewriting, recoding, restructure, and all-together changing the overall message of the book which was

                "for IE, Mozilla, and for non-scripted XSLT in Safari this code, related-applications, and overall explanations of how this all works, you're world is about to be ROCKED! If youre an Opera user you're world is about to -- well, probably not much will change. Sorry."

                and instead

                "You may want to buckle-up for this one... You're cross-browser/cross-platform browser-based application development world is about to be ROCKED!!!"

                Personally, I like the sound of the second one better :) so the fact that I am having to rework things to fit the now wide-open world of browser-based XML processing and presentation with XSLT and CSS is something I am both happy to do and excited about all of the new possibilities that, before two weeks ago, simply didn't exist from a cross-platform, cross-browser perspective.

                Oh, and guess what... Theres an added extra little treat thats going to come with this title now -- something I will make notice to as soon as I have been given the "go-ahead" from O'Reilly that its OK for me to do so.

                Another topic of interest can be found on both Amazon and APress... with signed contracts and work moving forward I feel good about bringing this to everyones general attention. But I guess I'm not really announcing anything as anyone who happens to have visited Amazon or Apress.com as of late and placed a search for Firefox-related titles is already fully aware of what the following graphic brings to light:

                159059536X.01._SCLZZZZZZZ_.jpg

                I'll tell you what... If you told me even a year ago, a time when Kurt and I were good friends and had been for some time, that I would one day soon be lucky enough to be both writing and sharing the cover of a book title with Kurt Cagle I would have told you to quit whatever it was you've been smoking and seek counseling.

                While I still have a hard time believing it, this is without a doubt very real and I am EXTREMELY grateful to both Kurt and Apress for the opportunity to be a part of this title.

                With any luck both of these titles should be out about the same time which is sometime during the first quarter of next year, hopefully sooner.

                Also, when I know for sure that it's OK to talk about the mentioned surprise regarding my O'Reilly title, I will certainly let you know.

                Fun stuff for sure :)

                Enjoy your day!

                Posted by m.david at 03:43 PM | Comments (0) | TrackBack

                Kurt Cagle Enters The O'Reilly Developers Blogosphere

                Staying Employed in the Turkish Automaton's World

                Welcome, one and all, to the Metaphorical Web. My name is Kurt Cagle, author of books on XML, occasional blogger, computer consultant, and pundit wannabe. I want to thank O'Reilly for giving me the privilege of writing a blog under their banner, and hope to be able to take advantage of it to expound pell-mell on XML, the industry, programming, programming ethics, and the world of the technically bizarre.

                I will admit that I kinda' sorta' had the inside track that this might be happening in the not too distant future. I guess that future is now.

                Welcome Kurt!

                Kurt's O'Reilly Blog is available in Atom, RSS 1.0, and RSS 2.0 formats. Subscribed(as if I needed to state this. ;)

                From the last sentence of his O'Reilly Bio:

                He lives with his wife and daughters in Victoria, where he gets to watch the squirrels periodically mug the tourists.

                That Kurt, I tell ya... always has a little someth'm someth'm to throw in at the end to put a smile on your face.

                Posted by m.david at 03:06 PM | Comments (0) | TrackBack

                The Zimbabwe Crisis : A Response From Senator Orrin Hatch [via my O'Reilly Blog]

                The Zimbabwe Crisis : A Response From Senator Orrin Hatch

                I plan to leave the peanut gallery comments in the peanut gallery and I ask that you be willing to do the same. This post isn't about differences of political opinions nor is it a post for or against the United States Government, President George W. Bush, and Senator Orrin Hatch. As such I ask you to please set aside your opinions regarding any of the above and instead focus on the content of this letter, which is a response from Senator Orrin Hatch of the United States Senate to an email I sent him regarding the current crisis taking place in Zimbabwe. In this email I asked, in no uncertain terms, what plans, if any, the United States Government has in bringing a stop to the atrocities currently taking place in this country.

                Posted by m.david at 03:03 PM | Comments (0) | TrackBack

                I'm Beginning to Believe That If Eve Maler Was Given The Task Of World Peace, She Would Somehow Find A Way To Deliver On Time And Under Budget

                Pushing String � It takes two to tango

                For our customers who have intensely heterogeneous environments (and that includes pretty much 100% of the really big ones), we’re always trying to make things easier and to give them the choices they want and need. For many of them, it answers an important question if they know they will have flexibility in hooking up application components using our Java technology and Microsoft’s WCF. Connecting this to Glassfish is a measure of our real commitment. (I always wonder if Microsoft is secretly pleased about these open-source plans… We’ve also got an open-source project called Wiseman for WS-Management, in case you didn’t know.)

                Some people amaze me with all they are capable of. Eve Maler astounds me.

                As always, thanks Eve!

                Posted by m.david at 02:36 PM | Comments (0) | TrackBack

                Get Up To Speed With Linq, DLinq, and XLinq Directly From Its Creators

                Videos

                In quickly checking up on Oleg's XLinq.net project I noticed the above linked page in which you can find several videos from the PDC showcasing the key language technologists at Microsoft in both solo and group settings including Dave Remy, Luca Bolognese, Anders Hejlsberg, Erik Meijer, Paul Vick, and Don Box. Definitely "Must See WebTV"!

                Posted by m.david at 02:27 PM | Comments (0) | TrackBack

                November 03, 2005

                Dear Microsoft WinFX SDK Development Team / Dev-Lead | An Extension By Example To My "No More Mr. Nice Fence Post Sitter" Post

                First, to the Dev-Lead of this project > Just a couple quick questions:

                - Are you a Woman?
                - If yes, are you single?
                - If yes, will you marry me?

                [If more info is needed]

                I am:

                6'2" Tall
                Dark Brown Hair
                Dark Brown Eyes
                Athletic Build based on an Athletic Lifestyle
                I was once refered to as a "Good-looking Perry Farrell" but (see picture below of Perry Farrell) I'm not so sure that is as much a compliment and more a "damn that boy is ugly... even ol' M. over there's better looking than him:

                Here's Perry:

                ja_perry5.jpg

                The best picture of myself that comes even close to the same "Perry Pose" [note: I believe this is actually me watching my pool partner knock down the eight ball for the V. But it could have been of me dancing and turning to see if someone was using the pool table as well... I do very much like to dance, I do. So it really could have been either. ;)]

                mybestperryfarrelimpression.jpg

                Could Perry and I be twins separated at birth. Ummm... I guess I'll let you decide that one for yourself ;) I must admit I am a big Janes Addiction fan, so I guess there is the very real possibility its more than just the fact that Janes Addiction Kicks A$$, musically speaking of course.

                Likely? Ummm... no. Possible? I think we can scratch that "very real possibility" bit from above, cuz' Ummmm... no. ;)

                I do know one thing though for sure... That man is a flat-out Rock-Star like none-other... and you just gotta love Janes Addiction... I mean, Janes Addiction defined an entire generation of music that no one really seems to recognize... I assure you, if there was never Janes Addiction, there would have never been a grunge scene, alternative music would still hold true to its "alternative" roots -- believe it or not Alternative didn't used to mean Main Stream Music USA... It meant, "if theres nothing else on, I guess there's always this as an alternative." [update: Actually, this is more a tounge-in-cheek way of stating what the first sentence on the Wikipedia "Alternative Rock/Music" entry more accurately defines as:

                The terms alternative rock and alternative music[1] were coined in the early 1980s to describe punk rock-inspired music genres which didn't fit into the mainstream genres of the time.
                ] --- original entry cntd. ---

                Believe it.

                Going back to our previous "marrital" conversation...

                Now if it had been said that I look a lot like a better looking Brad Pitt[1]... Now that could probably qualify as a compliment. Unfortunately, I'm sorry to admit that such a comparison/statement has never been made on my behalf...

                Does this present a problem? I mean theres always surgery so I'm sure we can work something out, right? I promise, I can change! :D

                So moving on... just what in the hell's got me all twitterpated over the 50% chance the MS WinFX SDK Dev-Team lead is a Woman, with another 50% chance she's single. Now I have no idea what the percentage of interest would be in my marriage proposal, but based on my own extensive experience through long-term, direct exposure since birth[3] with the 50% Estrogen-based population I'm 99.100% certain that my chances would have been a lot higher if I had waited until say after our 2nd year of dating to propose marriage...

                What are the chances now? Zero.

                DAMN!

                Anyway, this is why:
                MSWinFXSDK-Screen-Shot-Smal.png

                DAMN You're Gorgeous! Add to this all of the "living, breathing, interactive-based capabilities that seem to be just where they need to be and appear just when you need to use them... I'm sorry, but this stuff just flat out ROCKS!

                If you havent already played around with latest release of the WinFX SDK or any of the other fine examples of where the future of document/documentation development is most certainly moving towards [note: there are several dependencies that are listed that you must install first before installing the SDK] you really need to.

                Or is the future is now?

                If the above is representative of the way things are going to be from here on out, I would then respond "Youre Damn Skippy!"

                I'm ready. Are you?

                Now, just in case you have absolutely no clue how this is related to my DOM/COM/compound document post from two days ago, I'll give you a hint...

                This is a compound document. Or in other words a document-based application.

                Please, if your running Windows XP and have a good hour or so of time... go get yourself immersed in the Vista site. In particular the Windows Presentation Foundation (Avalon) particulars who's core is the XML-based declaritive-style Windows GUI and Component/Object-based Wiring Framework which goes by the name, XAML and is a perfect example of the exact format I was refering to as where I believe we need to be focused from this point forward.

                Now, before you go off and state "Yeah, but then I'm tied to Microsoft" [See Answer 1 below]

                or

                "If MS came up with this its only to get us locked into another proprietary format and as such, is a bad idea all together." [See Answer 2 below]

                or (and here's my favorite lame-a$$ statement of all time)

                "If its so great, why are they the only ones doing it?" Quick Survey : Did you state (in your head, or out loud, either one) after reading that last question "yeah, why are they the only ones using this component-based document format?" my simple answer would be [See Answer 3 below as well]:

                ---
                "Oh, I'm sorry... this is XSLTBlog... you must have thought you found "EcstasyBlog". If you head down the hall its just two doors down and just to your right... no your other right.. there you go.

                "Damn dude, why's your back all crooked like that... you couldnt be more than 25 years old there phreaky... And, just a thought, but you might want to consider laying off the coffee for the rest of the morning... usually when your hands begin to violenty shake such that you can't even get the cup in your mouth, you've generally capped out on youre daily caffeine intake 'limit'. Just a thought, though. I'm sure you know your limits much better than I do, for sure..."

                Which of course would have been followed with the inner thought of the "scared raccoon eyed" whatever that was with "Coffee, all I've had to drink all day is Orange Juice... Chhh... Coffee... Who needs coffee when you've got -- Owe! My back! Damn that hurts..." which if you have any idea what I have just been refering to in these last three(3) paragraphs you know is exactly the problem in and of itself.

                [NOTE: The following is a very serious statement. Please treat it as such, and if you have a problem, please get help]

                I can promise you from experience (while short lived, even short lived was too long) -- you need to lay off that shit. You're going to be crippled, miserable, and dead by 30. Seriously, you don't what you're putting in your body... its BAD ASS FUCKED UP SHIT! STOP NOW!

                Please.

                ---

                Answers to above questions:

                [Answer 1 : No. You're not]

                [Answer 2 : See the same links from that last answer]

                [Answer 3 : Ever heard of Mozilla? Firefox? How about XUL? Or better yet, Sea Monkey? If you don't already know this, while the implementations are different, these are all focused towards the same general compound document format... I promise, Compound Documents are exactly where things are... not headed... they're here now and you more than likely use an "application" built with this generalized concept each and every day of your life and don't even realize it.

                Dont get me wrong.. theres still a ways to go for things to be where they need to be. But if don't start learning this now, you're going to feel a little silly in six months when you're 14 year old brother is writing better, faster, more reliable, and more extensible code, that he is now using to collaborate with his new found friends in "China, Russia, and Australia... oh, and some kid down the street who insists on calling himself "The Worm." The Worm? What kind of an idiot would WANT to call himself "The Worm". What a dork!" [which you barely even heard as you realized a few seconds prior to this that the "nice gentleman" who helped you out in the dev-forum in whom you assumed must have been developing code for at least twenty years and yet was nice enough to help you work through some bugs in your E4X script you've been working on for the last six(6) weeks is you're same 14 year old brother... You know this of course because the similar comment "The Worm" was here earlier, just feel lucky you did'nt have him trying to help you as you would have been worse off that when you started by the time he was through with you..." which was followed by "What a dork!" which you though was kind of wierd for a middle-aged hacker to be stating and as such you're now dead certain came from the same person... you're 14 year old little brother.

                "Uh, oh... ya think he knows I'm "The Worm"?!"

                I'm guessing if he doesn't, he'll learn how to find out who "this worm guy is anyway" by next week at his present pace of code absorption.

                You see the sad thing is that he only started "writing code" two weeks ago when he decided it was time to buckle down and learn how to make all these cool document-based applications that everyone seems to have and is "moddin' up to give them some personal style and class, yo."

                Or something like that anyway... :)

                ---

                Closing things off... Don't get me wrong.. its not too late now, nor will it ever be too late to start learning about XUL, XAML, and SVG. Don't get me wrong... XHTML and CSS are EXTREMELY important to learn and understand, especially in regards XUL and SVG as both of these specifications are heavily integrated into these specifications. HTML, XHTML and CSS still make up 95%, if not more, of the web documents out there, and they won't be going away. Adapting yes. Going away, no. Not for a LOOOONNNNNNGGG time, if ever. Not everyting has to be a compound document to be effective. Besides, the W3C is working on integration of Compound Documents into their list of recommended specifications as we speak. Obviously the W3C is going to be concerned with keeping things as compatible with prior document versions as possible, so again, expect to see these languages continue to play a major role in our web-based document future.

                To embrace compound documents you dont have to dump the current DOM-based formats, and instead simply need to learn how the very fact that these formats are XML-based is the exact reason why compound documents are called compound documents...[err... that didn't come out right. Compound Documents don't have to be XML-based to be considered a Compound Document. But the fact that anything that is XML-based inherits the eXtensible capabilities of XML makes things MUCH easier from the standpoint of ensuring any XML-parser can parse the entire document, no matter if the process used to take things to the next level will know what to do with it once it has. Of course namespaces are at the same level of importance as far as XML-based Compound Documents are concerned as it is with namespaces we can be assured that we can use whatever naming conventions/derived XML Schema we so please without having concern as to whether or not someone else is using the same naming conventions/derived XML Schema. The parser will correctly differentiate the two and allow the ability for whatever process is used to determine what gets processed by what rendering engine/component/application/etc... Mime-Types come into play with this process as well, but from the XML parsing standpoint its namespaces that are of the utmost importance for any given XML-based Compound Document. Without them there would be no XML-based Compound Documents. We can barely agree on a handful of standards that are driven by a handful of industry leaders. Can you imagine everyone on the planet attempting to collaborate to both agree upon and ensure that clashing of XML-dcouments didn't take place. In fact, with that stated, XML would have never gained any extended traction had it not been for namespaces, even with Compund Documents out of the equation. The moral of the story... if you don't already, might be a good idea to learn all you could possible ever want to know about these beasts of burden. Need someone to help? From a consulting standpoint go to the main page of this site and pick a name/company from any of those on the "recommended" list, buy one of Jeni Tennison's books, if your tecnically savvy, one of Dr. Kay's titles will get you where you want to be, and so will one of Elliotte Rusty Harold's titles. I'll have to check to see if Kurt has tackled namespaces in one of his titles. If he has, the this too would be an excellent source to learn about XML namespaces. If none-of-these come across as anything of interest then I would consider prayer (and LOTS of it) - or - if you don't believe in any sort of Higher Being, you might consider looking into such matters a bit deeper as to truly understand namespaces you either need the help of God Himself(or however you view the Diety) or as close to Him (or, again, however you choose to view the Diety) as you can get on Earth (at least in regards to the depth of understanding all that is XML namespaces is concerned) which is basically the list of folks on the main page or any of the above books that they have written.] they're compounded/integrated with other XML-based, CSS-styled elements all over the place that are then integrated with other XML-based markup languages that embrace a COM-based wiring mechanism to bring these same documents we've been developing for years together with the incredible power and capability that comes with the COM-based development models while embracing simplicity and paying no respect to giving up anything as far as capability and extensibility are concerned.

                Killer stuff for sure! Just like that beauty of an SDK documentation sitting up there in all its compound document glory...

                Ain't life grand :)

                ---
                [1] or as some might say "I'm sorry, but thats simply not possible" to which I would counter, "No I'm not one of them." I assure you, I can state with absolute and total confidence and certainty that Women are most definitely my cup of tea... And Mmmmm, Mmmmmmm, Mmmmmmmmmmmm do I love that particular variety of the "spice-of-life."

                [2] : And no, I'm not afraid to express my true emotions either... If you don't already know, fear of expressing emotion is not something I would consider a "problem". If anyting it would be my tendency to express too much emotion thats the problem.[3]

                [3] : Yet another side effect of growing up with five(5) wonderful and lovely sisters such that I have been forever blessed in sharing my life with (trust me, this line stopped working about that same time I said it for the first time... or in other words.. it never worked. But it does tend to get them all feisty which can be fun sometimes.. so I continue to throw it in from time to time such that I can get some variety in my days that are lacking such quality.

                Posted by m.david at 05:21 AM | Comments (0) | TrackBack

                November 01, 2005

                "Two Words"? Hmmm... I Wonder Which Two?

                As recently found sent to my @xmlhacker.com account:

                From: I'll give you two guesses(Hint: !)

                Date: 10/31/2005 7:05 PM

                To: Who da ya think? Damn, what kind of stupid question is that? (It's late(for me anyway.) If not obvious, it's time for bed. ;)

                Subject: Two words, man
                ---

                Yahoo! Mail

                :)

                --
                100% Personal opinion

                Yo .? (BTW... I really wish I would have thought of using . before my first initial before .? did. That's not a signature. That's a statement damn it! ;)

                Anyway, yo .? If ya'd hook me up with a decent Yahoo! email client, I would...

                Got any connections?! :)

                Q: Do you have to end all your sentences with ! if you work at Yah -- oohhh.. I mean ?????!?

                Just wonderin' ;)

                So, anyway... Hookabruthaup yo!

                Posted by m.david at 10:46 PM | Comments (0) | TrackBack

                All Right, That's It... No More "Mr. Nice Fence Post Sitter"!

                � Performance analysis of OpenOffice and MS Office | George Ou | ZDNet.com

                In my last blog, where I did a high-level technical evaluation of Microsoft Office 2003 and OpenOffice.org 2.0, I showed that OpenOffice was a memory and resource hog. Contrary to popular belief (among Open Source advocates), Microsoft Office came out very lean and fast while OpenOffice.org Office Suite was just the opposite. Some couldn't accept the numbers and complained that the Task Manager numbers may be inaccurate and hiding memory usage. They demanded more proof, so here it is.

                I'm not even go to worry too much about performance although anybody who has used Office... I mean truly used Office, not just opened up Word, typed a few words, and then closed it just so you could honestly state "I've used Office, and I just don't like it..." knows that the above linked article is spot on in every way.

                But I'm going to set this aside and focus on something all together different than performance. Argue performance all you want. But its tough to argue whats not even comparable, so this is where I plan to push my focus for this post.

                In the paragraph just above the phrase "used office" absolutely must be viewed to mean MUCH more than the editing of a text document once and a while, or an Excel spreadsheet from time to time...

                Why?

                Well, there's a lot of reasons. But if all you have "used it for" is to bold some text, write and update your static, paper-based resume, and other activities of this sort... then you really have never "used" MS Office and should probably use MS Works or, if you'd like, OO.o, although please don't take that to mean I am comparing the two and suggesting they're the same in function, and instead price (that is of course if, like most Windows users, you got a copy for "free" when you purchased you're PC)

                So, for those still with me, the others reason's are plenty and they all come down to this slightly colored description of Microsoft's Office 2003 Application Suite...

                It flat-out Kicks-A$$.

                It's faster [BY A LOOOOOOONNNNNNNG SHOT!] than OO.o, more reliable, more user friendly, more collaboration friendly, more programmable (speaking from a Macro-level, COM/ActiveX/OLE(if we have to go that far back into the cross-application object/component-based acronym heap)-level, etc... etc... etc...)

                Oh, and yes, when I say more programmable I mean this even taking XForms support in OO.o into account. Don't get me wrong. XForms is cool. In fact I love XForms! Micah Dubinko (W3C XForms Spec Editor/XML Hacker extraordinaire) is someone in whom I consider both a good friend and colleague in whom I have a HUGE amount of respect for. In fact we have and will hopefully continue to work together on several fronts... some you may know about and some you many not. But's thats not what's important (at least not for this post anyway). Whats important is the understanding that XForms wasn't designed to be a full-featured replacement for WinForms... it was designed from an internet/browser-based cross-platform replacement for HTML Forms. So tweaking it, building an editor, and then trying to use it to take on Microsoft from a extensibility standpoint?

                Come-on...

                You're not even in the same ballpark, or even playing the same game. Trying to suggest "well, you can build cross-platform, web-enabled applications with it and you can't with Office" is the most sorry attempt at trying to belittle MS and MS Office I have ever heard.

                First off, building web-enabled applications is absolutely possible with MS Office. Will they work across every browser on every platform.

                No.

                But MS has never been focused on building Office as cross-platform mediocrity. Instead they've focused on being the absolute best available office application suite on the Windows and Macintosh platforms.

                Disagree? Sorry, you're wrong.

                There's NOTHING even close.

                While I will have to verify these numbers to be absolutely certain, Windows accounts for about 95% of the desktop market. Mac? About 3%. So you've got 98% of the desktop market covered, with the remaining 2% of the desktop population who wouldn't touch MS Office if you paid them...

                So why put the resources into people who won't use your product?

                Instead, this same 2% group of folks have been scraping by with KDE Office knock-offs, Star office freebee's, and now OpenOffice.org which, while definitely a good start, still lags behind MS Office by, many, many, MANY years.

                Don't buy it? Then don't listen to me. Jono Bacon has a great post from last month last month entitled "Opening the Potential of OpenOffice.org" and, while I may be mistaken, I'm pretty sure he never states "This is it!!! We've got the Golden Ticket" and instead "We've got problems to fix, let's fix them." This is of course a paraphrase and a short one at that. Maybe you feel the message he was sending out was different. If you haven't read it, then please do, and then come back and continue reading and tell me if flat-out, totally, and completely disagree.

                --
                All right, either you're back, or you haven't left... either way, I'll continue and then see where this leaves us. :)
                ---

                Being one who has truly used both products (MS Office and OO.o) A TON I can attest that whomever continues to claim that OO.o is an adequate replacement for MS Office is either a lier, doesn't know what they're talking about, has never and probably will never use a MS product long enough to truly state they know what they're talking about, or doesn't use enough of MS Office to justify the expense. My guess is that a majority (by a long shot...) of the OO.o supporters are of the last variety... They simply don't use or have a need for the extended features that MS Office offers them. For this group of folks... Go for it... If OO.o gives you what you want and need in an office software suite, then use it. I'm not suggesting OO.o is bad or completely unusable. For a lot of tasks, OO.o is fine. It gets the job done.

                But there's a BIG, HUGE, GIGANTIC, E-FUCKING-NORMOUS!!! difference between an office-type software suite that adequately supports a decent feature-set of office-type software related tasks, and having a fully-fledged Office-Suite of EXTREMELEY fast, EXTREMELY usable, EXTREMELY programmable/extensible, EXTREMELY collaborative-enabled applications that are well on their way to moving directly into the next realm of "software documents" where the documents themselves are the application... or better said, the documents describe the application using Meta-Data that states "this is the kind of data I am" and "this is the component I need to be able to perform this task." Don't have the component? You're software subscription mechanism of the not-to-distant future will take care of that. You only need that component once... you only pay the price to use it once. They're called compound documents and they've been under development for longer than most of us have even owned a desktop computer (no, not a laptop... a tried-and-true "heavier than a ton of bricks with a monitor twice that weight and half its size to go with it" desktop that we all took pride in being the first on the block to own.)

                You see, this is what concerns me about the OASIS Open Document Format. It's a great document format, don't get me wrong! It's open, it's well thought through, it covers the gamut when it comes to describing how a document should look, what it can contain, it allows for user meta-data and even describes how an application must handle that meta-data if it doesn't know what it means (preserve it! don't muck with it... whatever you do, if you don't understand it, don't just delete it or insert anything into it!!! LEAVE IT ALONE! < My own words of course, but that the general idea.) It has XForms as part of it, and even allows for scripting.... GREAT!!! So we've basically got HTML, CSS, XForms, and Javascript, that's XML-based and as such its an eXtensible Markup Language-based format nicely tucked into a well written specification by some really talented best-of-breed developers and spec writers.

                So whats the problem?

                If the current "DOM" way of thinking is just fine by your standards, then there isn't one. The OASIS Open Document specification heavily embraces the existing document model where thats all it is... just a document. While its extensible (a good thing) and could technically be "hacked" to handle things of this nature, using this specication there's no way for me(speaking figuratively), XYZ Software Company, to build productivity enhancing, collaborative-based software components that based on a common component-based communication protocol can "speak-up" to the Operating System handling the document-wide transactions taking place and sat "hey, I can do that... thats what I'm designed to do and what I've been licensed to handle."

                And the funny thing is is that this isn't "cutting-edge" stuff... It's COM. It's DCOM. It's been the focus of software engineering for decades. So why is this then not the focus for developing a truly open document specification?

                Well, it is. Just not by the same group of folks.

                If you're answer to this is "its two different ways of thinking... who's to say one is right over the other." Sure. Fine. If you're cool and happy with "heavy" systems that use scripting for automation, security, extensibility, etc... then there's nothing to argue.

                But I'm not OK with such a systems and I know a lot of other developers who have no desire what-so-ever to continue in this "application heavy, document-lite" way of thinking. We don't want definition to how "creative" we can be. We don't want bounds of "document expression" that we must be confine ourselves to. Speaking the same language is one thing. Understanding one another is a necessary component of the COM-based way of thinking.

                But COM is not DOM. Document Object Models are quite different than Component Object Models. Document Object Models don't mean "Object" as in component objects. Document Object Models suggest the document IS THE object. We traverse the Objectified-document looking for these pre-defined, pre-determined "style-elements" such that the systems can then apply these style characteristics to the users insterface, whatever that might be.


                Component Object Models don't focus on describing the document as far as style is concerned, and instead on the communication side of things (as outlined earlier.) COM (at least the spirit in which COM was developed) is an open ended model where the style definitions can be as far and as wide as they want to be. But if you develop a "style-definition" that's different in any way, then you have to make sure that you either develop the component(s) to handle this new style definition, or open things up and convince others to develop components to process your style language. SVG would be a perfect example of just such an endeavor.

                Now don't get me wrong. There are some pieces of the DOM way of thinking that are good, and should be carried on into a cross-breed of DOM and COM. This leads us right back to compound documents and is exactly where the focus needs to be.

                Don't build a fence and tell me not to leave its confines. I can build my own fence, I don't need you to build it for me.

                Now teaching me how to speak the native language such that I can communicate with my neighbors, become a part of a community, developing my own relationships based on my own personal likes, desires, needs, self expression, or other areas of my own choosing, possibly building a fence if I desire, or not if I don't...

                Now that's a world that I would like to live in... both physically and virtually.

                In fact, I do live in that world... and I have no plans to be leaving this world anytime soon.

                Paul Graham
                hit on something in "Hackers and Painters" and he hit on something big. In fact, I would almost go as far as suggesting that not even Mr. Graham knows just how significant of an impact he has already had, continues to have, and will continue to have for many, many years to come. But then again, I don't know Paul Graham nor can I speak to what it is that he truly understands or would even be willing to admit in regards to his own beliefs as to the impact both his books and his way of thinking have, continue, and will continue to have had on the generations of computer programmers to come.

                But I do know one thing... As Mr. Graham lays out in words better than I can even speak, software is art and art has no definition, has no bounds, and has no borders.

                But it is confined... but its confined by only one thing:

                Your imagination.

                I think I'll just leave it that. Enjoy! :)

                Posted by m.david at 05:31 AM | Comments (2) | TrackBack

          • © 2005 :: <XSLT:Blog/> (xsltblog.com) is a product of M. David Peterson and FunctionalX Consulting. See Licensing Info Below.
          • Except where otherwise noted, this sites content and source code is licensed under the Attribution License from Creative Commons.