-
-
Recent posts
Twitter updates- danw: On the patio. Happy New Year! http://t.co/OHihyVO6
- danw: @NZCoderGuy Not correct: $45/$65 plans aren't going anywhere. iPhone handset subsidies for these plans are changing, though. @vodafonenz
- danw: I took it and so should you—The Survey for People Who Make Websites 2011! http://t.co/IKhEG5ek via @alistapart
- danw: Web Meetup, baby, yeah! (@ Telecom Place) http://t.co/dhdq7QmX
- danw: SuperRetro - a new iPhone App http://t.co/FXJr7aHH
Where I’ve been
What’s on my tumblr- On the patio. Happy New Year! (Taken with picplz.)
- (Taken with picplz.)
- Happy birthday, Laura! (Taken with picplz.)
- Espada! hotvvheels: Fastback Friday
- chromjuwelen: (via absolutely perfect picture)
- sneak: I made this simple site for a side-project called...
- hotvvheels: TZ3 Stradale
- chromjuwelen: 1970 Bertone Lancia Stratos Zero (via...
- wellisntthatnice: The epitome of class. Mercedes W111 Coupe.
- Tres awesome chromjuwelen: 50 Movie Cars (by juanpablobravo!)
Last.fm: recent tracks.- Yelle – Qui est cette fille? (Who's That Girl?)
- Jets Overhead – Weathervanes (Arturo Remix)
- Maybeshewill – Accept and Embrace
- Flight Facilities – Crave You (Adventure Club Dubstep Remix)
- SymbolOne – Last Scene (Daytona Mirage)
- The Crystal Method – Born Too Slow
- Tosca – Prolo
- Boozoo Bajou – Keep Going Feat. Tony Joe White
- Crystal Fighters – At Home
- Crippled Black Phoenix – I'm Almost Home
Google Reader shared- The genesis of Virgin Atlantic
- Mobile First (the book) Now Available!
- SHOWREEL MMXI | THE WARNING
- Follow That Requirement
- RIP Steve Jobs. A classic photo of the man and his BMW.
- Ellis Residence
- The physics of the riderless bike
- BMW. Low. (via Chromjuwelen)
- Tom Selleck's moustache makes every movie better
- OpenLayers Editor Released
Recent Delicious links- Sitting is Killing You
- 4011 2-input NAND gates
- Remove Line Breaks - Delete Carriage Returns & Remove Double Spaces
- The almost-vanished village near Chernobyl
- timeago: a jQuery plugin
- Slides: Team Leadership In the Age of Agile - Elastic Team Leadership in Software - 5 Whys
- txt2re: headache relief for programmers :: regular expression generator
- 320 and up
- Painless Functional Specifications - Part 1: Why Bother? - Joel on Software
- Chromeography: chrome badges, emblems, logos on cars, cameras, appliances
- The 50 books every child should read - News, Books - The Independent
- Useful JavaScript and jQuery Tools, Libraries, Plugins - Smashing Magazine
- TidBITS Networking: Surf Faster in Google Chrome and Safari 5 with Browse By Name
- OpenStreetBlock
- Evidence Meltdown | George Monbiot
My JS stuff on Delicious- timeago: a jQuery plugin
- Useful JavaScript and jQuery Tools, Libraries, Plugins - Smashing Magazine
- Javelin (JS)
- JavaScript Garden
- computed style: Hiring Front-End Engineers
- YUI Theater — “YUIConf 2010 Panel Discussion: The Future of Frontend Engineering” (79 min.) » Yahoo! User Interface Blog (YUIBlog)
- Extreme JavaScript Performance | Nettuts+
- evercookie - virtually irrevocable persistent cookies
- Five Useful CSS/jQuery Coding Techniques For More Dynamic Websites
- Testing Mobile JavaScript
- jQuery Deconstructed
- Seven Must-See Videos and Presentations for Web App Developers - Smashing Magazine
- Modernizr
- Javascript Dependency Management
- Organize jQuery Widgets with jQuery.Controller
My public fiddles
Steve Lacy: What Larry Page really needs to do to return Google to its startup roots
Posted in Link
Leave a comment
JavaScript Decision Tree tool
My goal has been to make a JavaScript Decision Tree tool as a new content module for our next site redesign.
It needs to work such that the same piece of JavaScript can be utilised without modification for any decision tree tool we build on the site, with a very simply-defined markup structure,
So I’ve been self-administering repeated doses of headdesk/facepalm over the last couple of days, but I came back today after a Friday lunch (you know what I mean) and found a solution. It’s not pretty, with at least two nested ‘for’ loops, but it works.
I’ve created a JSFiddle of it, so you can take a look at it, modify it, laugh at it, etc.
Open it in JSFiddle or see it embedded below:
Posted in Coding, JavaScript
2 Comments
Don’t make me steal
If you like to watch movies and TV series’ on demand; if you want to watch them whenever and wherever you want; if you’re frustrated with advertisements and anti-piracy messages when you hire DVDs and go to the cinema; if you want a decent and fair model for the downloading/distribution of digital content, then sign this manifesto now:
Don’t Make Me Steal
Pierre and Jordi, with the help of many others, have put this together, and it looks good and solid and well worth your support. Go sign it now.
Posted in Commentary
Leave a comment
Last.fm
A year or so ago, Last.fm started charging for their service. I was pretty gutted, since I had been listening to Last.fm radio pretty much all day. Sure, it’s okay to charge something for a decent service—and Last.fm is very decent—but what really got up my nose was that they were only charging people who were listening outside of the US, UK and Germany. What’s up with that? The internet is a global market—geography means nothing on the internet.
So I stopped listening.
Anyway, twelve months later and I’ve kinda got over it, so this morning I paid up and became a subscriber. Ah, it’s good to listen to my favourite tracks again
Last.fm really is a great service. And as if my battery doesn’t last long enough as it is, I downloaded Mobbler to my Nokia E90. Mobbler is—as the name might suggest—a mobile scrobbler. It’ll scrobble music you play with the Nokia music player, but more importantly, it will stream Last.fm radio.
So, if you haven’t already done so, sign up to Last.fm to track your listening, share your taste in music, discover new artists and check out my profile.
Oh, and I’ve added my listening history to the blog sidebar
Posted in Commentary
Leave a comment
Getting XML data into Symfony, automatically.
The problem
We have a complex XML file with many different node types, etc. supplied by a third party via a URL reference.
There’s an initial dump, and then an incremental update every couple of weeks, with additions, deletions and updates.
What I’d like to be able to do is to drive a symfony app with this data.
Some thoughts so far
I’m a symfony noob.
Getting the data
I could manually transform the XML into YAML to create the schema and the initial data load, and then build the app. But I don’t want to have to do this manually for the regular updates. Ideally, I’d like to use the symfony ORM to handle all the transactions, rather than a completely separate (outside symfony) script.
… and some images
The XML also contains URIs for remotely hosted images, and I’d like to be able to automagically pull these down to the local app file system and rewrite the references.
Anything that will help us to get started in the right direction would be greatly appreciated.
Posted in Coding, Tools
4 Comments
Redesigning a corporate web environment
The Challenge
I’ve got this friend who is responsible for a corporate front-end web environment with almost a dozen browser-facing web applications. Pretty much all he can do at the moment is change static content in the antiquated and wildly inappropriate CMS. Changing anything significant requires implementation of an expensive one-off SDLC waterfall-type project with a business case, requirements-gathering, PM, BA, dedicated test-resource – the whole box and dice. These projects often under-deliver, with scope being reduced en route to avoid budget and deadline blowout.
He’s not happy with the way things are.
He’s got it into his head that it would be far better to create an easily-manageable front-end, with a unified, standardised UI under the control of his front-end web team. Key aspects are simplicity, speed, cost-efficiency, and trust – none of which can be used to describe the current state of affairs.
Some ideas
I was talking to my friend, and he said that at a high level, he’d like to abstract the various applications from the UI, where possible, by means of API/Web Services/etc. On the front-end would be a web application framework – He’s thinking Symfony or similar. He believes he has sufficient developer resource on his team to build/maintain/support this.
Some other ideas he’s been tossing around, in no particular order:
- Source repository. (He doesn’t have one at the moment). svn or git? Stable trunk policy?
- Continuous integration. (thanks Mike!)
- Test-driven development.
- Automated processes.
- Security.
- Content management.
- Performance. Code-efficiency, caching, etc. (Although he’s heard it said that performance shouldn’t become an issue until performance becomes an issue)
- The database. Does CouchDB lend itself to supporting a content-driven web application?
- Will it
blendscale?
More ideas…
… are welcome. He needs all the help he can get. While it’s all very bluesky (with pie) at the moment, he needs to turn it into a watertight, bulletproof, business case. And soon.
Posted in Commentary, Design, User Interface
5 Comments
An update
It’s been a while since my last post.
During that while, I’ve returned reluctantly to New Zealand from an incredible 12 months in Switzerland. I was working for an outstanding company (Best Of Swiss Web 2009) on some outstanding projects.
I made some great friends, had some great times, learned to snowboard, lost nearly 15 kilograms, braved rubber bullets and tear gas on the 1st of May, and thoroughly enjoyed myself.
I’m now back in Auckland, and am three weeks into my new job as Web Development Manager at Vodafone. I’m part of a great team and am really hanging out to do great things on/with/through the web
Another thing I’m looking forward too is the next Auckland Web Meetup on the 2nd of July. It’ll be great to catch up with friends, eat pizza, drink an Epic, learn more and be inspired.
I’ve got a new mobile number (+64 21 623 923) and am making the most of my Nokia E90 (I know, it’s not an iPhone). I use Twibble as my Twitter client, and am continuously updating my location with Google Latitude. You can see my current location on the sidebar, along with a few feeds of Dan-generated content and links.
Posted in Commentary
3 Comments
Empowered to say ‘No’
Seth Godin writes in his post License to stall about business-to-business sales. He explains that the majority of people you encounter are empowered to stall, to say ‘No’, since they are easier to train and are safer.
The reason this system evolved is straightforward: the yes people are rare in a typical organization, because they have responsibility and power. So they are busy and need to be protected.
I totally see how this works, but Iimmediately thought that this paradigm was equally relevant in the area of Customer Services.
How often is it that – unless we have a very trivial request – the first person we speak to will be able to help us right away? “I’ll just put you through to so-and-so”, or “I need to talk to my manager/supervisor. Can I call you back?” are par for the course.
I am becoming convinced that for any given company, having quality Customer Service is more important than the quality of their product or service. For a large established company, quality Customer Service seems to me to be more important than sales or acquiring new customers. And yet it seems that the larger the company, the poorer the customer service. They have huge outsourced, off-shore, standardised, systems that have you pushing every number on the keypad before you get through to the wrong department, who aren’t able to help you and aren’t able to transfer you to the appropriate person.
These systems are set up to be defensive – the goal is to reduce cost, which means getting rid of the customer as soon as possible. That is not customer service.
Oh, and customer service also includes website usability, IA and quality of your search tool; read Lance Wiggs’ experience with Dell.
I’ve still not heard back from Dell about the dead graphics adapter in my Inspiron notebook, either. But that’s another post.
Posted in Commentary
Leave a comment
Doug Bowman is an outstanding web designer
…who was, until recently, Visual Design Lead at Google.
He now works for Twitter.
It saddens me to see so many people knocking Doug for the less-than-inspiring design work found in many of Google’s products. Take this Gawker / Valleywag article, particularly the comments, for example.
If anyone of these deriders knew of Doug and the standard and quality of the work he produces, they’d be holding their tongues.
It helps to know the full story, so here it is from the horse’s mouth. It also helps to know a bit of background from others, like Joe Clark, and to get a picture of the sort of people that run the show at Google, such as Marissa Meyer.
It’s surprising Doug stuck it out at Google for as long as he did – with such a vast array of products, and what appears to be just one visual designer amongst a multitude of engineers and mathematicians – it must have been an incredibly trying experience.
All the best, Doug, for your move to Twitter! I hope they can really let you go to work, and I can’t wait to see the outcome!
Posted in Commentary, Design
3 Comments
Best of Swiss Web 2011
A big congratulations to my good friends at L//P for absolutely pwning the Best of Swiss Web awards, yet again!
Three gold, three silver, and two bronze, but also taking the title of Master of Swiss Web 2011 for Migipedia!
Brilliant work, guys! And keep up the good work!!
Catch the noise on Twitter (#bosw)