Radiant JavaScript Singletons Freelance Down Under

February 28, 2008, 11:11 pm · Filed under: JavaScript, Life, New Zealand, Ruby on Rails

It’s summer down under and I’ve spent the last 2 weeks on a self-styled “working holiday,” freelancing doing some fun work with Radiant CMS and rediscovering the beauty of JavaScript prototypes. I’ve also managed to relax a bit, going to the beach and swimming with my beautiful daughters. Not a bad way to spend some time off work.

andrew.hedges.name



Can your web browser do this?

You’ll never get rich digging a ditch, nor building Dashboard widgets.

A Kryptonite™ lock can be defeated in 11 seconds, but you still lock your bike, right?

Gaining Twitter followers is a little like losing weight. You have to try.

Over or under? It’s the age-old question when it comes to the orientation of toilet paper rolls.


Meta Me

I am a web developer, living and working in New Zealand. I’m into my family, photography and frisbee sports.

 LinkedIn   Twitter   Facebook 
 Ma.gnolia   Stack Overflow   Zooomr

To iterate is human, to recurse divine.
L. Peter Deutsch


Topics

Apple · AppleScript · Business · Coda · Dashboard · Design · Google · InSTEDD · JavaScript · jQuery · Life · Marketing · Music · New Mexico · New Zealand · Open Source Software · Photography · PHP · Politics · Ruby on Rails · Scree · Subversion (SVN) · Twitter · Usability · Web Development · Widgets


Archives


Most Popular

Personal Branding for Introverts · Add an interactive legend to a MarkerManager managed Google Map · InSTEDD: Open Source Software that saves lives · Dude. Mikeyy can’t even spell his own name. · Stupid WebKit Tricks · Animating your iPhone web application · Why Apple can afford to charge so little for Snow Leopard · Dashboard Widgets for Fun and Profit · How-to recover from checksum mismatch errors in SVN · Some Twitter conventions


Most Recent

InSTEDD: Open Source Software that saves lives · Add an interactive legend to a MarkerManager managed Google Map · Personal Branding for Introverts · Moments of Rangitoto · Some Twitter conventions · Why Apple can afford to charge so little for Snow Leopard · Stupid WebKit Tricks · Animating your iPhone web application · Dude. Mikeyy can’t even spell his own name. · Dashboard Widgets for Fun and Profit


Twitshirt

Twitshirt is a tweet on a shirt. Buy the one below or check out my most recent tweets.

Lots to do. Considering pulling a most-of-the-nighter. I'm too old to pull an all-nighter.

See a random Twitshirt-worthy tweet.


Recent Reads

QuirksBlog: CSS width unreliable on Android? · Cocoa and Objective-C: Up and Running: Rough Cuts Version - O’Reilly Media · GeoNet – Tsunami Gauges · One-Line JavaScript Memoization · Create ZIP archives on a Mac without .DS_Store or .svn · Export MySQL to Excel · PR 2.0: How Brands are Harnessing Participatory Media in Public Relations · Encouraged Commentary · Google Weather API informal documentation · html5.org - HTML revisited

See more @ Ma.gnolia


Friends

80/20 · 90 Seven Design · Alyson Hurt · Andrew Nimick · Apps & Hats · Ben Young · Brian Warren · Carl Bolter · Chris Burgess · Daniel Lyons · Daniel Schwartz · David Hedges · Hamish Campbell · Jochen Daum · Joseph McLaughlin · Joshua Sallach · Julian Pistorius · Justine Sanderson · Kalena Jordan · Katie Graham · Kelly Green · Kevin Potis · Mark Bixby · Method Arts · Morgan Pyne · Peter Michaux · Piers Harding · Rebecca Murphey · Reid Givens · Rey Bango · Rhett Anderson · Rob Pongsajapan · Robin Taylor · Ryan Park · seven-gen · Simon Young · Su Yin Khoo · Vaughan Rowsell · Vincent Thomé · Voom Studio


Recommended Books on
Web Development

My bias is for references over “cookbooks.” I want to know all of my options, not just one way to do something. Show me the why as well as the how and I am happy.

JavaScript: The Good Parts · Object-Oriented JavaScript: Create scalable, reusable high-quality JavaScript applications and libraries · JavaScript: The Definitive Guide · Designing with Web Standards · CSS: The Definitive Guide · Prioritizing Web Usability · The Elements of User Experience · Web ReDesign: Workflow that Works · Don't Make Me Think: A Common Sense Approach to Web Usability


Contact Info

Contact info for Andrew Hedges


Subscribe

Atom · RSS 2.0


I’ve hosted this website with pair Networks since 1997. They rock.

This blog is powered by software I wrote. Want some of that? Hire me.

Feeling generous? Knock yourself out!


Support this blog. Click on an ad. Cheers!

Let me apologise in advance. This blog post isn’t really about any particular topic. Or, at least, I didn’t think it through enough to find the theme. It’s more a series of points that, to me, hang together because they all relate to a slice of my time, but to you might make as much sense as a cauliflower sandwich.

Parrots rock. See? Random.

  1. Freelancing, I’ve made as much in a week-and-a-half as I make in a month-and-a-half in my “real” job. Don’t get me wrong, real jobs have benefits, like predictability. (Good for raising a family, that.) But there’s something a little thrilling about invoicing someone for thousands of dollars after spending just a week on their project. I know the client is getting a good value, but a part of me still feels like I’m getting away with something.
  1. I’ve been lucky since I moved to New Zealand to have had the opportunity to really push my understanding of programming and software development in general and JavaScript, specifically. I feel like I’ve “grown up” career-wise in the last 10 months, going from talented amateur to confident professional in the process.
  1. I know now, better than ever, what I like to do. It’s pretty fun to design a database. It’s rewarding in a kind of brushing-your-teeth way to write the back-end plumbing for a dynamic site. I do enjoy solving usability problems employing user-centered analysis and design. But what really floats my boat is taking a complex graphic design and creating a correct, lightweight, standards-proud implementation of it. What makes me want to run, not walk, the dog and hurry through my bowl of cereal so I can get back as-fast-as-possible to Coda, is taking a set of design requirements and expressing it in HTML, CSS, and JavaScript in a way that is efficient and elegant and rock-solid across browsers and platforms. In short, it’s implementing the client-side experience that really makes my hair fly back (so to speak, since my hair is actually less than 1 cm long, not to mention thinning…).
  1. Over the last 3 months particularly, I have had the opportunity to really push myself as a programmer. It started with a 3 week stint in the Trade Me offices working up new GUI widgets for Travelbug. These included a sliding price selector, animated “last minute deals” calendar, and some other bits and bytes. It’s not often that you have the opportunity to do something over. With the last minute deals calendar, I had that chance. I had built a very similar (though a bit more complex) booking calendar for the original Travelbug launch and it was a monumental effort on my part. Blood, sweat, tears, the whole 9 yards. This time, it took far less effort, was far more organised, was far easier to tweak when the inevitable changes to the original requirements crept in, and was just plain more fun to build.
  1. Just this last week, I built a fading slideshow interface element for wapid! yeah, this kind of thing has been done 100 times and I probably could have found someone else’s component that would have done the job. But then I wouldn’t have experienced the joy of rediscovering prototypal object instances. You see, I’ve been way into the module pattern recently, to the point where I’ve been using it for pretty much everything. This slideshow widget showed me that it is sometimes not enough by itself. For this slideshow, I have multiple “campaigns” (sets of slides, basically) and a single viewport (and set of controls). I mean, it’s basic OOP, but isn’t it obvious that I would want multiple instances of a Campaign object and a singleton, basically, to control the viewport? The correct design is the design that seems obvious once it’s implemented. Anyway, have a look at the script itself (specifically WAPID.animation). It combines the module pattern with good old fashioned constructors and prototypes (implemented as private members). The result makes sense, at least to me, and just feels good to think about. It’s code that makes me smile.
  1. I was thinking today of taking up sculpting. I’ve always wanted to sculpt and, after skimming through some books at the library on gothic and baroque architecture and art, had an idea for how to approach it. I want to sculpt hands. I want to sculpt 100 hands. The first one doesn’t have to be any good at all. The second, either. By the time I have done 100 hands, I’ll have a good idea of whether I’m any good at sculpting. I’m sure I’ll be better at it than when I started, and I’ll have done something. Isn’t that what art is about, anyway?

I know it’s shellfish, I mean…selfish.

  1. I really, really like having a pool. I know it’s a waste of resources. I picture some atoll in the Pacific sinking just a little further under water each time I run the filter overnight, but I have to say, it’s the most fun I’ve had with my kids ever. We get in the pool and it’s all splashing and laughing. They’re perfecting synchronised swimming routines. We’re all doing handstands and somersaults. It’s a blast. Keeping it up is a bit of work and expense, but I actually like doing the maintenance on it. There’s something Zen-like to the process of skimming the leaves off the surface and slowly running the vacuum over the pool floor. I never thought in a million years I’d have my own pool. Now I don’t ever want to be without one!

And so concludes my (to you) random collection of points about this little slice of life I call the last 2 weeks. We’re off to a bach in Pataua for the weekend for some family time. We’ll swim in the ocean, hunt for seashells, then it’s back to the real world come Monday.


Short URL to this article:
Tweet this article!

Comments close automatically after 90 days.
Still have something to say? Drop me a line!

Possibly related posts