the singularity of being and nothingness
Archive for October, 2007
Slowly Getting Handier with Javascript
Oct 30th
Okay, so for people who are javascript heroes, what I'm going to write about is ridiculously lame. But I think it's cool.
Yesterday, I was working on an application for a client. Part of it needed to use the fancy lightbox feature for images. But on top of this, the client wanted to be able to not only place captions on the lightbox images, but also make elements of the caption linkable.
This is not hard, but for those not used to writing HTML, much less nested HTML, this can be a challenge–definitely not user-friendly from a client's perspective. The easy solution was to provide a "template" that the user could copy, paste and alter as needed. Unfortunately, this is not a very good solution as slight mistakes can cause terrible problems which are not easily resolved by those who don't know how to fix it, much less what the problem actually is.
So I set out for another solution. I've always admired WYSIWYG editors in that they allow users to easily add complex bits of code (like <a> tags with multiple attributes) through a form, which itself inserts the complied code into another form. Always intimidated by javascript, I thought this More >
A Sexy Spry Gallery
Oct 27th
If one has been on the internet for 3 seconds, it is obvious that dynamic photo galleries are useful and popular things. After all, who wants to scroll through pages of pictures when they can all be loaded into one interface that can be controlled like a CD player (remember those…)?
Historically, the best photo galleries have been handled by Flash. After all, it is a super easy thing to do, can be highly stylized and customized, and just generally works well. The attendant problem, however, has been two-fold. Although generally lightweight, Flash is still pretty bulky, and as Interent Explorer has made us painfully aware, is not always treated with open arms by browsers. Second, unless one has gone to trouble of coding to read an XML file, or is using remoting to connect to a database, Flash is just a pain to manage and can be time consuming to make simple additions, deletions, etc.
In recent years, some very good javascript alternatives have popped up. While some are far better than others, the appeal of all is that they are generally less bandwidth expensive than flash and can be *more easily* modified than their flash alternatives.
Spry has made its More >
A Feedreader with Spry
Oct 18th
I know I've been posting alot about Spry lately, but the more I use it, the more I love it! Using the simple-to-implement tools which Spry provides, I am able to spend more time dealing with server-side processing, rather than fighting javascript to get a couple of cool effects.
A few weeks ago, I blogged about using Spry to return confirmation or error messages for a registration form asychronously to alert users to possible errors in their form BEFORE submission.
Today's example is based on the same principle, although more of an "independant app." A week ago, a co-worker and I were talking about the idea of placing a "feed reader" inside of a web page, so that users could not only display links to feeds that they follow, but also allow for the feed to be displayed directly in the page. After our conversation, my thoughts immediately turned to Spry as I was sure a quick, easy solution would be possible.
I was right.
There is really nothing to this. In classic Spry usability-friendliness, this can be accomplished in about two lines of code:
var dsFeeds = new Spry.Data.XMLDataSet("getfeeds.cfc?method=updateFeed", "feeds/feed", { useCache:false });var dsFeedContent = new Spry.Data.XMLDataSet("getfeeds.cfc?method=getFeeds&feedURL={dsFeeds::link}", "rss/channel/item");
The first line creates a Spry More >
Making All Things New
Oct 15th
And He who sits on the throne said, "Behold, I am making all things new."
In an age in which global warming, climate change and concerns about the viability of our planet's environment are seemingly on the forefront of everyone's mind, it is often difficult to find peace and clarity. Everyone wants to blame someone else for the planet's troubles, and the ones who are blamed want to disavow that a problem exists…and all the while a nascent despair settles in as we seriously doubt the kind of future that our children and grandchildren will inherit from us.
In the midst of these concerns, I take comfort in the words of the eschatological Christ, the cosmic redeemer who proclaims from timelessness that all things are being made new. The tense of this phrase, "I am making" is significant, for this does not speak of something that has already happened, nor of some nebulous future event that might be easily metaphoricized in the face of the harsh realities of the present. No, Christ speaks of the continuous act of creation which is even now occurring, a process of rebirth which is not merely a "correction" of the original creation, but is actually More >
Quick Post: blogactionday.org Reminder
Oct 9th
Just a quick reminder: blogactionday (October 15) is approaching rapidly–next Monday! This is a day where bloggers are encouraged to devote a posting to the environment, regardless of their views of the multifarious issues surrounding this topic.
existdissolve.com is signed up for it, and I would encourage fellow bloggers to do the same. It only takes a second, and you can do it at blogactionday.org .
Finally, as a bit of mild entertainment, blogactionday.org has released a "What Kind of Blogger are You?" test. I took the test and am apparently an "undiscovered young upstart purist." Hmmm…Anyway, if it sounds interesting, take the test here . If you do, let me know in the comments how you fared…
Share this:Application Framework Infidelity
Oct 7th
On the whole, I tend to be fairly loyal in media technologies. I do what I can to support Adobe –I use ColdFusion, the Adobe Creative Suite , and I have even blogged several posts about Adobe's cool javascript framework, Spry . However, sometimes loyalty doesn't cut it. Every once and a while one will run across a problem that requires a certain solution, and said solution cannot be had in such a way that loyalty can be maintained.
Such happened to me recently. I have been developing an application at work that will be using a drag-and-drop feature. Being the loyal Adobe fan that I am, I went immediately to Adobe's Spry framework to search out an answer. Unfortunately, Spry does not currently include drag-and-drop functionality. As an aside, this is not something accidental. I found a thread from a few months back (Spry 1.5 era) in which this functionality was requested. The powers-that-be responded that they did not see enough use cases in which this kind of functionality would be needed. Although the thread participants presented a good number of suggested use-cases, Spry 1.6 is conspicuously missing this functionality.
So…what do you do when your go-to framework doesn't have what you need? You cheat More >
CD Review – Emery's "I'm Only a Man"
Oct 4th
Within the last six months, my little brother has introduced me to some seriously cool music. One of my favorite bands from this "education" is Emery, a hard-hitting "screamo" band hailing from the Tooth and Nail label. Instantaly I fell in love with their unique, emotive style and have practically memorized their first two full-length albums.
A few days ago, I heard rumors from my brother that a new album was imminently forthcoming from the band, a fact subsequently substantiated by the release of "I'm Only a Man" on Monday. Going into this album, I had high expectations and even greater anxiety. It is also nerve-wracking to go into a new album, not knowing whether or not it will engender a significant move forward for the band or an equally, but more devasting and disappointing mistake.
Undaunted, I loaded Napster at work and pressed "play" (I love Napster, BTW). I listened without pause through all the tracks, listening intently for indications of how the newest project would impress itself upon my musical conscience. After the first run-through, I admit I was a bit disappointed. To begin, this album is a lot more subdued on the "scream" part of the "screamo". While More >
A Little Taste of Spry 1.6 Goodness
Oct 3rd
A few days I blogged about Adobe's release (and sexy-fication) of the javascript framework Spry 1.6. While I have not had a lot of time to play around with the absolutely unique elements, some cool additions are the improvements they made to the password verification and confirmation widgets. With the root password widget, the developer can create a pretty robust set of validation rules for user-entered passwords, such as setting minimum and maximum lengths, required special characters/numbers, etc. The best part is that the Spry framework makes these validations incredibly easy to implement on a normal HTML form. For example, here is an example password field I have created:
<span id="passwordValidation"> <input type="password" name="password" id="password" /> <span class="passwordRequiredMsg">Please enter a password.</span> <span class="passwordMinCharsMsg">Your password must be at least 7 characters long.</span> <span class="passwordInvalidStrengthMsg">Your password must contain at least 1 number.</span></span>
That's it. Basically, the entire password widget is a span wrap on the password field. Within this, special validation messages can be defined. On this example, I have set an error message for "required," "minimum characters" and "password strength".
On the function side, the following is all that is required to fully validate this field:
var password = new More >Peacocke Tuesday – Randomness and Causality
Oct 2nd
Over the last week, I have rolled through several chapters of Peacocke's book, "Theology for a Scientific Age," and I will not spend time going over the finer details of each discussion. I simply wish to note one of the issues that stood out most to me.
In a sort of continuous investigation, Peacocke looks at the nature of causality and its relation to the universe in which we live. Until the last century, it was generally assumed that causality was a one-way street, a sort of "top-down" movement with determinable and predicatable outcomes. What recent inquiry has revealed, especially in relation to quantum physics, however, is that causality is infinitely more complex than the old assumptions would leave one to believe. Because of the interconnectedness of the universe, the precise nexus of the "cause" of an "effect" becomes increasingly blurred as the lines between a "something" as cause and the same "something" as effect converge more closely upon one another.
So what does this mean? Far and away from the classic models of the universe which assumed that absolutely predicatability of naturalistic processes could be gained by a sufficient amount of data, this understanding of the interrelatedness of causality reveals More >
A New Day, A New Spry
Oct 1st
Recently, I have blogged about how incredibly cool Adobe's javascript framework—Spry—is and what potential it has for making great dynamic web content. In those posts, I was talking about Spry pre-release version 1.5. Up until 1.4, it would not seem that Adobe was too terribly interested in marketing Spry. After all, there had not been even a logo created for the project, and the online documentation and samples was incredibly difficult to navigate. With 1.4, Adobe made the smart move of bundling Spry into Dreamweaver CS3, with native Dreamweaver support for Spry tags and functions, a major benefit for noobs like me getting their feet wet with a javascript framework.
However, about a month after the release of Dreamweaver CS3, the Spry team released 1.5. It included some seriously cool updates on all fronts–data, widgets and effects. But for whatever reason, they did not release a Dreamweaver updater. This means that to use 1.5, the user had to download it and replace the bundled 1.4 files with the new version. While not a huge deal, it is not particularly helpful for Dreamweaver support of the new features as they were not included in the original release. As a plus, a More >