Best. Gif. Ever.
Sep 2nd, 2010 by admin | No Comments »
Farewell Digg
Sep 1st, 2010 by admin | No Comments »
About a week ago Digg.com unveiled its latest redesign (“version 4.0“) along with some changes in the way the site works. I first noticed this when I went to check Digg’s mobile website and saw that it looked like something was broken. Little did I know that the entire site had changed, and as many people feel, changed was for the worse.
If you’ve never heard of Digg, what Digg originally was was a tech-oriented news aggregation site. Users submitted links to tech stories and stories got dugg up or buried based on their popularity, with the most popular stories making it to Digg’s homepage. In the beginning, Digg only had 14 categories: apple, deals, design, gaming, hardware, links, linux/unix, mods, movies, music, robots, security, software, and technology. It was a great place to learn about and spread news of cool tech stuff. Almost anyone with a link to an interesting story (including me) could get it promoted to the front page. Over the years Digg slowly evolved into more of a social news aggregation site that covered topics other than technology (see below) and along with it’s growth in popularity came abuses to the system. Users found ways to game the system, and advertisers used it as a way to promote their products and services. For the most part, we, the users, of Digg, were able to tolerate the various abuses that crept in. That is up until now. Continue Reading »
jQuery hide() vs. fadeOut() vs. animate()
Aug 31st, 2010 by admin | No Comments »
If you’ve ever used jQuery to fade out an element, you’ve probably discovered that there are a few ways to accomplish the effect. You could use hide(), fadeOut(), or animate() to change an element’s opacity. But what are the differences between these methods and are there any gotchas?
Both hide() and fadeOut() work similarly in that they gradually change an element’s opacity to zero, and then change the display style property to none (hide() also change the height and width). However, while using animate() to change the opacity will look like it accomplishes the same result, it doesn’t change the display style property to none like hide() and fadeOut() do. Therein lies the gotcha. If you use hide() or fadeOut() to make an element disappear, you can’t use animate() to change the opacity and make the element visible again. Since hide() and fadeOut() also set the display style property to none, animate() can’t do its job because hide() and fadeOut() have effectively hidden the element, causing it to remain invisible.
This has tripped me up from time to time; especially when I’m trying to keep an element hidden and then animate a few properties simultaneously as I fade it back in. So while hide() and fadeOut() are quite capably on their own, and show() and fadeIn() work well to make elements visible again, stick with using animate to hide or fade out an element when you want to fade it in later as well as animate other properties at the same time.
Adjustable Columns with jQuery
Aug 12th, 2010 by admin | No Comments »
View the demo here
I’m currently working on a project that uses jQuery throughout the user interface to improve the user’s experience. In one section of the application there are three divs laid out next to each other horizontally as if they were three columns. The leftmost div contains a series of items to select from via check boxes. When you pick one (or more) items, the middle div is populated by a jQuery Ajax query and displays a list where the content is based on what was selected in the first (leftmost) group. Finally, you can click on an item in the middle div which will then bring up detailed information in the rightmost div.

Normally this wouldn’t be a problem, but in this case the issue is that the width of the columns needed to be dynamic. If we had made the column widths fixed, then whenever the data in any of the columns was wider than the containing div, a horizontal scrollbar would’ve popped up. While this wasn’t a showstopper, it’s wasn’t visually appealing. You might be thinking that using a table would be a good solution except for the fact that resizing table cells isn’t much easier than resizing multiple divs, plus we’re not displaying true tabular data. Another possible answer could lie in using frames, except for the fact that frames disappear in HTML5 and I haven’t used frames in over 10 years. Continue Reading »
Where Have You Been?
Jul 22nd, 2010 by admin | No Comments »
So I’ve been busy working on a few projects but I thought I’d talk about a few things that interested me lately.
First off wallpaper. I love interesting wallpaper for my computer. Paying for it is our of the question. Actually I used to be a paying member of Webshots since they had a good variety of high res stuff, but since that time I’ve found a few sites with a great selection. And they are:
- National Geographic – National Geographic has been around a long time and one reason is due to their stunning photography. Head over to their site to find loads of high resolution, free images for your pleasure.
- InterfaceLift – With thousands of high resolution images in a wide variety of sizes, InterfaceLift can keep you busy for hours downloading wallpaper.
- Mike Swanson – Back in 2005 Mike (a Microsoft employee) began posting his own high resolution, mostly macro shots of just about anything. Most are worthy of being framed and hung on your wall. 150 and counting.
Apple. Despite problems, Apple seems to be coated in Teflon™ and resistant to anything negative. The new iPhone has major issues (even though I want one I won’t buy one due to AT&T sucking hard) yet sales are stellar. Hell even businesses have been born due to their problems. The iPad has yet to become the magical device Steve Jobs would love you to believe it is and sales are stellar. Looking back a little further does anyone remember the MacBook Air? Beautiful to look at, ridiculous to use. How does a company with so many issues continue to go unscathed? Anyway, getting back to cell phones in general, is it just me or does anyone else think that there are just too damn many models of phone to choose from? And doesn’t it feel like new phones come out and then disappear from the market faster than ever? I can’t keep up anymore. You’ve got the iPhone, Droid variants, HTC, BlackBerry, LG, Samsung, Motorola, Nokia, and on and on and on. And let’s not forget Microsoft’s recent foray into the cell market with the only-on-the-market-for-seven-weeks Kin fail.
Switching gears. I’ve slowed down my jQuery development a bit and gotten back into more PHP work lately. Until recently, my main server was still running PHP 4 (yes really) however about a week ago it finally got the bump to PHP 5 (yeah, yeah I know, welcome to 2004). What I found funny about making the change from JavaScript work back to PHP was how similar the languages are, as well as the little quirks that make them quite different. The biggest face palm I had was regarding variable scope. In JavaScript, variables outside of functions are scoped globally by default. In PHP that’s not the case. This little difference caused me to lose far more time debugging than I care to share. That aside, I still love PHP and think that it’s the best language to use when developing for the web.
And finally, my favorite image this week:

