Sweet new Track on Soundcloud…

Got together over the ANZAC day holiday with Nikuman to work on a new NKMN track – The New Man:   It was great to get together again after such a long time without writing any music… I must admit, this track was already almost finished – I just helped out with some extra variations [...] Read On…

Sweet new Track on Soundcloud…

Got together over the ANZAC day holiday with Nikuman to work on a new NKMN track – The New Man:

 

It was great to get together again after such a long time without writing any music… I must admit, this track was already almost finished – I just helped out with some extra variations of some of the parts – especially funking up the baseline!

Microsoft Called Me!

The phone rang. A nice man with an Indian accent called from an interstate phone number. He was calling to tell me that I have numerous problems with my Windows computer! He said he is calling from Microsoft Windows Support to help me – great, finally some service from Microsoft! Read On…

Tracking media query changes with Javascript

A slew of javascript libraries and techniques for testing media queries and firing events or making callbacks has arrived in our development projects recently. There are numerous ways that these libraries keep track of and tell the rest of your javascript what is happening – here is a round up of some of techniques and some pluses and minuses for them.

First the techniques for tracking when media queries change / initial state:

  1. matchMedia - this checks css on the page for media queries and returns a list of them. (see https://developer.mozilla.org/en/DOM/window.matchMedia for more info). Great idea, but the browser penetration for it is not really up to scratch for production (here at Cru Digital we still support IE7+ for production - believe me I wish we didn’t have to, but even IE8 is a NIGHTMARE)
  2. Browser resize listeners with registered break points – good idea and very robust (support down to whatever browser you want), but the issue I see with this, is that you need to keep both CSS and javascript in sync – if you change a media query in your css, you need to register that change in your javscript too
  3. Conditional CSS to add context to the markup – the very clever ladies and gentlemen across the ditch (New Zealand) at Springload came up with the great idea to add context to the markup of your page using CSS and using the :after pseudo element – problem with this technique is that the support for the :after pseudo element is not great (see not above about requiring support for IE7+) – an update to their library recently means that they are using the font-family on the html tag to achieve the same thing. This technique means you don’t have to register the media queries in two places (css and javascript – although arguably you do because you still need to know what context to register callbacks to)

Once a decision has been made on which technique to use, then it is just a case of either choosing the right library that works for your project or rolling your own. The other thing to consider is how you like to be “told” that a media query has been fired (possibly including when entering and exiting a specific media query) – generally there are two ways that this occurs – registering callbacks & having events fired. My personal preference (coming from an MVC programming background) is via events – this makes for cleaner / leaner code and makes sure you don’t have references all over your code base to various other parts of your code base (enabling better garbage collection for non-trivial applications). The final consideration to make is to ensure your library of choice tracks what media query you are currently in, which helps when you want to just do a quick check for the current state of the browser media queries.

Personally I can’t wait for matchMedia to be more possible to use (ie: browser penetration – come on Chrome & Firefox) and as yet I have not had the chance to use Paul Irish’s matchMedia polyfill, but for the mean time we have used the Conditional CSS technique from Springload (nice one guys!) in a production site (hogsbreath.com.au) and it worked quite well – at least until we got to testing in IE7, IE8 & Android which all don’t have the best support for the :after pseudo element – so there were a couple of little changes to it to make it work for us, but that would not be a problem with the current version of the library.

Some libraries and references to help you on your media query / javascript integration ways:

Whatever you all use – make sure it works for you in your project and above all test, test, test! This is an exciting time to be developing on the web – so much cool new stuff and so much to learn!

Goodbye 2011 – wtf just happened?

So it’s 2012 and at the start of the year, you have a think about the previous year and what happened to you… for me, 2011 was a pretty intense year…

It all started on a high.

With my big sister visiting from the US with her husband for Christmas, a baby on the way, a good outlook for work and a new BBQ, things couldn’t be better, really…

Then the floods came.

Our home got flooded in the January 2011 Brisbane Floods. We evacuated on the Tuesday night at around midnight Read On…

Yay! More awards…

Dreamworld Funplanner gets another award!

It’s been a great result for a project that was particularly difficult to get out into the wild… congratulations to all involved.

We got a Best in Class at the 2011 IMAs!

Add that to the Best in Show at the W3 awards earlier in the year, and we have the start of a nice little collection of awards for the project…

And here it is: Dreamworld Funplanner

And on our (Cru Digital’s website): http://crudigital.com.au/#/cru-digital/work/dreamworld-fun-planner

 

Some of the other award winning websites I have been involved in:

2011
W3 Awards:
Best In Show: Dreamworld Fun Planner

Communicator Awards:
Gold: Suzuki Kizashi Microsite, Sono Restaurant

Read On…

Yeah, but is it really needed?

So I work for a digital advertising agency, and the advertising industry does a really good job of patting itself on the back by giving out awards… now don’t get me wrong, I love to get awards for websites that I have been involved in, but sometimes we are blinded by those awards and may not always focus on the real prize – customer satisfaction. A website is only as good as the outcomes it provides to the client – if an award winning website provides little-to-no return on investment for a client (which includes brand awareness – which is notoriously difficult to quantify), then what is the point of it?

Making design (and development) decisions just for the sake of making it look better makes little sense to me if those decisions don’t help the client’s business requirements  – I mean of course if we hit our deadlines and budgets, then let’s add the bells and whistles…. just sayin’

Great article about designing for mobile apps

After having done some work developing mobile apps over the past year,I have had to deal with all manner of issues over different screens, resolutions & supported functionalities. The biggest issues faced when developing the apps was the design – unfortunately we were not really prepared for the design requirements for mobile applications – wish we had this article before designing the apps… c’est la vie.

http://www.computerarts.co.uk/features/50-tips-designing-brilliant-ios-apps

As a developer…

Working with software all day, I come across all manner of poor (and great) software packages. Some are robust, some are fast and lightweight, some are the complete opposite. Here is a great article on what it means to program a robust piece of software (from who else but the Linux information project): http://www.linfo.org/robust.html. Producing software that is fast, lightweight, easy to user and has few (or no) bugs in it is what we (developers) are all trying to do, and this definition of robust, really reminds me of where we want to get to. Read On…

Ummm…

So I never thought I would have a blog… interesting how things change. Really I don’t have time to get a website up but it’s been too long in the coming so I thought I would put a blog up to get my musings out there, as well as a little showcase of some of my work – both professionally and personally. So here we are. Post one complete. Out.

About Me

My name is Matt Daniels and I live with my beautiful partner Amanda and my baby boy Oliver in Brisbane Australia.

I am an interactive developer specialising in Flash Development. As for most web developers I have little to no inclination to continue working on a computer when I get home, so I have setup a wordpress blog to put some of my work, musings and various other bits and bobs out there to keep on record...

I produce music with some of my friends - both electronic and acoustic genres...

Check out some more:

Latest Tweets

  • Afrika Bambaata = one of the best djs I have ever seen... And I've seen a few... Amazeballs ,
  • Judge the Comics Etc site at FWA... Our first submission! ,
  • OMG... Backbone.js v1.0 released. Awesome - great work @backbone_js ,
  • Nice one man.. cool track! ,
  • He said he is calling from Microsoft Windows Support to help me – great, finally some service from Microsoft! ,

Categories