Microsoft Wants a Piece of the Ajax Action
[NOTE: I wasn't going to say anything about this as I hadnt yet had a chance to play with it and wanted to before I suggested it only to find out it had issues... but there's already an Ajax.NET project that, at a quick first glance, looks pretty sweet! You can find the bits and docs here. At very least it should help speed up your Ajax app development now while you anticipate whats to come via MS directly in this space.]
[Entry]
Knowing that my ability to keep up with the tech world is presently limited to a few short peeks at my feed reader and regular email channels each day a good friend of mine shot this over to me knowing it was something I would be interested in learning about. It seems that ceramic and tile cleaner references aside(yeah, right.. ;), Ajax just found a sugar daddy to take its bitter, chalky-grit(I assume. I havent actually tasted it in case this happened to enter your mind as a possibility ;) flavor and add some sugar and spice and everything XMLHTTP nice to the ingredients list such that the bitter taste of watching the credit for a technology that you spearheaded and paid to have developed be given to a copy-cat implementation and a clever marketing campaign could at very least be swallowed down without hurling it right back up.
Wait... Did you hear that?! I think I just heard Steve Jobs mumble "Its about DAMN time!!! Hey wait... why didnt we copy them first??? Who's fault is this???!!! DAMN IT!!!! I've been waiting for over 20 years to be "called" into Bill's office to hear him say "What this.... this.... this AJAX I'm hearing all about????!!!!"[1]
Wait a sec... there's a missed moment of poetic irony/justice here... While still very much a member of the kitchen and bathroom family of cleaning products "WINDEX" or "We Invented Nothing... Don't Even Xare"[2] seems to fit every piece of the possible puzzle of the aforementioned poetic irony/justice.
Too bad I wasn't around when Jesse was brainstorming acronymic catch phrases, huh! ;)
Just goes to prove its not what or even who you know but where you were and how you reacted when "it" happened.[3]
---
via Mary Jo Foley's coverage...
Microsoft doesn't want to be left behind when it comes to the development code name du-jour. The result? Microsoft 'Atlas,' an Ajax-based programming framework, is born.
After downplaying the importance of the emerging Ajax programming model, Microsoft has decided to jump with booth feet into the Ajax fray.On Tuesday, Microsoft unveiled "Atlas," a Web client framework that is designed to support multiple DHTML controls with JavaScript code.ADVERTISEMENT
With Atlas, Microsoft is looking to simplify Ajax programming, Microsoft officials said.
Microsoft is seeking to "remedy the fact that you don't have to be a rocket scientist" to figure out how to develop for all facets of the Web, said Charles Fitzgerald, general manager of Microsoft's platform strategy group.
Atlas "will let you manage server-side interactions and support full-blown Web services," Fitzgerald said.
[1] I'm not sure how accurate my portrayal is but this was a reinactment -- but in reverse -- of the Bill Gates/Steve Jobs showdown in Steve's office (via "Pirates of Silicon Valley") after finding out that instead of using the machine they were given to write office software Bill just figured they'd build a version kinda/sorta/not-really-to-not-even-close copycat of the whole damn OS and call it "Windows" to then license it to Asian computer hardware manufacturers to build production machines.
[2] Sorry, thats the best I could come up with at 3am in the morning after 3 days worth of 21 hour work days/3 hours per night of sleep... maybe something better will come to mind after I fit a full nights rest into the picture? We'll see what happens :D
[3] "it" represents and can be replaced by any time defining/course changing event you so please.
Posted by m.david at 05:12 AM | Comments (5) | TrackBack
Is this the new Generation of O'Reilly Book Covers?
Schuyler Erle, Rich Gibson, Jo Walsh
While it took me nearly 4 SECONDS to think things through (I know, its amazing how things like this can practically paralize a person leaving them totally and completely helpless, as if "frozen" in time while the body and mind adapts to its new surroundings... What I could accomplish if I had those 4 seconds back... ')
Ummmm.. the point (if any) of the above paragraph of "blah...blah...blahbble"?
While definitely something you immediatelly notice when you see, for the first time, the cover of "Mapping Hacks", O'Reillys latest entry in the "Hacks" namespace, it doesnt take long at all to adjust and realize that, while I wouldn't expect this to replace the animals any time soon, this is REALLY COOL and worthy of an encore performance for the next Hacks entry in which use an objective representation for the cover as opposed to the typical animal cover we have all come to love and appreciate while at the same time attempt Yet Again to make any real direct connection beyond the next animal on the list (anyone have any insider knowledge they would like to share regarding animal selection for a typical O'Reilly animal title?)
Either way, I'M DIGGIN' THIS BOOK COVER! And the content is even BETTER and TOTALLY not what I thought it would be... definitely a must have for pretty much anyone as it covers the gamut from hackers to weekend warriors and everywhere in between (until now I didnt realize just how much fits into the Mapping namespace... truly impressive in regards to the extent of knowledge and research that has gone into this title.)
Enjoy!
Posted by m.david at 08:01 AM | Comments (2) | TrackBack
Techworld.com - Oracle pitches database future on XML
Oracle will support advanced XML features in the imminent release of its 10g database, including the emerging W3C standard XQuery for accessing unstructured XML data, the company has announced.
Actually, the only reason I am posting this (if anybody suspected there was a chance Oracle would not support XQuery theres a really good chance you're an idiot... actually, the author of this article might be a prime candidate for such a distinction. Reason to follow...)
As I began to read through this article to decide if it was even worth a post (again, I think we all either thought they already had announced it or if they hadn't assumed the obvious and simply didn't care enough to watch this space for any announcements, for or against) I began to recognize we had a real genius on our hands and decided it was worth the post if not for the laugh, the possibility that maybe it would help bring recognition to those in charge at Techworld.com to get this guy as far away from a keyboard as possible before he does any permanent damage. Two possibilities... actually three:
1) He's the relative of somebody high up and got the job as a favor to his poor mother who has had to deal with him his whole life
2) He's drunk
3) Both
Let's run with #3 as it seems the most likely. The first item up for "I'm an idiot" bid:
About 80 to 85 percent of corporate data is unstructured, in the form of word processing documents, PDF files and content management systems, according to industry observers. XML is designed to handle such data by arranging it into hierarchies, rather than distorting it into the tables used by relational databases.
First problem: Since when have word processing documents and PDF files had anything in common with content management systems (other than the possibility they might be stored in one at some point)? Is he suggesting that a CMS is an actual document format? And what decides what is and what isnt a CMS? Could be anything from your kid sister that you pay to index your comic books and baseball cards to a multi-million dollar data warehouse and everywhere in between.
Even if the benefit of the doubt is given and we assume he is suggesting "stored within a CMS" even this doesn't make a whole lot of sense as, again, what type of CMS are you refering to and, still, what do any possible answers to this question have to do with a specific document format like PDF? Personally, when I hear the phrase "Corporate Data" I don't think documents at all and instead data bases like Oracle and SQL Server. And if its in either of these (or any of the others) then its stored in a relational format for a reason! Of course that reason is not a "place to put it while we find something better to work with as a document format that makes sense." and instead "a time proven kick a$$ solution for secured programmable storage of and secured programmable access to the raw data that keeps your company tickin' day in and day out."
There's so much disconnection in the above quoted statement you simply can't lump the referenced data all together into "Corporate Documents" and yet this is where the argument seems to point to as the source of the problem... the inability to take a document like a Word .doc or Adobe PDF and easily serialize these into a relational format found in a relational database for the above defined storage and access. Usually, any "data" found in a corporate document came from the database in the first place, not from the Word document itself. And yet even if storage of these documents that have been serialized to a relational format within a database was the problem the answer to this problem is "why would you want to do that? Just store it as whatever binary format implementation the database you use extends and get on with it. Want to search through it? Do a full text search via your database API or through and indexing extension. Problem solved. Wait, what was the problem again?"
Point: If you are using a database which doesnt allow you the ability to store file system objects like Word and PDF files in their original, untouched format, instead forcing a conversion to a relational table data format you might want to consider an upgrade at some point in the near-to-immediatte-to-you're-probably-already-too-late-cuz-you're-likely-bankrupt-by-now-anyway future. Just a thought.
Question: Which industry insider gave him this information in the first place????!!! Probably somebody who got a good laugh out of knowing he would print it as is, no questions... I'd have done the same thing probably if for no other reason than to bring a bit of entertainment into the space where frustration is a more common occupant.
Ok, moving forward:
In the past, approaches based on DOM (Document Object Model) or XSLT (eXtensible Stylesheet Language Transformations) have been used to query XML databases;
XML databases? Which ones? As Far As I Know there are no XML databases that use DOM or XSLT as a native query language. XPath maybe, but DOM and XSLT? Maybe I'm wrong and some genius decided that the Document Object Model was far superior to something like XPath which was designed specifically for the purpose of querying an XML infoset for a specific set of nodes based on a given criteria expressed in the given XPath statement to then return these nodes for further processing. But now you would have to serialize the results of your DOM "query" to XML which is really no big deal with most DOM implementations but using the DOM API as a query language was never, as far as I know, a design criteria... that's what XPath (in regards to XML that is) was designed for when all these technologies we now take for granted were in there early development and implementation stages.
But regardless of how it gets to us and in its XML format what to do now with the returned set of nodes? XSLT would be a good candidate to now transform the contained information into something usable... but at this stage we are no longer in the database and instead outside the database which is where the returned nodeset was sent as part of the XPath-based query transaction... Besides XSLT doesn't have its own query language. It uses XPath just like what (I assume) most if not all XML databases of old used as the primary query language to access the contained datasets. But I can't say that I have experience with each and every XML database of old and as such I have to leave room for the possibility that somebody, somewhere, implemented an XML database that chose DOM and XSLT[1] over XPath...
Dear God I hope not.
XQuery needs a fraction of the code of such approaches, and can address more types of data, among other advantages, according to Oracle.
Hey, theres a safe bet... if you are using DOM or XSLT as the primary query language for your XML database I'd bet you'd find that a lot less lines of code would be necessary to perform that same query using XQuery. More types of data? Sure! But it might be more accurate to state "any data whatsoever, regardless of its type!"[2]
You might also find that hitting the nail with a hammer instead of your forehead might better your chances of accomplishing the task of driving the nail into place with the added benefit of not adding any points to your idiot factor. Unfortunately I think my advice might be a little too late... At least I tried. If nothing else I can always find comfort in knowing I did my best with the situation I was placed in front of.
"NO!!!!! USE A HAMM... ohhhhh... hmmm. well, nevermind... How's your head feeling? Ya think that mark will be permanent?"
More than likely as I doubt it was from this instance that the mark... make that divot... first came into existence.
Ok, so maybe I am being picky about the difference between an XML database and an XML infoset. But I don't think so. If you are having troubles understanding the difference (and don't consider yourself somewhat knowledgable in the area of XML... those who do not are not a part of the group I am speaking to here so don't feel bad if you are reading this and claim no knowledge of what XML is much less an XML database or infoset...) you may want to think about starting over at the beginning. Hey, good luck with <-- that course... it seems you might need it. ;)
Peace, Love, "Quit smokin' that Dope!" :)
[1] Technically impossible given XPath is a required piece of the XSLT domain.
[2] Actually, in the case of DOM thats not true, but while DOM is something you will find in places where documents based on markup tags like HTML and XML (and as such can be serialized to the DOM format) exist (like a browser) its not exactly the kind of interface one would present as a typical user query language and rather an API-styled interface into the contents of a document for purposes other than a simple query... e.g. to change the value of an element or attribute or add dynamic content such that it renders without need for a refresh, etc...]
Posted by m.david at 04:41 AM | Comments (0) | TrackBack
[1]How "again"? Remember "Image Composer"? While more of a sprite layout and presentation engine it still had some pretty cool features. What ever happend to that project? It just kind of disappeared round about the same time "Liquid... ohhh, what was the name of that Java-based Flash competitor that MS bought with all the promise in the world and yet I dont even think it made a 1.0 release officially. Definitely one of those "what the heck happened here" question mark projects that seemed to just disappear overnight. Liquid... DANG!!! Thats going to bug me until I think of it. Anybody wanna help me out here?]
Liquid Motion!!!
That was the name of the so called "Flash Killer" MS bought back in the day that suddenly and mysteriously disappeared from the scene along with Image Composer quite literally overnight....
Maybe someone special from Macromedia started dating someone special from MS and -- "poof" -- like MicroFlashMagic the two groups were purposely-on-accident sent over to building 123 (I think thats where the Tradeshow Resource Group used to be/still is?) and put under the management of my old RoadWarrior buddys, The Tradeshow Resource Group[1] and renamed "The Liquid Motionless Graphics Development Team" as part of one of the bi-annual reorgs that seemed to happen even more often than that back in the day...
Maybe now we know why!
I'm sure stranger things have happened ;) [yes, in case there are those who don't already know... this is a joke. Don't go of touting on your blog that MS really is/was evil and point at this post for further evidence. Thank you. :D]
[NOTE: I feel so much better now as I can just do a search on my blog now next time I forget.. One of many uses of blogs those of you who are "without blog" at the moment will undoubtedly discover when you find yourself suddenly with. (kind of like girlfriends (or boyfriends as the case may be for you) blogs happen when you least expect them. don't say I didnt warn you...) :)]
[1] The ones who were ALWAYS the first to arrive and last to leave every damn tradeshow, convention, and side-show carnival act the Visual C++/Visual Studio or WindowsCE team was a part of and therefore I attended to either speak or present at (yes, theres a difference) or furthermore man the booth if it happened to be a TS/Convention combo (ooohhh.. my favorite 8-[) If you ever wonder why it is I rarely attend trade shows and conventions... maybe my 3 year [96-99] total combination between Delta and United of well over 500,000 frequent flyer miles might help in understanding that I have had more than my fill of Orlando and the Orange County Convention Center, SanFran and the Moscone Center, Las Vegas and the ... , Narwlins' (New Orleans for those wondering) TaiPei, Tokyo, San Diego, San Jose, Chicago, LA/Long Beach, New York, London, Nice, Munich, and every convention hotspot that is left, right, up and down from each of these to fill several lifetimes.
Posted by m.david at 09:32 PM | Comments (0) | TrackBack
Longhorn Developer Center Home: Simple List Extensions Specification
OverviewThe Simple List Extensions are designed as extensions to existing feed formats to make exposing ordered lists of items easier and more accessible to users.
The term “list,” as used in this document describes an ordered collection of items with similar properties. For example, a photo album may be described as a “list of photos.”
There is so much fantastic content that I have missed out on over the past few days its nearly mind boggling. A recent post to XML-Dev from Danny Ayers is a perfect example.
Yesterday Microsoft announced an extension [1] for RSS 2.0 that gives support for the list data structure, something else that RSS/RDF has been capable of for 5 years.Looks like a pattern's emerging...
While I am personally going to avoid the political motivation I would like to bring out one *VERY* important point:
Its all about lists.
A quick and interesting factoid that seems to go unnoticed and yet is something I consider to be one of the most important aspects that helps clarify the future direction, or at very least showcases the original mentality of the designers of the Common Language Infrastructure (.NET) platform:
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
Ya' think thats an accident?
If so, you might want to think again...
Posted by m.david at 12:20 PM | Comments (0) | TrackBack
The conversation continues about the boundary between traditional presentation languages such as XSLT and XML toolkits in traditional application languages such as Python. See earlier installments "Sane template-like output for Amara" and "Why allow template-like output for Amara?". M. David Peterson, the mind behind XSLT blog responded to the latter post, and his response deserves a post of its own:
While I am still trying to get caught up on things I am just now reading this post from Uche in which he follows-up a comment I posted in regards to a post he made regarding when to implement an XSLT-based solution and when its best to implement the solution in a much more general purpose language like Python or even further by the XML processing library for Python, the Amara toolkit.
I've left some comments on this last post so I won't worry about repeating them here. It may take some time for Uche to approve them but most of you won't read this until tomorrow anyway so I think I should be safe :)
Thanks again for the nod in my general direction Uche! Coming from you that really means a lot :)
Posted by m.david at 08:57 AM | Comments (0) | TrackBack
Understanding XML: SVG Notes, Nodes and Nods
Keynote Speaker at SVG Open 2005I also have received a first for me - I will be a keynote speaker at the SVG Open 2005 Conference in Enshede, the Netherlands. My talk, to be finalized, will likely center on the future of SVG and XML GUI languages in general. I've been a general speaker at the last two conferences, and would heartily recommend it to anyone interested in SVG and the future of this technology.
While this comes as no surprise it's still neat to see a good friend and partner in hacking crimes (can I say that and have people know that I don't really mean crimes in the sense of criminal acts and instead just a fun way to say we've worked together on various projects? I hope so cuz' its kind of a fun way to say it...) get a nod in his direction as one of the premier experts in a field that is finally beginning to get the notice it deserves.
Cheers Kurt :)
Posted by m.david at 11:22 AM | Comments (0) | TrackBack
SourceForge.net: Project Info - google-xjaxslt
AJAXSLT is an implementation of XSL-T in JavaScript, intended for use in fat web pages, which are nowadays referred to as AJAX applications. Because XSL-T uses XPath, it is also an implementation of XPath that can be used independently of XSL-T.
Um. SWEET!!!!
Just one thing though...
Did you really 'just have' to find a way to throw AJAX into the name? By doing so guess what happens when functional programming languages like Haskell and Lisp/Scheme become just as common and available in the browser as Javascript, XMLHTTP, an XML parser, XPath(some), and a DOM implementation are today?
While you ponder this...
Quite frankly I fear the day that Jesse James Garrett suddenly awakens to realize there's an un-siezed acronymic opportunity in the continued drive towards a Lisp-like functional programming paradigm to dig even further into our computing past to exploit the good, untarnished, time-tested, 'never met any type they didn't like' languages like Scheme(a Lisp dialect for those in the (un)know), Haskell, and (of course) (Common) Lisp combined with an objectified schema and XML syntax or, more likely than syntax, data source to be processed via the above language mechanisms.
Haved you pondered enough to imagine the result?
Just in case let me give you a 'hint' with this potential brain-twister in the making:
ASynchronous Scheme, Haskell, and Objectified Lisp Extensible Markup Language
While AJAX is not my favorite acronym on this planet I somehow find myself in 10 years longing for the "good ol' 'AJAX' acronym days" when we were free from finding ourselves referencing 'ASSHOLEML' in a near Diety-like golden calf kind of way... Actually, kind of in the same way 'AJAX' seems to be regarded among some circles... ;)
Lets hope and pray that day never comes (or is it already here from an AJAX standpoint? Hmmmmm, we may be closer to fulfilling Old-Testament Bible prophecies than we realize. But that would only be something to worry about if we were living in Old-Testaments times I guess. Nevermind, worship your golden AJAX statues all you want... I think we all die via some sort of BIG-GIGANTIC fire or something (for reasons I never really quite understood actually (e.g. the Old-Testamenters were worshiping Golden Calfs but it never really says what we would be doing wrong and as such justified to fry for our wrong doings... Then again I've never really been much of a Bible scholar so who knows, maybe it does and I simply don't care enough to look it up... Uh oh, that would be a good reason to burn right there. Yikes!!! Wheres my Bible!!!! I aintz' readyz' to burnz' awayz' just yetz':)
While I try to talk God out of 'Yet Another Reason To Just Put Me Out Of Your Misery' please enjoy this rendition of... Oh wait, I think I'm good....
Huh, wierd... Thought for sure that one was 'the one' that would do me in... Guess not... Sweet!
So in the mean time I hope to play with this new little toy/gift ASAP as this has the potential to really change the landscape fairly quickly and quite dramatically, especially given the popularity of the AJAX approach to client-side browser-based application development. If this was a project from an average joe such as myself who put this together and posted it on SF I would be leary to put too much emphasis on the potential impact. But this is Google... I think it would be safe to put some trust into the idea that Google will be around for a while and willing to continue with its development and ongoing support (even from a community support standpoint at least the company who sponsored its development has a pretty good chance of being in business this time next year and probably even a year or two after that ;))
Unlike an average joe app this 'IS' something that should be considered 'EXTREMELY' monumental from a browser client application development standpoint as it has given the development world an 0.1 release of an XSLT 1.0 processor that will run on any browser that offers Javascript support (I didn't see a version right away... anyone know which version this is based/relies on?) and has such support enabled. All 'yeah but Safari/KHTML doesn't offer XSLT via script and Opera at all' are no longer valid concerns. Well, I guess that statement should be backed away from for a bit until such time that more is learned in regards to what future element/attribute/function holes will be filled.
In regards to this please note that at first glance through the code I've noticed that XPath is missing namespace support. Apparently, however, thats the only thing keeping it from being considered XPath 1.0 compliant -- although its a fairly significant piece and quite limiting as far as implementing an existing library/base of stylesheets and even more so an issue when it comes to using namespaces within the data-centric XML files. No doubt that without namespace support all elements will become part of the 'pseudo' default namespace and as such there will be no way to clearly distinguish similar XML infosets from one another.
A perfect example that is something in heavy use of namespace capability is XML data feed formats such as Atom and RSS. So using the same stylesheet to process both might prove to be a bit difficult although at this stage of the game I am unsure just how much 'crossover' element usage becomes an issue in regards to how each would be output to the browser and as such require seperate templates to match against during processing. However, labeled as a 0.1 release it would seem there is plenty of room to find support for namespaces sometime in the near future. Lets hope they do!
In regards to whats missing in XSLT? Well, that list is a significant level of magnitude higher and a little bit strange (although in thinking a bit deeper I can understand why things have panned out this way in regards to which instruction elements to provide support for first and which ones could wait) in regards to offering support for certain elements but not others.
Directly from the source code, the following snippets suggest in one form or another there is no current support:
case 'decimal-format':
alert('not implemented: ' + nodename[1]);
break;
case 'fallback':
alert('not implemented: ' + nodename[1]);
break;
<!-- MDP:Comment - Why this would not be implemented in an 0.1
release seems a bit strange as this would at least allow the
ability to write solutions that could implement a temporary fix
while support for the current list of non-supported instruction
elements move forward in development. The key point in this
argument is doing so would have allowed quick and dirty solutions
to be implemented (even if it only contained comments that would
inform others using these stylesheets that 'the current state of
AJAXSLT version 0.x does not support the xyz instruction element
as of yet. As a work around comment out any 'xyzpdq' elements
within your XML infosets such as to avoid an errors being thrown
and the transformation interrupted prematurely' or something like
this.
None-the-less its tough to complain when you are handed even a
partially implemented client-side XSLT solution in which enables
all current javascript-enabled browsers the ability to gain at
least some of this functionality. Thanks Google! -->
case 'import':
alert('not implemented: ' + nodename[1]);
break;
case 'include':
alert('not implemented: ' + nodename[1]);
break;
case 'key':
alert('not implemented: ' + nodename[1]);
break;
case 'message':
alert('not implemented: ' + nodename[1]);
break;
<!-- This one could very easily have been implemented if not to
simply have added a 'stdoutLog[]' array in which would contain
each message output during the transformation to then iterate
through and print to the screen upon completion of the
transformation. Obviously this would be quite easy to do and as
such if this is not something they plan to implement I will
quickly write it and make it available on this blog. -->
case 'namespace-alias':
alert('not implemented: ' + nodename[1]);
break;
case 'number':
alert('not implemented: ' + nodename[1]);
break;
case 'otherwise':
alert('error if here: ' + nodename[1]);
break;
<!-- not even sure what is meant by 'error if here:' maybe it
will make more sense if I were to purposely invoke the associated
alert? I'll try and test this in the next few days and if it
makes more sense afterwards I will let you know -->
case 'output':
// Ignored. -- Since we operate on the DOM, and all further use
// of the output of the XSL transformation is determined by the
// browser that we run in, this parameter is not applicable to
// this implementation.
break;
case 'preserve-space':
alert('not implemented: ' + nodename[1]);
break;
case 'processing-instruction':
alert('not implemented: ' + nodename[1]);
break;
case 'sort':
alert('error if here: ' + nodename[1]);
break;
case 'strip-space':
alert('not implemented: ' + nodename[1]);
break;
case 'when':
alert('error if here: ' + nodename[1]);
break;
case 'with-param':
alert('error if here: ' + nodename[1]);
break;
<!-- while 'param' is not completely dependent upon 'with-param'
the converse is not true ('with-param' must match up to a 'param'
element within the matching template using a comparison of 'name'
attributes to test for equality. If none is found a 'param' element
with the name(s) and value(s) of the 'with-param'(s) will not be
created and therefore available to the template in current process.)
When found within a stylesheet the only "usual" exception to
a 'param' being non-dependent on a 'with-param' of the same name
passed via the apply-templates or call-template instruction elements
is when a parameter is passed to the transformation as part of the
processors creation and implementation. The 'param' elements
contained before the first following-sibling 'template' element are
considered global and can either be set via the above mechanism or
can have a default value set within the 'select' attribute, in
single quotes when refering to a sequence of characters as opposed
to an element contained as part of an XPath statement. While
technically this can be set by setting the value of the actual
element to any string value (e.g. <xsl:param name="foo">bar</xsl:param>)
it is not a method that is recommended, especially by the likes of
the 'Big-5' in David Carlisle, Dave Pawson, Michael Kay, Wendell
Piez, and/or Jeni Tennison. [1] The short answer as to the reason
has to do with the creation of a text() node when set as
the 'param's string value as opposed to the 'select' attributes value
set between single quotes which will simply create a string value
that can be accessed. A further explanation as tp why this is an
important distinction can be found on Dave Pawson's XSL FAQ found at
http://dpawson.co.uk/xsl/index.html
[1][Actually, I really should begin to call this the big 6 as when I
first started refering to this group as the big-5 Dimitre was
extremely busy with starting his career at Microsoft and as such
disappeared from the scene for a little while only to emerge in a
very big way again over the last 8 months. (NOTE: I could even up
this to 7 with Colin Paul Adams making a definite mark as one of the
top community experts with the creation of his XSLT 2.0 processor
project.)]
-->
Posted by m.david at 12:23 AM | Comments (0) | TrackBack
[UPDATE: With as many references to XML-related technologies, specifically XSLT 2.0, as well as the overabundance of references to the .NET platform and the Saxon (and Saxon.NET) processor how did Google determine that the best ads to sit side by side with this post should be related to World War II? Might wanna' check that "amazingly advanced" ad matching technology you've been toutin' there Google... think you might have a glitch or two to deal with, but maybe its just me ;)]
The best approach to interoperability is to focus on getting widespread, conformant implementation of the XSLT 2.0 specification.
Atsushi Eno doesn't blog often but when he does I tend to drop whatever it is I am doing and devour every word, putting it to memory and committing to a local Subversion repository of important posts just in case something horrible were to happen to the original and a 404 was found upon my next visit. Two reasons for this:
Its amazing how much you can learn from reading someone's source code. Of course if they don't have half a clue with what they're doing what you learn is that they don't have half a clue and their code sucks. This is MOST DEFINITELY NOT the case when Atsushi Eno has been anywhere near the source you are currently reading from.
But this is of course beside the point. What nearly had me dropping straight to my knees in praise and gratitude for whatever the Allmighty did to bring the above statement into this document was quickly thwarted by the follow-up sentence:
I just quoted from Microsoft's statement on XML Schema. Mhm, am so dazzled that I might have mistyped.
If you access the document and implement a search for XSLT you will quickly realize that the letter sequence 'x', 's', 'l', and 't' is never found together as one word, a word of acronymic descent but a word none the less (depending on dictionary used and context of course but isn't that true of every word?) By running a quick visual scan of the document you will then find the following header and bolded statement following it:
Conclusion / Recommendations
The best approach to interoperability is to focus on getting widespread, conformant implementation of the XSD 1.0 specification
Even given the faked attempt to suggest that Microsoft had all but announced support for the XSLT 2.0 specification one has to recognize the fact that Atsushi seemed to choose the variation that he felt was more in line with making the entire statement plausible if such a statement and implementation were to take place. However, thats infering quite a bit into a few short words so please don't take this as anything more than my personal interpretation. I'd bet if you were to ask him[contact info in right column] to expound his thoughts he may just do that, but then again maybe he's said all he is going to say.... for now ;)
Either way I plan to pay twice as much attention to what takes place in Atsushi's development activitees as it seems this tends to be the best way to get a feel for what is priority and what is not (pretty basic logical deduction there, huh? :)
So to beat this post to death, lest ask the question:
Does Atsushi know something we don't?
The recent XSLT related activity on the XML WebData blog, posted by Nithya, the new PM for (among other things) the future of XSLT support at MS (whatever that may be) definitely suggests they have listened and learned from what I personally believe is now considered a significant mistake in which they have open the doors back up and stated (not-quite literally, but close):
[Paraphrase("http://blogs.msdn.com/xmlteam/archive/2005/06/07/426511.aspx")]
What do you want for XSLT support in the Orcas delivery time frame and should this include XSLT 2.0? If you want it (as a community) and it seems within reason this is what we plan to do.
The links contained in this post are links I personally plan to pay some very specific study time to as well as continual monitoring of any changes that take place and what these changes are. Without a doubt if something seems significant I will report it to this blog. But it never hurts to have more than one set of sensors keeping tabs on the System.Xml namespace and furthermore the System.Xml.Xsl for both the Mono project as well as Microsoft's own implementations of the Common Language Infrastructure standard.
Now, one might ask "If MS were to implement XSLT 2.0 support where does that leave Saxon.NET"
Good question. First off Saxon and as such Saxon.NET is more than XSLT 2.0 as XQuery is also fully supported as is XPath 2.0 (of which would be a mandatory development project to be able to then implement XSLT 2.0). But lets take all the standards support out of the equation and look further as just how much Saxon (8.x series) offers via extension functions, optimizations, extended language functionality, etc... And this doesnt cover the area of Saxon SA which if you were to look at all that is offered for rquired licensing fee of $500 U.S. dollars you will quickly realize just how much of a genius Dr. Kay [in many ways, but the focus in this example is Saxon] is when it comes to the development of ALL the necessary functionality that enables the ability to do so much more than any of os ever dreamed would even be possible. If you haven't already, go purchase a license for a copy of SaxonSA and find out what I am refering to... Too much to list here but you can find an overview list and further details in the Q&A section on the main Saxonica web presence at Saxonica.com.
Now, I am not suggesting that Saxon.NET also comes in an SA version. But it is my understanding that there is an extreme amount of interest in Saxon.NET SA and as such my guess would be you will eventually find this as an option for a growing list of available products, licensed directly from Saxonica. But please take my own opinions with a grain of salt and contact Dr. Kay through the Saxonica web site if you feel this is something you would like to have in your .NET toolbox at some point in the future.
So to summarize that blob of text hangin over the top of this sentence... Q: If MS implements XSLT 2.0 support in Orcas does Saxon.NET still have a place in the .NET developers toolbox?
"A MOST RESOUNDING YES!!!" would be my response to such a question and as such you are going to continue to see an active stream of releases coming from the Saxon.NET namespace.
How can I be so sure?
Well, since I am the only active developer on the project I can pretty much announce whatever it is I feel I will continue forward with from a personal standpoint and this is something I definitely plan to continue forward with just as much, if not more so, if this recent MS XSLT 2.0 window of possibility is to come to fruition. If you think about it, with the possibility of native XSLT 2.0 support as a real possibility in MS's future then between now and then the importance of continued integration into the .NET FCL such that the transition from one to the other is, quite literally, seemless is probably the most important contribution I can make to the .NET XSLT community and I have ever desire, plan, and intention to do just that. Add to this the potential of the features of Saxon.NET SA if it were to come into fruition and you have yourself a pretty kick a$$ combination of capabilities that by that point should simply interact with the System.Xml namespaces and related types as if they came from the exact same internal source tree -- seemless and perfect. :D
Seems like a pretty good reason, huh?
Enjoy your day!
[*Orcas is to Visual Studio.NET what Chicago was to Windows 95... Project code name. Orcas is the Longhorn-enabled delivery of Visual Studio.NET which is slated as the next major release to follow Whidbey, the current project code name for Visual Studio.NET 2005]
Posted by m.david at 05:03 AM | Comments (0) | TrackBack
I realize I'm almost two weeks late on commenting what has probably been commented to death. But my heads been down and I'm only now getting around to reading some of the comments regarding Dave Winer's popularity contest.
Well, even though the vast majority of people have never heard of Steve or myself, we're more influential than John Lennon or Bob Dylan ever were.
Without suggesting that Dave's feelings towards his influence are on or off base I can say that in 20 years the chances are quite good that I will still be listening to and at times entranced by the lyrics and sounds of John Lennon and the Beatles as well as Bob Dylan, U2 and other timeless influential musicians such as Fleetwood Mac, Led Zeppelin, Pearl Jam, and others. On the other hand I have my doubts that I will be reading and re-reading Dave Winer's archives or purchasing a narrated version as a more convenient medium to play over and over again, finding both entertainment and inspiration while I hack at yet some more code for some new idea I am positive is the coolest ever...
Now, this is just me speaking... someone who finds things like XML, XSLT, and other timeless functional programming languages like Lisp to be as close as we humans can get to the language of the God's. But if I were asked in 20 years who I thought the most influential person in technology has been over the last 30 years my first response would be Tim Berners-Lee, my second Tim Bray coupled with Jean Paoli and C. M. Sperberg-McQueen, Eve Maler would then be followed by François Yergeau coming into the XML specification in the second and third iterations respectively.
However, this leaves out four obvious candidates for the top spot in Bill Gates, Steve Ballmer, Steve Jobs, and Steve Wozniak from a business development and leadership standpoint (Wozniak of course being more of a hacker than the others) and from the flip-side of the technology coin you've got Gordon Moore from the hardware side of things, Donald Knuth from a pure fundamendtal computer science algorithmic standpoint, Adam Bosworth from an applications standpoint, James Gosling and Anders Hejlsberg from a language standpoint, Charles Simonyi from an OS/Platform and Language architectural standpoint, Linus Torvalds (another candidate for the top position) from a computer revolutionary and OS development standpoint, and Sam Ruby and each and every one of the originating members of the Apache Foundation from an Internet HTTP and Applications Server standpoint.
Now if we think about the ongoing design and architecture of the World Wide Web we've got to think about Norm Walsh and when it comes to turning the minds of a generation of developers back to the fundamentals of functional programming methodologies James Clark and Michael Kay have got to be given a top spot in driving the old (and correct!) way of programming into a new way of thinking about the future of software application development.
To be honest this is only the beginning. There are at least 75-100 others who have had just as much influence as a lot of those mentioned above but it seems silly to keep at it as I think the point I am trying to make was made about 3 paragraphs ago...
This is not to say that Dave Winer has not been influential or that he doesnt deserve a great deal of credit for bringing the concepts and technologies surrounding blogging into the mainstream. But there are others who could and should be given a great deal of credit for this medium and yet probably never will because they simply don't care all that much too say anything.
None-the-less, Dave has done a great deal of work and I for one am thankful for this just as I am thankful to the rest of the above mentioned and non-mentioned[1]* individuals for all that they have done to help bring us to where we are today.
Even still, with as much as you all have done I don't mean any dis-respect when I say I still think I'm going to be jamming out to John Lennon and Bob Dylan as opposed to any of your blog entries round about the same time you all are justifiably retiring from a long and glorious career of changing the face of an entire global community where billions and billions and billions of lives will be touched in ways we probably will never fully understand.
Thank you everybody! I know I'm having fun building and playing and learning in this wonderful world of computing you all have developed. That means you too Dave :)
Cheers to you all!
[*NOTE: I should point out that I realize that there is the entire founding forefathers and mothers of computer science that I didnt even touch. I purposely focused on 30 years back from 20 years from now as to only focus on those that have been a part of the the development of our interconnected world of Graphically-based power-houses that sit on our desktop and in our briefcases such that the comparison to the 21st century of computing would still be valid strictly from a "still at it" standpoint.]
Posted by m.david at 10:32 AM | Comments (0) | TrackBack
Maybe its just me being a little over sensitive but apparently Google has decided its tired of carrying the load for all my XSLT-related questions and in its own subtle way is suggesting "Hey, if your'e such an XSLT expert, why don't you tell me?".
When querying for a way to perform an XSLT transformation in Safari/KHTML I decided that the phrase: 'invoke xslt transformation in safari khtml' should get me what I was looking for.
Well would you look at that:
<XSLT:Blog />: January 2005 Archives
It makes use of the Saxon 8 XQuery/XSLT engine for transformations, ... Supported:
Gecko (Mozilla, Firefox etc), IE, KHTML (Konqueror, Safari). ...
www.xsltblog.com/archives/2005/01/ - 299k -
Hmmm... well that kind of sucks.
Actually...
Hey W3C! You might want to be careful. While you might own the number one spot for the query 'XSLT' I now own 'invoke xslt transformation in safari khtml'.
If not quite yet obvious to you its obvious to me its only a matter of time before I own 'xslt transformation in safari'.
And if I own 'xslt transformation in safari' whats gonna stop me from owning 'xslt in safari'? Huh? HUH???!!!
Thats right, you better be scared. [Question to Inner Self: How Smart is it really to taunt the W3C?]
Hmmmm... Hey W3C.. I was just playing.. it was just a joke, you know, all in fun? [Thought in Inner Mind: Don't think they're buying it. Maybe you could distract them by going after Google instead! Then they'll just forget the whole thing as they will be too preoccupied watching you and Google going toe to toe..]
[Response to Thought in Inner Mind: Hey, good idea!]
[SlyBaitSwitch("Google")]
Now I just need to figure out a hack to make it work as the post that Google was 'POSITIVE' had the best possible answer for 'invoke xslt transformation in safari khtml' was a post that was actually a question in an of itself, wondering if the way Manos had written the intro for the Sarissa project meant that there was full XSLT support for both Safari and KHTML already.[NOTE: Actually, they linked to the monthly archive... the actual post in and by itself is here.]
Hey Google.
How ya like them apples, huh? HUH?? Outsmarted your Smart A$$ engine.
That's right. You better run!
No wait, wait, I meant you better run the '> other way >'....
Ahh, shit... He's looks pissed!
RUN!!!!!!!!!!!!!!!!!!!!!!!!!!!!![Follow-Up ("winded")Response to Thought in Inner Mind: Great Idea There Champ! What next, Oracle? Or how bout just go straight to Microsoft Campus and egg BillG's 959??? That ought to be a fun one... Damn My Creative Side! Damn it! Damn it! Damn it!]
Posted by m.david at 08:29 PM | Comments (0) | TrackBack
SQL Server Developer Center: Introduction to XQuery in SQL Server 2005
Summary: This white paper provides an introduction to various features of XQuery implemented in SQL Server 2005 such as the FLWOR statement, operators in XQuery, if-then-else construct, XML constructors, built-in XQuery functions, type casting operators, and examples of how to use each of these features. Non-supported features of XQuery in SQL Server 2005 and workarounds are described in this article. It also presents three scenarios where XQuery is useful. (30 printed pages)
While I haven't had the chance to read through this I most definitely plan to. I have several comments...
...to make regarding SQL Server 2005 and SQL Server Express, the free SQL Server client that allows a feature subset and a few restrictions/limitations (e.g. You are unable to use SSE as an actual server-side implementation(or, in other words you can't have clients connect to you, acting as a master synchronization point. You must connect to a SQL Server 2005 server-side installation and use this to synchronize against), theres a 4GB size limitation, and a few others... you can view a summary of the restrictions here.)
But what you can do is pretty astounding, one of which is use XQuery to query XML documents stored within SQL Server Express.
Over the last two weeks I have been doing an extensive amount of work with SS2005 and SSE and to be quite honest I think we are about to see a fairly major paradigm shift in the way we think about application development and deployment as it pertains to data-instensive applications, especially those in which make heavy use of XML.
Why use SQL Server to store your XML documents when you can store them on the file system. While I will admit that when XML really first started to hit the dev scene in a big way (2000/1 time frame) (and even coming from an ASP/SQL Server dev background) I did wonder how the database companies such as Oracle and Microsoft et. Al. would respond. Not from a corporate Fortune 1000 (or probably better said, 5000) standpoint but for the common every day developer who didn't work for a company in whom relied on high-end SQL database engines to process their 100's of 1000's to many millions of transactions each and every day. In cases like this I saw a HUGE potential for loss of revenue due to this group of developers simply taking advantage of a finely tuned file system to access a well designed XML infoset.
As the last five years have progressed and especially over the last 12 months I definitely think the press took full advantage of the opportunity to really push this question, especially as we began to see really good open source native-XML database implementations such as eXist-db and Berkeley XML DB. IBM (wrongfully in my opinion) tried to take advantage of what most definitely was a lack of understanding as to just how XML-enabled SQL Server was, even in its current '2000' release. Furthermore it could easily be seen by anybody who looked that Yukon (SQL Server 2005) had made HUGE native-XML inroads and in fact in many ways was more XML-enabled than anything IBM had to offer. Definition and usage of terminology can be so easily abused by the press it seems almost a waste of time listening to what most of the news agency have to say anymore.
But thats well beyond the point of this post, better suited for a day when I've simply had enough of the crap that I'm reading and decide to tell anybody willing to listen all of my feelings on such matters and then some.
Pray that day never comes ;) :D
Fortunately for companies like Microsoft, Oracle, and a few others who have such fantastic talent as Dr. Micheal Rys (MS) and Dr. Daniela Florescu(Oracle - XQuery Editor) and the money to patiently do things the right way have been doing just that. While several other companies new to the database business saw potential to cash in on the next big thing in XQuery and as such rushed the stage with half baked products and questionable marketing campaigns companies like Microsoft, Oracle, Sleepy Cat Software, and in many way the open source eXist XML database engine have been methodically building quality products to truly answer to needs of their customers in regards to highly efficient and incredibly capable XML-enabled database engines.
While I haven't been able to spend any time with Oracles products I've heard nothing but fantastic things from various Oracle developers in whom I know for a fact know where they're talking about.
On the other hand, I have been able to spend some time with Microsoft's offerings and, as I have already mentioned, can honestly state that I believe we are about to see a MAJOR paradigm shift over the next few years in how we develop, deliver, update, and maintain our software applications as well as how we access the data securely stored within the confines of this POWERHOUSE relational data transactional platform. Whether we want to believe it or not or further except it or not, companies like MS, Oracle, and the others previously mentioned know what they're doing. And in cases such as Microsoft where I have a bit more experience and understanding and in some cases a little (read:tiny amounts) extra information not available to everyone -- and especially with the recent addition (6 months) of Mike Champion to the XML WebData team -- it is my belief that the table has been set (no pun intended) and readied. Where we are now and where we will be in less than 2 years... well... quite simply, things will look absolutely NOTHING like they do today and VERY MUCH like what MANY people for several years have been foretelling, suggesting patience but knowing they wouldn't get it.
Why are we not there yet? Well, that in and of itself would require vast amounts of insider knowledge of which I most definitely do not have. But like a lot of you, I have my ideas and in some cases I feel pretty confident in my ideas being pretty close to spot on.
But thats of no real great worth. The bottom line, no matter how or why, is that the infrastructure has simply not been in place to take us from the current "idleing" perception to the 500/MPH rocket-powered flight down the Great Salt Lake Salt Flats proving once and for all that the future looks bright; and its not very far away.
Can I just suggest one thing? If you're not already, pay attention to whats going on in SQL Server land at Microsoft. Big things are about to happen. Really, REALLY, REALLY Big things.
This article (the original reason behind this post) seems to be a fantastic start to getting yourself primed and tuned to begin using XQuery in your daily development. I know I have been already (I told you I really do like XQuery; for what it was intentionally designed for :) and can only see this usage increasing based on what I have seen so far.
Be smart, get ready.
Posted by m.david at 08:01 AM | Comments (0)
One reason Lisp Kicks Computer Science Ass is because the notation lends to extensible evaluation of the evaluator - when smug Lisp weenies talk about extensibility, they are talking up different stuff than smug middleware weenies who think plugins and namespaces are big woop *.
AMEN!
You absolutely *HAVE GOT TO* read this post from Bill de hÓra. For more than at least 37 reasons and counting, Bill ROCKS! I think its about time to spend some more time on my LispML project :)
Posted by m.david at 12:35 PM | Comments (0) | TrackBack
- Sometimes a good idea
- Just isnt enough
- Youve got to do the work
- Now get your ass up
- There isnt really such a thing as bad luck
- Yeah, but once I shot an arrow
- In the sky and it stuck
[chorus]
- Youve got to keep movin
- Youve got to keep pushin
- Youre never gonna get back
- Anymore than youre givin
- Life is for the living
- Youve got to be willin
- A song aint a song
- Until someone starts singin
[Full Lyrics are in the extended part of this entry.]
If ever a son has taken the raw yet naturally anthem-based and soul-driven energy made available in abundance in the Zimmerman(Dylan)-brand of family genetics I doubt its been documented well enough to enable a proper comparison to that of Bob Dylan and his son and The Wallflowers front-man, Jakob Dylan.
One of the things I believe helps us make a determination between the good and the truly Great is really quite simple:
The Great Ones deny every being anything more than a lucky hack who never deserved the attention and certainly wishes he/she never did get it in the first place. To be called a "voice of a generation" is something they loathe or at very least push away as a rediculous sentiment.
Sounds about right. We make our own choices, they're not made for us.
But sometimes they are wrong. Well, wrong is a bit to heavy of a word. How about, sometimes they inspire more than they realize? The words they write and the emotions they ensue do encourage change. But its our own self that makes the decision to listen or not and to take action or not.
When I need a quick "life change" (read:kick in the butt thats hard enough to get me off my butt and moving forward again) I play this song over and over and over until I'm back on task.
Take a look at those two verses again and you should get a good feel for why. Don't let yourself sell yourself short in life. If you accomplish something, enjoy it. Be proud of it. Remember it. Then move on to whats next. Give yourself a pat on the back that lasts just long enough as to not make people wonder if they should call security but still allows you that moment that helps you realize you're a lot more than you ever give yourself credit for.
What if you find you have an over abundance of personal achievement awards given to you by none-other than yourself? My guess is maybe you think you've accomplished more than you really have. Maybe not. But probably.
---
[Artist:The Wallflowers]
[Album: Red Letter Days]
[Title: Too Late to Quit]
[NOTE: The written lyrics leave out the constant background verse:
Too late to quit to soon to go home.
[repeated several times in blocks now and then continually throughout the song.]
Takes all my might
To find a hole that feels right
To bury myself
In a deep sleep at night
I hear a voice
Coming from the hillside
Says Ill show you the way
I will show you the light
But Im tired
Im tired
Im much too tired
Im tired
Hes says I know where you were headed
And youre half way there
But youve got to be careful
Youve got to beware
Some people want to hurt you
Some people dont care
But Im never gonna give you
Any more than you can bare
[chorus]
Theres nothing left here to rise above
Were not talking bout that kind of love
Youve got people here counting on you
Nows a good time
To learn how to pull through
Sometimes a good idea
Just isnt enough
Youve got to do the work
Now get your ass up
There isnt really such a thing as bad luck
Yeah, but once I shot an arrow
In the sky and it stuck
[chorus]
Youve got to keep movin
Youve got to keep pushin
Youre never gonna get back
Anymore than youre givin
Life is for the living
Youve got to be willin
A song aint a song
Until someone starts singin
[chorus]
Posted by m.david at 04:15 PM | Comments (0) | TrackBack
Microsoft Acrylic Technology Preview - Home
So I think I've figured out how the Adobe/Macromedia deal was pulled off so perfectly and so silently.
It [not really but almost quite literally] happened overnight.
Or lets say it happened over the course of 3 months. Something that big in 3 months might as well be overnight. And its a lot easier to keep your lips sealed for 3 months than it is for 6-12 which seems a much more realistic time frame one would expect a deal like that to take. In fact, at LEAST that long.
What am I talking about?
This.
About Acrylic
"Acrylic" is the codename for an innovative illustration, painting and graphics tool that provides exciting creative capabilities for designers working in print, web, video, and interactive media.
So here the deal... The future of graphics is on the web.
Don't worry, I'm not expecting a phone call from God asking if I would like to take on a Prophet contract, even a high paying short term gig with a guarenteed 60/hr week minimum (my preference if your wondering.. Get in. Get out. Get Paid. Get on with it. :)
[NOTE:In case your a new reader to this site, yes I know I'm going to Hell and its because of this knowledge that forces me to make the most of the nearly (almost 100%, but not quite) sealed in solid granite destiny for punishment. Hey if God can find humor in me enough not to have done the deed already, you can too. I figure while I'm here, I's bests' enjoy it. ;)]
Back to graphics. Web 1.0 was a raster-filled world of fun and joy. Don't get me wrong... Raster images are fine but the future of software development is focused around the "Webability" of an application or object. While "Is is scalable" is now passe' replaced instead with "Why do we need this?" the web has been built on scalability and the foundation isn't going anywhere. While I recognize when your speaking in terms of graphics scalability takes on a completely different meaning than that of a scalable application like email or a web site. But the result is the same. If an image doesn't scale well you'll know pretty quick as the edges will begin to get blurry and the entire image pixelated. Try to make it smaller and the pixelation factor takes over center stage leaving something that looks nothing like the original and even less like something you would want to put on a web site (although, amazingly people still do... yikes!!!)
So what does this have to do with Adobe and Macromedia? EVERYTHING!!! Well, this is part of it. The other part of it is the fact that when the merger into Adobe was announced a few months ago someone on the inside of both companies had to be fairly aware of the "Acrylic" project as this is not exactly the kind of tool you slap together as a weekend eXtreme.NET hacking session. In fact, being of the type who believes that it is best to comment on your feelings towards an app AFTER you install and use it.
[What Netscape fiasco?]
[I have know idea what you're talking about...]
[you're talking CRAAAAZZZZYYYY talk over there on your side of the bit-based lake of pixels.]
Ok fine, I fucked up. There, you happy...? ;) :D
[I swear you're like a girlfriend who has never forgotten one little mistake I've ever made in our entire relationship and takes advantage of every opportunity presented to remind me of "that time when you ..."
You know, I think its time we took a break for a little while. Don't worry, its not you! Its just I need some space. You know, to figure things out [read: I'm gunning for a fling this weekend with this little hotty I met the other day but I'l be back on your doorstep on Monday morning begging for you to take me back.] :D
Back on topic [ADHD? Never heard of it... is that that new band that sings that one song... you know "daa daa da da daaa daaa... YAAA YAAA YAAA YAAA YAAA!"? That one. Huh?
Oh yeah. The point of the post. Ummmmmmm.....
Oh.. Ok, we're back in 5... 4... 3... 2... -->
And its because of this well learned lesson I decided "you know, you should really play with this app and see if its even worth suggesting that its because of the gained knowledge of this app that brought together the shotgun wedding of Adobe and Macromedia."
[Q: In this scenario would it be Adobe that got knocked up or Macromedia? Yeah, your'e right, Macromedia. They've always kinda been Adobe's little weekend 'itch, err bits', err, whatever the vectorally(sp?) correct phrase would be to properly represent someone who is used and abused on a regular basis by someone with more fiscal power and market share than the one being used.]
How have I drawn this conclusion? Well, before MS decided it was time to enter this market again[1] there were two major players in the Graphics arena. Now if Adobe or Macromedia learns of "Acrylic" and they realize that another major player is about to enter their little mini-monopoly... and not just any player. No, Mr. Moneybags himself has decided to take his spot at your little weekly <T> party. Of course Mr. M[bag]$ is a player with a history of passing go whenever he damn well pleases, taking the $200 bucks, and building hotels on all your properties while you keep mortgaging everything you possibly can just to try and save what now has become a small slice of of day old pie thats been sitting uncovered on the counter.[Mmmm... tasty! 8p] With this scenario running through your head, what would you do?
Consolidate NOW! before the <T> party has even started and batten down the hatches for a turf war like none other.[Should be an exciting fight to watch and its you and me who are going to win because of it... :)]
Don't worry. I am FAR from the belief that Adobe has a whole lot to worry in their current market space.
But their current market space is not what I think MS is going after... I mean they take it if they get it I'm sure but theres oh so much more on the other side of the pond my friends...
Getting back to the Scalable Vector Graphics side of this post. Adobe isn't completely settled into this spot meaning theres some room for someone like MS to make some serious headway into the HIGHLY untapped market of vector based graphics development... Or think of it this way. Youve got a group of 5 million VB/VB.NET developers, not too far off that number in VC++ .NET and gaining serious ground is C# who will, without a doubt begin to merge into the space that VC++ is currently hanging onto [and probably will for a few more years at least] but either way it all adds up to 10+ million Windows developers who, if they have ever even opened Photoshop it was by shear accident. But they are enticed by XAML which, suprisingly ;), houses a Vector-based graphics engine that ties into the .NET framework with namespace precision.
Which do you think they might be interested in?
Photoshop?
Illustrator?
Flash?
...or what has proven so for to be a SERIOUS KICK A$$ graphics app if not for all the missing Photoshop-like filters and such(not even close to that level really, but its still early) AND its from the developers of the XAML language in the first place. And as far as the UI and the control of the vector objects and their layout... OH MY!!!! Whoevers in charge of the development of the UI for Acrylic...
I'd like to shake your hand some day as you know EXACTLY what the fuck your doing.
Any bets that "Acrylic" or something like it finds its way into the VS.NET 2005 IDE as a plugin? Please, I would love to take your money so lets lay it on the line and then see whos wallet is bigger about this time next year...? :D
NOTE TO ACRYLIC UI DEVELOPER: While I've only played with it for about 20 minutes can I just say the Ctrl + [{ or }] is flat out MARVELOUS. The whole thing I mean... well, anyway... you obviously know what your doing so please keep at it as I would like to purchase a copy AS SOON AS ITS COMMERCIALLY AVAILABLE!!!
[1]How "again"? Remember "Image Composer"? While more of a sprite layout and presentation engine it still had some pretty cool features. What ever happend to that project? It just kind of disappeared round about the same time "Liquid... ohhh, what was the name of that Java-based Flash competitor that MS bought with all the promise in the world and yet I dont even think it made a 1.0 release officially. Definitely one of those "what the heck happened here" question mark projects that seemed to just disappear overnight. Liquid... DANG!!! Thats going to bug me until I think of it. Anybody wanna help me out here?]
Yeah, ok... I'm showcasing quite well my ADHD tendencies... sorry!!! :D I'll finish this post eventually. Besides, we all kind of have our ADHD moments, right? Well, maybe me a little ... ok a LOT more than the average person ... but don't forget I grew up with five sisters and dated a girl for five years who had two daughters from a previous marriage so you have to factor all that jabbering "experience" into the equation.
Ever been 33 years old, unmarried (yes, I'm straight... just tired of the games and have my doubts I will ever have the desire to play them again anytime soon... which is JUST what my sisters want to hear, let me tell ya... read a few more sentences and this will make MUCH more sense. Ask Kerry Woolsey... he's met some of my sisters and I know knows exactly what I'm talking about :)), and in a room with 4 older sisters, a Mom, and a younger sister who always took on an older sister role anyway?
And they're all active Mormons!
Hmmmm... yeah, thats TONS of fun! And with 23 nieces and nephews bday partys are (if you do the math) on average, almost every other week... and with major holidays it does average just over every other week... Plenty of time is spent in that exact scenario layed out above. See, it all makes so much sense now, doesnt it? :D ;) I'm glad we had this talk. I feel so much better about things now. Ok, never mind. I don't want time off anymore.
What?
No, I promise I'll change. I'll be just what you want me to be!!! Don't leave!!!
[Ha. :) Oh, I mean, yep, I mean every bit of that!]
Have a fun day!!!
Posted by m.david at 08:01 AM | Comments (0) | TrackBack
Contact your US Representative.
In Pakistan, allegedly an ally of the West, Ms Mai was sentenced to gang rape to punish her brother. She survived, fought back, won in court, raised money, started schools. If the word “hero” has any meaning, she is one. The Asian-American Network Against Abuse of Women invited her to lecture in the U.S.A. So the Pakistani government revoked her right to leave the country, put her under house arrest, and cut off her phone; meanwhile, its courts are letting the rapists out of jail. The New York Times reported on the weekend that she was under arrest, but the BBC now says she’s free. This would be a good time to drop a line to your Congressperson or Member of Parliament or local Embassy of Pakistan. Whatever you think of Gen. Musharraf, he really can’t do without Western support. So we may not be able to save the world, but maybe we can save one brave woman.
There are many people in and out of the US who criticise the US Government for sticking there nose in the business of other countries. While I recognize its an imperfect system and can easily be abused I thank God everyday that I have the ability to pick up the phone and call my congressperson, or send her or him an email, or do what Tim did and use your position as someone people respect, listen too, and read on a daily basis to get other to take action, or all of the above, or fill_in_the_blank. To me the alternative of sitting idoly and letting other governments do whatever the fuck they want while we pretend not to notice for one reason or another is the absolutely worst atrocity a nation such as ours could be accused of.
Fuck the naysayers.
Make the phone call. Make the blog post. Stand up on your roof and scream it to the people passing by. Do whatever you can and whatever that is please do.
Whatever it takes.
Isn't that the attitude that built this Nation into what it is? Whether you feel that what this nation is a good thing or a bad thing its who we are and it requires that we take action and do what it takes to free Yet Another Victim in a country that just doesn't give a fuck.
They will. Let's make the call.
If you are outside the US (just like Tim as a matter of fact) and you and/or your country has a system in place to allow you the freedom to do something about this, please do. This isnt about spreading Capitalism, or Socialism, or other ism's of modern day governments. Its about freedom. That's what matters. That's what's important. The ability to choose ones life for ones self is what defines everything the human soul has ever longed for but not always had. Is it wrong for us to wish that others that don't have the freedom we have will someday have the ability to obtain it?
No. In fact thats what makes this country and others so great. Freedom is a virus that EVERYBODY wants.
Does this mean we are sticking our nose in other peoples business?
Yes.
These people are wrong. Crimes against humanity is absolutely wrong. Our nose belongs in that sort of business. In fact its where our nose should always be. And I believe for the most part it is. Not always. But again, the alternative is worse. MUCH WORSE!
Posted by m.david at 05:39 AM | TrackBack
ADO.NET, Data Provider, Managed Code, Oracle .NET, ADO .NET: Products: Home
DataDirect Connect for .NET is the industry's only ADO.NET data provider with a 100% managed code architecture, eliminating the need for database clients, boosting performance, and delivering a flexible, secure connection to Oracle, DB2, Microsoft SQL Server, and Sybase.
I have to admit, I didn't see this one coming at all.
Oh wait, yes I did. I don't know about you guys but guess who I'm going to hire to throw my next surprise party?
What?
Data Direct?
You must be kidding... I was refering to the Macromedia/Adobe PR/Media team that pulled off the greatest corporate hat trick in the modern computer age.
The only surprise party Data Direct is... ahhh.... I forgot, I called off the Data Direct hounds.
Damn!
I know about 20 more people who all called the "XQuery for the .NET People" hoax at or about the same time I did so cheers to each of you. Mind you I don't think any of us plan to get all dressed up and celebrate our "genius" for calling this one. This one was as easy to call as the outcome of the Tyson fight. Actually, I gave the old decrepid ear and baby eater a slight edge over Data Directs odds of not producing a .NET XQuery solution a month or two after going to "all that effort" to find enough people who actually believed it was possible to still get XQuery into a feature frozen release of the .NET platform. Speaking of the toofwiss oneder what on earth causes a person to mutter "I will eat your baby" who, as far as I know was raised on the streets of New York and not by a tribe of cannibals... well, I guess depending on what part of New York/Jersey he was raised in it could be difficult to tell the difference between that and a blood-thirsty tribe of human-flesh-eaters but we're WAY off topic... or are we? ;)
The funny thing about this is that the XQuery support the old ballot stuffers are touting is in direct competition with the one Microsoft product platform that actually does have XQuery support, SQL Server 2005 and Sequel Server Express. Actually maybe they do offer support of raw XML XQuery support but I only read the first few sentence of the above linked product beta announcement. I did notice support for SQL Server 2000 and Oracle.NET (and a few others) so I guess theres that. But Saxon offers the same data base independent support of XQuery of which I specifically left out of Saxon.NET as it seemed like a good policy to avoid spending time implementing support for something that is already supported by MS directly. But, if only to spite DD, I'm now wondering if I should spend a few hours and implement that part of Saxon into Saxon.NET.
At least this would give a free alternative... Oh wait... SQL Server Express is free... Well, I'll see how it looks and if its nothing but a few lines of hacks and a recompile then its probably worth the effort.
Enjoy your evening :D
Posted by m.david at 04:47 PM | Comments (0) | TrackBack
For reasons that won't be immediattely obvious I took some time last night to update the main page of XSLTBlog.com. Quite a bit will change over the next few days and even more over the coming weeks. The reason will become obvious about the time I announce that the redesign is complete. So if this interests you stay tuned. If it doesnt... sorry, go back to sleep. I'll try a little harder next time to be more quiet ;)
Posted by m.david at 05:21 AM | Comments (0) | TrackBack
Channel9 Wiki: DesktopSearchBugReports
I've just added the following to what seems to be the place to report bugs in the MSN Search Toolbar.
F11 (Fullscreen) removes all but the active tab when returning to normal view.It seems that not only does the new MSN tab strip not appear in full screen mode (can't find a setting to change this) but when you return to regular view all tabs except the tab that was active when going into full screen mode disappear.
Anybody know of a better place to report this? Something about bug reports and wikis (which, to me at least, is the place to write ongoing docs, not report bugs) just don't seem to mix with me.
Posted by m.david at 12:42 AM | Comments (0)
Dare Obasanjo aka Carnage4Life - MSN Search Toolbar Adds Tabbed Browsing to Internet Explorer
The newest version of the MSN Search Toolbar adds tabbed browsing to Internet Explorer. You can check out a screenshot if you're curious to see what its like.
I've downloaded, installed (after first having to uninstall and restart my machine - I thought the days of having to restart everytime you installed or uninstalled something were over... not that this is the first time by a LONG shot, but annoying none-the-less...) and am now using the tabbed features. Not as cool as MyIE2/Maxthon or my personal favorite, Avant, but for an MS supported product its sufficient and... ITS TABBED BROWSING IN IE!!! (Again, we had this with MyIE2 and Avant so I'm not sure how much excitement can be broadcast here...)
However... What Dare follow's up with *IS DEFINITELY* something pretty cool...
I think it's way cool that the MSN Search Toolbar team has added this functionality to IE. First Trixie and Turnabout, and now tabbed browsing added via the MSN Search Toolbar. It definitely goes to show exactly how extensible IE is as a platform.
Cool! I had no idea these even existed. Then again, I've been underground, for the most part, for the last week or two so I'm not surprised that I'm clueless from several fronts.
Dare closes things off with...
Of course, I still am interested in seeing what Dean and his merry band have planned for IE7.
While I'm not sure how I would feel if I were on the IE team and was refered to in the collective "Dean and his merry band" I too am curious to see what becomes of the new version of IE. :) Besides, I think its safe to say that Dare can get away with saying pretty much whatever Dare wants and, for the most part, be Ok. Me... I think Dean and his merry band would suddenly find reason to spend some of their preciouz little dev time hackingz at ]]><XSLT:Blogz/>, leavingz a few merry cheerz of their ownz. ;)
Cheerz :)
Posted by m.david at 07:33 PM | Comments (0) | TrackBack
Microsoft XML Team's WebLog : Anders Hejlsberg interview on support for XML and SQL in C#
Mike Champion has posted a link to an interesting article interviewing Anders Hejlsberg.
Anders Hejlsberg, the MS Distinguished Engineer who has pioneered several important programming languages including Turbo Pascal and C#, has an interview in InfoWorld that is well worth reading for anyone interested in how .NET is evolving to support XML and relational data.
He then goes on to say:
Keep a close eye on this: Some brilliant people who have made major advances software development in the past are thinking hard about the nasty object-relational-XML impedance mismatch and how to address it in the future. Lots of interesting things are going to come out of this.
Nice! :)
While I never thought it was a waste of my time, I'm glad to see even more reason to push forwward with my AlphaCOmega project. I have always seen this as a long term project so theres not a ton of content on the site. But as time moves forward, and especially after receiving coverage first from Dare Obasanjo, a Webcast by Erik Meijers, and now this interview with Anders Hejlsberg, I think you will definitely be seeing more action on that front.
Thanks for the pointer Mike!
Posted by m.david at 04:52 PM | Comments (0) | TrackBack
Ok, so after learning that I had the ability to filter out ads from particular companies I have decided to begin experimenting with Google AdSense. So far I have put them on each individual entry page. If that works out and I don't receive legitimate complaints from any readers then I will begin to incorporate them in the new site design which I hope to take live fairly soon.
Just wanted to give you all a heads up so it didn't come as a surprise.
Posted by m.david at 12:22 PM | Comments (0) | TrackBack
First off, a HUGE thank you to Matt Petre for hacking out the source of the WWMX installation file that seemed to be missing from its home on Microsoft Research. Please see his comments for the process he used. For those wondering, his response stems from a "Top 5 Most Aggravating..." post I did a few weeks back...
He then further asks:
What kind of interest do you have in this project?
To me the very idea of this is *AMAZING*... Using GPS data coupled with pictures that people take from around the world to, in essence, create a WorldWideCollage that is geographically specific and as correct as the GPS data allows it to be. Furthermore the UI flat our ROCKS! Think of Google Maps but faster and focused on locating pics that meet a certain GPS criteria. From the site you could tell the UI was cool but after installing it you realize just how cool *COOL* can get... Imagine if you will the Doom3 developers were suddenly inspired by combining Norm Walsh's "WITW" project, Flickr