Blog of Ryan Ilg, Web Developer and Graphic Communication Specialist.
Well the time has finally come. After many months of slaving away at the keyboard. HFG has launched. As one of my biggest Drupal projects to date, it took a lot to come to fruition. Using over 30 different community contributed modules, plus a few custom built ones, it boasts a CMS structure that would scare many. Line after line of code, brought together for one purpose… Charity.
Over the next 5 months, homeowners/hosts will create home stays on the site. Allowing visitors from around the world to come to Home For The Games to find temporary housing during the 2010 Winter Olympics in Vancouver. The system gives hosts the control to select which days they want their home available, and which days they don’t. Day by day control is what makes this system so robust. If uncle Bob is coming to stay for a few days, the host can make certain days in a time span unavailable to bookings. Each home stay can be booked by multiple visitors, but on different dates. Not only does it provide the host the ability to state day by day availability, it also allows the visitor to book on a day by day basis. This is perfect for when a visitor wants to stay in Vancouver for the events at Cypress Mountain, then head off to Whistler for a few days, and return to the same home stay when they return to Vancouver. In the end, it gives the users complete control over everything to do with their stays. When they have finally made a decision, they are taken to Paypal to finalize their booking and pay their deposit.
Now this all seems pretty simple, but building a system like this wasn’t. I had to build a few custom modules from scratch, just to get the functionality we needed. Using a few database tables to store the data, the module collects host information, saves dates and date status (open, closed, booked), as well as some basic transaction data (No credit cards or personal info). A host creates their profile, selects dates to open their home, and all the data is processed and stored. They can even edit their property after it has been created, but cannot modify any dates that a visitor has already booked. They can add more dates if they decide they want to open their home longer, or close dates if something has come up. A visitor can then come to the site, browse site listings, and find one that fits all their criteria, such as location, if there are children in the house, is a smoking household, etc. etc. They can then select any dates the host has made available, pay their deposit, and book their home stay in Vancouver right from the comfort of their living room. All the payment processing is done through Paypal, so you know its secure.
There are so many things going on in the background of the site. Cron is constantly running, clearing up abandoned transactions, releasing any dates a visitor has selected, but decided not to book. Everything is verified, transactions are double confirmed. Images are automatically resized. In fact, it’s hard to sit down and think of everything that the site does. Over the last few months I have put in many long nights, and haven’t had much of a social life. But it’s all worth it when you see the project launch, and that first booking comes through.
I really hope you all enjoy HFG. We can thank Seven25. Design & Typography Inc. for the slick, clean visuals of the site. Be sure to check out Home For The Games, and if you know anyone with a little extra space they would like to rent out over the Olympics, don’t hesitate to pass the word along. It’s for a good cause.
Over the last week or so I have been reading a great book by Robert Brunner & Stewart Emery called “Do you matter? How great design will make people love your company”. Buy on Amazon.
A few weeks ago, the new Nucleus Networks site launched. It was a rather quick build, created using my project framework (PHP, XHTML, CSS), along with sIFR and Flash. Check it out.
A few days ago, I picked up a copy of Los Logos 4. As you may have guessed its the forth in the series, and once again, it’s very inspirational!
The new site for Vancouver based Plenty Stores has just launched. getplenty.com
Well I have been putting some thought into building a new site. There are many options, and many different ways to build things.
On one side of the scale I have a custom CMS. I can take what I have, and expand on it. Considering how much work has been put into it, it would be sad to see it all go to waste. Another sub option, is to take my project framework, along with custom stuff built for this current site, and make a fresh new hybrid, which allows for 100% customization.
On the other side, I have been thinking about using Drupal as the base for my site. With constant updates, pre-built modules, and a ton of customization options, it would save me a lot of time on development. I can then also give back any modules I build back to the community. Which is a huge plus in my books. But there are drawbacks. I am a huge fan of clean code, and thats just something that Drupal does not do a very good job at. I pride myself when I can look at the source code of a site I have built, and everything is lined up, tabbed in, and easy to read. It also makes it easier to do updates, and for people to learn from.
So here I am, stuck in the middle. Custom, with more time on development, or Drupal with more time on design. Either way, I’m pressed for time :S
Thoughts?
A brown box arrived at my door from Amazon.ca yesterday. 3 new code bibles showed up to help me delve deeper into some software I am presently using. Pro Drupal Development (Second Edition) by John K. VanDyk, and Learning Drupal 6 Module Development by Matt Butcher will be helping me in the Drupal department. TextMate, Power Editing for the Mac will be looking after me in, well, TextMate. Which is a text/code editor that I have been using for 3+ years, and still don’t know everything about.
There is always something great when getting new books. No matter how much you believe you know about something, there is always something you didn’t, some shortcut or hidden feature you had no idea was there. The internet is a great resource, but sometimes it can be a daunting task to get the information you need. But really, who does’nt love getting away from the screen to a local coffee shop on a lazy sunday.
Well after many late nights, and code packed days, I have finally gotten around to writing about the latest project I launched… almost a month ago. Morgan Crossing, a new real-estate development based in South Surrey, BC. The site itself has a great feel, with its large background images, slick JavaScript animations, and subtle elements that pull it all together.
I was brought onto the project, once again by Vancouver based design firm Free Agency Creative, before the designs had been fully flushed out. That turned out to be a great opportunity for me to throw my 2 cents into the mix and add some personal touches. Integration of a large size photo gallery was one of them. Rather than a boring, common, small size photo gallery, like you would find on to most development web sites, we pushed the boundries. Using jQuery to supply multi browser integration of animation, it allowed us to give the user a different experience. One where they can open the gallery from any page, without losing the information they were currently browsing. Along with a well placed cookie (another of my ideas), the site saves which ever image the user has currently chosen, so when they visit a new page, it will automatically load the same image in the background. Sort of creating a custom website for each user. The whole site was built on Drupal 6, which allowed for a lot of customization and expandability right out of the box (or zip file, I guess). Using a few modules (including CCK, ImageCache, and Views, among others) and custom templates, ontop of the default system allows the client to easily update the site, add new floor plans, or rearrange information. All the headers are generated dynamically via sIFR3, and Videos are embed using the great open source Flash media player by Jeroen Wijering. Be sure to check out Morgan Crossing, by far, one of my favourite development sites I have created so far. Cheers.
Are you a fellow designer/developer? If you didn’t know about it, or take it already, be sure to pop by A List Apart and take the survey for people who make websites. The information is only going to come back to help us out in the end, and it only takes 5 minutes.

I just read an article over at search-this.com about the 10 things every developer should know. It was quite refreshing as I agree with them 110%. If you don’t already know, or do these 10 things, get reading and start writing good code. The only other things I would add to the list would be to write neat code. When you view the source, everything should be formatted in a readable way with plenty of tabs to keep things lined up. The other thing would be to comment your code, not necessarily the html, but any Actionscript or PHP. There is nothing better than coming back to a project in a year and knowing exactly what everything is doing. It just makes updates a breeze, as well as helping out anyone new on the project. Get commenting!