February 15, 2007

Delphi for PHP

You will find other articles relevant to this document in these sections:
Richard Lee @ 1:50 pm

Seems to be a lot of exciting things going on in the world of PHP lately. In addition to Zend Framework there is now a plans to release Delphi for PHP. In a recent Delphi Seminar held in India, CodeGear (a subsidary of Borland)  announced in addition to their release of Delphi 2007 they will release a brand new product line aimed at Rapid Application Development in PHP.

February 14, 2007

Radiant Logic

You will find other articles relevant to this document in these sections:
Cameron Manderson @ 9:57 am

I have recently been flat out establishing my company Radiant Logic PTY LTD, based in Melbourne, Australia. I appologise for not adding more posts more regularly - I have been taking a break while I establish my team and going through a very large expansion. We are a company that specialises in custom web application development focusing on working with creative agencies.
In January we went to the PHP Melbourne User Group which made an interesting night. We will be attending Web DU and the mobile summit. We have got lots of exciting projects underway for this year including 2 major sites, one in the environmental sector and one in the food and beverage. We are doing a JEE custom development project also for catalogue photographer briefing system integrating into Cumulus also.
For anyone with advanced web application development skills looking for a job in a great experienced team please send me your resume to cam [-at-] radiantlogic.com.au. We are always interested in meeting new people and discussing opportunities to get people involved.

Custom Web Application Development in Melbourne Australia for highly creative sites and studios.

January 19, 2007

Intro to Mod Rewrite for SEO URLs

You will find other articles relevant to this document in these sections:
Richard Lee @ 10:37 am

Mod Rewrite is an Apache module commonly used with PHP to create Search Engine friendly URLs. Essentially this module lets us mask ugly querystrings with much more meaningful URLs. For example take a products page in a database driven catalog:

http://www.mysite.com.au/catalog/product.php?pid=123

At the moment this URL tells us nothing about the destination page and searchbots lare deterred from indexing such URLs - Wouldn’t it be better if we included the product name?

http://www.mysite.com.au/catalog/products/t-shirt/123

Much better :) . Using the power of regular expressions we can extract the information from our new URL and pass this information onto the correct PHP page behind the scenes.

So how do we do it? In the case of our new URL all we need to do is extract the last part which carries the product id and pass this onto the product.php page. We can do this easily in a .htaccess file:

First we enable the Mod Rewrite engine using RewriteEngine on:

# HTACCESS
 
RewriteEngine On # enable the module

Then we set the base url we will be writing from using RewriteBase base

RewriteBase /catalog/ # base URL which in our case is 'catalog' since this is where our app is sitting

Now we do our Rewrite using the RewriteRule pattern substitution directive - pattern is our Regular Expression which we use to evaluate the incomming URL, substitute is the string which is substituted for (or replaces) the original URL for which Pattern matched.

RewriteRule ^products/[a-zA-Z0-9-_]+/([0-9]+)$ product.php?pid=$1
# End HTACCESS

The Regular Expression:

- Caret ^ and dollar $ sign characters signify the start and end of our pattern string

- Square brackets specify ranges of allowed characters, such as A to Z, 0 to 9

- Round brackets are used to “capture” parts matched in our pattern - in this case the product id - which we later reference in our substitute URL using back referencing $1
(ref numbers are indexed according to each set of round brackets i.e. if we had enclosed the product name match in rounded brackets this would be $1 and the product id would be $2)
Easy enough? This is a relatively simple rewrite and I have explained it in fairly layman terms, more complicated rewrites require some knowledge of Regular Expressions. If you haven’t played with Regular Expression I highly recommend you checkout Wikipedia, DevShed articles and the cheat sheets supplied by ILoveJackDaniels.com.

December 20, 2006

Zend Framework Example

You will find other articles relevant to this document in these sections:
Cameron Manderson @ 1:34 pm

A sophisticated example built by IBM showing off some of the features of the Zend Framework: QEDWiki

FXT - Flex Templating

You will find other articles relevant to this document in these sections:
Cameron Manderson @ 11:02 am

If you get a chance checkout the FXT project:

Flex Templating provides rich client side website templating using MVC (Model-View-Controller). FXT solves a host of problems for using Flex and Flash Player for website development.

This is an implementation of client side templating using Flex. It is a very compatible and productive way to make data driven websites very quickly. The custom Yahoo Web Search mashup took less than an hour to create and the entire UI can be reskinned by changing a single SWF file.

The key point is that the Model within the HTML page drives the View of a Flex application. It allows Flex to compete in a page centric world and expands the reach of the Flex marketplace. In a typical HTML based application, data (Model) and tags (View) are merged and intertwined. With FXT, the data (Model) is separate from the templated Flex code (View) until both arrive on the end users machine. Both pieces need not arrive or update at the same time, creating a more real-time feel than most HTML applications have. This is because the data (Model) remains structured all the way to the client side where it is templated at runtime rather than being merged at the server. Using E4X, you can utilize components, data binding, and async loading to create truly immersive rich web applications. Reskinning in this paradigm is simple. If the developer changes the SWF template on the server, the entire UI will change instantly. This simplifies development and deployment of larger scale sites and allows for small teams to edit sites in an extensible and productive manner.

The solution is also 100% SEO compatible as the Model of a page is within the HTML of the application. Better still, the data can be easily parsed with any xml parser by web crawlers or other Mashup applications.

I am not quite sure if I agree with the last quote about 100% SEO compatible, the Model is defined in a script element, which I doubt google will index correctly. Google looks for information that is “presented” to the user, there is no way to ensure that the model “IS” viewed in the Flash Movie (?). This being said it seems to index our XML information fairly well - so maybe it is!

December 11, 2006

Regular Expression Tester

You will find other articles relevant to this document in these sections:
Richard Lee @ 2:18 pm

Regular Expressions are tricky at the best of times, wouldn’t it be great if you could test your patterns ? - Well you can -  Checkout this handy online tester http://www.quanetic.com/regex.php

December 8, 2006

Nintendo Wii hits Melbourne

You will find other articles relevant to this document in these sections:
Richard Lee @ 10:49 am

Thursday night saw the arrival of the Nintendo Wii at Melbourne department stores. It was reported that up to 300 people queued at Chadstone and Southland for a chance to purchase the console. There were no guarantees since many stores had already taken on pre-orders. “Everyone is after the Call of Duty package with the second controller” said Russell Willson, console enthusiast and colleague. Russell came to work on Friday with his Wii and even though I personally have not been caught up in the hype I have to say it’s an impressive piece of gadjetry - Russell tells me he’s actually physically stuffed after playing and hour of Call of Duty. “The controls actually interact with the game through movement. For Call of Duty you use 2 controls, the standard (looks like a TV remote) and the “nun chuk” (looks like an electric shaver). The normal control is used to control weapons and the nun chuk is used to control the character - when he picks things up, rows boats or moves tanks!”

I won’t be surprised if we see Palates come out on the Wii in the next few months! :) .

December 6, 2006

Snap Website Preview

You will find other articles relevant to this document in these sections:
Richard Lee @ 4:33 pm

Notice the popup previews on our external links? No it’s not intentional advertising it’s just another nifty Web 2.0 component called Snap Preview Anywhere which takes a quick screen dump of the target website - sorta of a peek around the corner if you like ;)

December 1, 2006

Melbourne PHP User Group

You will find other articles relevant to this document in these sections:
Cameron Manderson @ 8:25 pm

I am going to attend the next Melbourne PHP User Group meeting in January 11th 2007.

Check out the details here: http://melbourne.ug.php.net/content/view/133/59/

Google prefering dashes to underscores

You will find other articles relevant to this document in these sections:
Cameron Manderson @ 7:49 pm

Bit of an interesting post on Google prefering dashes and underscores: http://www.mattcutts.com/blog/dashes-vs-underscores/

« Previous PageNext Page »