12
SEP
2007
This is the follow-up to my post entitled 10 Tips for Budding Web Programmers and Designers.
As a developer, you must consider yourself a man/woman of his/her trade. The best blacksmith, tailor, hairdresser, woodworker, they all prize the tools of their trade. In your trade, you will become very fond of your tools and take great care of them. The beauty of this industry is that many of the tools are free and open source. I don’t need to give up my tool for you to be able to benefit from it — all I need to do is share it with you.
What is Web 2.0?
A very overused and misconstrued phrase. In this article, I use the phrase in the sense that you probably understood it as: a website with good looks and slick interface.
The real definition is “…a perceived second generation of web-based communities and hosted services — such as social-networking sites, wikis and folksonomies — which aim to facilitate collaboration and sharing between users.”
While this definition remains true, shiny logos, AJAX, and animations are still given the Web 2.0 stigma.
1. jQuery - Change the way you write Javascript
If you want a fancy interface, this is the tool for you. jQuery is releasing something called jQuery UI on Sunday, September 16th. It will consist of lots of prebuilt animations and functions, similar to Scriptaculous (which you should never use on a real production site).
Not only does jQuery make Javascript fun to write, it makes Javascript easy. What used to be tedious, is now one line of code. I personally have created effects that normally would take me 10-20 lines of code in one line.
With jQuery, you can have minimal Javascript experience and still handle the DOM like a pro. I use jQuery for everything now, and rarely to I find the need to use raw javascript.
Code:
$(’#jq_example’).fadeIn({complete:function() { $(this).animate({left:100})}});
The code basically says: Fade in the element with id jq_example, then when that is complete, move it left 100 pixels.
Yes, it’s that easy. Yes, other things are just as easy.
Useful jQuery Resources
- Visual jQuery - A good way to quickly look up a function and it’s syntax. Though it’s starting to get seriously out of date and I hope they update soon.
- jQuery API Browser - More detailed look at the jQuery API’s functions. Also becoming outdated.
- jQuery.com Documentation - More up to date, made by the developers.
2. Dean Edward’s Packer - Compress your Javascript
Another must have in terms of Javascript. With Dean Edward’s Packer, you can compress your Javascript and reduce the size of your file by up to 70%. Add some server-side gzipping and your files will be tiny. The advantage that this brings you is a faster loading site. Even though most of your visitors will be on high speed connections, saving kilobytes here and there makes a difference.
All you need to do is copy and paste your Javascript code, click “Pack”, and copy the ‘packed’ code back into your file. It would be wise to keep your uncompressed code in a seperate file, use that to develop, then use the compressed version for live use.
For example, I keep two files:
somefile_uc.js (uncompressed)
somefile.js (compressed)
3. sIFR Text - Dynamic headers using any font you want
One of the major things holes in web design today is the lack of font types. You are limited to a handful of fonts, yet if you want to show someone your vision, you have to load your site with graphics, which can lead to increased bandwidth usage. You also spend more time in photoshop than you do actually producing content.
The solution: sIFR Text
All that is involved is one small flash file per font, a little Javascript, and a little CSS. The result, text that is still picked up by search engines, but looks how you want it to look. It also allows a user to copy and paste the text to and from their clipboard. It’s just as dynamic as regular text minus the restriction of type face.
4. Wellstyled.com’s Color Scheme Generator
With this tool you can pick a base color and find the contrast, complement, triad, tetrad, and analogic colors of it. You can then cycle through different variations: Pastel, Dark Pastel, Light Pastel, Contrast, or Pale. You can also share schemes with your friends or colleagues via a URL. This tool clearly shows us and reminds us that the spectrum of color is mathematical. A great tool for people who are just starting to get an eye for color.
See your color scheme as those with vision disorders do
You can see how each color scheme will appear to people with different vision disorders:
Go to Wellstyled.com’s Color Scheme Generator »
5. Lightbox - Next generation unobtrusive pop-ups
To see it in action, visit their homepage.
Setting it up is as simple as this:
- Include
lightbox.jsin your header.
<script type=”text/javascript” src=”lightbox.js”></script>
- Add
rel="lightbox"attribute to any link tag to activate the lightbox. For example:
<a href=”images/image-1.jpg” rel=”lightbox” title=”my caption”>image #1</a>
Optional: Use the
titleattribute if you want to show a caption.
6. Firefox Extensions - Change the way you tweak and debug
This will be redundant for those who read my previous article, but these are in fact very important tools, so I will reiterate.
Web Developer Extension by Chris Pederick
This extension has many useful tools, though most of them have been trumped by FireBug (which I will talk about next), some are still useful. Features include:
- Resize the browser window
Quickly and easily resize the browser to 800×600, 1024×768, or any other size you want. This tool helps you see how your site looks from your visitors’ point of view. Check Google Analytics and see which resolution is the most popular. Design for that one. Firebug does not have this tool. - Edit CSS/HTML without refreshing
This tool is useful for writing free-form CSS without having to refresh the page, something that is not as easy in Firebug. As you edit your CSS and HTML you will see the changes instantly. This is a major time saver. - View all Javascript loaded on the page
For those of you that have Javascript code or are trying to see someone else’s Javascript, you can view all the JS code that your browser has loaded on a single page. (Firebug shows you all the JS files, but you can’t search through all of them at once like in this extension) - View generated source
This is an excellent trool if you have portions of your pages loaded by AJAX or via Javascript. Regular view source won’t show you the HTML that is dynamically generated. (Firebug will also show you dynamically generated code. You can actually see it on the fly.)
Firebug Extension by Joe Hewitt
Often at the office we ask the question, “Remember life before Firebug?”. This extension has changed my life. Here are some of the major pros of this extension:
- Inspect the DOM (Document Object Model)
Click ‘Inspect’ and hover over elements of the DOM to see where that element is in the HTML code and what CSS styles it has. - Live CSS editing showing style inheritence
This is money. This will save you literally hours in layout design. For example, you can select a DIV and then tweak it’s margin by selecting the margin property in Firebug and pressing up and down to tweak it pixel by pixel. Page up and down to change by 10 pixels. You can also add new properties to current styles. Once you have made your changes, highlight the CSS and copy and paste it back into your actual file. - Detailed Javascript debugging
The Javascript console is slightly better here than in plain Firefox. It gives you more details and is a fine replacement for the default console. - See all files being loaded and total size of your webpage
This is so key for optimizing your website’s load time. You can see how long each individual file associated to your webpage took to load. Images, Javascript files, AJAX calls. At the bottom of the “Net” section of Firebug, you will see the total size of the page you just loaded.
7. Sajax - So simple, there’s no excuse not to use it
Sajax is a tool to make programming websites using the Ajax framework — also known as XMLHTTPRequest or remote scripting — as easy as possible. Sajax makes it easy to call ASP, Cold Fusion, Io, Lua, Perl, PHP, Python or Ruby functions from your webpages via JavaScript without performing a browser refresh. The toolkit does 99% of the work for you so you have no excuse to not use it.
The reason that I like Sajax the most out of all of the options is that once it’s plugged in, there is no maintenance or tedious coding to do. It’s all very transparent.
Here is an example in PHP:
<?php
function addFriend($id)
{
if (friendAdd($id) == true)
{
return 1;
}
else
{
return 0;
}
}
sajax_export('addFriend');
?>
Now, your Javascript:
function addFriend(id)
{
x_addFriend(id, addFriend_cb);
}
function addFriend_cb(result)
{
if( result == 1)
{
alert('Friend added successfully.');
}
else
{
alert('There was an error adding your friend.');
}
}
Then, in your HTML, it’s as easy as calling the function:
<a href="javascript:;" onclick="addFriend(100);">Add to Friends</a>
Other Web 2.0 Resources
Buy me a beer if you liked this post or found it helpful












September 12th, 2007 at 3:54 pm
[…] Next: 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers » […]
September 12th, 2007 at 4:05 pm
Great list! I compiled a similar one on my blog not too long ago but these resources have some fresh ideas that I may implement in my latest AJAX project. Thanks for the cool list!
Dugg, Reddited.
September 12th, 2007 at 4:50 pm
Good post, you can see lightbox with product pictures at http://www.TissueDepot.com
works great for us.
September 13th, 2007 at 3:47 am
Excellent post. I’m planning to use LightBox in my new web 2.0 dating site SearchPartner.Com. Also, blogged on Top 6 decisions you need to make to launch a web 2.0 site
Thanks
SearchPartner.Com
September 13th, 2007 at 5:12 am
I’m confused, because to much technology to eat at one time :p
September 13th, 2007 at 1:02 pm
“It will consist of lots of prebuilt animations and functions, similar to Scriptaculous (which you should never use on a real production site).”
You make this claim about Scriptaculous - which many, many, many ‘real’ production sites do use - but you don’t explain it. So, why shouldn’t Scriptaculous be used?
September 13th, 2007 at 2:35 pm
@Literaphile:
I’m happy to answer your question. My experience comes from using Scriptaculous myself for several months. I didn’t want to dig too deep into negativity in my post, but here are some reasons to avoid scriptaculous:
It’s extremely bulky. Combined with prototype and depending what parts of scriptaculous you are using, it can take up to 100k. (~60k after gzip). You can see the page loading pause at the point you’re including prototype, then scriptaculous.
jQuery: 21K (11k after gzip)
Scriptaculous’ drag and drop is sub par. I’ve seen a lot of buggy effects using it as well.
Those are some of the negative bits. The main reason I would recommend jQuery as your best bet for interface enhancement is because it is lightweight, innovative, and very powerful. You are not only limited to a set of functions that enable you to do neat effects and sortables, etc., but you gain an entirely new method to approach the DOM and work with it. jQuery is to javascript what CSS became to HTML.
I’ve been going through and replacing what I’ve done with Scriptaculous with jQuery and it has been a breeze. You actually feel stress lifted as you go through it
I work for two fairly large production sites: Purevolume.com and Virb.com, both sites are going under major redesigns, and both sites will adopt jQuery in place of Scriptaculous.
Thanks for asking the question!
September 13th, 2007 at 7:27 pm
[…] 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers (aclevercookie.com) (tags: ajax javascript tools programming) […]
September 13th, 2007 at 8:26 pm
[…] 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers (aclevercookie.com) (tags: ajax javascript programming) […]
September 13th, 2007 at 8:39 pm
[…] 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers via aclevercookie.com: flagging for the Lightbox reference… (tags: blog webdev todo) […]
September 14th, 2007 at 12:31 am
[…] Del.icio.us Links Posted on September 14th, 2007 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers (aclevercookie.com) [tags: javascript tools web programming webdesign] Getting Started with Cocoa: a Friendlier […]
September 16th, 2007 at 9:52 pm
As a web 2.0 developer myself, I find this post to be a very interesting compilation of useful tools. Your example of using jQuery is so understandable that I think I’m going to start learning it today
November 25th, 2007 at 10:20 am
[…] a more beautiful logo of your choice. Have you downloaded and installed it in your own photoshop? 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers I found this resource list particularly useful for those who are developers especially, though pack […]
December 8th, 2007 at 12:22 pm
[…] 7 Clutch Free Tools for Budding Web 2.0 Developers and Designers. Includes free and open source tools. […]
January 19th, 2008 at 3:00 am
awesome tutorial
January 26th, 2008 at 4:16 am
That Lightbox tool seems really nice, much better than traditional popups
—
Tech4um.com - Technology Forum for Anything and Everything Tech Related - MP3 Players, Video Games, Computers, Phones etc
April 5th, 2008 at 2:08 pm
[…] 7 Clutch Free Tools For Budding Web 2.0 Developers and Designers […]
June 23rd, 2008 at 1:05 am
Thanks you very much! Good blog