Previously, when HTML coders wanted to cause a link to open in a new window, they used the target
parameter in their anchor tags, specifically <a target="_blank" ...>
. This, of course, is deprecated (invalid) in the current standards (HTML 4.01 Strict and XHTML 1.0 Strict). While the target
parameter apparently will return in HTML5 we are nonetheless left with the current dilemma of how to recreate this behavior.
I have noticed a small variety of popular responses, solutions, to this:
target
parameter
<a target="_blank" href="http://tyleruebele.com/">
<a onclick="window.open(this.href,'_blank');return false;" href="http://tyleruebele.com/">
rel
parameter value external
<a rel="external" href="http://tyleruebele.com/">
<script type="text/javascript"> var anchors = document.getElementsByTagName("a"); for(var i=0; i < anchors.length; i++){ if(anchors[i].getAttribute("href") && -1 < anchors[i].getAttribute("rel").indexOf("external")) { anchors[i].target='_blank'; } } </script>
Option 1 is clearly outside the intent of the standard and this article. Option 2 is compliant, and cleanly self-contained in the anchor. Option 3 attempts to replicate the simplicity of <a target="_blank" ...>
with rel="external"
, and recreate the functionality with a few lines of javascipt, typically added to the end of the document.
There has been a lot of chatter lately about using exercise balls as chairs. There are many who tout supposed benefits of sitting on the large inflatables all day, instead of a contemporary office chair. Contrarily, there are some concerned voices letting us know why it could be a bad idea. It's quite the fad of late with balls showing up not just in homes, but business offices. There is even an established radio/podcast personality who does all of his broadcasts sitting on an iconic blue ball. Ironically, he also demonstrated a risk on his live broadcast. Despite his peril, I've been interested in trying it out myself.
But I had a different idea. I wondered what I could do that would take up less space. Looking around the house for what I had at my disposal, I found some scraps of wood and decided to try a basic one-legged stool. In the quickest build you can call a build, just nailing two already cut scraps of wood together with three nails, I had my new stool. It was just the right height, small, easy to store away, and not a bad sit. Unfortunately it was too stable -- it didn't accurately enough mimic the experience of the exercise ball. The fixed joint gave me too much lateral stability, and the forward width of just over five inches gave it too much forward stability. Worst of all, it didn't bounce.
more...I like to take a lot of pictures. Sometimes, when I see a particularly appealing scene, I will take several overlapped pictures with the intent of putting them together into one panoramic image. In the past, I've tried to use Adobe Photoshop CS2 (or other made-for-the-job tools) to assemble my panoramas. My success was... limited:
Notice how you can see every seam?
More recently, I discovered Microsoft Image Composite Editor which Microsoft offers for free. It's not officially supported, and not a complete product; it has few options for the user to manage, meaning that there is no way to correct what it does wrong. That said, it's by far (by far) the best panoramic image compositor I have seen (not that I have seen many). The single most important aspect of its method is, I think, the perspective correction it does on each frame before trying to combine them. Consider the below rendition of the above panorama:
Or this demonstration of a full 180 degree pan, in which I turned the camera on its side to get more vertical coverage:
I have plenty of other stitched panoramas for your viewing pleasure!
Quite some time ago a co-worker experienced a computer failure. She did not have a backup. She scoured her digital world for any trace of her data. Some of her music was on her iDevice, and while Apple doesn't like to let you copy music off their branded devices, various third parties provide the tools she used to make it happen. Then there was the several hundred photos she had posted on facebook, either in albums, or merely tagged of her. Because facebook scales down uploaded photos, it makes a lousy photo backup site, but when compared to total loss; her choice was evident.
But how to recover several hundred photos from facebook without spending days right-clicking? Ask meyour programming co-worker, of course!
Faced with the challenge of manipulating facebook's album pages to download all of her pictures, I turned to Firefox's Greasemonkey plug-in. Greasemonkey lets users run user scripts, which are basically scripts, run by the user, to various web-pages. In this case, facebook's album pages. Making extensive use of firebug and some basic javascript skills, I was able to coax firefox into downloading an entire album. Running this user script against each of her album pages produced all of her pictures for her.
more...