MrQwest

Blog

Breakpoints led by design, not device

It’s funny that quite often, you have good ideas whilst in the shower… Maybe it’s caused by the shower massaging your head / brain or some other magic, but I tend to find that good ideas quite often appear whilst having a shower.

This morning, whilst in the shower, I was thinking about responsive design as I’m going through the process of learning it properly for my 12412 January project.

What follows is a bit of a brain-dump. Just some thoughts I’ve had this morning. It may well be a silly idea, it may well be current practice, but it’s an idea none-the-less.

Both Stephanie Reiger and Jeffrey Zeldman have blogged recently about breakpoints and how working on a specific set of px-based breakpoints aren’t a good idea because of the immensely large current set of screen resolutions used by smart phones & other devices these days.

This got me thinking. We shouldn’t be basing our breakpoints on a device, a range of devices or all devices, but “the content”. Making your design fluid will mean it’ll resize with the ebb & flow of the viewport. Big screen? no problem. iPhone? You’re covered.

That idea is suitable for single column websites, in fact, it’s remarkably easy in it’s basic form but when you add columns to your design, making it fluid becomes a bit more difficult.

This is where media queries and breakpoints tend to come in. Some designers will set a breakpoint at 480px to then remove all the floats to the design so then everything becomes linear. You’ll have the logo at the top, followed by navigation, content, sidebar, footer all in a single column.

But why set it to 480px?

Why not open the full multi-column site on your desktop and then slowly reduce the width of the browser until the layout feels uncomfortable, and set your breakpoint there.

Let your breakpoints be led by the design and the context! Not the device.

What are your thoughts?


12 Devs of Xmas

I honestly thought I had previously written about the 12 Devs of Xmas but apparently not!

The 12 Devs project was a collaboration between Adam Onishi, Clinton Montague and myself and was loosely based on the idea that we’d offer an article or introduction to a new technology or tool each day for the 12 days of Christmas (see what we did there?)

What started off as an innocent tweet back in mid-November about wanting to give back to the web community led to Adam getting in contact – He had been having similar ideas so we decided to collaborate on something.

Clinton works with Adam and they had discussed learning opportunities through 2012 so it seemed a decent fit to get Clinton on board to!

We were soon coming up with a list of 9 other authors (Adam, Clinton & myself all wanted to author an article!) who we thought could get involved and would also bring something interesting to the table.

As with all things of this nature (and bearing in mind we had less than 6 weeks from that first tweet until the first article would go live), we had a few hiccups along the way but in the end, we received and published 12 fantastic articles about 12 really interesting technologies, tools or techniques that should help any web developer or freelancer in 2012.

Here’s a list of the articles: –

  1. LESS – Anthony Killeen
  2. Knockout.js – Stephen Fulljames
  3. VIM & the command line – Kris Noble
  4. WordPress Custom Post Types – Ben Everard
  5. Coffeescript – Jack Franklin
  6. CodeIgniter – Alun Rowe
  7. 10 Faces of a Web Professional – Si Jobling
  8. HTML5 Javascript APIs – Adam Onishi
  9. Responsive Design – Paul Adam Davis
  10. Data Visualisation – Clinton Montague
  11. Spotify app building – Syd Lawrence
  12. Three.js – Paul King

A wide variety of topics, as I’m sure you can tell.

It was actually really interesting to work with Adam and Clinton along with all the authors and curate a whole bunch of articles, along with the pitfalls that come with it. Producing the 12Devs took a fair amount of time, many emails, and many many proof-reads of each article to make sure it read correctly.

So just to round off this post, thank you to Adam & Clinton as they done most of the work. Thank you to Alice Reeves who proof-read the articles and made sure they made sense and thank you to Tom Bevan who worked wonders with the design. Without you guys, the 12Devs would have been nothing!

Same time next year?


Blog Comments

Something I’ve been pondering over the past couple of weeks is whether I keep comments open on this site or not.

I can see the value of having comments on a blog post as it helps to clarify points, answer questions or extend the discussion, but there’s also a time factor in moderating comments and dealing with spam.

My route of thinking has also led me to think that the current way of commenting on blogs is broken. Twitter has killed the blog commenting system as its easier to comment on twitter now rather than fill out log in details and jump through hoops trying to guess what letters / numbers appear in Captcha forms.

Yes, twitter unfortunately tends to take the comments away from the blog post but on the plus side, it opens these comments up to a whole new audience (mutual followers et al) so it can then create discussions, ideas and debates which is a good thing.

The problem with this issue though is that these twitter discussions soon lose context, but crucially, are soon lost in the internet blackhole. With twitters ‘unique’ search, after a week or so, tweets soon disappear from the search records; which means you can’t track twitter discussions on your site as comments because they’ll no longer appear once they’ve been culled from twitters search db.

You could get around this by using the twitter API to search through the twitter fire-hose, pull in the relevant tweets (by hashtag or link) and store them in your own db but that seems like a hell of a lot of effort.

Disqus is another option. It’s a third party commenting system. Sign up, embed their code on your site and away you go. It allows for central user signup / logins and works across a plethora of sites… but you’re now relying on a third-party for your comments. If their service goes down, you’ve lost your comments.

I’m sure there are many more answers to this question so I’d be interested in hearing your thoughts.

Do you think comments are still relevant on blogs? Are they still needed?


12412

Back in November, I wrote about another project I’m involved in. I’m working with Stephen Fulljames and Paul Adam Davis on the 12412 project.

It’s a cracking idea that Stephen had originally, and both Paul and myself jumped at the chance of being involved. I’ve a real thirst for knowledge (when time permits) so this was ideal for me.

The idea is that you pick or choose 12 different technologies, tools or techniques and learn a new one each month for 2012. Be it a new javascript framework, a new HTML technique or even just trying a new style in your illustration. It really does depend on what you want to learn.

There are no hard and fast rules either. We realise that people are busy, that you’ve got a lot on and sometimes you don’t have the time to dedicate towards learning something new, which is why the 12412 project is flexible. You can decide when and what you want to learn. If you’re only able to dedicate a small amount of time, take some months off! If you’re learning something particularly big like CodeIgniter, span it across two or three months!

No rules, just pure learning at your own speed!

The only thing we ask you to do is to blog your new found skills on the 12412.org website or on your own blog. Write a post about how you’re doing, what you’ve learnt and how you’ve learnt it. What resources you’ve used and what you’ve found helpful!

This is so you can help others looking into learning the same thing.

It’s a crowd-sourced community based learning project :) We all learn off each other!

With that said, (and following in Amber’s footsteps) I’ll give you an idea on what I want to learn over the next 12 months. This list isn’t a rule nor is it definite but it’s something I’ll strive towards!

  • Responsive layouts (learn properly) – This is January’s project.
  • Basic JavaScript and jQuery
  • Basic PHP and CodeIgniter
  • HTML5 API’s like geolocation and localStorage
  • Node would be incredibly nice to learn but depends on my experience with JavaScript
  • JSON
  • RESTful

If you want to get your learn on in 2012, then why not join us on 12412.org and get learning! Stephen actually wrote a great post on Tools & Technologies which may give you an idea of stuff to learn.

What would you want to learn?


Getting started

I posted an article yesterday about stripping back the design here and starting afresh. I wanted to remove the old grid system & design and start with a blank canvas.

That process started last night and is still on-going but I didn’t want to leave the site in a complete unfinished state so I’ve added a couple of nice typefaces courtesy of TypeKit (Proxima Nova for the headings, and the sweet FF Meta Serif for the body text).

I’ve also made the site fluid and responsive using a mixture of percentages for layout and media queries to adjust the design dependant on the device used to view. It’s not perfect and still needs work but this is what I’ve done so far:

body {
	width:90%; 
	margin:0 auto;
	}

This sets the width of the document to 90% and centres it on the page. This is great for mobile devices as it creates a margin around the edge of the body so the content doesn’t run up to the edge of the page.

That’s great, but for larger screens, that’d make line lengths far too long to be even remotely comfortable to read.

Using Media Queries, I’ve set the following:

/*****
    601px to 2100px MQ
*****/
@media screen and (min-width: 601px) and (max-width: 2100px) {
	body {
		max-width:960px;
		width:80%;
		}

This changes the code for screen widths above 601px. Essentially it sets the body width to 80% (again giving margins) but crucially, sets the maximum width of the body to 960px. 960 is a nice number and has worked well for 960.gs so I thought I’d stick with it. Doing this will mean that the line lengths will remain relatively short even on a large screen.

I may still play around with type-sizes between media queries but I’m happy so far :)

Addendum

I’ve since changed my max-width unit from px to em thanks to a comment from Phil Wareham over on 12412.org as it’s a more fluid unit and its size is dependant on the users default setting rather than a unit I’ve set! My stylesheet is now max-width:60em;. The 60em comes from my original 960px divided by 16, which is the browser standard.


The Archives

2012
January 2012

Breakpoints led by design, not device

12 Devs of Xmas

Blog Comments

12412

Getting started

Time for a change.

2011
December 2011

2011 - A Year In Review

Horizontal scrolling

The Icon Handbook

Little Printer

November 2011

12412.org

Sunday is the Day of Rest

Conflist

Subtlepatterns & Automating the Download

October 2011

2011 Challenge List

Sharpening up the skill set

Flash crashing on Google Chrome

Points, Brighton!

Project 50

September 2011

Should Designers Code?

That's Points!

Conferences

August 2011

Blush Publishing

The Movies

July 2011

CSS Positioning

Custom selection styles

To Write More

Please Don't Print Me

Insites: Brighton

Is RSS Dead?

A little announcement

My Shiny New Toy

GeekKarting

June 2011

I love this community

Thinly Spread

May 2011

#CroydonCreatives

187 million reasons to develop in HTML & CSS

I Have Neglected my Passion

The Physical vs Virtual Bookshelf

The Rise of the Web Event

Subscribing to RSS on the iPad. A Work around.

April 2011

1 Awesome Reason Why I Want To Punch You In The Face

March 2011

AirDisplay

Tutorial: Create a stitched look in Photoshop

Elements of Content Strategy

Ideas of March #ideasofmarch

GIT - Basic Commands

You Don't Know Better Than Your Customers

Geek Ninja Battle Night: Web vs. Native

Why I'm Learning GIT

February 2011

Wrestling With Time

Are They Serious?

January 2011

Custom URL Shorteners

Building Tweets from NAConf

New Adventures - A Review

Tweets From NAConf

2010
November 2010

Reduce your cost to make money

A Fix for a corrupted iPod database

It's all in the name

Apple & I

October 2010

John O'Nolan on Personal Branding

Achievements in 2011

September 2010

Fixing Smart Playlists (A Workaround)

IE9

August 2010

HTML5 For Web Designers

July 2010

Relly Annett-Baker at @media

New Adventures in Web Design

TXP Mobile

Walken On Water

IE6

E-book Discounts

Saying Goodbye

June 2010

InvoiceBubble

The ExplicitWeb Podcast

Bull In A China Shop

May 2010

I Want Something Better

April 2010

What Was I Thinking?

Don't Breed Competition

The Unprofessional Approach

The iPad

March 2010

CoffeeApp

Laterstars

Project 52

February 2010

Users Are Idiots

Costing small jobs...

January 2010

Adding some texture to your site

Project Bubble

Information Overload

My CMS of Choice

Happy New Year

2009
December 2009

2009 - A Review

The Great Big HDMI Cable Rip Off

Getting My Hands Dirty

A retrospect of the last decade

November 2009

URL ABC

July 2009

Going Digital

June 2009

Lesson Learnt

May 2009

Forever tweaking

April 2009

iPod Playlist Sort Order

January 2009

My Google Chrome Wishlist

2008
October 2008

Using Gmail on your iPod Touch

August 2008

Testing the Ampersand (&)

July 2008

Getting Started with jQuery

Welcome to the blog

Hire Me