the singularity of being and nothingness
Archive for June, 2008
Woot! My CSS-Gallery is Online!
Jun 19th
I am extremely proud to present my very own CSS Gallery, CSS Imagine. For those who have been following my blog the last couple weeks, you'll recall me alluding to this very special day. Well, it's finally here and I am very, very, very excited!
Please take a second and check it out. If you're a designer, or just know of a killer site that needs to be on CSS Imagine, please take just a moment and submit it. Also, please let me know your feedback–I am incredibly anxious to hear people's responses to this gallery and some of the functionality that I have built in.
So yeah, check it out, and be sure to follow CSS Imagine on Twitter and ScrnShots too!
Share this:On Becoming a Better Web Designer, in 4-D!
Jun 17th
Just over a month ago, I blogged about the benefits of unobtrusive JavaScript, and how it helps not only produce standards-compliant HTML and CSS, but additionally creates a framework for creating applications that is extensible and reusable.
In this installment of this series, I would like to build on this idea a bit. As you delve into unobtrusive JavaScript, you will soon learn that generifying your JavaScript functions becomes unavoidable. Yes, I said "generifying." Let me explain.
Using inline JavaScript usually means one of two things: A.) you have a one-off function that you need to fire, and you just want to get something working NOW. Or B.) you've not really investigated unobtrusive JavaScript very thoroughly, and are content with using inline calls for even the most complicated functions.
If A.) is the scenario, as your application grows and you need more functionality from your JavaScript, life is going to suck very quickly because you're going to have to do a lot of backtracking to catch up all those inline calls to match any changes you've made to accomodate new functionality. And if you're one of the B.)'ers, you'll have to do what the A.)'s are stuck doing, plus you'll have some major More >
AJAX Gotcha…POST vs. GET
Jun 12th
A rather annoying issue I ran into this evening when testing my up-and-coming CSS gallery on a live server was that all of my cross-domain AJAX calls were failing in Firefox. I'm used to stuff failing for stupid reasons in IE, but this one was unique. I tested in Safari (for Windows), IE 7, and Opera–all of them worked beautifully. But for whatever reason, Firefox horked on the code.
Well, it turns out it was a simple fix. In my AJAX calls, I was using the Spry loadURL() function. For this function, you can specify whether the call should be a "POST" or "GET" method. I assumed for my remote calls that I would be doing POST methods.
After all was said and done, it was apparently the POST methods that Firefox was having a coniption over. I changed the methods really quickly to GETs, and everything worked again in all browsers.
As I am mostly stupid, I have no reason why this happened–however, perhaps this will be useful to some other poor code monkey out there who is betrayed by Firefox in the wee-hours of the night, and maybe a wiser soul would be kind enough to post a comment about More >
Coming Soon…Very Soon!
Jun 10th
Remember the CSS Gallery I wrote about a while ago? Yes, the one that I'm building? Well, IT'S ALMOST DONE!!
I am incredibly excited. The design, I feel, really came together, and the final result is something simple and sleek, but still (at least IMO) memorable.
One of the most exciting things about this project for me is that it's allowed me to flex some ColdFusion 8 muscles–muscles that I have had not yet really had a chance to use until now.
What kind of features are there going to be? I'm glad you asked!
On the client side, I completely Web 2.0-ified the site submission process. When you click "Submit", instead of getting redirected to a form page, I'm using Thickbox to present the form. The form itself is pretty sweet, too. First, there's a fairly interesting hint tool that I developed. But the power of the form is that not only does it check the XHTML and CSS validation on the site you enter while you're finishing up the form, but even the form submission itself is AJAXed. No stupid submit and refresh here!
Once a site submission is approved and live, each site will have comments attached, as well as a rating mechanism. As More >
Did I Ever Mention that PHP is Dumb?
Jun 10th
I do not like PHP. Period. Sorry. I find it clunky and it makes me irritable. Sure, it's free, but so what? There's a lot of free things that I don't like (like the flu, for example).
What's my beef? Tonight, I launched my first successful WordPress integration. For the testing phase, I had the installation in a sub-folder off the main site. Everything worked great.
But finally I moved it to the root. Guess what? PHP got angry at me. On nearly every page I received this error:
"Warning: Cannot modify header information – headers already sent by (output started at blah, blah blah)."
Apparently this is common error, caused by whitespace. Really? Stupid. I can't believe that PHP can't process a file with whitespace…just seems really, well, dumb.
But the kicker is this: nothing changed between moving the files from my testing folder to the root! For whatever reason, PHP didn't care about it when it was in the testing folder, but then changed its mind when I moved the files. Again, dumb.
Anyway, the fix was really simple. Turns out that there were two lines of whitespace in my wp-config.php file, whitespace which I didn't put there (thanks WordPress).
Urghh. More >
Quick Look at ScrnShots' API
Jun 4th
A few months ago, I ran across ScrnShots. It's basically a service for uploading, tagging and sharing screenshots of websites. This is pretty useful for me given my profession :).
One of the things, however, that has always impressed me about the site is how easy and fun to use it is. It features really deep networking capabilities, the tagging is pretty robust, and everything is fast, fast, fast!
Of course, while uploading from the site is easy, I've been waiting with baited breath for them to release an API. Well, recently this happened, and I couldn't be more excited!
The API is alot like Twitter's in that it uses Basic Authentication for user-specific http calls. While not the most secure form of authentication, it is ridiculously easy, especially if you're using ColdFusion whose cfhttp tag has a built in mechanism for managing it.
So tonight, I spent a couple minutes digging into the API, and came away with an easy function for uploading, tagging and providing a description and link for an image. And of course, if you're using ColdFusion, it's cake!
Here it is:
<cfhttp url="http://www.scrnshots.com/screenshots.xml" method="POST" charset="utf-8" username="existdissolve" password="password" multipart="yes"> <cfhttpparam name="enctype" type="header" value="multipart/form-data"> <cfhttpparam name="screenshot[uploaded_data]" type="file" file="#filearea#" mimetype="image/jpeg"> <cfhttpparam More >