Cafe con Leche XML News and Resources
Meanwhile, over in AOL-land Netscape has released version 8.1 of its namesake web browser for Windows based on Firefox 1.0.x. This release plugs some security holes. All users (both of them) should upgrade.
Every so often, Elliotte Rusty Harold will throw in a subtle zinger that those in whom have a bit of an understanding of the subject matter will be left crying from the preceding convulsions of laughter.
This time its not so subtle and the audience of 'understanding folk' *MUCH* larger.
NOTE TO US Geological Survey: Ignore the next five(5) minutes of 'activity', K. ;)
Posted by m.david at 07:02 PM | Comments (0) | TrackBack
I released 0.24.0.1 to SourceForge. João Saraiva reported that ikvmstub doesn't work correctly for mscorlib, but I've decided not to fix that for this version and instead make the correct mscorlib.jars available for download: .NET 1.1 and .NET 2.0
A lot of *EXTREMELY* interesting and important updates this time round. According to Jeroens description from his January 16th post announcing the first release candidate for version 0.24:
A new release candidate based on GNU Classpath 0.20 that was released this weekend. The GNU Classpath progress has been truly amazing. Updated japi results are available here. If no major bugs are found in this rc it will turn into a release, probably by the end of the week or early next week.
With each and every release of, first, Classpath, and then, IKVM.NET, the Java/.NET interoperability picture becomes *MUCH* more clear, and as such, impressive! There are still a few things here and there that require a bit of work e.g. as I've recently discovered, Regular Expressions, a language feature new to the Java language as of v1.4, are not as complete as they could be from the Classpath side of things. However, both Sun and Microsoft have implemented RegEx using the Traditional NFA model, and as such, you can simply use the 'import cli.System.Text.RegularExpressions' made possible by the Java bytecode stub version of the mscorlib.dll. For those unaware, in addition to the mscorlib.dll > mscorlib.jar, there is also System.dll > System.jar, and System.Xml.dll > System.Xml.jar that comes pre-packaged with the IKVM.NET project. If you want to implement others, you simply use the ikvmstub.exe file to compile the desired .NET assembly to a stubbed Java bytecode jar file. Pretty simple and *EXTREMELY* beneficial!
A lot of work has gone into both the IKVM and Classpath projects, led by Jeroen Frijters and Mark Wielaard, respectively. A *HUGE* thanks to both of you as well as the extensive list of other folks who have contributed to both of these projects in *ANY* capacity.
True Legends of Software in both the making *AND* the here and now!
Thanks guys! :)
[UPDATE: I suddenly realized that while I added Jeroen, the developer of the IKVM.NET project, to the "Legends" list a while back (see main page, left column) just as important to the Saxon.NET project (and, as such, the reason Jeroen has *MORE* than earned his inclusion on this list) is the Classpath project. I've already mentioned Mark Wielaard as the lead for this project. And now I've fixed the mistake of not including him in this group of *ELITE* developers who have in one form or another helped in extending both the support and reach of XSLT, promoting its usage as a Domain Specific Language.
Welcome Mark! My apologies for just now realizing that you were not a part of this list before now. Like Jeroen, you most certainly *MORE* than deserve to be a part of this exclusive list!]
---
IKVM.NET v.0.24 Compiled Change Log
---
* Integrated GNU Classpath 0.20
* Changed nant build files to use NAnt 0.85-rc3 syntax and features
* Removed support for compiling classpath with jikes
* Added support for targetting both .NET 1.1 and .NET 2.0 to the build files
* Removed assembly names from type names in map.xml (to better support targetting a different version of the CLR)
* Added conditional compilation support to map.xml parser (based on target CLR version)
* Changed map.xml Object.hashCode implementation to use RuntimeHelpers.GetHashCode when targetting .NET 2.0 (RuntimeHelpers.GetHashCode is broken on .NET 1.1 and the non-virtual call trick is no longer verifiable on .NET 2.0)
* Added map.xml Object.equals implementation instead of relying on System.Object.Equals.
* Changed map.xml VMSystem.identityHashCode to use RuntimeHelpers.GetHashCode when targetting .NET 2.0
* Hardened VMSystemProperties to work better on the Compact Framework (where several methods are missing)
* Fixed several NIO socket bugs
* Changed FileChannelImpl to work on the Compact Framework (stdin, stdout and stderr are missing on the Compact Framework)
* Hardened VMClassLoader to work better on the Compact Framework
* Changed static compiler to use ReflectionOnly context for loading and generating assemblies (when compiled for .NET 2.0)
* Added conditional compilation #ifs to the runtime to work better on the Compact Framework
* Changed compilation of invokespecial bytecode to be verifiable on .NET 2.0
* Added IKVM.Runtime.Util.GetInstanceTypeFromClass() to go from java.lang.Class to System.Type. Note that due to the object model mapping issues there is no one-to-one correspondence from Class to Type, so this method returns the "instance" type, which is logically equivalent to doing Class.newInstance().GetType().
* Fixed ikvm.exe to give a proper error message when using the -jar option on a jar that doesn't have a manifest or a manifest that doesn't have a Main-Class attribute.
* Added several hacks to ikvmc, ikvmstub and the runtime to support loading assemblies in the ReflectionOnly context.
* Implemented optimization in compiler to remove redundant box/unbox operation is many cases.
* Changed compiler to explicitly implement all inherited interfaces, for compatibility with the Compact Framework.
* Fixed DotNetTypeWrapper.LoadTypeFromLoadedAssemblies to support generic type instantiations.
* Optimized compiler to push/pop only the rightmost requires arguments when doing method argument conversions.
* Implement "this" reference tracking in verifier, to enable code generator to emit more efficient (and verifiable on .NET 2.0) non-virtual base class method calls.
* Optimized compiler to use short encoding when possible for backward branches.
* Removed unnecessary verifier hack branch at the end of methods that don't use exception blocks and used short form of the branch.
* Fixed Math.pow(1.0, Double.INFINITY) result on .NET 2.0.
* Added SourceFileAttribute to module when running in dynamic mode, to enable source file reporting when running on .NET 2.0.
* Changed code generator to leave out redundant branches.
* Fixed infinite recursion in resource loading when SecurityManager is installed.
* Changed WinForms event loop thread to STA.
* Fixed handling of open generic types (by making sure they are invisible to Java code).
Posted by m.david at 10:27 PM | Comments (0) | TrackBack
Dare Obasanjo aka Carnage4Life - I Thought Democracy was the Answer
Lots of people talk about democracy without really understanding what it means. Spreading democracy isn't about making the more places share American culture, it's about giving people the freedom to choose their way of life. The hard part for the U.S. government is that sometimes their choices will be different from the ones Americans would like them to make.
Fabulous commentary! If you are subscribed to the Quote of the Day feed, you will see this twice. Sorry! But this is such a fantastic point, that having two copies in your feed-reader isn't such a bad idea. And you can delete it if you disagree. :)
So here's the question:
The American Way, or the pursuit of happiness, is a nice thing, but I can think of a TON more bad things that have come about because of this pursuit, than I can good. Now don't let that statement cause you to believe I think we are evil people! Most of us are good, honest, hard working folks, and the ability to seek happiness coupled with the ability to seek such happiness via the mechanisms afforded us by Freedom, is often times a *VERY* good thing!
But happiness is defined at a personal level. Not at a national level, and ESPECIALLY not an International level. While I would not want to live in ANY other country from a long term perspective, there are a lot of things we take for granted, and assume that others, even though they come from *COMPLETELY* different cultures, backgrounds, and more, all believe that the "American Dream" and the "American Way of Life" is the end goal.
It's not. In fact, we're an *EXTREME* minority!
What then brings happiness to others? I have my ideas, but they're just ideas... In reality, I don't know what help brings a smile onto the face of someone living in the apartment next door to me, much less another culture in another part of the world I've never visited, and more than likely, even seen in pictures. But I know who to ask:
Them.
Helping to bring happiness to others is a good, admirable thing for us to do. But how about we ask the titled question, first, and be prepared for the suggested answer, respecting others desires to live their life in the way THEY think is right and WILL help keep a smile on THEIR face.
Not ours. Theirs. Isn't it THEY THAT MATTER MOST? [UPDATE: In fact, is that the general idea behind Freedom? One's ability to choose for THEMSELVES, and not have THEIR choices made FOR THEM? By trying to give Freedom, do we instead take it away? Maybe not intentionally. But the best intentions don't always bring the intended results.]
Question: Is the good, happy, warm feeling you/we feel because of "helping" shared with those in which you/we help?
Maybe next time asking first isn't such a bad idea?
Or better yet, if they can, let them ask us.
What if they can't? Something tells me if they can't, we already know. For example, the people of Zimbabwe need our help. Senator Hatch even wrote me a return letter suggesting he would support aid.
I'm 100% certain the aid has not arrived yet.
Maybe it got held up in customs?
Probably, huh?
No. Probably not. In fact, DEFINITELY NOT!
Why?
Posted by m.david at 09:36 PM | Comments (0) | TrackBack
Dare Obasanjo aka Carnage4Life - OPML-o-mater: An OPML-based Recommendation Engine
[NOTE: Hey Dare, [see comment below. Thanks!]
---
OPML... otherwise known as the supposed outline format that should not be named. And no, I don't mean "shall not".
"Shall not", as in Harry Potter's arch enemy, Voldemort, or "He-Who-Shall-Not-Be-Named" (I think that's correct.. or is it "Must-Not-Be-Named"? It's been a couple of years, but one or both of these sounds right.. I hope!
To all HP fans:
If I'm wrong, and you're offended. Ummm... Get a lif... err... I mean, I'm sorry? I mean sorry!! Yes, Yes, Come to think of it, so very, very sorry!!! :D Hermione, please don't hurt me :D
I'm gonna tip-toe away from this one while I still can...
Actually, maybe I Aughtttaaa RUN!!! YES, RUNNNNNINNNG WOULD BE A GOOD IDEA!!!!!!!!!!!
AAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!! ;) :D
--
Well then... :) Back to the purpose of this post:
--
The OPML-o-mater delivers a personalized list of RSS feeds in an xml format called OPML.
The "OPML-o-mater"?
Oh...
Dear....
GOD!!!!
Do I laugh? cry? Or how about I just stick my finger down my throat and gag this awful feeling out of my stomach and replace this horrible taste in my mouth? Even the taste of... uhhh... nevermind... While the tast of 'OPML' *IS* horrible, I have a weak stomach... So I'm just gonna let you feel in any missing details as you feel necessary...
You're welcome. It's np. ;)
---
Next Item Up For Bid!!!
---
xml format called OPML
xml format? xml format??! XML FORMAT???!!!!????!!!!!
R U Jokin'???!!!
If footnote one from my last post, and the refering content's subject matter is, in mine AND *MANY* others opinion, not XML -- others, BTW who, unlike me, choose to play things politically smart and wisely, as they should, avoid making public there own feelings on the matter. With that said, there are things I purposely remain 'stupid' about... This is one of them.
Anyway, if THAT'S *NOT* XML, then this horrid creature from a random Shift_JIS text generation experiment gone HORRIBLY wrong to begin with, to then be served up as UTF-8 (or utf-8... but if it starts as Shift_JIS, I don't thing the case of the tagged encoding really matters as this point. Either way, the result is FUBAR!) is MOST CERTAINLY not!
OPML files can be imported by any competent RSS Reader/Aggregator.
Competent RSS Reader/Aggregator? Does anyone else look at that and state, "Ummm... how about just a valid XML parser? Shouldn't THAT coupled with an easily accessible and understandible specification be all that is required?
NOTE TO ALL XML DEVELOPERS OUT THERE: There are now THREE core areas you *MUST* have apparently if you hope to be grouped with the "any competent RSS Reader/Aggregator":
- a compliant XML-parser
- the ability to write an aggregator against a well known and easily acessible spec
- the "Luck of the Irish"!
because working with the various flavors, interpretations, etc... of what is a horrid supposed XML file format in OPML...?
You're gonna need it!
In fact, you're gonna need MUCH MORE than JUST the Luck of the Irish! But lets start there and take things one step at a time before setting any loftier goals. If you knew the size of the mountain you were getting ready to clime, you wouldn't ;)
You want the feeds from the OPML-o-mater because they're known quality feeds --
: according to?
at least they were when we entered them.
You're opinion then?
Excellent! Quick Question: I'm interested in learning more about R5RS. Which feed would you recommend to be the most knowledgable, at least "when you entered them in", of course?
Can you describe the determing factors you used in deciding which feed would best suit the needs of those of us interested in accessing content deemed as valuable to the subject of R5RS, especially in regards to implemtations that held to ideals of *STRICT* core compliance first, to then push things to the next level in regards to extending the libary of modules made available?
Or maybe -- and here's a wild thought -- but maybe those of use who actually have such interest, and care enough to know what R5RS is *BEFORE* Googling for it -- wouldn't *WE* be the more qualified of folks to determine such content to other folks with similar interests?
Even if you already have all the feeds you need, it might be worth a look to discover if we've one or two you didn't know about.
Or maybe -- and here's Yet ANOTHER WILD THOUGHT! -- maybe I could just create a custom Technorati feed using the keywords or links I have interest in for each feed, and, while it relies heavily on the number of links point at a resource, or entries mentioning a topic or keyword, to determine value, while --
--- hmmm... althougth, I'll admit -- we don't gain the *LUXURY* of the feeds being *HUMAN FILTERED* and as such deemed *GOOD*! (at least they were when you put em' in there, right?)
Well, then thats GOOD ENOUGH FOR ME!
...err wait, no its not.
In reality, whats more important to me is that the Technoratis, and the PubSub's and the syndic8's (and theres LOTS more) all have REALLY SMART FOLKS, probably just like you, but who have written some REALLY GOOD, *PROVEN* software apps, and the content they serve doesn't come with a
"It was a good feed when we put it there.. we're not sure what happened???!!! These things happen, though... Seemingly good feeds, end up turning to a life of HEINOUS irresponsibilities!"
[MOMENT.BRIEF: I think I need a tissue... I get all choked up when I think about such ENORMOUS potential that has been lost!]
...errr, wait. No I don't.
BbzzzzzzzzzzT.NEXT!
---
[Comment to Dare: This isn't slamming you or the subject matter of your post, or even, although it probably comes across a bit this way, Bob Rebholz, and instead OPML in general, and the notion that Bob suggests that "finding and filtering desirable content for the rest of us" is a good thing. In fact, this has given me a sudden and immediatte desire to spend a few hours this evening finishing something that will fulfill what it is you want to accomplish with Bandit. In fact, if you ping Uche (I'll ping him quickly now to let him know I made this post) he should be able to at very least help in getting some of your own creative juices flowing a bit in regards to how one of the main projects we have been working on could fit quite nicely into what you're taking about...]
Posted by m.david at 07:01 PM | Comments (0) | TrackBack
// @author RussMiles.com - Home
I am now a Head First author! Thanks in no small part to Brett McLaughlin for all his great support, my audition for HF UML has been accepted and the process of getting the whole shebang contracted is now well underway with training in Boulder, Colorado being kicked off next month.
K, so the first two attributes I had a bit of a jump on the rest of ya.
Sorry.
I know! That's not fair is it?!
Well then,
Take it up with Russ! Comments are now open! There's also an Atom feed. NOTE: Need to talk to the Squarespace folks as they seem to be only serving up Atom 0.3. As soon as thats gets fixed I will make sure and post a link and encourage others to use their services ;)
Other XML data feed formats? I didn't realize there *WERE* any other besides Atom? Oh, my bad...
Sorry... There's an RSS 1.x/RDF feed as well (specified by the good folks behind the RSS 1.x/RDF specification.) That's my bad... I think 'data feed~=Atom', 'semantic web~=RSS1.x/RDF'. That's what through me off.
Huh? More? No, I'm sorry, there are no other...
Oh wait, are you thinking of RSS "2.0"?
That's not XML. [1] ;) :D
---
Oh, that '@last' bit... Apparently I need to read my email more thoroughly next time as it seems Russ sent me an email like a week ago on the subject and it somehow... um... I guess got missed 8|
Uhhh... Ooops :)
Sorry 'bout that Russ! But now I know... and now others do to :D
Congratulations on the title Russ!
For those keeping score @home (<- theme? :) that would be...
count them with me...
and now Three titles in the last two years for Russ...
One word: Damn.
Enjoy Your New Knowledge That a Head First UML 2.0 Title Is On It's Way and, Even Better, Authored By Russ Miles-enhanced day!
--
[1] : Ok, technically speaking, it is.
But then again, technically speaking... I don't give a shit. If you hope to be a big grown up version of XML someday, you need to use *ALL* of XML, not just the pieces you kind of sort of understand, calling the other pieces irrelevant, or frivilous, or, more specifically, suggesting that the power exists in the fact thats its *NON-STANDARD/STANDARDIZED*!
Huh?
I promise you, they're necessary.
At least by big grown up developers they are. The power being refered to exists in simple things... like namespaces. Without them this "power" otherwise *CAN NOT* exist.
Power exists in Atom and in RSS 1.x/RDF. It doesn't exist in that other format.
Posted by m.david at 04:57 PM | Comments (2) | TrackBack
Hello IronPython Community,We have just released IronPython 1.0 Beta 2. The focus of this release was fixing bugs that you found and reported (big thanks!), cleanup and re-factoring of the code base and we also made significant progress towards cleaning up FxCop warnings.
You can download the release from:
We responded to the major bugs you discovered with the interactive console in the beta 1 release by dramatically improving our test coverage for this scenario. We now run our test suite both in a normal mode and in a mode that simulates the interactive console. This should prevent future regressions that only appear at the console.
Finally we also continue to improve compatibility with CPython. IronPython now passes all of test_types, test_format, and test_time in addition to the the 28 standard regressions tests that we passed without modifications in beta 1.
We'd like to thank everyone in the community for your bug reports and suggestions that helped make this a better release: Brandon Furtwangler, Catalin Lungu, David Richter, Erin Renshaw, Greg Chapman, Hector Miuler Malpica Gallegos, J. Merrill, jd
A list of the updates, bug fixes, etc... is below:
More complete list of changes and bug fixes:
============================================
FxCop cleanup – a large amount of the code base has been made FxCop clean, a large amount of work still remains
Improved internal API surface by making more things private that should be
Perf Improvments for nsieve
Bug fix: pow was missing
Bug fix: eval(“1, 2, 3, “) wasn’t returning a tuple
Bug fix: compile(“x = “, …, “eval”) not returning syntax error
Bug fix: error in site.py doesn’t get reported
Generators no longer use exceptions for flow control
Error reporting cleanup
Bug fix: Failure to load a referenced assembly will now throw an exception
% string formatting is complete & passes all Python tests
Closure implementation vastly improved
re module more robust to None inputs
strings can now be multiplied by bools
Bug fix: OldClass that defines __getattr__ now works properly
SystemException now properly maps to StandardException, can now catch Python exceptions using CLR name
Bug fix: type and None now both have __class__ attributes
Added auto-conversions to IDictionary
Bug fix: exec handles bad input better
Bug fix: string formatter allows %d to be used with float values
Generators now use function environments
eval(expression) now raises a SyntaxError for statements
All of time module implemented except day of year / week of year custom formatting
Bugfix: exec x in y doesn’t work properly
Bugfix: del this_name_is_undefined raises different exceptions at console vs imports
Aliased reference support in clr module
Bugfix: Can’t import top-level class from .NET assembly
Code generator updates: Self-hosting on IronPython, generated code moved into their own files
Bugfix: exec(code, dict) is broken
Super console now inserts spaces when there’s no input
CustomDict, Module, Environment cleanup
Bugfix: Closures don’t initialize to Uninitialized
Bugfix: Floating point conversions didn’t handle subclasses of float
Bugfix: Comparison broken for subclasses of float
New fast path for calling overloads w/ different types but same number of arguments
Bugfix: For comparison via IPythonComparable, it wasn't true that a < b <==> b > a
Bugfix: cannot reload sys module
Compile / Execute PythonEngine now allows access to _
Bugfix: clr.References formatting improved
Bugfix: No conversion from System.Collections.Generic.List`1[System.Type] to its self
Bugfix: IndexError thrown when trying to subclass twice from a CLR interface
Bugfix: os.path functions give wrong result on non-Windows platforms
Bugfix: func_code should include the line number of Python functions
Binder binds all names, including globals
Bugfix: Cannot execute generated EXEs
Improved property handling to match CPython
Bugfix: Can’t call CLS instance method w/ keyword arguments
Bugfix: __r???__ method doesn’t get called if we can’t bind to __???__ operator
Bugfix: Binder binds incorrectly when global statement is in outer scope
Bugfix: caller context is now flowed to eval
Binder now binds all names before code gen
Pre-populating locals before code gen
Bugfix: changes to local variables are not affected in the locals() dictionary
locals() now uses environments
list.sort() is now stable and optimized to minimize comparisons
re module bug fix to now clear multi-line / dotall options.
Bufix: Oct and dir were missing PythonName attribute
A module’s __dict__ field is now always a Python Dict (or subclass), not a CLS dict
All tests now pass in Console mode
Dynamic methods used more to prevent leaks
Bugfix: Function f(*args) def'd in console, with two locals, raises a SystemError when accessing second local
Bugfix: Defining a function g which returns a function h (defined inside the body of g) causes a null reference exception at top-level in the console
Bugfix: Class defined in console shows unusual behaviour
Bugfix: IronPython kills CLR
Bugfix: Generators broken in the console
Bugfix: Python Engine: calling multiple python methods
Posted by m.david at 12:04 AM | Comments (0) | TrackBack
"The suggestion is that if we don't do this, it will stifle creativity. Well...we have now an unprecedented wave of creativity and product and content development...new business models, and new methodologies for distributing this content. The history of government mandates is that it always restricts innovation...why would we think that this one special time, we're going to impose a statutory government mandate on technology, and it will actually encourage innovation?"
Posted by m.david at 07:43 AM | Comments (0) | TrackBack
Vote Linkspreamble
Indexing and tracking applications treat all links as endorsements, or expressions of support. This is a problem, as we need to link to those we disagree with as well, to discuss why.specification
I propose that we add a set of three new values for the rel attribute of the <a> (link) tag in HTML. The new values are "vote-for" "vote-abstain" or "vote-against", which are mutually exclusive, and represent agreement, abstention or indifference, and disagreement respectively.
Could it get any easier than <a rel="vote-for" href="http://thislink.foo">bar</a>, <a rel="vote-abstain" href="http://thislink.foo">bar</a>, <a rel="vote-against" href="http://thislink.foo">bar</a>?
Yo folks involved with/aware of the VRT project: Whatchya' think?
Posted by m.david at 04:11 AM | Comments (0) | TrackBack
So here I am on my nightly stroll around my downtown SLC neighborhood (not sure you can consider malls, office buildings, and Temple's a neighborhood, but I'm gonna run with it anyway ;) and, just outside my apartment complex, I find what looks to me like a great little 'eco-friendly' blog post in the making.
"Fantastic!" I think to myself. "I have my camera with me... I'll take a picture and then go home and blog about how great and wonderful it is that folks here in the U.S. are starting to get the point that we can't keep drowning our environment with eco-pollutants and expect to have a half way decent place for our kids to survive in (no, I don't mean live... at this stage survival is about the best I think we can hope for!)"
"Click. Snap!":

"Hmmm.... Out of curiosity I should look to see what type of eco-friendly vehicle this is so I can do a little research and see what this baby's packin'!"
"Ahhh... Hell No!...":

"What," I think to myself "its not enough for our 'Neighbors to the North' to stake claim to the Brothers Bray who are teaching us a thing or two about how to properly build software and live a good 'citizen' based life, but now they've gotta show us how to be eco-friendly too?!"
"Hmmm... Good for them!" I say outloud.
Posted by m.david at 03:36 AM | Comments (4) | TrackBack
Dare Obasanjo aka Carnage4Life - Personally Identifiable Information and Online Services
Interesting piece by Dare, and definitely an important read. The only thing that has me scratching my head comes from his reference to the wikipedia entry of Personally Identifiable Information:
Criminal record
Obviously this question is directed towards the Wikipdia article:
How is a criminal record not PII?
I can see the point that a lot of people can and have committed the same crime, and as such knowing just the crime doesn't necessarily connect the person to the specific instance of a crime. But who does random Criminal Background Checks? If you're running a CBC you're doing it for a specific reason, right?
I can see a researcher doing a study on a particular crime, attempting, for example, to pinpoint a surge in a particular crime being committed and attempting to find reason for the surge. But that would seem to be the exception as opposed to the rule.
I'm not suggesting that a Criminal Record is *ABSOLUTELY* not PII, I'm just having a hard time seeing the justification.
Anybody wanna help me out here?
Posted by m.david at 10:07 PM | Comments (0) | TrackBack
John, Sylvain and I have been working at this on and off for over a month now (we've all been swamped with other things—the actual development of the site was fairly straightforward). Planet Atom is built on an aggregation from Atom 1.0 feeds into one larger feed (with entries collated, trimmed etc.) It's built on 4Suite (for XSLT processing), CherryPy (for Web serving), Amara (for Atom feed slicing and dicing), atomixlib (for building the aggregate feed) and dateutil (for date wrangling), with Python and XML as the twin foundations, of course. Thanks to folks on the #atom and #swhack IRC channels for review and feedback.
I heard rumor that this was in the making. Good to see its now live! :)
Posted by m.david at 06:33 PM | Comments (0) | TrackBack
Dare Obasanjo aka Carnage4Life - IE to Support Native XMLHttpRequest object
To keep focused when checking email throughout the day, I only have one feed coming into my 'Web Clip' viewer in Gmail, that of planet.xmlhack.com. It's always a fun adventure to see who's behind the various post's that catch my interest enough to click, as this information is not provided via this interface. After reading this particular title, I was prepared to give whomever it was a little history lesson if the content turned out to be anything like what the title inferred -- that Yet Again Microsoft was late to the game on this one, but is succumbing to the pressures and ultimately 'giving in.'
Much to my surprise, it was Dare... someone who had no need for a history lesson of any type. In scanning through the post I was happy to see him tack the following to the end:
I wonder if anyone else sees the irony in Internet Explorer copying features from Firefox which were originally copied from IE?
Yep!
In fact, this sentence from Sunava's post:
> IE7’s implementation of the XMLHTTP object is consistent with that of other browsers, simplifying the task of cross-browser compatibility <
:seemed WAY TO APOLOGETIC!
Taking a snippet from from Jon Udell's PDC interview with Bill Gates [I've provided a larger chunk below to provide context]:
BG: Who did DHTML?JU: You guys did. You guys did, I know that.
BG: Okay. And you know, it's there. Other browsers did the same thing, that was great.
No need to apologize, Sunava :) You folks led the pack for a good five years before before the rest of the browser world caught up (speaking to the XMLHTTP object specifically. DHTML (at least a good portion of it) has been supported since back in the days when they called Firefox "Netscape". Some of you may be to young to remember the way things were WAY BACK in the 20th century, but it's true story none-the-less. ;)
Still, its good to see that MS is exposing the functionality of the XMLHTTP object via a scripting interface, as this DEFINITELY helps bring the security of any given application WAY UP, while at the same time bringing a nice little present to the folks who haven't been able to take advantage of all that this control has to offer due to a "no ActiveX" policy.
Obviously, if you're going to go to the extent of creating a scripting interface, choosing to not-follow the implementation made first by Mozilla and then followed-up by Opera and Safari, would have been the wrong way to 'win friends'. But I think its safe to say that once the decision came down to provide this interface, deciding on how to implement it was pretty simple.
EXCELLENT NEWS! :)
---
A bit more context from the above quote:
BG: Say again what you think the two parallel paths would be?
JU: So one would be... Well in the world of data, it would be, let's say XQuery, ECMAScript for XML, things which are standards, in the world of presentation, the future evolution of DHTML and CSS and things like that, as you're actually even using yourselves...well you have been for a long time, but you're using now in a new context with these gadgets on the desktop. So that's one style of doing things.
BG: Who did DHTML?
JU: You guys did. You guys did, I know that.
BG: Okay. And you know, it's there. Other browsers did the same thing, that was great. In terms of this Atlas runtime stuff, other browsers may well do the same thing. Actually, a lot of the Atlas stuff is even independent of that. So I'm not sure of the parallel path you're drawing. Certainly when you look at something like LINQ, there's always going to be these query type things that are outside of normal programming languages. And great, we'll support those things. But the complexity for a developer of having this funny query utterance which is separate from their functions and their logic, that's never going to be as simple as being able to have the set-type operators right in the language itself. And so the two will co-exist. If somebody wants to have that big XSLT thing or XQuery thing inside their source code or just a reference off to another file that has that, great. We support that. The brilliant thing is giving you a choice of having that right there in the logic in a way that's readable. That's the breakthrough, is that the impedance between -- okay, here's my data mapping logic and here's my business logic. Those two things can be in a readable piece of code.
Posted by m.david at 05:30 PM | Comments (0) | TrackBack
"Found" = A paraphrased version of the point I was trying to make in my second to last post.
While we will undoubtedly be typing text into things for quite some time to come, the difference between 'today' and 'tomorrow' is the fact that at the moment we still have to go looking for the things we are desirous to locate. Of course blogs/data feeds have definitely started pushing the momentum in the right direction. And there are several tools out there now that bring contextual content to our doorstep without even 'asking' and instead implying through the blog posts and/or emails we write, the web sites and blogs we visit, etc... In fact, Google has been slowly developing a *MONSTER* of a contextual content delivery mechanism for quite some time.
With that said, Yahoo has been focused around contextual content delivery since day one. In fact, whats interesting about all of this is the we are slowly but surely watching the Yahoo-style of 'search':
* go to Yahoo.com and click around till we find what we want -- or the 'browsing the aisles' type of search. Of course the ability to actually type in a search phrase exists, but their core focus has always been directory-based, or better said, click-to-find.
and the Google-style of search
* Type in what your looking for and get the results delivered to your browser window. Google of course has been pushing things towards more of a Yahoo-style with their various "Portal" projects, but type-to-find has always been their bread and butter.
begin to merge together taking on both a push and pull type look-and-feel. (Maybe the LLUP project makes a bit more sense now?)
Whats even more interesting is that behind the scenes both Microsoft via various contextual search agent projects and Novell via the Beagle project -- which was actually started first, outside of Novell by Nat Friedman and Edd Dumbill via the Dashboard project -- have been working on these same types of systems. [NOTE: See this post from over a year ago for more detail.]
So in reality its not just Google and Yahoo! but Microsoft AND (of all companies! ;) Novell who all have a chance of taking a fairly large slice of the "Future Found Pie."
Hmmmm... ;)
Posted by m.david at 03:54 PM | Comments (0) | TrackBack

Dear [You who are reading this]:
Thank you for taking action with hundreds of thousands of ONE supporters and encouraging President Bush to keep the promise in the fight against AIDS and extreme poverty.
Today, we're asking that you take one more step. Right now, President Bush is making final decisions about his 2007 Budget Request to Congress, and your one call could help make the difference.
Please call 1-800-786-2663 and ask President Bush to support a $5 billion increase in the fight against global AIDS and extreme poverty in his budget request to Congress.
Your phone call could have a tremendous impact in helping people in the world's poorest nations lift themselves out of poverty. Sticking to the commitments we made in 2005 could help save over 4.5 million lives a year by 2010-all we need is your voice.
Call 1-800-786-2663 TODAY and show the world that America is committed to keeping our life-saving promises.
Thank you,
The ONE Team
Posted by m.david at 03:41 PM | Comments (0) | TrackBack
Scobleizer - Microsoft Geek Blogger � Cede search to Google?
Come on Yahoo. Steve Rubel is right. There is so much left to do it isn’t even funny and if a company discovers a better way to do search they can take share away from Google (which, yes, does have a monopoly share of the search market). I can’t find a ton of stuff on Google, though, the job simply is NOT done! Google hasn’t even tried to do good blog search yet, for instance. Technorati/Feedster/Pubsub kick Google’s ass, which is really sad cause all three aren’t very good at bringing you the best bloggers.
So I agree with the first part of this... there's so much to do, its not even funny. Where I immediatelly take an about face and state "EXCELLENT MOVE YAHOO!" is where Scobel and company suggest this was a bad move. Bad move?
Nope.
Let me put it to you another way...
The future of the search, isn't.
Still confused?
Yahoo!'s not. Neither is Google.
Why put all of that money into acquiring Blogger to then sit on it for all intents and purposes, as is, for a couple years if you were of the belief that in and of itself Blogger 2003 = Blogging 2007+?
It's not. So why push that direction?
If delivering the 'there's so much to do' pieces was really deemed as 'MISSION CRITICAL' in the here and now, with as much talent they now have on 'campus' (does Google have a campus?), don't you think they would have delivered by now?
As such,
Q: Why haven't they?
A: What's the rush?
We're not ready for the paradigm shift yet so to force such a shift now goes beyond *ANY* justifiable business logic. Take for example:
During his Microsoft years Adam Bosworth and his group of developer heavyweights built IE4, DHTML, the XML parsers and processors, the XMLHTTP object, etc... etc... etc..., delivered them.... and
7 years later the world caught up (in terms of both recognition, support on other platforms (XmlHttpRequest), and bandwidth capacity in regards to both high-speed internet access, and processor capability)... And gave it the name of a bathroom cleaner.
Given his position at Google, do ya think Adam Bosworth might be taking the "the web is not ready for this yet... Let's take the time to both build this to perfection and not deliver it until the web is ready for the next step." stance?
I personally can't say one way or the other, as I have no clue...
But it certainly does seem to make a lot of sense.
Speaking in terms of Yahoo!... They have the same level of talent on their 'campus' (same question as above?). They've made a very pointed effort to focus on recruiting folks like Micah Dubinko (W3C XForms Spec Editor) and Dave Beckett (W3C RDF Core and Data Access WG) who, while they undoubtedly have the ability to build a great search engine, are instead focused on XML data binding, presentation, and interaction, and HARD CORE semantic web core technology development.
Do you think Yahoo! might recognize something these other folks seem to have set aside as trivial?
Yep!
What Yahoo! just did (in my opinion, anyway) had nothing to do with conceding and everyting to do with pure and simple GENIUS!
Instead of pushing resources into areas who's shelf-life (in its current "text input box" form) has less than a couple of years left, they've instead sent Google a message...
The message?
"We get it."
"Ready to to take this to the next level?"
LETS GET READDDDYYYY TOOOO RUUUUUUUUUUUUMMMMMMMMMMMMMMMMMBBBBBBBBBBBBLLLLLE!!!!!!!!
---
"ba ba ba bapa bapa, ba ba ba bapa bapa, ba ba ba bapa bapa, ba ba ba bapa bapa, , ba ba ba bapa bapa, , ba ba ba bapa bapa, , ba ba ba bapa bapa,
"YA'LL READY FOR THIS?
"badup bapa bapa."
Things are about to get interesting in this space...
I'd stay tuned for this one for sure :)
Posted by m.david at 07:17 AM | Comments (0) | TrackBack
SAML STS for WSE 3.0 QuickStart: Home
Welcome to the community workspace for the SAML STS QuickStart project. This project is a QuickStart from the patterns & practices team at Microsoft. It uses extensibility points available within Web Servies Enhancements 3.0 to built a Security Token Service (STS) that issues Security Assertion Markup Langauge (SAML) v1.1 tokens to requesting applications. To download the QuickStart sample code and associated documentation, simply join this workspace and sign in. You'll see the link in the lower right-hand corner of this page in the "Downloads" section.
And the beat goes on, dadadumdadum...
Posted by m.david at 01:34 PM | Comments (0) | TrackBack
Books: Technical-- Agile Web Development with Rails by Dave Thomas et al. (Pragmatic
Bookshelf)-- Framework Design Guidelines: Conventions, Idioms, and Patterns for
Reusable .NET Libraries by Krzysztof Cwalina and Brad Abrams (Addison-
Wesley)-- Practical Common Lisp by Peter Seibel (Apress)
-- Service-Oriented Architecture: Concepts Technology and Design by Thomas
Erl (Prentice Hall)-- Why Programs Fail, First Edition: A Guide to Systematic Debugging by
Andreas Zeller (Morgan Kaufmann)-- Wicked Cool Java: Code Bits, Open-Source Libraries, and Project Ideas
by Brian D. Eubanks (No Starch Press)
I picked up my copy of Peter Seibel's Practial Common Lisp title a few months back, and while I haven't been able to spend as much time as I would like reading and studying this title, what I have read so far is *FANTASTIC*. Highly Recommended to those who want to begin studying Lisp building real world applications instead of your typical theory type samples you tend to see in a lot of titles (see Amazon link below.)
While I don't use the Mac I purchased a while back much beyond my coffee break/shop laptop, true to the "REALLY USEFUL" MacAttackers Mantra, I have discovered many other uses for it. For example, in the following pic you will discover how nicely it works as a book stand, propping up my copy of Practical Common Lisp for a quick pic:

Of course it works just as well a book stand for reading as well!
I hate to admit it, but the MacAttackers are right... It's *UNBELIEVEABLE* how truly useful a Mac can be! :D
Breathtaking, really... ;)
Enjoy your Practical Common Lisp-enhanced (oh, and Mac-as-a-bookstand!) Day! :D
Posted by m.david at 12:19 AM | Comments (0) | TrackBack
I recently suggested that I had something else to add to the topic of "World Matters". I do. Here it is.
On the frontpage of the community home you will find the following description:
GenerationWe.org represents a new way in thinking about topic-based communications. Using secured end-to-end messaging via a combination of technologies brought together as part of the nuxle.us project (SAML, XMPP, LLUP/Blip), GenerationWe will allow the ability to communicate with anybody, anywhere, on any topic, using a completely decentralized interface. Advantages to this type of system include:
For the early stages of this project the forums are now open. Please Note: While the creation of any topic is possible, a majority of the content discussed will be specific to project developers and may not be of interest to non-developer types. However, with that stated, I have started a forum thread regarding how those of us who live in the United States and other countries involved with the Iraq war can help make a bad situation, better. If you have some ideas, please take the time to share them with the rest of us. Thanks!
The first forum post reads:It seems to me that one of the most overlooked/under-used abilities of those of us who live in the United States and in other countries that allow such freedoms, is the ability to get involved and make changes. I recently made a post to my personal blog that suggested that maybe a better approach to solving the problems that have come about since the 9/11 tragedies, in particular the Iraq War, was to create a plan and then attempt to put that plan into action using the power afforded to us via our voting mechanism. I then suggested that others who have more notice in the tech industry use their notice and their knowledge to help develop such a plan and bring attention to this plan when the time was right. What I forgot to realize was that I had the ability myself to get the ball rolling. So I am.
Maybe my approach is naive. And maybe what I believe is possible, isn't. But until I try, I'll never know. If I never did try, not knowing coupled with the guilt of "what if" is something I would have to live with for the rest of my life. I already live with enough "what if"'s, I have no desire to live with any others.
I don't have or know the answers to how to help make a bad thing in the Iraq War better. But I'm hoping that others might.
As such, the forums are now open.
Thanks for your involvement everyone!
Until I have finished my commitments/responsibilties to my publishers I don't have a lot of extra time to put towards this project as well as the other related projects. But I do have some. And what I have, I will give.
I've also talked with Kurt Cagle on this subject and he too plans to get involved as do several others. As time permits you will more than likely see some blogs entries appear. Hopefully as time continues, LOTS of blog entries. For now though, I personally can't make any promises and I don't want to make them for anyone else either. None-the-less, expect some activity over the coming weeks and months in these parts.
If you have interest in becoming actively involved in the development of this project and would like a blog setup on this site, please let me know. I will be checking email in the evenings (-0700) and will respond accordingly at that time.
Thanks in advance for taking the time to get involved!
Posted by m.david at 04:17 PM | Comments (0) | TrackBack
Boing Boing: Disney swaps stock for Pixar; Jobs is largest Disney stockholder
Disney swaps stock for Pixar; Jobs is largest Disney stockholder Britain's Torygraph newspaper is reporting that Disney has bought Pixar in an all-stock deal. Pixar had run out its deal to deliver movies for Disney distribution and was set to strike out on its own; in retaliation, Disney shut down it traditional animation division and replaced it with a CGI division that was every bit as lacklustre as the traditional animation division. Now it's gone ahead and bought Pixar from Steve Jobs, leaving him the single largest stockholder in Disney (!).The all-share deal will make Steve Jobs, the chief executive of Apple, around $3.5bn and the single largest shareholder in Disney. Jobs created Pixar in 1986 when he paid $10m for the computer animations division of Lucasfilm, owned by Stars Wars creator George Lucas.
I'm attempting to overcome the paralyzing effect the shock of this news has placed upon any attempt at brain activity (no comments from the peanut gallery! ;) and have discovered there are too many unanswered questions to try and think about in one sitting. Questions such as:
* What kind of effect could this have on a future that as time has moved forward seems more and more like a Yahoo!/Microsoft DRM stranglehold on the future, and, with this announcement, instead looks a little more level in terms of the playing field?
* How much of an effect will this have on other studios being unwilling to sign exclusive deals with Yahoo! in terms of internet distribution?
* Will Microsoft's WMA and WMV media file formats find themselves on less peoples media devices because of this agreement?
* How much of this brought about the recent announcement that Microsoft would no longer be providing and supporting a version of Windows Media player for the Macintosh platform? [NOTE: For those of you suggesting that the recent announcement of a five-year agreement between Apple and Microsoft to provide a version of Office for Macintosh null-and-voids this question, keep in mind... Different Business Units = Different Relationships]
* and more...
Seems like an eXplorations podcast in the making :)
Posted by m.david at 04:56 PM | Comments (0) | TrackBack
Technorati Search for: www.xsltblog.com
Buy retin In Acyclovir 18 hours ago Uprisen, buy retin Ostroem, Archbishoprick Hughson, his last-will-and-testament, and Peggy Carey were arraigned for felony, and pleaded not carpet-sweeper. The following gambisons of the laws of the XSLT:Blog[@author = 'M. David Peterson']/Code-of-t...
I noticed the first of these "Buy retin" links on the list of folks linking to this blog two(2) days ago, blowing it off as something the folks at Technorati new would, or at least could, become a problem, and were well on their way to fixing it as I doubt mine is the first/only blog that the spam-blogs have linked to.
But in getting my day started I checked my Technorati account to see if their were any links that did not also appear as a trackback and found yet another "Buy retin" link. This is obviously something that could become a HUGE issue if not dealt with within a reasonable amount of time as Technorati becomes an even more popular and a mainstream source to find up-to-the-second information regarding a specific topic/trend (and there's no doubt in my mind that they will.)
Just so the rest of you know, I'm making this post not to point out fault of any kind and instead as a courtesy. Everyone (more specifically the male-types on this planet) forgets to zip their fly every once in a while, and with the level of talent that they have at Technorati, no doubt they will figure something out in a reasonable amount of time. As such...
Yo Technorati, your fly's unzipped. :)
Posted by m.david at 11:40 AM | Comments (0) | TrackBack
I’ve always believed XML to be over-hyped. It’s good technology, but it’s a buzzword.
A buzzword?
Huh... Just a quick question... How old can a technology be before it loses its "buzzword" status? Here, I'll make it easier... give me a comparison to other buzzword technologies...
... like other buzzwords, such as Ruby and AJAX...
Oh... well that helps. Thanks!
---
To catch the rest of you up,
No, I haven't gone all retro on ya and pulled out a post in some old-school forum from 1999. Thats the wonderful thing about XML data feeds. This information is readily available and can be read by both humans and machines with ease. According to the data feed that contains this post (I'd link to it, but you may have to trust me when I state I'm doing you a favor by not linking to it) this post was published on
Mon, 24 Oct 2005 03:44:16 +0000
"But I don't need an XML data feed to tell me that! I could be a REAL BIG BOY programmer and just extract that information from the Last-Modified Entity header which I can then use to safely determine the last time the file was saved to the server, and use this information to accurately determine the last time new content was added, right?"
Oh boy...
You know what... I'm killing this post here as its a complete waste of time trying to talk to folks who, in late 2005, consider XML a buzzword, comparable to other buzzwords such as Ajax and Ruby.
Generally speaking, I try to keep my requests to God to a minimum based on the notion that I have two arms, two legs, a brain, and the ability to use all of them in coordination (at least most of the time anyway.) With this ability I try to do as much on my own, saving requests for help when theres something I TRULY can not do on my own, and furthermore is something that I feel would not be a waste of His time:

Dear God, HELP US! Amen.
Now all we can do is hope.
"Shhh... Ya never know -- oh, I mean -- Yarrrrr never know... if we're REEAAAAALLLLLLLLYYYY quiet it might not even know we're here."
Probably a safe bet.
Posted by m.david at 01:11 PM | Comments (0) | TrackBack
Bill de hÓra : Eclips-ing Python
Okay, this just sent chills down my back...
Peter Seibel declares victory. Now all we need is an Eclipse plugin for CLisp- they could call it "Eclispe". And then there would no question that Eclipse, was in fact, a 120M dollar port of Emacs to Java.
I'll stop about 10,000 miles short of suggesting that IBM purposely built deeper meaning into the naming of Eclipse than what the word itself represents. I think we can safely remove any hope that the Eclipse foundation might be willing to listen to any ideas of switching the position of 'p' and 's' but if an OSS project were to start up in response to Bill's post (or maybe one already exists/has been started?) I WOULD propose the following tag-line:
eCLispe : The e's Are Silent
NOTE: There's good reason(s) I hack instead of market. Example ^ ;)
Posted by m.david at 07:40 PM | Comments (0) | TrackBack
While obvious the marriage of Google and the The GizmoProject (as mentioned yesterday, Gizmo is by FAR and Beyond my favorite VOIP/IM combo-client, which just so happens to be built on top of SIP) doesn't have the same type of "Googlezon" potential, it was either "Enter Gizmo (Exit Skype?)" or "Googlezmo".
If you're response to this was:
"You chose 'Googlezmo' of 'Enter Gizmo (Exit Skype?)?'"
my simple answer would be:
You can read!? No way! Well, if you can read, can you write too? You can?!Fantastic!
I guess that mean you can go write your own damn blog title Mr. Smart E. Pants!
NOTE: For those of you are pretty sure you just witnessed me
have a hypothetical conversation,
with myself,
that then led to a hypothetical argument,
with myself,
which then came to an end with a hypothetical insult,
directed to myself,
here's my advice...
Don't believe the hype!(othetical)
Oh my, did I really just say that?
Yikes!... It's only getting worse, isn't it.
Well then, let me get straight to the point before I make any more of a fool of myself than has already transpired... ;) (Too late!)
Allright Mr. Snippy!!! Thats about en...
...you know what, nevermind... I think Mr. Crazy has had plenty of time outside of his cage today, don't you? (dont answer that!) ;)
As such (or for now, however you choose to view it), from the above link we find:
San Diego, CA January 18, 2006 -- SIPphone and Google Talk became the first major instant messaging networks to launch complete compatibility between their userbases. This relationship is the culmination of over six months of cooperation between the two companies to bring a fully interoperable communication experience to the world. Available immediately, Gizmo Project and Google Talk users have seamless connectivity between the networks as if they were one.Google Talk and Gizmo Project have invested engineering resources into the server and clients to make communication simple and easy. Interoperable features incorporated between the two services include:
* Instant messaging, which allows users of Google Talk and Gizmo Project to communicate across networks.
* Full address book management, including the ability to send invitations to members of other networks.
* Presence (online, offline, away) so you can see if your contacts are available to chat.
For those of you who might find a nice visual aid of just what the Gizmo project offers, I flat out robbed the following graphic from the GizmoProject site. But given that its
a) in the open domain, and
b) being used as an advertisement banner to get people to visit their site, and
c) I could really give is a shit either way as I'm tired, grumpy, and in serious need of an attitude adjustment (isn't part of fixing the problem, recognizing you have one... or twelve.. or whatever? ;)

[Thats not the image, the next one is... but I wanted to point out that when I've become too lazy to even find reason to open up Photoshop to, create a new graphics, or at very least tweak an existing one, and instead am willing to use the same graphic from two post's ago... You know it was time for bed a LONG TIME AGO for me... Sorry for making you victim... I feel really bad :( (BBBAAAAAHHHHH!!! (that was supposed to be a sorta of "Hell Na'/whateva" combined, but I'm guessing it probably came across more like a sheep, huh? Sleep is NECESSARY SOON! :)
Anyway, heres the image I was refering to...

For those who are now stating "Wow! Thats a lot of Bells and Whistles," you might be amazed at just how spot on accurate you are with that statement... Ok, so its not perfect (I'm not so sure I would be all that happy if somebody were to blast me with one of the plethora of Bells, Whistles, and other things with similar (or worse!) annoying qualities. Am I alone in this?) but in all serious it beats Skype in EVERY category including sound quality, native ability to record both sides of a conversation for podcasts and such, no limit on the number of folks in a conference call (actually, there might be, but if there is is somewhere close to the 100 person mark... I think that should be just fine for everything EXCEPT if my family were to choose to have a family reunion on using the Gizmo Conference call feature... and this doesn't include the other half of my family (cousins, aunts, uncles from my Mom's side) that live (mostly) in Perth, Australia (a few have moved to Europe, a few others in 'Uni' (as they term what here in the US we term as college ( I think we're the MAJOR minority... if I'm not mistaken, Uni is pretty common EVERYWHERE but the US) at various Australian Universities.
To save you the effort, and still get the general feel, here's a screen shot from the above linked family-reunion from a year and half ago (I was taking the pics):

Moving past this, and back to the point of the post, which I swear existed when I first chose to make not of this announcement!
Anway, I noticed (and swyped as well) this image of the Adium mascot. I learned of Adium via a Tim Bray post a few weeks back, and after installing it on my Mac laptop, has become have since made it my default IM client on this box. While intially I purchased the laptop as a test machine for the Safari browser, I actually adopted it as my default local coffee house machine as its a bit smaller than my Thinkpad although thicker and a bit heavier. Still, in cramped coffee shop quarters the 12 inch body of the iBook does help, and its a good time to get to know the OS and hardware as well.
BTW... for those unaware, I am an AVID Thinkpad fan! Bought my first in '97 and have upgraded regularly since... until, of course, they sold this portion of their busines, at which point I'm pretty sure to 'you're damn skippy' positive invoked a week long panic attack and at least a tear or two in both mourning and fear of what I was going to replace my t40 with when it came time to "Let Go and 'LETS GET SOME MORE, BABY!!! WOOHOOOOO... THINK-PAD, THINK-PAD, I GOTTA HAVE MY THINK-PAD!!!" which, I guess, is the same type of behavior I critize MacAttackers for having...
hmmm.... well, for me its different... (you sure about that M.?)
Ummmm.... No.
(yeah, bed.... soon :),
So anyway, even though I had vowed that after IBM sold things off to Lenovo, my beloved ThinkPad's would be all but gone in a few years, I am happy to see that, thus far, they have done an OK job of keeping things fairly close to what make them such GREAT laptops in the first place... reliability, size, speed, weight, etc... etc... etc...
Then again, with this recent campaign that introduces the titaniumn frame as "the future" I may be speaking too soon.
Hey Lenovo...
DON'T FUCK WITH PERFECTION!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! PLEASE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
WE DONT WANT TITANIUM, WE DONT NEED TITANIUM, WE JUST NEED OUR SIMPLE BLACK THINKPADS.
Ya think you could handle that?
I sure hope so....
Last part of this post, and then off to LaLa land for me (no, believe it or not, I'm not already in LaLa land ;)
So based on Tim's post, I loaded Adium, and have found it to be an EXTREMELY useful and well thought though design, just as Tim made mention (not that I doubted it to be the case. Tim tends to be right more often than not... Like many, I do disagree with his recent XML post, but I can also understand why he posted it after watching every person on the planet attempt to create their own formats, and as such we end up with some REALLY BAD STUFF!!!
So how does any of this relate to Googlezmo?
Those of you that use Adium will recognize the following mascot icon:

Obviously this was originally just taken off the Adium site, but this one came off the "Extra's" section where you will find the necessary link to download direct integration for Adium/Gizmo which, as mentined, now support the ability to log-in with your Gizmo app to the Google Talk XMPP/SIP-based system.
Sweet!
Enjoy your day! :)
Posted by m.david at 10:53 PM | Comments (0) | TrackBack
Even with as much hype regarding the release of Oxygen XML 7.0 I've been pushing your way, it's only just now that I am finding a chance to play with the final release for the first time.
Yeah... I need to get a life ;)
But not yet.... still have commitments to finish out... Soon though, VERY SOON (at least this is what I keep telling myself (and you (speaking collectively to the part of the blogosphere who happens to be paying attention at this moment (or that moment)) for that matter ;))
K, I'm not even sure I understood what I just wrote.. bad sign.
So anyway, I took a few moment to watch the above screen cast of Oxygen 7.0 on action, and I have one thing to say:
THANK YOU GEORGE (AND COMPANY)!!!!!!!!!!!!!!!!!! If I could hug ya right now, I would (don't let that scare ya though... I currently have no plans of traveling to your part of the world for a surprise visit.
With that said, I do plan to attend several industry conferences this year, so if you're at one of them... well, you've now been warned ;) :D
Have I ever mentioned how much I LOVE OxygenXML?
No?
Well then....
I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML I LOVE OxygenXML times infinity!
Thanks again George (and company)! Once again, you've outdone yourself and as a result, have made ALL of us who are proud users of OxygenXML about 10 times more productive than we were before now... which given the fact we were all users of previous Oxygen releases meant you had to dig down deep and find a way to Yet Again Amaze Us With Your Talent And Dedication.
There was never a doubt in my mind before now that the 7.0 release would be spectacular!
But I had NO IDEA how spectacular, spectacular could be. :)
NICE!!! :D
NOTE: For those of you who might be reading this and thinking:
a) uh, phreak!
b) he's being paid to say this, no ones THAT MUCH of a phreak!
My answers:
a) you nailed that one, didn't ya!
b) part one: nope. not a dime. part two: no comment. ;)
BTW... to ensure that I don't find myself in some awkward situation at some point because of part one of question b... Due to the good graces of George from a while back, the Saxon.NET project, something I'm a part of ;) was given 10 licenses for Oxygen to use for the ongoing development of this project. Obviously Oxygen in an XML/XSLT/XPath/XQuery editor, so while I've never used Oxygen as a way of working on the Saxon.NET code directly, combined with the notion of developing test files, another important point to point out is that George spent a considerable amount of time last year working on bring integration of Saxon.NET into Oxygen. Combined with the fact that Oxygen provides by far and beyond the best XSLT debugger on the market (and has for a LONG time!) you can easily see just how important a role Oxygen has and will continue to play in this project.
With the above in mind, I will admit that I still use one of those 10 licenses to this day, as do many of the others who in various ways, help with making Saxon.NET a better project. But if you look around my site, theres one thing you'll notice that doesn't exist, and after a VERY BRIEF experiment (two or three weeks if I remember correctly), will NEVER exist on my site.
Ads.
Well, I take that back... there are a couple times I have promoted books that I own and enjoy and have linked to Amazon.com via my Associates Account. But if you could showcase that I've done this more than five times in the year and a bit history of this blog, I would be SHOCKED!
Don't get me wrong... I'm not trying to bring praise to myself, and suggest that I am a better person because I don't have ads on my site, and others do. I have no problem with ads... as long as their on other peoples sites :) They just don't fit my style, so I don't have them on my site. So, with this said, there are a few things I do promote. The group of folks, groups of folks, and companies in the left hand column of the front page of this blog, and anyone I feel deserves to be praised for all the good things they have brought into this world...
George is one of those people. I use Oxygen on a daily basis, and if not for his ongoing generosity to keep the Saxon.NET project "funded" with licenses, would have quite happily have paid for each and every inexpensive upgrade I have enjoyed over the last few years. And I am in no way the only person who feels this way...
Just ask ANYONE else who uses Oxygen. They'll tell ya. :)
Enjoyr your OxygenXML-enhanced Day, everyone! :)
Posted by m.david at 06:05 AM | Comments (2) | TrackBack
Just received this from the One Campaign. I mentioned a bit ago that I plan to post an entry with each request that comes through the pipeline, and that hasn't changed. As such please read the message that recently arrived in my inbox (obviously you will need to replace my name with yours... I think thats probably OK, don't you? ;) and if you feel compelled by the message, please take action accordingly.
Thanks! :D
---
Dear M. David:
Thank you for taking action! You and over 75,000 other ONE supporters have already written to President Bush and asked him to keep America's promise to fight AIDS and extreme poverty. Now it’s time to take the next step:
Please call 1-800-786-2663 and ask President Bush to support a $5 billion increase in the fight against global AIDS and extreme poverty in his budget request to Congress.
With this funding, America could increase efforts to help the 100 million children out of school around the world get into a classroom and moving toward a brighter future. Education is a tool that works in the fight against poverty— so effective that America joined over 180 nations in committing to ensure that all children get a chance to go to school. In America, we know that education is the key to opportunity. Whether it’s a child on a school bus in Des Moines or in a classroom in Ghana, education is an incredible investment that pays off, helping people have longer lives, healthier families and a stable income.
Call the White House today and ask President Bush to keep America’s promises and fully fund the fight against AIDS and extreme poverty.
To ensure your voice is heard, ONE has set up a toll-free number that will connect you directly to the White House in Washington, DC.
Call 1-800-786-2663 TODAY and help make poverty history.
Together, we can show America's commitment to keeping promises that have the power to transform millions of lives.
Thank you,
The ONE Team
---
Posted by m.david at 03:12 PM | Comments (0) | TrackBack
Official Google Blog: Open federation for Google Talk
We've just announced open federation for the Google Talk service. What does that mean, you might be wondering. No, it has nothing to do with Star Trek. "Open federation" is technical jargon for when people on different services can talk to each other. For example, email is a federated system. You might have a .edu address and I have a Gmail address, but you and I can still exchange email. The same for the phone: there's nothing that prevents Cingular users from talking to Sprint users.
While this news was expected, the fact that this announcement has been officially made means several things:
* A major presence player has chosen to focus on XMPP (Jabber) and SIP (Session Initiation Protocol, see this post for more information.), the two major open standards for communication via XML messaging, and voice, respectively.
* Any client, server, component, or code library that implements Jabber or SIP can interact with Google talk.
* The open standards movement just got a HUGE jolt that should ignite some serious investment of cash flow into applications that extend upon XMPP and SIP
* The other IM folks need to think long and hard about whether or not this presents enough of a threat to their own IM networks to warrant adding support for XMPP.
In regards to SIP, believe it or not, Microsoft was the first major company to implement an SIP-based telephony product in Windows Messenger. They've had support for four or five years if I'm remembering correctly. Although, in quickly looking I don't see any real signs of life of the Voice.NET project, which was one of the projects that implemented integrated support for SIP... anyone know if thats now dead? Anyway, not a huge concern, and could have very well been absorbed into the Windows or .NET Messenger projects (the second seems likely.) In fact there's a version of Windows Messenger (different from MSN Messenger... not sure if MSN Messenger implements SIP or not... but thats not of major concern, as the provided links points to a version that supports .NET messenger service, which I believe, although I need to check to be absolutely certain, is the service that MSN Messenger uses.) which provides direct support for .NET Messenger service, SIP, and Exchange 2000, and as such, should allow you to communicate with any users of MSN Messenger, SIP-enabled client (via a server such as Asterisk*), as well as through Exchange 2000. Very nice and VERY extensible from a programmabilty standpoint. Thats a tough package to beat!
HINT: With MS already providing support, Google now providing support, and FANTASTIC clients already in place such as the GizmoProject (which I will use quite often... it kicks Skypes A$$ -- the above linked SIP post will explain more), and Asterisk* or