I've been working with the excellent design studio Lost In Brooklyn for a while on various projects, and we've just launched one: a site for Just Jinjer, who are one of South Africa's top-selling bands (if not the best seller in S.A.; in any case, they're up there). This is the second site to be based off of the latest version of my CMS, and it has the full complement of editing and writing conveniences that come with this version--easy link creation, easy image uploading and referencing, and the like. On the front end, there are some interesting features, including embedded Flash music players, a DHTML scroller, and lots of CSS. The CSS and DHTML presented some challenges, though, in that Flash doesn't play nice with DHTML show/hide functions, so I used an iframe to manage videos on the discography pages. Take a look.
I developed a dynamic PDF generator for the The Rights Workshop, using the fpdf library to create PDFs on the fly based on user input. It's a bit like writing raw Postscript at times.
It's been quite an intense month or so around here lately, as I've been juggling several simultaneous projects. The highest-profile among them has been IraqSlogger, for which I was the developer (as part of the Cartwheel Creative team, who did a great job on design and project management). It's Eason Jordan's and Robert Young Pelton's new venture: a free 24-hour news service dedicated to the major issue of our time, Iraq. Think you're getting enough Iraq information from traditional media already? You're not--they have some pretty impressive stories, many of them exclusives from sources in Iraq. Check it out. They're updating constantly, around the clock.
In advance of doing this site, I significantly retooled the admin section of my CMS, making it a lot more flexible for building sites out. Structural changes to the database are reflected instantly across the admin interface, inspired in part by the MVC world. I changed the admin interface itself considerably, adding more user-friendly options for text input and HTML entry (not wysiwyg, though, as Safari doesn't handle those gracefully), image upload and tracking through the browser, and polishing some loose ends. I couldn't have built this site in this time without these changes, so I'm glad I did them beforehand.
What I ended up building was much more than a blog--it's an entire publishing workflow for several writers, with a tracking interface, article check-in/check-out, flexible sorting, previewing systems, and a lot of attention to the writer's experience. On the front end, there are some pretty cool features as well: RSS, intelligent archiving, flexible content in the sidebars, the ability for IraqSlogger staff to write posts via email, integration with Google search, flexible handling of embedded video, context-sensitive image display, the ability to traverse posts by category/subcategory, by topic, by related posts, by writer, and chronologically, and plenty of other features I'm not remembering at the moment. (Hey, I'm busy making even more enhancements to the site.)
There have been some interesting challenges with this project as well: browser-compatibility requests (including Mac IE 5, believe it or not) and therefore advanced browser detection, intricate requirements for content display, with posts having different layouts and content sets depending on their context, integration with pasting from MS Word (and hence handling special characters differently on the Web and in the RSS feed), and plenty more. All of this on a pretty tight development schedule. It's been quite a ride, so take a look. I have to say it's a damned good site.
In what turned out to be quite a busy Fall, I managed to do the primary development (as part of the Synklynk, Inc. team) on N64Kids.com--the main site dedicated to a rather popular viral video, which has recently been picked up as part of a BMW ad campaign. I did the PHP/mySQL frontend and backend, as well as HTML/CSS. Neat features: a membership area, live XML parsing from YouTube, the ability for members to link to videos they've posted on YouTube, and the ability for admins to screen out any videos that might be inappropriate. As you'd expect from a Synklynk, Inc.-related project, the membership system is tied into the Synklynk, Inc. promotional and reporting engine I built earlier this year. A neat little project.
This site, for Lime Syndicate, was a project with the design team of Cartwheel Creative. Lime Syndicate needed a way of searching a specific user's ranking in a very large database that was constantly changing. My solution was to compile selected information into temporary tables for sorting and searching based on the most recent available data. It was interesting to tackle this kind of problem.
While work continues on other projects, I was also asked to build a site for The Fort Pitt Preservation Society, a local nonprofit with the goal of saving a portion of the restored Music Bastion of Fort Pitt, a pre-Revolutionary fort on Pittsburgh's Point. I built a CMS, a blog, and a comments engine, with the administrative tools to manage them. Difficulty: I only had a day to do it. It's worked out pretty well, actually.
Years ago, I did a dynamic website for interior designers Turner|Martin, and now I've been brought in to finish a dynamic Flash site for them. We're still awaiting some content at this point, but it's been an interesting project, with over 1000 lines of Actionscript code. I set the site up to get its content at the direction of an XML file, and pull most of its images in at runtime, making it easy to update. The menus are populated dynamically, and many of the "pages" have clickable hotspots which launch virtual popups (and you can drag these around, too). All of this is changeable in the XML file, and I'm happy with where this project has come out. Watch this space--I'm sure there will be refinements and other requested features before we launch.
Rapture Studio of Pasadena asked for a gallery of their work which would be easy to administer, load quickly, and integrate with their design. After discussing our options, we decided to go with AJAX to keep page loading time down. The backend and the infrastructure is PHP/mySQL, though the gallery itself is AJAX. It works rather well, and was a fun one to do.
Since spring, I've been working on a new, expanded site and promotional engine for Synklynk, Inc.. This is quite a cool project: companies use Synklynk's system to give away free music files, and get information back about the people who download the promos, including geolocation data. The front end is working very smoothly, and there are very interesting reporting options on the client side as well. For the reporting, I ended up doing some very complex mySQL queries (including multiple virtual tables), and in several test runs with clients, we've gotten a lot of response. I've also given them a custom blog with an RSS feed, and other niceties under the hood. It's been a fun project, and this is something that people are going to use a lot.
The Rights Workshop clears music for use in film, tv, commercials, and other media. They had a rather nice Flash site which they were unable to update easily, so they asked me to help. I preserved the look and feel of the Flash site, particularly with the movies, and added my easy-to-update CMS, with blog and RSS functions as well.
This was a project for a small publisher of children's books, Creative Learning Productions. They required an easily updated site, so I set them up with a web-based CMS, product management, and connections to the Paypal commerce system.
We've launched it! The latest version of the Harry N. Abrams, Inc. site is up! Most tables are gone and .css is how we're doing positioning (a few are used by staff in the feature pages; there's one legacy table on a search page, and there are tables for the calendar). Quite an undertaking, getting it to render properly on all major browsers, but it's a lot easier to maintain. We've also added a lot of interesting features: the ability to keep lists of books, send e-cards, and email pages to friends. We've also improved the interface in a number of ways, particularly on the detail pages. So take a look--it's quite a nicely designed site, too, courtesy of their Marketing Art Director Eric Diloné.
This project for ACME Payment Systems Corp. was a quick one I did over the holidays, for a startup in the Seattle area. They had a tight deadline and needed design as well as development, so I skipped the Photoshop stage and did the design in straight CSS, which sped things along much more quickly. We went through a lot of little changes during the review process, and here again CSS helped a lot. Driving everything is the latest version of my usual PHP/mySQL content management system, this time with a few enhancements to the administrative area, which makes managing the site a lot easier. (When I get a chance, I'm going to port all that back to this site and onezero music.)
I've spent much of the fall and early winter on a significant upgrade (including my first almost-entirely-CSS implementation) to Harry N. Abrams, Inc., which isn't actually launched yet, but we're getting close. In the meantime, their existing site is still working great. Stay tuned. I do have to say that doing a site of that complexity in CSS was a really great experience, and as soon as I get a chance, I'm going back to this site and taking out all the table cells.
I'm gradually rolling new features into Harry N. Abrams, Inc.. While some of these improvements are subtle changes on the site's administrative side, or under-the-hood enhancements, there are a few that are showing up on the public side at the moment, most notably a promotional listing system, and shortly we'll roll out a newsletter/mailing list system that I've coded.
Work continues on an update of IRG Plotters & Printers. When we launch this version, there will be a rather nice search function. Stay tuned.
At the request of Tajima Creative Group, I did a little animated logo for Ubercool. It was a quick little job, but I had a fair amount of leeway, so I went with animating a wireframe outline with a delay from left to right, and then drawing in the fill from left to right. The paths were a little more complex than could be easily tweened, so with paths as a guide, I ended up animating the fill manually. The effect is actually rather neat.
This was an interesting one--while it is in essence a slide show with cross-fades, the key requirement was that Abrams staff be able to make decisions on their own about which images should go in the animation. The answer was to create a .swf which would parse an XML file and load the images at runtime, so most of the interesting stuff is happening in the main Actionscript, and there's relatively little going on in timelines. As the project went on, there were some additional interersting requests--animated section headers, the ability to adjust timing and position for individual images, forward/back/section advance/section rewind buttons, and a soundtrack. It was a bit of an education (did you know that Flash reads in XML in reverse?) but I was indeed successful (and the Abrams people were happy).
The Italian Los Angeles site is now up, and it's getting good reviews from visitors. This was both a design project and a development project for me, and was a good one to work on. From a design point of view, it was nice to be able to work on something clean and minimalistic, but which also had some nice visuals. It was important to leave a lot of room for expansion as well, and not lock the organization in to a box that wouldn't grow.
On the programming side, there are plenty of interesting features, most notably a flexible, multi-level hierarchy for organizing content. Not only did I have to make that work on the front end of the site, but I also had to develop an understandable, easy to use interface for the site's content administrator. This was more work, but ultimately more up-front work saves time in the long term, for the people who actually use the system. In addition, I developed a shorthand tagging system for images and links, so that the client would not have to deal with HTML any more complex than style tags. Some other interesting features of this site: the dynamic calendar, the search engine (which returns results with the correct hierarchy in the links), and a form allowing visitors to submit resources to the site, as well as a backend system that requires all submissions to be approved by administrators.
I'm in the middle of two additional rounds of Flash banners for Washington Mutual, Inc., again working with the Tajima Creative Group team. This batch had a number of very interesting transitions that didn't last through the final client sign-off, something which seems to happen somewhat frequently with animations. The ones going up will still have some niceties with text flying in and other transitions, but a few fades and morphs I rather liked will have to wait for another project.
