Archive | Web Development

07 December 2007 ~ 3 Comments

Google Chart API

Venn DiagramI’m very excited about the new Google Chart API. Calling a very simple URI-based API returns a wide variety of elegant and very effective graphs for all sorts of uses. We can now include charts in blog posts, Basecamp messages, etc.—essentially, anywhere we can post HTML. Anyone who’s ever had to muck around with GD, Flash, or any other server-side graphing technology will appreciate how simple and powerful this is.

The Charts API is a prime example of the power of the Unix philosophy of using discreet, limited-function apps that can be chained together to create much more complex and compelling applications, only in this case having the internet itself as the operating system glue that binds the components together. In essence, Google is building out a layer of functionality on top of the web that we can then deploy into our own applications, thereby insinuating themselves into the fabric of the web itself. Very neat stuff!

Continue Reading

27 February 2007 ~ 0 Comments

Semantic Flash

I’m often having to explain to clients and web designers why having a fully Flash-based site may not be the best fit for their business. However, I’ve always felt that there are many wonderful things about Flash, and that it can make a site much better when used judiciously.

Dan Mall has published an article in A List Apart about semantic Flash, with examples of appropriate uses of the technology within the confines of standards-compliant sites. “Slowly but surely,” he writes, “Flash is finding its way into the standardista’s toolkit, and it’s happening in a very exciting way.”

This is exciting stuff indeed; it’s great to see ALA and the standards community embracing Flash as another tool in the web development toolbox. However, Mr. Hall’s example is very subtle (dynamically creating “slippery floor” type reflections on album covers), and may not even be recognized by site visitors as Flash. In most cases, when we are asked for Flash development it is because the client wants an over-the-top experience that feels more like TV than the web. This is exactly the type of implementation that leads to “bad Flash” (no page links, search engine obscurity, poor accessibility, etc.) and breaking with web standards.

I don’t know that there is a viable solution to this problem other than to keep trying to educate clients and designers on the nature of the web medium.

Continue Reading

15 January 2007 ~ 0 Comments

The Boxes and Arrows redesign is live!

Check it out! It’s been under development for a while, but the nice new design has been worth the wait.

Technorati Tags: ,

Continue Reading

08 August 2006 ~ 0 Comments

How to run a word count on a website using free Unix tools

I love working on a Mac. My Powerbook is not the fastest computer in the world, but it works reliably and is virus- and malware-free. (Thus far.) And when you’re working on text-heavy document sets (such as websites), OS X’s Unix tools can be incredible time savers.

An example: running a word count on a published site. This is a request I get fairly frequently; translators usually want to know how much work they will need to do to translate a site from one language to another (eg. Spanish to English). Fortunately there are two Unix tools that can make this work very easy: lynx and wc.
-more->
The following is the sequence of commands I usually employ:

Open up the terminal and type the following:


cd ~/Desktop
mkdir sitename_com
cd sitename_com

This creates a new folder called sitename_com on your Desktop, and then places you in it. Now type:


lynx -traversal -crawl http://www.sitename.com

lynx is an amazing command-line based web browser that does many things. Here we’re using it with the -traversal switch, which follows every link it finds in the site you pointed it to (http://www.sitename.com). The -crawl switch saves each page it finds as a text file with a .dat extension, without the html markup. Just what we want!

Note: if lynx isn’t on your system, you can install it using Fink. Explaining how to do this is beyond the scope of this post, check out the documentation on the Fink site for more info.

Next step:


wc -w *.dat > ~/Desktop/wordcount.txt

wc is a word count utility. Here we are telling it to count only words (hence the -w switch) in all files with the *.dat extension (in other words, the files that lynx saved in the current directory in the previous step). The results are saved to a file called wordcount.txt on your desktop. Open this file up in a text editor, and you’re done!

Well, not quite. Web pages in most sites usually have many words in common with other pages in the same site. For example, navigation menus are usually the same throughout the site. It wouldn’t be fair to count the navigation labels as “new words”, because they will only need to be translated once. I usually take a look at a few of the .dat files that lynx created, to guesstimate a percentage of repeated words. (It can be between 10% – 40% or more of the site content.) I then subtract this number from the total. (I always make it clear that the number I’m giving is at best a rough estimate. But this is better than nothing!)

Of course, none of these tools are Mac-specific; these things can be done in Linux and even Windows (using Cygwin).

If you have any Unix web-dev tips to share, or if you know of ways of improving this technique, please let me know.

Continue Reading

17 January 2006 ~ Comments Off

Web 3.0

Jeffery Zeldman, on the Web 2.0 hype:

To you who are toiling over an AJAX- and Ruby-powered social software product, good luck, God bless, and have fun. Remember that 20 other people are working on the same idea. So keep it simple, and ship it before they do, and maintain your sense of humor whether you get rich or go broke. Especially if you get rich. Nothing is more unsightly than a solemn multi-millionaire.

To you who feel like failures because you spent last year honing your web skills and serving clients, or running a business, or perhaps publishing content, you are special and lovely, so hold that pretty head high, and never let them see the tears.

[Link]

My team and I fall in the latter category, although I can’t say we feel like failures. That said, the temptation to “productize” the tools we’ve developed in-house is strong: the costs are minimal, and there are potential gains. Regardless of the hype, there will always be a place for solid products that serve a clear need and place the interests of users first.

Continue Reading