Google analytics for Brisbane

February 14th, 2014

A new city asked me about developing their website. This encouraged me to check into the Brisbane analytics. It’s been enough time now that there are some trends that are interesting.

Use of the site is cyclical, being more busy in the summer.

nearly a million pageviews since we started in late 2010.  Broad usage of the site (61% not the home page or pool page etc)
There have been a quarter million unique visitors, and decent return usage (36%).  Site is heavily used for informational purposes, as you’d expect
You can also see neat stuff like how people are navigating the site and what most people see based on their screen size

even where they arrive – coming straight into a particular page (like the pool page) and see how cyclical the use of that page is

Have You Seen TV

May 2nd, 2012

Working on a project with some friends –  It’s a way to make strings of youtube and vimeo videos into a curated TV show.  The premise is that the assemblage of videos makes something more valuable.  It’s kind of fun, and used on an ipad can make youtube into more of a lean-back type experience.  Creating channels is pretty fun!  You can sign up for the beta, we’ll be rolling out beta invites on a steady basis starting very soon.

Handy Dandy PHP script to clean phone numbers

May 2nd, 2011

I needed a quick way to clean a bunch of phone numbers, I wanted to do it in excel but excel doesn’t do PHP, and the example I found was in PHP and it seemed to work well. So I used textmate, and pulled together the basic script with a fopen command to suck up a file from the disk and output a simple list to the screen (console output from TextMate) and then I could copy and paste it right back into excel.

Ingredients needed:
a bunch of messy numbers

The numbers like this, with all different formats

no number
(510) 250-0907
(510) 844-0233
510.845.7548 ext 151
510-388-3198 (cell)
no number

Save them on your desktop, and then create this file in textmate:
(excuse the lousy formatting, wordpress (or maybe this theme) is messing with the formatting and colors. I’ve attached the php file which should retain the formatting)

// gets the file
$handle = @fopen("/Users/xxx/Desktop/phone1.txt", "r");
if ($handle) {
while (($buffer = fgets($handle, 4096)) !== false) {
$clean = phone_clean($buffer);
$number = $clean[0];
$ext = $clean[1];
print $number.$ext."\n";
if (!feof($handle)) {
echo "Error: unexpected fgets() fail\n";
function phone_clean($data){
// Cleans phone numbers and strips extensions
// Returns array [number,extension]
$pattern = '/\D*\(?(\d{3})?\)?\D*(\d{3})\D*(\d{4})\D*(\d{1,8})?/';
if (preg_match($pattern, $data, $match)){
if ($match[3]){
if ($match[1]){
$num = $match[1].'-'.$match[2].'-'.$match[3];
$num = $match[2].'-'.$match[3];

$num = NULL;
$match[4] ? $ext = " x".$match[4] : $ext = NULL;
$num = NULL;
$ext = NULL;
$clean = array($num,$ext);
return $clean;

Set it up with the file location and name (see phone1.txt above) and run it from textmate by going bundle-php-run

cleanphone script (rename to php to have textmate treat it properly)

Thanks to Chris Nanney’s Post for source material including the fantastic regexp work dealing with a wide variety of data.

Ecology Action

January 28th, 2011

Since the beginning of the month I have been working with Ecology Action, a non-profit in Santa Cruz.  I’m helping them develop a Drupal based administration mechanism for a large energy upgrade program.  It’s enmeshed in the Energy Upgrade California.  It’s a good bunch of people, and the focus is on something I care a great deal about (energy conservation).  More as it develops, though there won’t be a public face on this thing.

Whitehat Hacking

December 16th, 2010

Today I got one of those typical phishing attack emails.  On a whim I decided to have a quick look at the source, to see where it was going.  The source indicated a free host in the U.S. – something you don’t usually see…usually it goes overseas.  So I went there and much to my surprise directory listing was turned on, and I was able to browse the directories.  Inside a folder called /tmp was a little php script and beside it a little text file.  In the text file was, lo and behold, the results of the phishing attack which had about a half a dozen what seems to be the actual credit card info of unsuspecting people, along with a couple funny submissions too.  Check it out.

I’m not surprised to see the phishing attack working, but what (kind of) surprises me is that the phishers are so careless they leave the directory exposed for the world to see.

Needless to say visa and the FBI have been notified.  Be careful everyone!

December 1st, 2010

I’m working with a startup doing a social TV platform, working on marketing and user interface design.  I managed the creation of their web presence (and the infrastructure) and also worked on their demo that allows for social collaborative TV.  If you want to see it send me an email and I’ll get you a login. screenshot

Drupal for Municipalities

November 30th, 2010

Ever since I started on the Brisbane, CA site I have been interested in making Drupal work better for cities.  The fact that so many government agencies are glued into proprietary solutions, especially aspx based systems, is not just silly or sad but actually a real problem.  I’d like to see open source in general, and Drupal in particular, used in government, particularly local government.  To this end, I am working with a couple guys in Sacramento to create a company that will do Drupal for municipalities.  We have started a website here.  One of the goals is to try to minimize the amount or repetition that web developers do.  This is already well done by specialized vendors of city website solutions, but not for an open source framework.  What I plan to do first is create an installation profile for Drupal to be used in municipalities.  The first thing I have done in this regard is create a feature using the features module.  I did a post over there about it.

Community Site Design Group website screenshot

Ruby on Rails Video Editing Platform

November 30th, 2010

Some time back I managed a Ruby on Rails team in Vietnam that did a video site for students and coaches to assemble their sports plays.  I was very pleased with how well the project went and how fast development is in ROR.  It’s not all that pretty yet as they are focussed on the core functionality and working on testing and funding, so I haven’t been all that keen to showcase it, but the system works so darn well that I felt I really should post it here. screenshot

City of Brisbane, California

October 19th, 2010

The City of Brisbane hired me to completely overhaul their site – visually and architecturally.  I was able to choose the platform and so I proposed Drupal.  I’m happy with it because it really allows Drupal to shine as a content management system.  It allows for the city staff to upload video of council meetings and attach them to the agendas – and views are used to sort and display the meetings pages.  Have a look.  The project was completed on time and on budget.  Here’s what they had to say about it:

“I worked closely with C.J. on the development of Brisbane’s new website,  It was a daunting project, with the huge amount of information of most government sites house, but C.J. has the know-how and experience to make even the most complex websites extremely easy to navigate and maneuver.  He constantly was thinking from the perspective of the citizen, laying out department menus and information in a way that was not only easy to find, but enjoyable to go through, too!  I think that made all the difference in our website being so widely received and welcomed by the community.  I had a great experience myself working with C.J. – I just wish wish we had found him sooner!”

Brisbane, CA Website Screenshot

Jessie Steele

December 18th, 2009

Jessie Steele is a specialty clothing manufacturer.  I managed the implementation of the theme and the backend with a warehouse management system, all implemented in the PHP based open source Magento e-commerce system.

Jessie Steele Website Screenshot

Marlin Developer Community

December 18th, 2009

This site was built as a combined effort of four corporations: InterTrust, Sony, Philips and Samsung.  I led the design and proposed Drupal to the client. It worked out well in ways that are not immediately visible: the backend integration and the fact that the client is able to maintain it themselves.

Drupal worked very well at connecting disparate systems and combining at least three websites into a cohesive interface. LDAP and Salesforce were integrated.

marlin developer community screenshot

To tease or not to tease

December 15th, 2009

I was never a huge fan of teasers.  They just seemed to be an annoying way to break one’s flow while reading and inhibited scanning someone’s blog.  But when making a blog they are nice!  Is it just me or is it really something writers like and readers don’t I wonder.  Certainly the re-do of Fake Steve fell into this category.  I used to read it all the time on the iphone but now don’t – because of the teasers and the template which loads like a dog on the iphone.

I have felt the same about tags and categories too.  Maybe (Maybe!) makes sense for huge blogs or blogs with a ton of writers but I always felt that between the title and google, categorizing and tagging are covered.  Maybe I should categorize more though.  I do like one blog (Alan Storm) because he tags his tutorials on Magento appropriately.  But I haven’t seen other good uses of the notion.

Working in wordpress

December 15th, 2009

Wow! Blogging has gotten easier, or maybe it’s more that I haven’t given wordpress a fair shake since I got into Drupal several years ago…trying this new theme, (tanzaku) a Japanese one that resizes automatically.  It’s a re-think of “dynamic width” – the articles float into columns based on the window size, which is a great concept.

Screen shot 2009-12-15 at 7.04.40 PM

My old site was actually HTML, I am almost embarrassed to say.  It was in blogger originally, and I thought about putting it in Drupal, but was never happy with the UX for editing a blog in Drupal.  While Drupal is a very strong platform it’s a sucky blogging tool, but it remains oriented around the blogging concept.

I actually got a bit down on blogging in the past year or so (not that I was ever a huge blogger) for a few reasons: Read the rest of this entry »

Open Architecture Network

June 18th, 2009

oanI have worked with Architecture for Humanity on the Open Architecture Network two times – once back in 2006 and again in 2009. Both times I worked on custom module development, to their project module and later with a linkage to Nike’s WE system via an API.


May 18th, 2009


Again, a site in development but included because it is an example of an excellent use of Drupal.  The customer requirement here is a very comprehensive system for managing venues, films and fans of independent film shown in a variety of screening locations. I tied together custom views, ubercart, and imported over 500 films with some custom scripting to assemble the data with a web scraper.

A Digital Move

February 24th, 2009

I am working on a website for Jessica and I at Its only a framework at this point – I am thinking about the theme and logo. I am planning to use it as a pointer to our sites that we run our consulting work through. It’s time to wind down It seems Drupal and DRM are just not compatible, and have been thinking about abandoning DRM consulting at least as a main business. I think it’s essentially over – the very notion of DRM is no longer useful because it’s been contaminated by so much bad press.
How did it get so bad? Well, I think it’s a simple case of extremism damaging the environment for everyone. DRM was never as bad as a notion as the EFF oriented people would like to believe. It’s possible to have content that is rights managed that is not even copy protected, something I have always advocated – that the rights are attached to the content and payment etc is handled by the system. There would be a tremendous amount of leakage to be sure. On the other side, the content companies have been so reluctant to get their stuff out there for use that they have encouraged a lot of piracy. Plus they don’t seem to understand the real value in letting content move “on it’s own” and utilizing the peer to peer nature of the web. The recent successes digital delivery like Hulu and even Netflix are really just extensions of the broadcast paradigm, something that the internet is not well suited to at all.

In any event this blog has been running for a while now (it’s not really a blog since it’s flat html – I’ve moved it so many times). It’s time to update our site to match the company and I might as well use this as a chance to build it properly in Drupal 6.

Marlin site totally done

January 19th, 2009

Jan 19, 2009

I got word a couple weeks ago that there will be no new features added to the Marlin site. That’s ok, it’s quite stable and the fact that Intertrust can manage it on their own and don’t need me is testament to how well Drupal works. Looking for work – it’s certainly harder than it was. The recession seems to be at the top of everyone’s mind. Fear seems so powerful that people cut back because they hear about others cutting back. Not a huge revelation but it seems that the economy does badly because the economy does badly. People seem so..I don’t know…influenceable.
In the past I had moved to where there was more work (Tokyo, San Francisco) – now that’s not an option as I am quite dug in and anyway, there aren’t any booming areas.

Maybe because we went fast and in a global, interconnected way into recession we will come out fast.

Random Thoughts After a While

June 9th, 2008

Over a year since my last post. I guess that’s what having a 2nd kid does to one’s schedule. But honestly, it’s been really busy – DRM for video in particular is really getting a lot of attention. Lately I have been reccomending to all my clients that want to put video online to simply go with Windows Media DRM (or rights manager or whatever they call it these days). It goes against my gut feeling about the whole industry (I think Microsoft makes crap products and is finally in serious trouble as Ballmer totally botches what Gates built) but it’s the only game in town for downloadable content because the platform is so ubiquitous. And even though I love Apple stuff, until the allow others to use FairPlay, that’s all we’ve got. Maybe that means the best thing is to simply sell unprotected mp4 files. If I can get that idea to pass I usually try. But usually it is not a popular idea with rightsholders.

I’ve also been playing a lot with DLNA, especially on the PS3. It’s well implemented on the PS3 but I have not found a great option on the server end – at least not in XP. TVersity is not bad. The workflow to get content onto the server is slow and rather cumbersome. But it’s still much better than getting stuff to the TiVo and since it goes to the Playstation which is a great rendering machine, it looks ok. For a while I thought I could play VOB files but it seems the PS3 does not deinterlace properly through the DLNA client.


January 16th, 2007

January 16, 2007

Last week was splitting my time between the OSCMS, where I presented on Video Delivery with Drupal and SD West. The difference was staggering – the freshness at the OSCMS was exhilirating whereas the mood at SD West among the attendees at least was, well dour.


Dries Butyart and Rasmus Ledorf (in blue – he’s a Yahooligan!) discuss PHP4 vs PHP5 in front of a rapt audience


March 30th, 2006

March 30, 2006
I’ve been thinking about what would make Netflix better…the ideas I have fall into three categories. They range from the totally trivial to the rather elaborate. Note that Netflix is now running a contest to imporive its rating system.

Read the rest of this entry »

Get Adobe Flash playerPlugin by wordpress themes