Yahoo! Application Platform

Tuesday, 28 October 2008

Yahoo! just launched the Yahoo! Application Platform

According to their overview:

The Yahoo! Application Platform (YAP) is the software and services that enable developers to build Web applications that are available throughout Yahoo!– the largest audience in the world

Check out the PHP SDK example:

I suppose it’s an interesting approach… allow people in to Yahoo!’s data so that they can create applications that integrate with user data in some niche way that Yahoo! itself would never build. I’m not sure how useful it will be in practice though.


Monday, 27 October 2008


An interesting alternative to sIFR that uses SVG (FireFox, Safari) or VML (IE) to render text in custom fonts on an HTML page.

Monday, 27 October 2008

Fantastically designed site from a new web development firm.


Monday, 27 October 2008


A new web development application from the makers of CSSEdit. Interesting, but from the screenshots alone it’s hard to see what all the fuss is about. Looks like a more loosely integrated Coda alternative.

A Smarter MAMP

Friday, 24 October 2008

A Smarter MAMP

Great article about setting up the built-in-but-inactive DNS Server on Mac OS X to enable almost automatic creation of new local development virtual hosts. A must read for anyone who knows the annoyance of having to edit the hosts file and an apache config file (among other things) whenever you want to add a new local development site.

Database Migrations in Doctrine and Propel

Friday, 24 October 2008

I just read Jonathan Wage’s post on Doctrine’s new migration features. Specifically, he goes into the new Diff Tool (which can automatically generate migrations when you change your schema) and Down Automation which replaces the classic up() and down() methods with a singular migrate($direction) method. It looks promising, but I have yet to actually build something with Doctrine. This looks to be really elegant though and may push me over the edge to jump in to Doctrine on a new project. The sooner the better I suppose since Doctrine will be bundled with Symfony 1.2.

Also, for Propel users, Kris Wallsmith is working on adding migrations to Propel via the Symfony sfPropelPlugin to replace the older and much more manual sfPropelMigrationsLightPlugin. It looks promising but I haven’t read anything recently about progress.

CSS Browser Selector

Friday, 24 October 2008

CSS Browser Selector

An interesting and elegant solution for those looking for a way to target specific browsers and/or operating systems with differing CSS. It’s a (less than) 1kb JavaScript file that will add a class name to your document’s html tag with the browser and OS of the client machine so you can write CSS that targets certain browser and operating system configurations in a standardized way.

This is similar to a method I use for adding Symfony module and action selectors to the body tag.

Using the Zend Framework with Symfony 1.1

Tuesday, 21 October 2008

I’ve written about using the Zend Framework within Symfony before but things have changed a bit in Symfony 1.1 so I wanted to post an update with a new Symfony 1.1 compatible approach to loading and using the library from within Symfony. The biggest change that has happened since my previous article is that the sfZendFrameworkBridge has been removed from Symfony. This is actually a Good Thing since, as you’ll see in a moment, there is now a more elegant approach to loading external libraries.

Most of the steps are the same as those outlined in the afore-linked article so you may want to read it before going further. The main difference will be how we get the Zend Framework files to autoload.

Getting the Library

This article assumes that you’ve placed the Zend Framework files in <sf_project_root>/lib/vendor/Zend just as we did the last time around. Note though, that the Zend Framework subversion repository went through a bit of a restructure, so if you’re linking to lib/vender/Zend via svn:externals you’ll want to use this updated format on lib/vendor:


Linking the Library to Symfony

Now, to link the Zend Framework and allow auto-loading of class files, all you need to do is add a few lines to your application’s configuration class file. If your app is named frontend then the file you’ll need to edit is located at apps/frontend/config/frontendConfiguration.class.php.

Modify your initialize() method to include the following:

public function initialize() 
  $sf_zend_lib_dir = sfConfig::get('sf_lib_dir').DIRECTORY_SEPARATOR.'vendor';
  spl_autoload_register(array('Zend_Loader', 'loadClass'));

… and that’s it. Clear your cache (./symfony cc from your project root) and you should be good to go. Creating an instance of a Zend Framework class is as easy as something like this:

$pdf = new Zend_Pdf();

Zend_Pdf will be auto-loaded for you.

The information in this article was gleaned from a post by Dustin Whittle and also one from Kris Wallsmith.

Symfony 1.1's New Architecture

Monday, 06 October 2008

I came across this post from a few months ago on the Symfony site:

It’s a really interesting overview of the new decoupling of core classes that Symfony 1.1 provides. This is particularly useful information if you’re designing something that needs to be fast and trim and you don’t want to load the entire Symfony framework on every request. Essentially you can create a custom sub-framework out of Symfony components for just the pieces you need. This saves a lot of the overhead of having to load extra components that you won’t use.

Worth a read.

Wildcard Subdomains in Plesk

Thursday, 28 August 2008

In a recent project, I had to enable wildcard subdomains in Plesk so that I could use dynamic subdomains with symfony. The answer was to manually add an Apache directive to the domain’s configuration and was found in a Knowledge Base article from Parallels:

I wanted to post this just in case someone else runs into the same issue trying to use the dynamic subdomains front controller with a domain set up through Plesk. This was Plesk 8.4.0 running on a Media Temple Dedicated Virtual(dv) hosting plan, but should work with older versions of Plesk as well. If you’re not sure what a vhost.conf file is, there are several tutorials online or you can check out the official Plesk documentation (here’s the PDF you’d probably want to take a look at).