<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-37445403</id><updated>2011-09-21T23:36:29.214-07:00</updated><category term='yui'/><category term='resizer'/><category term='flash'/><category term='yahoo'/><category term='dialog'/><category term='block'/><category term='comment'/><category term='clear'/><category term='javascript'/><category term='inline'/><category term='web'/><category term='stixy'/><category term='debugger'/><category term='gc'/><category term='events'/><category term='spaceship'/><category term='overflow'/><category term='png'/><category term='igoogle'/><category term='gauge'/><category term='dhtml'/><category term='string'/><category term='firefox'/><category term='menuitem'/><category term='carousel'/><category term='jaman'/><category term='css'/><category term='garbage collecting'/><category term='rounded border'/><category term='browser'/><category term='animation'/><category term='video'/><category term='meebome'/><category term='round corners'/><category term='performance'/><category term='mashup'/><category term='sprites'/><category term='menu'/><category term='embed'/><category term='float'/><category term='code review'/><category term='debug'/><category term='lazy load'/><category term='google maps'/><category term='cookies'/><category term='internet explorer'/><category term='newsvine'/><category term='ajax'/><category term='meebo'/><category term='leak'/><category term='object'/><category term='yui javascript bindows'/><category term='on-demand'/><category term='fade'/><category term='bindows'/><category term='memory'/><category term='dashboard'/><category term='menubar'/><category term='game'/><category term='keylistener'/><category term='ie'/><category term='component'/><category term='primitive'/><category term='ui'/><category term='slider'/><category term='ie6'/><category term='html'/><category term='design'/><category term='scroll'/><category term='alpha filter'/><category term='fixed position'/><category term='prototype'/><category term='json'/><category term='motion'/><title type='text'>skypoet's world</title><subtitle type='html'>mostly everything, but mostly web development... mostly</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-37445403.post-33454681229889193</id><published>2011-05-09T20:42:00.000-07:00</published><updated>2011-05-31T21:19:38.513-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='fixed position'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='ie6'/><title type='text'>Oh the Scrollable Fixed Element in IE6!</title><summary type='text'>After two years of not writing a post, it's funny that I'm writing about IE6.  For goodness sakes, it's 2011!   The good news is that there's a really concerted effort to encourage people to move away from IE6.  Yes, it's not secure.  Yes, it doesn't support HTML5.  Yes, it has huge memory leaks, but IE6 still persists.Look at Internet Explorer 6 Countdown.   Look closely at Asia.  As of this </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/33454681229889193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=33454681229889193' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/33454681229889193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/33454681229889193'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2011/05/oh-scrollable-fixed-element-in-ie6.html' title='Oh the Scrollable Fixed Element in IE6!'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-5328637425782338945</id><published>2009-03-02T01:04:00.001-08:00</published><updated>2009-03-09T00:06:00.467-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='carousel'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>Super Easy Fast-Forward Reverse Carousel with YUI 3!</title><summary type='text'>I've been mucking with YUI 3 and playing around with carousels using their Animation Utility.  If you don't know what a carousel is, here's a suggested reading.  Our carousel is a little different.  Ours rewinds when we reach the end or fast-forwards when we're on the first and go to the last element.  We come up with something like this --Play with it.  It'll work on all the big browsers -- IE, </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/5328637425782338945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=5328637425782338945' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5328637425782338945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5328637425782338945'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2009/03/super-easy-fast-forward-reverse.html' title='Super Easy Fast-Forward Reverse Carousel with YUI 3!'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-6463041809040250078</id><published>2008-10-26T22:26:00.000-07:00</published><updated>2008-10-26T23:08:32.326-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='block'/><category scheme='http://www.blogger.com/atom/ns#' term='inline'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Don't Ever Put Block Inside Inline Elements</title><summary type='text'>                                                                     It's been incredibly busy at work so I haven't blogged at all in over two months. I did discover something which may seem obvious to you, but is worth repeating.  Don't ever put block elements inside inline elements.  If you do, in most cases, nothing bad will happen.  If you do, watch out.  It's better not to do it.  Here's </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/6463041809040250078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=6463041809040250078' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/6463041809040250078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/6463041809040250078'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/10/dont-ever-put-block-inside-inline.html' title='Don&apos;t Ever Put Block Inside Inline Elements'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-8466360104183654086</id><published>2008-07-10T08:05:00.000-07:00</published><updated>2008-07-10T08:07:17.711-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><category scheme='http://www.blogger.com/atom/ns#' term='google maps'/><title type='text'>Mashup Redo!</title><summary type='text'>My first mashup was way back in 2006 and like everyone else, I did one with Google maps.  It was really in vogue to do a mashup with maps.  It meant you got to play with AJAX.  You were hip!  My version looked like this.    I integrated the Google Map API with data from a Zip Realty feed.              I wasn't building a competitor to Zillow or Trulia.   I was just building a prototype for fun.  </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/8466360104183654086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=8466360104183654086' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8466360104183654086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8466360104183654086'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/07/mashup-redo.html' title='Mashup Redo!'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-1374231378430711370</id><published>2008-06-30T14:10:00.000-07:00</published><updated>2008-06-30T14:20:28.374-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='float'/><category scheme='http://www.blogger.com/atom/ns#' term='clear'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='overflow'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>On the Importance of Clearing Floats</title><summary type='text'>I've been doing a lot of work with the Big Three of web development -- HTML, CSS and JavaScript.  Prior to Yahoo!, I had done a lot of work with Bindows, a powerful "do everything" JavaScript framework.  You built your entire web application with Bindows.  You never manipulated HTML or CSS directly.  It was all abstracted for you with their API.I loved working with Bindows.  It allowed me to </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/1374231378430711370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=1374231378430711370' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1374231378430711370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1374231378430711370'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/06/on-importance-of-clearing-floats.html' title='On the Importance of Clearing Floats'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-402528585473530878</id><published>2008-05-21T21:23:00.000-07:00</published><updated>2008-05-23T18:56:17.726-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='code review'/><title type='text'>Code Review Goodness</title><summary type='text'>                                    I can honestly say that prior to Yahoo!, I never had good code reviews.  I think there were several reasons for this.First, my code reviews weren't emphasized as being important.  Sure, when a new project starts, there's the initial enthusiasm to discuss code reviews, but once it gets going and milestones are missed, reviews become secondary and it's far more </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/402528585473530878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=402528585473530878' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/402528585473530878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/402528585473530878'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/05/code-review-goodness.html' title='Code Review Goodness'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4566440878990317302</id><published>2008-04-14T22:06:00.000-07:00</published><updated>2008-04-14T22:20:36.437-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rounded border'/><category scheme='http://www.blogger.com/atom/ns#' term='round corners'/><category scheme='http://www.blogger.com/atom/ns#' term='sprites'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Cross Browser Rounded Borders Using Sprites</title><summary type='text'>I was reviewing techniques for rounded borders and came across this.   It uses four background images for each of the corners; however, they're not using a sprite.  So, we'll do it with a single sprite.  Once we're done, we'll have something like this that works on all the major browsers ( IE6/IE7, Firefox, Safari and Opera ) --First, we'll take the four corner GIF images that they have, make </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4566440878990317302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4566440878990317302' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4566440878990317302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4566440878990317302'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/04/cross-browser-rounded-borders-using.html' title='Cross Browser Rounded Borders Using Sprites'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4796826347064362300</id><published>2008-04-06T09:45:00.000-07:00</published><updated>2008-04-06T09:57:24.897-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='cookies'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='igoogle'/><category scheme='http://www.blogger.com/atom/ns#' term='dashboard'/><title type='text'>Persistent iGoogle Dashboards :: Redux</title><summary type='text'>            From time to time, I get questions about the iGoogle imitation example.   The most often asked question is how to persist the layout once you've moved the containers.  One way to do it is to use cookies.  Because the original example used the YUI library to handle drag and drop and because YUI 2.5.1 now supports a beta cookie library, we'll take the cookie approach.Keep in mind that </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4796826347064362300/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4796826347064362300' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4796826347064362300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4796826347064362300'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/04/persistent-igoogle-dashboards-redux.html' title='Persistent iGoogle Dashboards :: Redux'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3955320372819127182</id><published>2008-03-21T22:17:00.000-07:00</published><updated>2008-03-22T09:37:01.749-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='png'/><category scheme='http://www.blogger.com/atom/ns#' term='alpha filter'/><category scheme='http://www.blogger.com/atom/ns#' term='ie6'/><category scheme='http://www.blogger.com/atom/ns#' term='sprites'/><title type='text'>Using Sprites :: Transparent PNGs in IE6</title><summary type='text'>  IE6 doesn't support transparent PNGs unless you use Microsoft's alpha filters.  You can't use alpha filters for background images which is a key part of using sprites.  Fortunately, you can "sort of" simulate it.   Julien Lecomte has this good write-up. The key is to use the CSS clip property and to replace background with that.  Here's my implementation --.sprite-s0 {width:47px;height:62px;_</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/3955320372819127182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=3955320372819127182' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3955320372819127182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3955320372819127182'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/03/using-sprites-transparent-pngs-in-ie6.html' title='Using Sprites :: Transparent PNGs in IE6'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-739020850827995247</id><published>2008-02-24T22:06:00.000-08:00</published><updated>2008-02-24T22:28:58.459-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='spaceship'/><category scheme='http://www.blogger.com/atom/ns#' term='keylistener'/><category scheme='http://www.blogger.com/atom/ns#' term='game'/><title type='text'>How to Build and Fly a Spaceship</title><summary type='text'>Well, not exactly.  We'll build and fly a spaceship built with the YUI library ( I'm using the 2.3.0 library; I typically don't upgrade that frequently especially when things aren't broken ).  Once again we'll explore event handling and extensively use the animation library.For part 1, We'll focus on listening for keyboard events and then using the YAHOO.util.Motion object we'll fly the spaceship</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/739020850827995247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=739020850827995247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/739020850827995247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/739020850827995247'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/02/how-to-build-and-fly-spaceship.html' title='How to Build and Fly a Spaceship'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-5840039643228436004</id><published>2008-02-17T22:28:00.000-08:00</published><updated>2008-02-17T23:13:23.484-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='menubar'/><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='motion'/><category scheme='http://www.blogger.com/atom/ns#' term='menu'/><category scheme='http://www.blogger.com/atom/ns#' term='menuitem'/><title type='text'>Animated Horizontal MenuBar</title><summary type='text'>The animated horizontal menubar isn't the most practical or useful menubar around, but it does allow us to explore events with complex workflows.  We'll also explore how we fire events programatically.Here's our horizontal menubar --The menubar is based on the YUI MenuBar ( in fact, I've kept some of the original comments from the YUI examples ).  There are many examples and it's well documented.</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/5840039643228436004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=5840039643228436004' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5840039643228436004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5840039643228436004'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/02/animated-horizontal-menubar.html' title='Animated Horizontal MenuBar'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-859266622238762074</id><published>2008-01-30T21:50:00.000-08:00</published><updated>2008-12-09T22:04:38.452-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='comment'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>Dashing All the Way... Not</title><summary type='text'>In programming, nothing ever just happens.  There aren't any gremlins or magical incantations that cause code to work.  Programming is about logic and good sound reasoning.  If your code doesn't work, there's a really good explanation.  The challenge is finding that explanation.As a web developer, you sometimes see really weird problems like the one I saw today.In HTML, how do you add a comment?</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/859266622238762074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=859266622238762074' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/859266622238762074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/859266622238762074'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/01/dashing-all-way-not.html' title='Dashing All the Way... Not'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_abZIisaviqA/R6LBqwfZLdI/AAAAAAAAADM/1vjhZhwgF9U/s72-c/bad.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-1099077090167571479</id><published>2008-01-13T20:24:00.000-08:00</published><updated>2008-01-15T21:20:48.135-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='string'/><category scheme='http://www.blogger.com/atom/ns#' term='prototype'/><title type='text'>Augmenting JavaScript's String Object</title><summary type='text'>A popular question to ask in interviews is string manipulation.  In particular, string reversal questions are very popular.Given a string,Reverse the stringReverse the words in the stringReverse only the words in the stringWith JavaScript, all three are easy to do.  One way to solve it is to augment the String object.  In other words, we'll add three new functions to String.  We'll call </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/1099077090167571479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=1099077090167571479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1099077090167571479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1099077090167571479'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/01/augmenting-javascripts-string-object.html' title='Augmenting JavaScript&apos;s String Object'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-2375715882040492603</id><published>2008-01-05T17:25:00.000-08:00</published><updated>2008-12-09T22:04:40.408-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='debugger'/><category scheme='http://www.blogger.com/atom/ns#' term='debug'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Browser Debugging Tools</title><summary type='text'>We'll start off 2008 and talk about web browser debugging tools.  It's a topic that we haven't visited before.At Yahoo!, we have graded browser support and so, as a frontend developer you tackle the problems found only in the major browsers.“Major” means IE, Firefox, Safari and to a small degree Opera ( if you’re interested in browser market share, check this out. )I code on a MacBook Pro running</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/2375715882040492603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=2375715882040492603' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2375715882040492603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2375715882040492603'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2008/01/browser-debugging-tools.html' title='Browser Debugging Tools'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_abZIisaviqA/R4MyrOl9yFI/AAAAAAAAACs/fFAGaCWPhgY/s72-c/firefox2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-949942893682846764</id><published>2007-12-14T23:11:00.000-08:00</published><updated>2007-12-15T18:05:26.858-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>Anonymous Function Fun</title><summary type='text'>Yahoo!'s Julien Lecomte wrote an interesting piece regarding the perils of  using innerHTML.One of the "bad things" that can happen are memory leaks caused by circular references.  He provides this inner function which breaks the reference --      (function (o) { var a = o.attributes, i, l, n, c; if (a) {     l = a.length;     for (i = 0; i &lt; l; i += 1) {         n = a[i].name;         if (typeof</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/949942893682846764/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=949942893682846764' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/949942893682846764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/949942893682846764'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/12/anonymous-function-fun.html' title='Anonymous Function Fun'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-1478561932970121099</id><published>2007-12-03T20:54:00.000-08:00</published><updated>2007-12-04T16:23:01.434-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='gauge'/><title type='text'>Bindows Gauges</title><summary type='text'>Recently, Bindows released a set of very functional gauges.  These are  "provided free of charge."  They're built on top of their excellent Bindows  component library.The gauges are built from their BiGauge2 component.One of the great things about these gauges is that it not only gives you a flavor of what Bindows can do, but that at least with these gauges, you don't need Bindows to manipulate </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/1478561932970121099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=1478561932970121099' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1478561932970121099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1478561932970121099'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/12/bindows-gauges.html' title='Bindows Gauges'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-5908704083572253070</id><published>2007-11-26T13:14:00.000-08:00</published><updated>2007-11-26T19:56:00.352-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='object'/><category scheme='http://www.blogger.com/atom/ns#' term='string'/><category scheme='http://www.blogger.com/atom/ns#' term='primitive'/><title type='text'>JavaScript String :: Primitive or Object?</title><summary type='text'>A colleague and I were chatting about JavaScript strings and he noted that they're not objects.  He's half right.JavaScript strings are primitives much like numbers and booleans, but they can also be objects ( like Numbers and Booleans ).You can create a String object ( I've capitalized String ) by calling it's constructor --var aStr = new String("I'm a String object");You can also create a </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/5908704083572253070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=5908704083572253070' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5908704083572253070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5908704083572253070'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/11/javascript-string-primitive-or-object.html' title='JavaScript String :: Primitive or Object?'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-786150794124645352</id><published>2007-11-18T18:19:00.000-08:00</published><updated>2007-11-19T20:13:50.142-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='igoogle'/><category scheme='http://www.blogger.com/atom/ns#' term='newsvine'/><category scheme='http://www.blogger.com/atom/ns#' term='dashboard'/><title type='text'>iGoogle and Newsvine Dashboards</title><summary type='text'>I've always been partial to dashboards and often write about it.   I've done a number of prototypes just to experiment with visualizations.Dashboards allow you to organize and see the information you want without adding too much clutter.Here's my implementation.   It works in IE, Firefox, Safari and Opera.I particular like the visualizations found in the iGoogle and Newsvine dashboards.  They </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/786150794124645352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=786150794124645352' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/786150794124645352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/786150794124645352'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/11/igoogle-and-newsvine-dashboards.html' title='iGoogle and Newsvine Dashboards'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-9205020781740441936</id><published>2007-11-11T20:23:00.000-08:00</published><updated>2007-11-12T08:04:37.518-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scroll'/><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><title type='text'>Select and Scroll</title><summary type='text'>A colleague asked how I would implement this --Click on an item in an list Vertical scroll to it  I can up with this --I think the only way that this can be done is if the item ( in this case a div ) is absolutely positioned.  For each item, you can get the value for CSS style "top" from the item's parent ( container ).If the item uses default positioning ( i.e. static ), "top" is auto which is </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/9205020781740441936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=9205020781740441936' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/9205020781740441936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/9205020781740441936'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/11/select-and-scroll.html' title='Select and Scroll'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4655499440164335101</id><published>2007-10-06T21:45:00.000-07:00</published><updated>2007-10-07T00:34:15.636-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='dialog'/><category scheme='http://www.blogger.com/atom/ns#' term='stixy'/><title type='text'>Stixy Dialog</title><summary type='text'>I think one of the best things to do is to imitate UI controls.  It's a great way to test your front-end skills and the toolkits that you're using.  It's also incredibly fun.Continuing along our previous DnD and resizing examples built in part with YUI, here's an imitation of a dialog found in Stixy, a web-based free-form collaborative and file sharing application --There's nothing really special</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4655499440164335101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4655499440164335101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4655499440164335101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4655499440164335101'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/10/stixy-dialog.html' title='Stixy Dialog'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4427448360667163409</id><published>2007-10-03T00:12:00.000-07:00</published><updated>2007-10-04T22:20:34.314-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='yui'/><category scheme='http://www.blogger.com/atom/ns#' term='resizer'/><title type='text'>Resizing with YUI</title><summary type='text'>Here's a really simple example of using YUI's Drag and Drop component to build a resizer.  It's not a reusable component, but you'll see just how little JavaScript you need to do something like this.Here's the example --The JavaScript looks like --I'm using YUI 2.3, but the version really shouldn't matter.The HTML is even simpler --and then we style it with some CSS --That's all there is to it.  </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4427448360667163409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4427448360667163409' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4427448360667163409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4427448360667163409'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/10/resizing-with-yui.html' title='Resizing with YUI'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4066497964862727383</id><published>2007-09-19T23:30:00.000-07:00</published><updated>2007-09-25T08:17:01.943-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yahoo'/><category scheme='http://www.blogger.com/atom/ns#' term='yui javascript bindows'/><title type='text'>SplitPane Control :: YUI</title><summary type='text'>One of the basic controls is the split pane control.  YUI doesn't have one right out of the box.  So, we'll build one.Note that Jack Slocum created one based on YUI about a year ago for his ExtJS library.  He called his a "SplitBar Component."Of course, Bindows has a **pure** JavaScript one.We'll base ours off of the YAHOO.widget.Slider.  We'll take advantage of its ability to slide horizontally </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4066497964862727383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4066497964862727383' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4066497964862727383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4066497964862727383'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/09/splitpane-control-yui.html' title='SplitPane Control :: YUI'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-6694341234232450539</id><published>2007-09-15T07:40:00.000-07:00</published><updated>2007-09-16T17:36:02.715-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yui javascript bindows'/><title type='text'>YUI :: First Impressions</title><summary type='text'>People must think I've been living in a cave, but I've only recently been playing with YUI.  In the past two years, I've been a Bindows developer creating a few examples here and there and so, I know that framework pretty well.Of course, now that I'm at Yahoo!, I'm supposed to get a firm grasp on the library.  Unlike other web devs at Yahoo!, I haven't taken any classes on YUI.  So, this series </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/6694341234232450539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=6694341234232450539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/6694341234232450539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/6694341234232450539'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/09/yui-first-impressions.html' title='YUI :: First Impressions'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-1014374520932773806</id><published>2007-09-09T10:06:00.000-07:00</published><updated>2008-12-09T22:04:41.017-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yahoo'/><title type='text'>Yahooooooooooooooo!</title><summary type='text'>Two weeks ago,  I joined Yahoo!.If you're a front-end web engineer, it's the best place to be. They have some of the best front-end engineers in the world in an environment where you can become a better cloud developer.If you're smirking ( or laughing ), you've probably haven't noticed what Yahoo! has contributed to the world of front-end development.A few years ago, I would have thought the same</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/1014374520932773806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=1014374520932773806' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1014374520932773806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1014374520932773806'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/09/yahooooooooooooooo.html' title='Yahooooooooooooooo!'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_abZIisaviqA/RuSSbNXBy9I/AAAAAAAAACk/0hzr1JLA-ig/s72-c/yMe.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-7935811911852310345</id><published>2007-08-25T18:20:00.000-07:00</published><updated>2007-08-26T22:20:13.446-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ui'/><title type='text'>Interaction Over Visualization</title><summary type='text'>Often in programming, it's best to think in orthogonal terms -- for every add, there's a remove or for every set, there's a get method, etc.As John Resig noted in a comment on his talk on "Building a JavaScript Library" that "if you have a method that performs one action, you should have another that performs an equal and opposite action. Secondly, that there should be one equal way to perform an</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/7935811911852310345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=7935811911852310345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7935811911852310345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7935811911852310345'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/08/interaction-over-visualization.html' title='Interaction Over Visualization'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4543079017114674273</id><published>2007-07-30T23:12:00.001-07:00</published><updated>2007-08-03T23:55:41.394-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='round corners'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><title type='text'>Bindows Nifty Round Corners :: No Images!</title><summary type='text'>In March of 2005, Alessandro Fulciniti wrote a piece on using rounded corners without the use of images -- "Nifty Corners". The idea is simple -- by stacking lines of different lengths on top of one another you form a rounded corner.Alessandro used a combination of block elements and margins to achieve this. We can do the same by using the basic Bindows building block -- BiComponent -- </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4543079017114674273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4543079017114674273' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4543079017114674273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4543079017114674273'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/07/bindows-nifty-round-corners-no-images.html' title='Bindows Nifty Round Corners :: No Images!'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-2084054652983199138</id><published>2007-07-23T18:42:00.001-07:00</published><updated>2007-07-26T19:03:44.062-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='meebome'/><category scheme='http://www.blogger.com/atom/ns#' term='meebo'/><category scheme='http://www.blogger.com/atom/ns#' term='embed'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Meebo Me :: Dressing Up a Widget</title><summary type='text'>In August 2006, Meebo, the web based instant messenger provider, released MeeboMe, a Flash-based chat widget which you can place on your website. MeeboMe allows your visitors to directly chat with you while they're enjoying your site.Because it's Flash based, you can easily embed it. First, go to Meebo and create the chat widget. Then, add the Meebo generated markup. It's a simple embed tag --&lt;</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/2084054652983199138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=2084054652983199138' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2084054652983199138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2084054652983199138'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/07/meebo-me-dressing-up-widget.html' title='Meebo Me :: Dressing Up a Widget'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-8929323473999005675</id><published>2007-07-11T23:08:00.000-07:00</published><updated>2008-12-09T22:04:41.216-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='jaman'/><title type='text'>At the Movies with Jaman</title><summary type='text'>As part of front end development, I sign up for a lot of beta testing.  It helps me to see what's the state of the art and what everyone else is doing.Once in a while, I'm lucky enough to get into private betas.  Jaman was one.  I've been through the private beta and now, I'm a regular user ( by the way, for all you movie lovers, if you sign up now, you'll get 3 free downloads. If you sign up via</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/8929323473999005675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=8929323473999005675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8929323473999005675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8929323473999005675'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/07/at-movies-with-jaman.html' title='At the Movies with Jaman'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_abZIisaviqA/RpXTlJhB9fI/AAAAAAAAACM/hPk-PW8hkHc/s72-c/jaman.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3455753558493492138</id><published>2007-07-01T07:53:00.000-07:00</published><updated>2007-07-01T21:10:01.630-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ie'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><category scheme='http://www.blogger.com/atom/ns#' term='memory'/><category scheme='http://www.blogger.com/atom/ns#' term='leak'/><title type='text'>IE Memory Leaks</title><summary type='text'>Mark Wubben blogged that Microsoft recently released a security patch that among other things fixed memory leaks in IE 6.0 on XP. Specifically, Microsoft mentions a fix for --"A memory leak occurs in Internet Explorer 6 when you view a Web page that uses JScript scripting on a Windows XP-based computer"More details are found here.It's important to note that the fix is only for IE 6.0 running in </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/3455753558493492138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=3455753558493492138' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3455753558493492138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3455753558493492138'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/07/ie-memory-leaks.html' title='IE Memory Leaks'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-2072317231802947883</id><published>2007-06-15T00:13:00.001-07:00</published><updated>2008-12-09T22:04:41.403-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='dashboard'/><title type='text'>Bindows 3.0 :: 3 Animations in a Dashboard</title><summary type='text'>Early this month, Bindows 3.0 was released.One of it's main features is the animation library. I'd written about it before.To celebrate 3.0's release, I've put the animation library to good use by using their three animators - BiSizeAnimator, BiOpacityAnimator, and BiLocationAnimator - and created this dashboard.It's an imitation of the cool looking IconDB Dashboard ( IconDB never had animated "</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/2072317231802947883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=2072317231802947883' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2072317231802947883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2072317231802947883'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/06/bindows-30-3-animations-in-dashboard.html' title='Bindows 3.0 :: 3 Animations in a Dashboard'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_abZIisaviqA/RnYGB2qApkI/AAAAAAAAACE/MCMOldQ8qF0/s72-c/dashboard.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-7372238375798417240</id><published>2007-06-07T15:39:00.000-07:00</published><updated>2007-07-01T20:51:49.090-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='dialog'/><title type='text'>Bubble Dialogs for the Summer</title><summary type='text'>It's summer and it's time to play with bubbles -- bubble dialogs. Here they are in action.Derived from the Bindows BiComponent, they're totally reusable.Download the bubble dialog here. Learn how to use the bubble dialog here by studying the test driver. Use as you please.Have fun!</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/7372238375798417240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=7372238375798417240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7372238375798417240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7372238375798417240'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/06/bubble-dialogs-for-summer.html' title='Bubble Dialogs for the Summer'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3948385582651096794</id><published>2007-05-25T07:53:00.000-07:00</published><updated>2007-05-25T09:39:26.698-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='garbage collecting'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='memory'/><category scheme='http://www.blogger.com/atom/ns#' term='gc'/><title type='text'>Bindows Wonderful dispose() Method</title><summary type='text'>Almost anything useful you do with Bindows requires you to add components to other components.  This is because you build visual components by creating parent child relationships.So, if you wanted to build a custom dialog, MyDialog, you might start off with a BiComponent and use that as a container.  Then add a BiToolBar to the BiComponent.  Of course, you'll need toolbar buttons and menus so you</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/3948385582651096794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=3948385582651096794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3948385582651096794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3948385582651096794'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/05/bindows-wonderful-dispose-method.html' title='Bindows Wonderful dispose() Method'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3459076911069310136</id><published>2007-05-19T23:03:00.000-07:00</published><updated>2007-05-22T07:44:24.533-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='fade'/><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><title type='text'>Simple Fun Faders</title><summary type='text'>If you're using pre-Bindows 3.0 Beta, here's a simple way to do component fading in Bindows. When Bindows 3.0 is released, it'll do a lot more including resize and relocation animations. Hopefully, this little fader will wet your appetite for that release.For a preview of the animation capabilities found in Bindows 3.0, check out my earlier writeup.Here's an example of what the fader object, </summary><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3459076911069310136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3459076911069310136'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/05/simple-fun-faders.html' title='Simple Fun Faders'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-7292073692928909122</id><published>2007-05-06T18:22:00.000-07:00</published><updated>2007-05-06T23:06:32.273-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='internet explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='ie'/><category scheme='http://www.blogger.com/atom/ns#' term='lazy load'/><category scheme='http://www.blogger.com/atom/ns#' term='on-demand'/><title type='text'>On-demand JavaScript :: IE6/7 and Firefox 2.x</title><summary type='text'>Last year, there was a lot of talk about on-demand JavaScripting.  A good bit is found on Michael Mahemoff's Ajax Patterns Wiki.  If you've never heard of it, you can read Michael's primer here.Basically, on-demand JavaScripting helps you lazy load objects.  When you need it, load it.   It's simple.You can run it here.When you click on the "Load JavaScript" button, we're dynamically loading a </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/7292073692928909122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=7292073692928909122' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7292073692928909122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/7292073692928909122'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/05/on-demand-javascript-ie67-and-firefox.html' title='On-demand JavaScript :: IE6/7 and Firefox 2.x'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-1714411836456876189</id><published>2007-04-29T00:17:00.000-07:00</published><updated>2008-12-09T22:04:41.787-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='sprites'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Sprites :: Reduce the Number of HTTP Requests</title><summary type='text'>Recently, Matthew Batchelder wrote a piece entitled "Faster Page Loads with Image Concatenation."  It's similar to the "Sprite" pattern described by Michael Mahemoff.The idea is that you load small icon-blocks and from those blocks, use the icons as images in your application.  This allows you to load the images once rather than making separate requests for each image.As front end web developers,</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/1714411836456876189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=1714411836456876189' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1714411836456876189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/1714411836456876189'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/04/sprites-reduce-number-of-http-requests.html' title='Sprites :: Reduce the Number of HTTP Requests'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_abZIisaviqA/RjS8gOjZ_-I/AAAAAAAAABs/ufWcdOJiW1w/s72-c/bigBackground.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-5243007456780810199</id><published>2007-04-24T19:46:00.000-07:00</published><updated>2007-04-24T21:54:19.134-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='component'/><title type='text'>See Your Bindows Applications this Way Part 2</title><summary type='text'>I updated the Bindows AboutComponent ( the first part is found here ) to show properties associated with the Bindows component.  These aren't nested at all and are shown as a long list.  You can click on them and their values appear in the giant bubble dialog.Of course, the properties are nothing more than what you would get with the "for (var p in object)" syntax.  You can probably get the same </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/5243007456780810199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=5243007456780810199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5243007456780810199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/5243007456780810199'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/04/see-your-bindows-applications-this-way.html' title='See Your Bindows Applications this Way Part 2'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-9066483713612887700</id><published>2007-04-06T09:20:00.000-07:00</published><updated>2007-04-06T19:46:52.630-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='component'/><title type='text'>Seeing Your Bindows Application This Way</title><summary type='text'>Almost everything useful that you do with Bindows requires you to create parent child relationships with components.  In other words, to create "controls" you always end up adding components to other components.  After all, one of the main functionalities of the toolkit is to build visual controls that express behavior ( without behavior, your application is just another pretty face ).For example</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/9066483713612887700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=9066483713612887700' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/9066483713612887700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/9066483713612887700'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/04/seeing-your-bindows-application-this.html' title='Seeing Your Bindows Application This Way'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4973195637222714878</id><published>2007-03-15T17:46:00.000-07:00</published><updated>2008-12-09T22:04:42.144-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='component'/><title type='text'>Reusable Toolbar, Menubar, Component Scroller Control</title><summary type='text'>Instead of using the CSS property "overflow" to show scrollbars, did you ever want to put scroll arrows on your Bindows toolbars?  How about your menu bars?  Or, how about your tabs?  I did.I love CSS, but sometimes, horizontal scrollbars are pretty ugly especially if all you want to do is scroll a toolbar.  Scrollbars are great for scrolling the browser window to see all of the content, but it's</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4973195637222714878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4973195637222714878' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4973195637222714878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4973195637222714878'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/03/reusable-toolbar-menubar-component.html' title='Reusable Toolbar, Menubar, Component Scroller Control'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_abZIisaviqA/RfoCOuhEw0I/AAAAAAAAABg/KxFaFtHFcXM/s72-c/ff.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3083370733627467601</id><published>2007-03-04T12:00:00.000-08:00</published><updated>2008-12-09T22:04:42.744-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='animation'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Bindows 3.0 Beta :: Animating Yahoo's Expanding and Collapsing Tabs</title><summary type='text'>I was fortunate enough to be one of the lucky ones to test drive the Bindows 3.0 Beta. The 3.0 version has some significant new features --An animation libraryVector graphics support for all browsersAdvanced gauge support for all browsersEnhanced charting capabilitiesAn improved grid panel component for better layout performanceYou can read more about it here.I was most interested in the </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/3083370733627467601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=3083370733627467601' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3083370733627467601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3083370733627467601'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/03/bindows-30-beta-animating-yahoos.html' title='Bindows 3.0 Beta :: Animating Yahoo&apos;s Expanding and Collapsing Tabs'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_abZIisaviqA/Rex-626RSoI/AAAAAAAAAAw/iQafN7TgvUE/s72-c/upperResizeImg.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-2701811527511827386</id><published>2007-02-19T18:19:00.000-08:00</published><updated>2007-02-19T23:17:28.218-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><title type='text'>Asynchronous Animated Slider :: Redux</title><summary type='text'>In my last post, we implemented our version of Yahoo's! animated sliders using the Bindows 2.5 toolkit. I demonstrated how to load and then animate nine random photos from Nikographer [Jon] one of my favorite photographers on Flickr. Now, we're going to extend that and show you how we load his photos asynchronously (Ajax!). Just the like the last post, we'll display three photos at a time and use</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/2701811527511827386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=2701811527511827386' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2701811527511827386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2701811527511827386'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/02/asynchronous-animated-slider-redux.html' title='Asynchronous Animated Slider :: Redux'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4262875073314044843</id><published>2007-01-29T15:36:00.000-08:00</published><updated>2007-01-30T22:02:08.600-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='dhtml'/><category scheme='http://www.blogger.com/atom/ns#' term='slider'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Animated Picture Slider :: Pre-Bindows 3.0</title><summary type='text'>Recently, Bindows released their 3.0 Beta. This new flavor of Bindows comes with a lot of good things including a animation library that allows you to move, resize and fade any BiComponent.It's pretty powerful and I'll write about that later in the weeks to come. For now, I'll cook up a little practical use of animation with a picture slider control built from the trusty Bindows 2.5 library.The </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4262875073314044843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4262875073314044843' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4262875073314044843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4262875073314044843'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/01/animated-picture-slider-pre-bindows-30.html' title='Animated Picture Slider :: Pre-Bindows 3.0'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-8301535384517472301</id><published>2007-01-11T22:27:00.000-08:00</published><updated>2007-01-12T17:07:12.626-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='json'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Smart Scrolling with Bindows</title><summary type='text'>Smart scrolling is the concept of navigating through a large data set (usually a list or grid) by using scroll bars rather than by pagination. The idea is that scroll bars are more "natural" at navigation because they're already there.Yahoo!'s Bill Scott, most notable for his UI patterns work, blogs about it here ("Rico's LiveGrid"). You can see real life implementations of it as well. Live.com </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/8301535384517472301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=8301535384517472301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8301535384517472301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8301535384517472301'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2007/01/smart-scrolling-with-bindows.html' title='Smart Scrolling with Bindows'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-8251498360999072255</id><published>2006-12-24T09:25:00.000-08:00</published><updated>2008-12-09T22:04:42.910-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='ui'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Wet and Dry UI</title><summary type='text'>I use screen wipes to clean my monitors.   These are the wet/dry systems that you find at your local office supply store.  I typically do it every week and I don't look forward to it.It's not because it's messy or that it takes a lot of time.  It's because I have to figure out which one is the "wet" and the "dry" pad.   The two pad system is very frustrating because even though I've been doing a </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/8251498360999072255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=8251498360999072255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8251498360999072255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/8251498360999072255'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2006/12/wet-and-dry-ui.html' title='Wet and Dry UI'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_abZIisaviqA/RZHFBgTvBRI/AAAAAAAAAAk/EA9ntB8t0d8/s72-c/DSC00818.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-2251557774678925559</id><published>2006-12-19T18:47:00.000-08:00</published><updated>2008-12-09T22:04:43.605-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Cool Blue Nile Sliders</title><summary type='text'>One of the most successful luxury consumer sites is Blue Nile. Who would have thought that buying diamonds was something that people would want to do on the internet, but they do.One of the really cool things about Blue Nile is that they have some really innovative ways to filter data (in this case - diamonds). The filtering is asynchronous (AJAX), but it's their filtering control that we'll be </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/2251557774678925559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=2251557774678925559' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2251557774678925559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/2251557774678925559'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2006/12/cool-blue-nile-sliders.html' title='Cool Blue Nile Sliders'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_abZIisaviqA/RYjd9ATvBQI/AAAAAAAAAAY/4kHX3AvjHjU/s72-c/blueNileSilder.gif' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-3487784955962030226</id><published>2006-12-11T15:22:00.000-08:00</published><updated>2006-12-12T22:12:26.622-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Custom Bindows View Port</title><summary type='text'>I was surfing for UI design patterns besides those offered by the great Bill Scott and his team at Yahoo and found Jenifer Tidwell's Designing Interfaces . Her book describes a number of design patterns one which we all use a lot -- "Overview Plus Detail."You might not have known the name, but if you've used Google or Yahoo! Maps, you're using this pattern.The way that the pattern works is that </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/3487784955962030226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=3487784955962030226' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3487784955962030226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/3487784955962030226'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2006/12/custom-bindows-view-port.html' title='Custom Bindows View Port'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-4366986172243108831</id><published>2006-11-27T21:12:00.000-08:00</published><updated>2006-11-30T18:02:28.859-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Creating a Google Gadget Tips-Like Widget :: Part 2 :: Making It Reusable</title><summary type='text'>In the first part, we looked at how we could create the Google Gadget Tips-Like Widget using the Bindows JavaScript toolkit. Unfortunately, what we created wasn't reusable (i.e. we couldn't instantiate it to make more of the same thing) which made the component pretty useless (a component is synonymous with a widget; Bindows uses the word component to mean widget). However, our prototype did </summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/4366986172243108831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=4366986172243108831' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4366986172243108831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/4366986172243108831'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2006/11/creating-google-gadget-tips-like-widget.html' title='Creating a Google Gadget Tips-Like Widget :: Part 2 :: Making It Reusable'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-37445403.post-116322657817873940</id><published>2006-11-10T22:17:00.000-08:00</published><updated>2006-11-27T21:43:04.634-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='bindows'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Creating a Google Gadget Tips-Like Widget</title><summary type='text'>I recently had to rebuild my laptop which meant reinstalling software including the very useful Google Desktop.During the installation, the Desktop installed Google Gadgets and the "tips" dialog --Basically, the dialog is a series of help screens accessed by mousing over the vertical tabs. You really can't put too much information in each pane, but I thought that the vertical tabs were unique and</summary><link rel='replies' type='application/atom+xml' href='http://skypoetsworld.blogspot.com/feeds/116322657817873940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=37445403&amp;postID=116322657817873940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/116322657817873940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/37445403/posts/default/116322657817873940'/><link rel='alternate' type='text/html' href='http://skypoetsworld.blogspot.com/2006/11/creating-google-gadget-tips-like.html' title='Creating a Google Gadget Tips-Like Widget'/><author><name>skypoet</name><uri>http://www.blogger.com/profile/10574323356659307240</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://www.skypoet.net/images/CloseupCola.jpg'/></author><thr:total>0</thr:total></entry></feed>
