About Anup Shah

A web developer/consultant/trainer specializing in web standards, accessibility, CSS, JavaScript, XSLT and server side coding.

Google to host a number of JavaScript libraries

Google just announced their AJAX Library API, where Google will host many major JavaScript frameworks for you, such as jQuery, Prototype, Mootools, Dojo, etc.

This will allow you to write web pages that refer to those scripts rather than copies on your own site, reducing your bandwidth, but also leveraging the infrastructure capabilities of Google, such as their content distributed network (which means users would be served those files from a location much closer to them), properly compressed, minified, cacheable files, etc. Continue reading

How to fix huge text in Firefox 3 Beta 5 on Kubuntu 8.04

Firefox 3.0 beta 5 on Kubuntu 8.04 renders some text way too big. It turns out to be an issue when using points for your font size units in CSS (although generally relative units should be preferred, anyway!). You can fix this by

  1. Going to about:config
  2. Look for the setting called layout.css.dpi. The default value is -1.
  3. Change it to 96

The problem appears not to be Firefox, but the GNOME window manager’s settings. However, I don’t know how to change those when running KDE instead of GNOME. Anyone know?

Firebug may also have trouble running so this post has a tip on how to sort that out. Continue reading

Searching for apps and commands by typing rather than clicking; is typing the new clicking?

Microsoft recently announced an add-on to Office 2007 to let people search for commands by typing it in if they can’t find it in the new Ribbon user interface.

I find it interesting that a number of interfaces are now offering “shortcuts” to mouse clicking everywhere.

Is typing become the new clicking? Continue reading

Why Use XSLT in Server Side Web Frameworks For Output Generation?

Just as web developers want to use standards on the client side, standards such as XSLT on the server side may be an efficient way to create good quality markup and other web output.

It can help avoid the hard coded or hard to edit HTML strings that are often seen in server side templates and scripts.

As an open standard, XSLT is reasonably universal, and skills can be easily transferable.

Some people don’t like it or have had bad experiences with it in the past.

But it can be a very powerful tool in the developer’s toolbox. Perhaps it is worth giving it another look?

This article looks at why XSLT could be useful as part of the View in an Model-View-Controller pattern, its benefits and potential drawbacks. Continue reading

PHP 5.3 Gets A Bit More Object Oriented And More

PHP 5 in general has been a good improvement over PHP 4, but those used to full blown object oriented program languages such as Java or C# may find some OO features still lacking in PHP 5.

PHP 5 has the usual things, such as classes, interfaces, abstract classes, inheritance, etc, but some useful programming constructs have been missing, though PHP 6, under development, aims to rectify that.

However, it seems that many of those features are going to be brought forward to the up-coming PHP 5.3 (which may make it more likely that it will get installed by web hosting companies sooner than they would likely go for PHP 6).

Sitepoint has an excellent summary of the features. The list of features include: Continue reading

IE8 – meta switch = IE7!?

Microsoft's announcement of a switch for proper standards mode in IE8 makes that browser passing acid2 test less useful than initially seemed! So Microsoft announced a way to support standards without “breaking the web.”

The challenge they had was to find a way to “enable (and encourage) interoperable web development, but don’t force IE to break pages that work properly in IE today.”

They eventually settled for a <meta>-based “opt-in to the browser version I tested with” strategy.

What this means is that if you as a web developer want IE 8 to render according to their best implementation of standards then you opt in by adding a particular meta element into your HTML (or send down a similar HTTP header in the response).

In other words, for web developers trying to do the right thing they must pay a small “don’t-break-the-IE-web tax!”

Many prominent web developers and designers have been highly critical of this. But, ironically, is this actually a positive thing in the long run? Continue reading