© copyright 30.Sep.2009 by Paul Bradley posted under Journal.
Planning for the new cottage site has been going well, I have found a supplier who can give me listings for approximately 700 cottages to get the site started along with 200+ dog friendly cottages I will migrate over from k9directory. I am still working through the best practices for speeding up a web site article, in particular looking at splitting components across domains, as a result I have wrote a small PHP function which alternates between two sub domains when creating links to images, so that a page full of cottage thumbnail images will be split evenly between the two sub domains, maximizing parallel downloads.
I have also been looking into using Cookie-free Domains for static components, after listening to the StackOverflow podcast #65 where Jeff discusses how much improvement they have seen since moving all their static components over to sstatic.net. Luckily I already have a domain (url2.org) which I can use for this, I just need to move things around on the server to configure this properly.
Continuing with the performance theme, I watched the Simple is Hard presentation Rasmus, the creator of PHP, gave at Drupalcon in 2008. The main message of the presentation is that while PHP frameworks are helpful, they do add overhead to your application, and if you can write pure PHP, then you generally can handle more requests per second. The lesson I took away from the talk, was to ensure your development code has full error reporting turned on, so that can you can remove all warning messages from your application. As your code moves into production, where typically you have error reporting turned off, if it's producing warning messages, then quite a bit of CPU time is taken up in building the whole warning message string, just to dump it at the end of your scripts execution. So by ensuring there are no warning messages generated by your code, your production system will run faster than if it contained warning error messages.
This month I started learning Git the free & open source, distributed version control system. The documentation is very easy to follow, and I have just been getting my head around branching and merging versions of my code. The main reason for wanting to learn Git, is that during the development of 192cottages, there will be a number of PHP scripts which I would like to release as open source software, by using GitHub as the distribution medium. Git will allow me to push the latest version of my code base to GitHub for public consumption.
For example, one PHP class that I need to develop is an implementation of the postcode validation routine which is part of British Standard BS7666. This is so that I can validate the cottage postcodes before using them in the Google Maps API to find the map co-ordinates, so that I am able to their locations onto a map.
See Also : ProGit Book
Played around with the UNetbootin tool, which allows you to create bootable Live USB drives for a variety of Linux distributions from Windows or Linux. It works very well, I was able to create bootable USB drives of Cruchbang Linux and even tried out the Karmic Koala Live CD from the daily builds
Had a look at using k9copy to extract a short video from a clients DVD to host on their web site via YouTube.
Updated and patched my Ubuntu server, which hosts all my database backups offsite. I also installed the GNU Compiler ready for something I want to try out next month.
It's been a good month for k9directory with six new properties signing up to be listed :-
The site has produced £31,105 worth of actual bookings so far this year that I can verify, the actual figure is probably much higher than this, as many hotels and cottages take their own bookings directly. I am hoping to break the £35k barrier before the end of the year.
I have also made the decision this month to set-up a limited company and move all my web properties into the ownership of that company, so I registered Carlisle Software Limited with companies house, and set-up a holding page web site, until I can find some time to develop the content.
14-9 /
§