Web Design
Web Design
66-PAGE EBOOK
Exclusive in-depth excerpt
from Lea Verou’s CSS Secrets
PROJECT
The voice of web design
Key rules
for testing
and optimising
Issue 279 : May 2016 : net.creativebloq.com
across devices
NEW SKILLS IN
WEB DESIGN
LAYOUT TECHNIQUES ANIMATION PROTOTYPING TOOLS
PERFORMANCE TYPOGRAPHY SVGs AND MUCH MORE!
Welcome
WELCOME
EDITOR’S NOTE
We’re thrilled to announce that Generate, Our friends at fffunction have built us a brand new
our conference for web designers and frontend site (generateconf.com), where you’ll find details of all
developers, is expanding this year. Generate is now our events. You can also follow us on Lanyrd (lanyrd.
in its fourth year and has established itself as a com/series/generate) and Twitter, and for even more
valuable source of practical takeaways, inspiration info and details of exclusive discounts, sign up to our
and networking opportunities. Generate newsletter (netm.ag/newsletter-279).
Not only will we return to New York next month If you attend one of our new events, you’ll
and run our flagship London event in September automatically become a founding member, which
(this year preceded by a workshop day), we’re also means you’ll get 50 per cent off tickets for all future
adding three one-day, one-track shows on three Generates around the world – for life.
continents! First is San Francisco on 15 July (tickets See you at Generate, wherever you are!
on sale now), where you can see Mike Monteiro, Wes
Bos and Stephanie Rieger. We’ll then head to Sydney Oliver Lindberg, editor
in September, followed by Bangalore in November. [email protected]
FEATURED AUTHORS
CHRISTOPHER IAN ALLISON DONOVAN
MURPHY FENN WAGNER HUTCHINSON
Christopher is a writer and Ian is an independent consultant Allison is a frontend developer Donovan is a Dublin-based
designer based in Belfast. He’s in London, where he helps working at Happy Cog and frontend designer and
a passionate educator and from businesses get UX design done. living in Philadelphia. She developer. On page 84 he
page 68 lays out 10 web skills From page 76 he explains how curates our gallery this issue, explains how to create a bank
you should be focusing on to create a top UX portfolio from page 44 of micro-interactions
w: www.christophermurphy.org w: www.chopstixmedia.com w: www.alliwagner.com w: www.hop.ie
t: @fehler t: @ifenn t: @alliwagner t: @donovanh
may 2016 3
Future PLC, Quay House, The Ambury, Bath, BA1 1UA +44 (0)1225 442244
@netmag /netmag +netmagazine flickr.com/photos/netmag [email protected] net.creativebloq.com
EDITORIAL
Editor Oliver Lindberg [email protected], Production editor Ruth Hamilton [email protected],
Art editor Rebecca Shaw [email protected], Commissioning editor Julia Sagar [email protected],
Staff writer Dominic Carter [email protected], Staff writer Alice Pattillo [email protected]
CREATIVE BLOQ Global editor-in-chief Dan Oliver [email protected], Managing editor
Craig Stewart [email protected], Content manager Kerrie Hughes [email protected],
EDITORIAL CONTRIBUTIONS
Marc Andrew, Shehzad Azram, Tanya Combrinck, Jodie Doubleday, Andy Goodman, Kev Hoyle, Donovan Hutchinson, Sam Kapila, Yunmie
Kim, Jamie Knight, Sammy Maine, Jim McCauley, Cordelia McGee-Tubb, Kevin Ngo, Chris Pearce, Jemma Proctor, Nathan Riley, Amber Leigh
Turner, Tomer Sharon, William Smith, Craig Sullivan, Allison Wagner, Evan You
ART CONTRIBUTIONS
Ben the Illustrator, Daniel Byrne, Ben Mounsey, Marco Goran Romano
MANAGEMENT
Content and marketing director Nial Ferguson [email protected], Editorial director: games, photography, creative and design
Matthew Pierce [email protected], Group art director Rodney Dive [email protected]
COLOPHON
TYPEFACES
Google Docs, Photoshop, Dropbox, COVER PaceSetter Gloss 250gsm Antonio, Share Tech,
FutureSource, Illustrator, InDesign, P3-82 Galerie Fine 100gsm Merriweather,
CodePen, GitHub P83-114 Grapholvent 70gsm Titillium Web
4 may 2016
Issue 279 : May 2016 : net.creativebloq.com
FEED FEED
BEYOND PIXELS 20
Amber Leigh Turner shares the relaxing
benefits of pouring your own candles
NEED LIST 21
The stuff we want, including the VR
headset everyone’s been waiting for
EVENT REPORT 23
Nathan Riley reports on Awwards’ recently
launched Amsterdam event
VOICES
PROGRESSIVE FRAMEWORKS 26
Evan You explores a new framework option
that offers devs the best of both worlds VOICES
ZERO UI 28
INTERVIEW 32
Andy Goodman explores the need for user Filament Group’s
interfaces to start taking a back seat Patty Toland talks
about the dangers of not
USER OBSERVATION 37 paying performance and
Tomer Sharon considers how careful accessibility the attention
observation can help us solve problems they deserve
BIG QUESTION 38
How do you debug animations? We asked
TAKE ADVANTAGE OF THE
web professionals their approaches
SUBSCRIBE TO NET PRINT AND DIGITAL BUNDLE
Q&A 41 Turn to page 24 to find out more
CodePen’s Tim Holman chats about AND SAVE UP TO 54% Want the Pro package? Turn to Page 51
bouncing back and keeping things fun
6 may 2016
Contents
REGULAR REGULARS
GALLERY 44
NETWORK 8
Allison Wagner selects The latest mail, tweets, posts and rants
her favourite new sites,
including the redesign of a EXCHANGE 10
magazine’s site to align it Heather Burns, Heydon Pickering, Scott
with the print publication Jehl and Geri Coady share advice
SHOWCASE
FREE
DESIGN CHALLENGE 52
Three designers mock up theatre sites
HOW WE BUILT 64
An online recipe book of global recipes
PROJECTS
MICRO-ANIMATIONS 84
Donovan Hutchinson walks through how to
build a set of simple, adaptable animations
FEATURES
SKETCH AND ZEPLIN 90
Marc Andrew on how Zeplin helps bridge
the gap between designers and developers
SVG ICONS 98
Shehzad Azram looks at the benefits of SVG
PROJECT icons and shows you how to implement one
SITE PERFORMANCE
TIPS FROM THE BBC 104 WEB STANDARDS 104
Jamie Knight reveals the Kevin Ngo introduces Mozilla’s A-Frame
techniques the BBC uses to
keep its site smooth and speedy OPTIMISATION 108
Craig Sullivan presents 15 rules to help
optimise your sites for different devices
EXCLUSIVE VIDEO TUTORIALS!
Look out for the video icon in the tutorials for
exclusive screencasts created by the authors
ACCESSIBILITY 114
Cordelia McGee-Tubb explores onClick
may 2016 7
Mail, tweets,
posts and rants
CONTACT US @netmag /netmag +netmagazine [email protected] net.creativebloq.com
of your organisation’s problems. than outwards. You can read Sush’s article
at netm.ag/apprentice-279.
It shows the world how you APPRENTICE HIT
National Apprentice week
has just passed (14-18
work together” I work at Imaginate, a March), and there’s quite
multidisciplinary design a buzz around work-based
Dave Rupert consultancy. Last year I wrote learning at the moment.
an article for Creative Bloq It’s great to see studios
about apprentices in the supporting inexperienced
Company issues “Your website shows you more of what a group of people does design industry. Afterwards, designers and developers
than what a group of technologies can do,” says Dave Rupert we took on Meg, who is in this way.
8 may 2016
Network
THE POLL
COOL STUFF
WHICH TOOL DO YOU USE WE LEARNED
THIS MONTH
TO CREATE ANIMATIONS? WEATHER MEN
Side projects are
Principle 5% GreenSock 35% a great way to test
With this versatile Claiming to be “the new out new skills and make
option you can create standard for HTML5 your CV look even more
a short animation, a animation”, this high- impressive. Sometimes,
slick interaction, or performance tool is a though, they take on a life
a multi-screen app firm industry favourite of their own. This was the
case for Jonas Downey and
Trevor Turk, who spent two
Animate CC 6% Other 24% years developing their
Flash may be dead, Alternative options successful Hello Weather
but die-hard fans can aplenty – Bounce.js, app on the side.
use this replacement Atomic and Easee all netm.ag/helloweather-279
from Adobe got a mention
FIGMA FURNITURE
Good design can
Velocity.js 13% After Effects 17% draw inspiration
The brainchild of Adobe CC’s 3D, motion from some pretty
Julian Shapiro, this graphics and animation surprising places and the
speedy animation software is holding its recently launched Figma
engine combines the own amongst animation is a case in point. Having
best of jQuery and enthusiasts previously studied furniture
CSS transitions design at college, Sarah
Pease explains how she
transferred that discipline’s
principles to help create
may 2016 9
Practical
advice from
Send your questions to [email protected] industry experts
HEYDON PICKERING
Heydon is a freelance web
accessibility consultant,
interface designer and writer
w: www.heydonworks.com
t: @heydonworks
SCOTT JEHL
Scott is a designer
and developer working
at Filament Group
w: www.scottjehl.com
t: @scottjehl
Work in progress Geri Coady’s initial pencil sketch and final design for an A List Apart article illustration
GERI COADY
GC: My illustration process is exactly the same as my web design workflow – I always
Geri is a colour-obsessed
illustrator and web designer
sketch on paper first. Even the roughest of sketches gives me a starting point, instead
based in North America of opening a blank digital canvas. Sometimes I’ll use a scanner to import them and
w: www.hellogeri.com place them in Illustrator, but usually I’ll just hold my sketchbook up to my webcam and
t: @hellogeri snap a photo. I make sure my clients understand they’re purely conceptual at this
point, which significantly speeds up the overall process.
* Heather Burns is not a lawyer, and her
answers pertain to UK law LEGAL considered company assets. What’s
DATABASE RIGHTS more, many websites using databases
As a side project I have made a search will have commercial agreements in
engine of sneaker sites, which uses place that allow them to restrict who
(credited) images and descriptions from is scraping from them and for what
the sites I have spidered. I show price purpose, and others will ban scraping
comparisons for all sneakers and link to altogether. You therefore run the risk
the ecommerce sites. Is this legal? of violating intellectual property,
Andy Barefoot, Munich, DE commercial agreements, or both. You
HB: This is an area of law known as need to check the terms and conditions
database rights. While some databases of the sites you have spidered to see if
(i.e. collections of information) will be aggregation and scraping are allowed
available through an API, others are for commercial use. Crediting the source
10 may 2016
Q&As
3 SIMPLE STEPS
What is the best resource
for learning how to apply
a11y on websites?
Anneke Sinnema, Enschede, NL
Responsive breakpoints The right breakpoints depend on the content and design you’re working with
may 2016 11
EXCHANGE Q&As
WEB DESIGN
TOP TRENDS
Flat/Material’s been popular for years. Any
idea what direction design will go next?
Peter Pec, SI
GC: I think we’ll see more 3D design,
especially 3D animation. Although Flash
as a technology became unpopular due to
accessibility concerns and a push towards
web standards, some of the most creative
web design work was once in the hands of
Flash developers. Now CSS animation is
becoming popular, I think we’ll see more
well-considered design that challenges
our expectations, and (hopefully) fewer
cookie-cutter templates.
Copyright exceptions Some limited use of copyright works without permission is allowed
ACCESSIBILITY
FORM FIELDSETS
Should every form have a fieldset, even desist within 72 hours. Almost always, been updated, and can often result in
if there’s only a single context (address, the plagiariser will comply, but a few pages requesting more CSS than they
email subscription)? will become difficult or abusive. The actually need. Fortunately, HTTP/2 is
Mike Riley, MD, US important thing is that you have evidence quickly making its way onto the scene.
HP: You have to think about the benefit to you have contacted the plagiariser and This improves the ways browsers
users. A <fieldset> on its own doesn’t offer tried to negotiate with them. You can communicate with the server – HTTP
anything more than a <div> element – it’s then either use the IPO’s mediation requests aren’t as costly, so keeping files
just a wrapper. If there’s only one field, service, file a takedown request with separate will become good practice. Test
an extra wrapping element is probably the web host where the material resides, your pages with a tool like webpagetest.org
redundant. I’d only use a <fieldset> where or take legal action. and make an informed decision.
a <legend> can offer information that
applies to multiple fields. For a single PERFORMANCE LEGAL
field, all the clarification you need should FILE OPTIONS COMMERCIAL ADS
be in that field’s <label> . When the input Is it better to link to one large CSS file used Can I use any TV (video) or radio (audio)
is focused, screen readers will usually site-wide, or multiple smaller files only commercial ad in my website without any
announce the <legend> text, followed by where needed? legal problems?
the <label> , so check they make sense Mike Riley, Baltimore, MD Enrique Vargas, Mexico City, MX
when read out in this order. SJ: Traditionally, it has been best practice HB: No. There are a range of issues
to keep HTTP requests to a minimum, to to consider, from terms of service to
LEGAL reduce demands on the browser. Also, we intellectual property to age restrictions.
COPYCATS tend to reference CSS files at the top of an Use an ad network; this ensures the
A designer develops her own product then HTML document – because the browser advertisements are fully licensed for use
sees exactly the same graphics and layout will generally only render the page and can be removed from the site if they
used by a different company. What to do? content when all the CSS files are loaded are found to be unsuitable.
Suzanne Stecker, Boulder, CO and ready, it’s best to minimise the time
HB: If your intellectual property it takes to do this.
rights have been infringed, and the Of course, we often work with many
infringement does not qualify as an CSS files while maintaining a site, so it
exception to copyright (netm.ag/except- has become common to combine these
279), the first thing to do is contact the into one file when preparing them for
plagiariser in writing. Politely inform delivery to the browser. This means
them you believe they have copied your fewer HTTP requests, and tends to be
work without permission. Back up your beneficial for subsequent page visits as
claim with source files, contracts or other the entire CSS will be cached. However,
evidence that you are the originator of it also means re-downloading all of a Top trends First popularised by Microsoft’s Windows
the work. Then, request they cease and site’s CSS after only a portion of it has Phone, flat design has been around for some time
12 may 2016
NEW YORK 22 APRIL 2016
www.generateconf.com
People, projects
& paraphernalia
may 2016 15
FEED
Side project
16 may 2016
Feed
HOW TO
pulled it out and noticed a bit of water damage redo everything. SMACSS treatment.”
– but nothing I couldn’t fix in Photoshop. It also Then, after a couple of minutes of him closely
had what we figured was an ink blotch on the inspecting the signs:
man’s forehead from the postal ink getting wet JUST DON’T
and bleeding through the envelope. Client: These look great! And you even took out @LuckychairNews wouldn’t
My manager instructed me to scan the photo, my birthmark. Cool! bother. He comments: “Retire
airbrush it and lay out the signs. No one bothered legacy code and rewrite!”
calling to ask first – the timeline was tight, and We nearly fell to the floor in relief. @LucPestille has a similar
we assumed anyone would want their photo approach, and says he’d modernise
retouching before being blown up to eight-feet “with a big stick, a burlap sack,
tall. The production crew managed to put all the a bonfire and a cup of tea.”
signs together over the course of two days. clientsfromhell.net And @blucube is also inclined to
agree: “Delete delete delete delete
delete delete delete delete delete
delete. Start again.”
may 2016 17
6
1
4
18 may 2016
FEED
Beyond pixels
STUFF I LIKE
NINA FREEMAN
Game designer
www.ninasays.so
CANDLE-MAKING
FLIXEL
When I first started making
games, some friends
introduced me to Flixel – an
open source AS3 game This month … the methodical process of pouring soy
library. It’s straightforward candles helps Amber Leigh Turner wind down
and fits my needs as a
beginner programmer. BEYOND PIXELS
It taught me all the basics
I needed in order to graduate By day, I’m a self-employed designer and bottles to make interesting holders. I was able
to languages like C++. marketing consultant who helps clients to really flex my creative muscles.
www.flixel.com establish and build visual identities to meet their My family and friends loved the pictures of the
marketing goals. I love helping clients create a candles I was making, so I started selling them
visual identity to use throughout all of their through Facebook. Soon after, I gave my candles
DISNEY TSUM TSUM marketing and branding collateral. a name (Candleflare) and opened an Etsy shop.
I travel to a lot of events and Working as a designer and marketing A creative hobby outside of my job helped me
my airport time-passer is consultant means I spend a lot of time on the strengthen my mental health, relieve stress and
Disney Tsum Tsum, a simple computer – more than I’m willing to admit. avoid burnout. The best benefit, however, is that
match three-style game. You While I love what I do for a living, so long in front I found myself motivated again in my design
swipe to match a row of of a screen can be stressful and taxing. Feeling business. While you wouldn’t necessarily think
digital Tsum Tsum plushies. unmotivated and on the verge of burnout drove that graphic design and candle-making could
I am shamelessly addicted me to find another creative outlet that would pull influence each other, I learned a great deal about
to these toys, and have a me away from the computer when my work was what it takes to experiment, create a product,
pretty huge collection. done for the day. design for it, and bring it to market – something
netm.ag/tsumtsum-279 I’ve loved candles since before I can remember, I haven’t had experience with before. I’ve gained
so making my own seemed to be a perfect fit. insights I now use in my business to help better
I researched candle-making on Pinterest, understand my clients and their goals.
GIRLSCAMERA and found so many creative ways to make them Candle-making is a great outlet for me to
GirlsCamera is an iPhone app and the containers in which they are displayed. experiment, relieve some stress, try new things
for people who like to cover I purchased a soy candle kit and made my first (creatively and in business), learn as I go, and use
their selfies in adorable candles with my mom. It was so relaxing and my new knowledge to help my clients. Plus, my
stickers. GirlsCamera has a peaceful to go through the methodical and house always smells amazing.
great DIY feature that lets structured process, from measuring the wax
you draw stickers and share and oil, to melting, picking a container and
Owner of January Creative in
them, so the library is huge. pouring the wax.
PROFILE
20 may 2016
Need list
NEED LIST
STUFF WE WANT
Small objects of web design wonder: from retro UX posters
to hotly anticipated VR headwear
1 2 3
RESPONSIVE DESIGN NOTEBOOKS £12 OCULUS RIFT $599 GET READY FOR CSS GRID LAYOUT $6
4 5 6
What we think
(1) Carry the core principles of RWD wherever you go thanks to these notebooks designed for your back pocket (netm.ag/notebook-279).
(2) It’s finally here! The Oculus Rift offers an immersive VR experience for tailor-made games and content. But you probably knew that already
(netm.ag/oculusrift-279). (3) Rachel Andrew walks through the cutting-edge essentials of CSS Grid Layout in this guide (netm.ag/grid-279).
(4) Remind yourself of the web design fundamentals with these posters inspired by vintage propaganda artwork (netm.ag/uxposters-279).
(5) In one working week companies of any size can solve problems and move forward. Find out how from three partners at Google Ventures
(netm.ag/sprint-279) (6) Inspired by Tomer Sharon’s column (p37)? Discover more about user observation in his book (netm.ag/productideas-279).
may 2016 21
NEXT
MONTH
MASTER BROWSER
DEV TOOLS
We reveal how to get the most out of Chrome, Firefox,
Safari, Edge and Opera when building websites!
PLUS
Combine the power Get started with 7 hidden gems
of SVG and D3 Project Comet, of the GreenSock
visualisation Adobe’s new UX tool Animation Platform
myfavouritemagazines.co.uk
DIGITAL EDITIONS AVAILABLE ON ITUNES, GOOGLE PLAY, KINDLE, NOOK AND ZINIO
net.creativebloq.com
Feed
EVENT GUIDE
NOW WHAT? CONFERENCE
DATE: 13-14 APRIL 2016
LOCATION: SOUTH DAKOTA, US
With top-notch speakers
including Facebook’s product UX
and content strategist Jonathon
Colman, Now What? Conference
offers two days of talks and
workshops to help you maintain
and improve your site.
2016.nowwhatconference.com
CONVERGE SE
AWWWARDS AMS
DATE: 13-15 APRIL 2016
LOCATION: SOUTH CAROLINA, US
With its vision of a united,
Nathan Riley stocked up on Dutch treats and design thriving web design community,
Converge SE has grown into one
inspiration at the Awwwards Amsterdam conference of the most popular events in the
US. Featuring Cards Against
EVENT REPORT
Humanity’s Jenn Bane, Adobe’s
Bradee Evans and CodePen’s
DATE: 27-29 JANUARY 2016 The day ended with a fantastic presentation by Rachel Smith, this promises to
LOCATION: AMSTERDAM two members of the creative team at Resn (pictured be an inspiring event.
URL: conference.awwwards.com/amsterdam-2016 above), who discussed the importance of designing www.convergese.com
for the concept and client rather than our own
Although a relative newcomer to the web personal ambitions. The duo also touched on their REACT AMSTERDAM
events scene, the Awwwards conference in ideology of pushing boundaries and rethinking our DATE: 16 APRIL 2016
Amsterdam was nothing but inspiring, professional perceptions of what a website truly is, a concept that LOCATION: AMSTERDAM, NL
and educational throughout. From the point we went down very well with the creative audience. This conference is “a celebration
arrived at the Royal Tropical Institute in true British To top off a fantastic couple of days we were of three good things coming
tourist style (i.e. late because we’d got lost), it was moved on to a former chapel-turned-events venue together: React and spring in
clear we were in for a fantastic couple of days. for an evening of networking, complete with a buffet Amsterdam”. There are talks
The first day kicked off with an eye-opening talk and open bar. It provided the perfect opportunity to from PayPal’s Jamis Charles
from Anrick Bregman of UNIT9, giving a run-through pick the brains of some of the speakers, as well as and Facebook’s Tadeu Zagallo.
of the incredible work they’ve been doing in the VR the lucky individuals who had picked up trophies Grab a ticket to discover what
space. If that wasn’t enough to get everyone’s brains at the Awwwards prize-giving ceremony that had React can do for your apps.
ticking, Bregman’s talk was immediately followed by taken place earlier. www.react-amsterdam.com
Huge’s Josh Payton, with some high-energy insights My biggest takeaway from the event was the
into the processes and projects at one of the most realisation we are entering an exciting new age GENERATE NY
globally respected agencies. To wrap up the day, the of web design that encourages the experimental, DATE: 22 APRIL 2016
guys from MediaMonks took to the stage to explain welcomes the wacky and embraces new media. Not LOCATION: NEW YORK, US
the importance of combining video production and forgetting the epic selection of edible Dutch treats net’s very own conference is back
Photography: Bebokeh Studio
web to truly connect users to a brand. provided over the course of the two days! in New York for its third year.
The morning of the second day provided a real Featuring a truly stellar lineup
mixture of speakers. One of my highlights was Greg of speakers, including Cameron
Barth, who gave a very honest account of his career Moll, Dan Mall, James White, Una
PROFILE
may 2016 23
SUBSCRIBE TO NET
GET THE NO.1 CHOICE FOR WEB DESIGNERS AND DEVELOPERS
DELIVERED TO YOUR DOOR, YOUR DEVICE, OR BOTH
29 31
% %
£55
BASED ON AN ANNUAL SUBSCRIPTION
£45
BASED ON AN ANNUAL SUBSCRIPTION
Terms & conditions: Prices and savings quoted are compared to buying full priced print and digital issues. You will receive 13 issues in a year.
If you are dissatisfied in any way you can write to us at Future Publishing Ltd, 3 Queensbridge, The Lakes, Northampton, NN4 7BF, UK to
cancel your subscription at any time and we will refund you for all un-mailed issues. Prices correct at point of print and subject to change.
For full terms and conditions please visit: bit.ly/magterms. Offer ends 30 April 2016
ARE YOU A WEB
PROFESSIONAL?
GET OUR PRO PACK
SEE PAGE 51
myfavouritemagazines.co.uk/NETMAG16
Opinions, thoughts & advice
WORKFLOW
PROGRESSIVE
ZERO UI
Andy Goodman explores how, as we move
towards a mesh of connected devices, user
interfaces need to recede into the background
28
FRAMEWORKS
Evan You walks through
the different framework choices
for developers, and introduces
an exciting new option
The world of frontend development
today is an intimidating one. With so
many frameworks and libraries, it can be
INTERVIEW 32 quite difficult to figure out the best choice.
Filament Group co-founder Patty Toland on We keep seeing beginners asking the
the benefits that only open source can bring, question: Which framework should I learn?
and the dangers of ignoring performance The answer is almost always: It depends.
You have to pick the right tools that fit the
constraints of each project.
BIG FR AMEWORKS
It can be tempting to go with a full-featured
framework that claims to have solved all
the hard problems for you. However, it will
only be a good choice when you are indeed
facing the problems these frameworks are
designed to solve.
Q&A 41 Are you building a fully-fledged single-
Developer and engineer Tim Holman chats page application that requires client-side
about his dream job at CodePen, quirky side routing, hundreds of components and mul-
projects, and dealing with career setbacks tiple teams working on different features
Opinion
MICRO-LIBR ARIES
Many developers advocate for the idea of
building your own stack with micro-librar-
ies. This approach gives you the utmost
flexibility: you can ignore the things you
don’t need and you get to decide every
part of your stack. This is great for simple
projects where all you need is a few micro-
libraries that solve specific problems.
However, if you extend this strate-
gy to larger projects, you’ll find yourself
having to make so many choices in order
to build a suitable stack that it leads to
decision fatigue. Moreover, the wiring
and plumbing required to make sure eve-
rything works well together can quickly It’s possible to create a framework
become overwhelming. It takes a lot of
experience to get it right, and if you aren’t
a seasoned developer, your code may end
up much less maintainable than desired. simplicity for small projects and
VIEW LAYER-CENTRIC a full-featured stack for large projects
There is a third category on the library-
framework spectrum: the view layer- rate and there is no single ‘best’ stack. This is what I call a ‘progressive frame-
centric libraries. The common trait in Again, this can lead to decision fatigue. work’, and I believe Vue.js qualifies as one.
this category is that libraries provide a For the simplest use case, you can pull it
standalone, ready-to-use view layer for PROGRESSIVE down from a CDN and get the benefits of
efficiently rendering dynamic content and It’s possible to create a framework that reactive, declarative data bindings with no
handling user interactions. This is often offers the best of both worlds: simplicity set-up at all.
sufficient for simple projects. for small projects and a full-featured stack For really ambitious projects, you can
At the same time, they can tap into their for larger ones. The key is that the user use the official command tool to scaffold
ecosystems of tools, libraries and conven- can scale up the framework’s complexity a recommended stack with the best-in-
tions to handle more demanding scenarios. incrementally, when the project demands. class development experience. There are
The aim here is incremental complexity: To achieve that, the framework must also official libraries to deal with common
don’t over-engineer it if the size of the be divided into incrementally applicable needs such as client-side routing, Ajax data
project doesn’t justify the overhead. parts. Start with the view layer as the core. fetching and touch gesture handling. If you
React is a great example in this category. Then add routing, data persistence, build think the idea of a progressive framework
Its core library is just a view layer, but its tools and higher-level architecture. These is plausible, check it out at vuejs.org.
community has created tools and libraries parts should work well together, but they
to fill in the gaps. The only issue is that should also be decoupled: so the user is free Designer and frontend engineer Evan
PROFILE
contributors have such diverse opinions to use them one at a time or all together, or (www.evanyou.me) is the author and maintainer
that the ecosystem has a very high churn even swap some out for custom solutions. of Vue.js, and a core developer at Meteor
may 2016 27
VOICES Essay
28 may 2016
Essay
INTERFACES
ZERO UI
Illustration by Ben Mounsey
Zero UI has been sometimes misinterpreted as As we move into a connected world where objects,
meaning getting rid of the interface entirely. What people and environments are all joined together by a
it actually refers to is a process where many of the visual mesh of invisible electronic tethers, the decision making,
interfaces we currently spend so much time with recede the services we want, and the results we expect from our
into the background, leaving us open to engage with the interactions become exponentially more complicated.
stuff that is important and useful to us. It is analogous Not only will a system have to predict what someone
to inbox zero, where we strive to achieve a blissful state wants to do next, but it will also need to know where
in which everything is dealt with, calm and invisible. If they are, where they are heading and what their intent
that is possible, of course. is. It will be about how we as humans interact with entire
I started my career as an interaction designer in 1994, systems, and how the constellations of things around
although it wasn’t called interaction design then. us become part of an endless dialogue between us and
My job title was probably ‘graphic designer’, and since the world.
then I have been labelled a UX designer, experience I don’t think there is a huge groundswell of opinion
designer and service designer. What we can deduce bemoaning the terribleness of interactive systems,
from these titles is that the object being designed has products and devices. Quite the opposite in fact; we seem
become less tangible over time, and less to do with to be entranced by them all. And why not? The devices
interactions happening on the screen. I’m not sure what are beautiful, the systems are intelligent and the
people that practice Zero UI will be called, but it will be services make life so much easier. A few dissident voices,
something different again. from the likes of Sherry Turkle, have put together pretty
strong arguments for the social and emotional dissonance
ELECTRONIC MESH that our addiction to electronic media causes. But in the
This shift away from the very controllable – although end the benefit the digital world has brought us far
quite primitive – environment of screen and pointer exceeds the problems it has caused.
means the things we are trying to do are becoming more Nevertheless, we can all agree that removing the
complex. They now have to take into account a lot more complexity these devices bring into our lives would be a
ideas around human behaviours, motivation, emotion, genuine improvement on the state of things. Not just for
and all kinds of weird things like that. the older generations, who try as they might are often
We’ve always had to bring aspects of psychology confounded by the intricacy and closed-shop paradigms
and perception into our work, admittedly in a pretty of software, but for all of us that have ever struggled
amateurish way most the time. Understanding what with an update or service switch.
would make someone click a button, how users would
retain information, and the barriers to committing to a VISUAL CREATURES
decision is important – but for all the elegance of the The phrase ‘Zero UI’ is designed to provoke people,
interfaces we have designed, they are all two-dimen- because as designers we spend a lot of time thinking
sional, with simplistic cues and triggers. about the way things look, and not much time thinking
may 2016 29
VOICES Essay
about anything else. It is inevitable because of the way go and design a whole different set of patterns, but they
platforms and computer interfaces have always been, probably wouldn’t be as good and would require people
and also the way that we interact with the world to learn new ways of interacting.
generally. We are primarily visual animals, and so we However, there is a whole set of more complex things
sometimes forget how important all those other senses we are trying to do now, which are really quite hard
are in conveying experience, and how important a part problems to solve. One example is the Uber app on your
of our memory and identity they are. Apple watch: in principle a genius simplification of the
If we think of the ways in which we can make use of experience – just open the app and call a car. But we all
those other senses, we can start creating interactions know how flaky GPS is, what if the car gets sent two
that become more intuitive, more pleasurable and blocks away? With such a simple interface the user has
more subtle; and that create less work for us. The objec- no way of adjusting the information to give the precision
tive is to be able to spend less time fiddling around required. So they end up checking on their phone and
with computers, but still achieve the same outcomes, the magic is killed. We will need multiple layers of fail-
enjoy the content they provide for us and the commu- safe and redundancy in systems to allow these types of
nications they enable. interactions to become commonplace.
The irony is that rather than delivering on the promise
of freedom, computers have in some sense enslaved us. COORDINATED SYSTEMS
Not in a Terminator or Matrix sense, but in a much more Imagine a Zero UI scenario where the user wants to travel
mundane way. It’s the fact that the battery life on our to the other side of the country. Leaving aside the booking
30 may 2016
VOICES Interview
32 may 2016
Interview
INFO
job: Partner,
Filament Group
t: @pattytoland
w: www.filamentgroup.com
may 2016 33
For Patty Toland, the top priorities when
making a website are accessibility and
performance. “Those are far and away the
most important pieces, ” she emphasises.
“Making sure the site is fault-tolerant,
that it works on slow networks and is usable
if you have a visual impairment or are using
a screen reader – those are essential right out
of the gate.”
Toland is co-founder of Filament Group,
a small agency that was voted Agency of the
Year in the 2015 net awards and is known for
its dedication to open source and principled
stance on building websites. Functional
problems, such as an intricate UI or a situation
where the complex must be communicated
in a clear way, are the team’s niche.
Filament came into existence in the early
2000s when Toland was working at another
company with her now-business partner Todd
Parker. When that closed during the dotcom
crash, a client asked them to continue on a
project, which they did under the banner of
their own agency. Within six months more
projects had arrived, and they needed to hire.
Accessibility came onto their radar when
they were joined by Scott Jehl, who had
previously designed projects for blind and
deaf users, and experienced how challenging
the web could be for them if it were not
designed and developed thoughtfully.
Ensuring the sites Filament Group delivered
were accessible to everyone soon became
central to their values. To this end, the team
began to focus heavily on progressive
enhancement, jointly authoring the book
Designing with progressive enhancement.
The second pillar of Filament Group’s value
system evolved organically out of the first.
“When you think about approaching design
from a progressive enhancement standpoint
– that is, you’re thinking of the most stream-
lined, functional, robust foundation for your
websites – then performance optimisation
naturally flows from that.” Toland notes that
optimising for performance benefits both
businesses and the wider community; better
optimised sites will be available to more
people, they will tax the networks less and
be more sustainable.
for your buck”. They have introduced the transformed almost immediately into a and collapses. So there are some really in-
studio to a large community of smart, like- content strategy role. It was at this point she teresting and fun meta-structures you can
minded people that can contribute their found her true vocation. “It was very clear build into your system to make responsive
expertise to solving complex coding to me that a structural, systemic understand- screen designs and responsive interactions
challenges, as well as running rigorous tests ing of how content works was something I make sense.”
on its components to ensure they’re well really enjoyed, and was an area where I had Toland finds great value in articulating
structured. Open source work can also be something to offer,” she tells us. things that might otherwise go unsaid;
used in client projects to Building design digging into the nuances of the decision-
ensure these benefits are “There’s no other systems and style guides making process that underlies design choices
passed on. is Toland’s speciality. “I and exposing the system of reasoning.
“It has changed the way we could gain really like helping people “You get to a point where you can see that
way the company works
the exposure or work through the full everyone on the team starts to own the un-
and dramatically in- complexity of a problem,” derstanding of the system,” she says.
creased our visibility,” the insights we get she says. This might “The really satisfying part is when
says Toland. “There’s no mean auditing a website someone who is fairly new to the project
other way we could get us
from the open consisting of thousands finds an unprecedented problem that doesn’t
this kind of exposure, or source community” of pages, categorising the have an example in the system, and they can
the insights we get from components and justify- articulate why they think they need a new
participating in the open source commu- ing the existence of text. variation of a component. Seeing the tools
nity. It just makes us better.” Design consistency is key. Toland defines we’ve helped to develop take on a life of their
this as “building the visual, and structural own, and a kind of integrity that allows
SYSTEMS THAT M AKE SENSE language into a design project that provides people to work with them and be effective,
Toland began her career as a business writing the logical infrastructure so the pieces can that’s my favourite part of it.”
consultant and soon developed an interest fit together effectively.” Responsive design
in the way design could influence how a is throwing up some interesting challenges SHARED RESPONSIBILIT Y
message is perceived. Then, following a two- in this area, because now content structures One of the most important lessons
year stint with the Peace Corps in Ukraine need to have scalability built in. responsive design has taught Filament Group
(an exercise that taught her a lot about “how “The structural language needs to have is that good accessibility and performance
to articulate your base assumptions”), Toland not only a logic for a size and scale, but also practices are everyone’s responsibility –
took a job as a writer back in the US, which logical variations for how content expands individual designers and developers, client
may 2016 35
VOICES Interview
36 may 2016
Opinion
USER OBSERVATION
paying attention to a variety of occur-
rences that might have implications for
users’ needs. Just standing there watching
what people do can be a challenging and
overwhelming experience if you don’t
Tomer Sharon explores how observation can help
know what to look for. Noticing and
us solve the problems people really care about paying attention to behaviours such as
routines, annoyances, interferences and
I live in North New Jersey, on the East My story isn’t unique. We all have so on turns ‘just being there’ into an
Coast of the US. For four years we problems that, for one reason or anoth- effective design tool.
rented a house with a detached garage that er, we work around instead of addressing To support your observations you need
we mostly used to store outdoor toys for our properly. In my story, the important to gather artefacts people use or create to
kids. Every winter, when the weather problem was not the frozen keypad – it complete certain tasks. These might signal
turned very cold, the keypad to open the was my relationship with my landlord. user needs or missing features or products.
garage door froze over and stopped It’s the same thing with product For example, if you were conducting an
working. Definitely a problem. development and user research. In far too observation in a grocery store, you might
When this happened, I would crawl many cases, people, teams and organisa- collect a person’s grocery list.
into the garage through a small window tions develop products that nobody needs Finally you need to interpret your
(which became smaller and smaller every and that do not solve any problems. Or findings. Figure out what the observed
year – I have no idea why) and turn the door even worse, they solve problems that users behaviour means and why the person is
system from automatic to manual. This don’t care enough about. doing it that way.
way, the kids were able to open and close User research can help you find valid
the garage while bypassing the frozen THE ART OF OBSERVATION and reliable answers to your most burn-
keypad. When spring arrived, I switched One of the most reliable ways to find out ing questions about your audience. When
the system back to automatic. how people are currently working around you go back to creating your product, try
I had a problem and found a bypass for a problem – and how much they care about to identify, validate (or invalidate) what
solving it. The issue was that it was the solving it properly – is through observa- your audience really needs, and how they
same story every year. The real solution tion. Although it’s not an easy technique are currently solving the problems they
was to pick up the phone, talk with my to apply, observing people in their natural really care about.
landlord, get a quote from a technician to context while using a product or service
fix it, argue with my landlord about the can go a long way towards establishing a
Tomer is the head of UX at work and living
PROFILE
cost, get another quote, and so on. Yet I deeper learning. space provider WeWork, and the author of
didn’t do that. I didn’t care enough about There are five key pillars in this process: Validating Product Ideas through Lean User Research
the problem to solve it properly. observing, listening, noticing, gathering (rfld.me/tsharon)
may 2016 37
VOICES Big question
DEBUGGING
HOW DO YOU
DEBUG ANIMATIONS?
The speed of some animations can make debugging tricky. Here, seven
developers reveal the tools they use to dig into code and fix any issues
38 may 2016
R ACHEL NABORS VA L HE A D
Web animations advocate and consultant Web motion designer
www.rachelnabors.com www.uianimationnewsletter.com
RESOURCES
TOOL TIME LISTEN UP ANDROID ANIMATIONS
So now you’ve got the basics of animation Hosted by Cennydd Bowles and Val Not to be outdone by Google Canary,
debugging, what next? Take your CSS Head, Motion and Meaning (netm.ag/ Android provides both hosted and
animation skills further with this list of coding podcast-279) is a podcast for web designers on-device tools to help designers perfect
tools compiled by Sarah Drasner (netm.ag/ devoted to all things motion. It covers the their animations. In this article (netm.ag/
debugging-279). It’s packed with straightforward history of motion design, principles you need android-279), Chet Haase covers the three
explanations and working examples to help you to know, mistakes to avoid and more, plus links most beneficial animation debugging tools
create beautiful, intuitive animations. to a wealth of further reading. for Android developers.
may 2016 39
Q&A
TIM HOLMAN
really gets me going, it’s more about what we are
doing with it. My eyes really go starry when I’m
trying to build something, and the new technology
is the key.
may 2016 41
NEVER MISS AN ISSUE!
SAVE UP
#278 APRIL 2016 TO 31% #272 OCT 2015
We reveal the UX insights
We show you how to top up your WITH A DIGITAL you can glean from Google
tool stack without spending a Analytics, and explore how
penny, and walk through the SUBSCRIPTION to design for smart devices
SEE PAGE 24
basics of CSS blend modes
#276 FEB 2016 #275 JAN 2016 #274 DEC 2015 #273 NOV 2015
We run down the prototyping Your guide to great UI design. Discover how to build perfect Join the Sketch revolution!
tools you need to sit up and take Plus: We introduce flexbox – the layouts without media queries, We help you make the switch
notice of in 2016, and show you CSS module that will help you and take a look at the 15 APIs to the new top tool. Plus:
how to get started with ES6 tackle complex site layouts that will solve your dev problems what makes a great portfolio
#271 SEPT 2015 #270 SUMMER 2015 #269 AUG 2015 #268 JUL 2015
We tackle the new design The freelance special: we Designers share their tips for We run down the 10 top tools
challenges presented by look at the pros and cons building a better web. Plus, you need to build responsive
the advent of wearable of going it alone, and share discover how to optimise sites, and introduce the
technology tips for landing big clients your sites for mobile Genesis Framework
NETM.AG/NET-GOOGLEPLAY NETM.AG/NET-ZINIO
GALLERY Inspirational sites
ALLISON WAGNER
Allison is a frontend
developer living in
Philadelphia and
working at renowned
studio Happy Cog
w: www.alliwagner.com
Sensational design and superb development t: @alliwagner
WWW.THEFORECASTER-INTERACTIVE.COM
Nico Roicke www.nicoroicke.de
The Forecaster is an interactive extension to content filters help structure the information and
the documentary of the same name detailing the surface content that otherwise might get lost in the
investigation of financial advisor Martin Armstrong. sheer volume of information included. For example,
It’s intended as a research tool for viewers of the select ‘Exclusive video’ and ‘Front page headlines’
documentary, to help them unpick the complex and the layout changes dramatically.
backstory surrounding the controversial figure. I especially love how Roicke has handled video.
“One of the most pressing questions viewers will The stills on the site are given a half-tone overlay
have is if they should believe Armstrong and his treatment that reads very editorial and subversive.
forecasts,” says designer Nico Roicke. “We didn’t want On clicking play, a modal launches and users can
to give a predefined explanation, but all the information watch the video on YouTube, without the site-specific
that’s needed for them to find their own answer.” art direction. By folding external assets into a very
Typography is used to express hierarchy as well specific design system, Roicke was able to find the
as delineating different content types. Additionally, best of both worlds.
44 may 2016
Inspirational sites
PARALLAX, TYPOGRAPHY
WWW.EPICURRENCE.COM
Rally Interactive www.beta.rallyinteractive.com
Salt Lake City-based studio Rally Interactive has become known for its
elegant, forward-thinking design and interaction work and this site is
no exception. It was created in support of Epicurrence 3, Dann Petty’s design
conference-slash-outdoor adventure in the snowy mountains of Colorado.
“The Epicurrence 3 site was a fast and chaotic labour of love,” recalls creative
director Ben Cline. “The goal of the site was to draw further attention to the
conference series as well as acquire invite requests for the third event. Aesthetically
speaking, the focus was on bold typography and a broken grid.”
Epicurrence, a portmanteau of ‘epic’ and ‘occurrence’, is an appropriate
description for the site itself. Employing parallax scrolling techniques to play
against the site’s broken grid; thin vertical lines that draw the eye down the
page; large, bold typography and subtle animation, the site leaps at users with “One of the best designed sites
kinetic energy and invoking a sense of adventure – a not-so-subtle prerequisite I have seen in a long time, great
for conference attendees (lift passes for skiing/snowboarding come bundled job, @letsgorally. Looks fantastic”
with conference tickets). It’s a clear measure of the site’s success that the
conference had garnered over 1,000 invite requests within two weeks of
launch, and I can see why.
may 2016 45
GALLERY Inspirational sites
SI T E OF T HE
MON T H
TYPOGRAPHY, FLEXBOX
WWW.SCIENTIFICAMERICAN.COM
AREA 17 www.area17.com
Science and technology magazine Scientific revival typeface called Brunel, by Paul Barnes and
American was in need of a redesign to closer Christian Schwartz of Commercial Type. So using
ally its print and digital touchpoints, and Brooklyn’s Brunel and visual elements similar to those in the
Area 17 more than delivered. Its design accentuates magazine were obvious choices. In the era of web
the respected 170-year old brand’s content through fonts, there is really no excuse for an editorial brand
careful treatment of design basics like typography, not to be using the same basic palette of typefaces
negative space, layout and photography. online as well as off.”
“Aligning the brand online with the strong From a frontend layout perspective, I was happy
personality of the print magazine was a goal of the to see the site using CSS flexbox effectively to support
design and the project overall,” says design director various layouts across screen sizes. The team has
Miguel Buckenmeyer. “The print magazine’s visual prioritised content to give a beautiful, elegant layout
identity was based on an exquisite English modern on different devices.
46 may 2016
Inspirational sites
WWW.ATIEVA.COM
Superhero Cheesecake www.superherocheesecake.com
“Finally SciAm
fans get an
experience
as noble and
distinguished as
the research and
writing the site
publishes. I wish
I had done it”
MICHAEL JOHNSON
may 2016 47
GALLERY Inspirational sites
WWW.POC-SCULPTURE.COM
Pier-Luc Cossette www.plcossette.com
48 may 2016
Inspirational sites
WWW.SWISSINCSS.COM
Jon Yablonski www.jonyablonski.com
may 2016 49
GALLERY Inspirational sites
“The friendly
icons and well-
considered
animations make
this site a joy to
browse”
YESENIA PEREZ-CRUZ
WWW.PARCOURSCANADA.COM
Locomotive www.locomotive.ca
Parcours Canada is a gorgeous site designed and tools and mechanisms were used interchangeably from one
developed by Montreal’s Locomotive to promote site to another. But more important, we were amazed that
Canadian tourism. Its purpose is to aid and inspire individuals, the pictures were small and of poor quality. They’re your
couples and families alike in the planning of custom trips best asset when selling holidays,” account director Daniel
throughout Canada. Savouyaud explains. “Our goal was simple: make people
There is a lot to love about this site: the art direction is embark on a trip before even lifting off.”
spot on, with meaningful and succinct iconography, a playful The attention to detail crafted by Locomotive – including
colour palette and gorgeous photography. The team has also peekaboo bonus-content hover states, CSS loading animations
taken performance and display density into consideration, on card-like blocks of content, and colourful large-format
employing SVGs for all graphical elements. photography – is a solid nod to a traveller’s playful sense of
Before starting work, Locomotive researched similar sites. adventure that surely inspires visitors to take the next step
“While studying the competition, we discovered the same and explore Canada’s vast wilderness.
50 may 2016
YOU ARE INVITED
TO JOIN NET PRO
For more than 20 years, net magazine has been at the
forefront of web design and development. Join net Pro and
as a special introductory offer, you can save £30!
WORTH
£371
JOIN TODAY VISIT www.myfavouritemagazines.co.uk/netpro
Terms and Conditions: Pricing and savings quoted are compared to buying full priced UK print and digital issues. You’ll receive 13 issues in a year.
Prices correct at point of print and subject to change. Full terms and conditions bit.ly/magterms. Offer ends 30 April 2016
Sublime design
& creative advice
JE MM A P R O C T OR
Jemma is the founder and managing
director of One Ltd
PROFILE 58 w: www.oneltd.co.uk t: @oneltd
We chat to product designer and developer
Mike Busby about how he’s shaking things K E V HO Y L E
up at successful financial startup BitGold Kev is the owner and designer of
Lancashire-based agency Iced
w: www.icedgraphics.com t: @icedgraphics
BRIEF
We’d like you to design a website for a theatre. It
could be a huge theatre in the West End or a smaller,
independent venue dedicated to uncovering local talent
and grassroots acts. Users need to be able to see
HOW WE BUILT 64 what’s on quickly, and book tickets easily.
Elespacio teamed up with a food advocate to
present a digital cookbook celebrating small
producers from around the world
Design challenge
YUNMIE KIM
GLASS THEATRE
This scheme caters for different types of theatre fan, and takes the mystery out of choosing a seat MY MONTH
What have you been
doing this month?
After talking to people about their theatre
CLOSE UP Working on a blog
experiences, I identified a few different post about improving
types of users: people who go for a show, people (1) When a user selects a date in the calendar, the relevant interdisciplinary team
who go for a certain date, and people who go for shows are displayed. (2) The current show (or featured workflow through
better documentation.
the venue itself. The Glass Theatre’s website is show) section provides enough detail that users can skip
designed to serve all of these user types. the ‘more info’ step if they like, especially when they Which sites have you
The homepage features an image of the know about the show already. (3) As the user has already visited for inspiration?
www.siteinspire.com.
theatre itself, communicating its unique selected the particular number of people and ticket type
personality. Information about current and (e.g. student), the system can display simple price figures What have you
been watching?
upcoming shows follows this closely. The here. (4) When a seating zone is chosen, the system will
If YouTube counts,
calendar function serves users who come to automatically suggest the best available seat(s) with an
I’ve been fascinated
the site with a certain date in mind (such as option to change the selection manually on the seating by videos of character
an anniversary). plan. When a seat is selected manually, the system will customisation in online
As the booking process is designed in a single also suggest an adjacent seat for the next ticket. (5) When games.
page, a user can try a different time, date, seat a seat is chosen, a user can see the views from the seat, What have you been
or seating zone to find the best deal for them, and photos of the seat and its surroundings, in order to listening to?
without wasting unnecessary time on page give an idea of what it might be like to sit there. I usually rely on Spotify
to guide me, so it varies.
loading. I chose to focus on the seat selection
I was listening to Future
step because it seemed to be a big pain point Islands today.
– usually, users book their seats without much
idea of what they’re paying for.
may 2016 53
SHOWCASE Design challenge
1
3
2
5
JEMMA PROCTOR
54 may 2016
Design challenge
4
2
KEV HOYLE
may 2016 55
Focus on
FOCUS ON
‘ABOUT’ PAGES
Sam Kapila shares what to consider when crafting your About page
may 2016 57
INFO
Location: Toronto, Canada
Designing since: 2007
Areas of expertise: Creative
direction, product design and
development
Worked with: adidas, Ford,
Notable.ca, BitGold, GoldMoney
PROFILE
MIKE BUSBY
@mikebusby
may 2016 59
SHOWCASE
BitGold This startup provides a platform on which users can buy, store and spend gold bullion. Busby was
the company’s second hire, and has led it to worldwide success over the past year
net: Can you tell us a little bit about the running in a web view, packaged as an
BitGold Hybrid Mobile App? a hybrid app and leverage all our skills. app. I feel as though given the constraints
MB: We had a number of strong business Trying to design a mobile app that we had to work within, we ended up with
goals, but above all else we needed to get works on both platforms is extremely a very well-rounded product.
something out fast. We wanted to keep it
in-house as much as possible due to time net: What tools and techniques did
and budget. We debated heavily between too. The development was also incredibly you use?
a native iOS and Android app. Our entire tricky – native code is 10 times more MB: We used a number of open source
design team is composed of developers, performant than web-based technologies projects essentially designed to package
web apps as mobile apps. For the design
side, we had to combine the two platform
interface guidelines into one. We decided
we would focus more on the iOS side of
things, as initial research showed more
users on iOS than Android.
Performance was a major challenge.
This is like building a responsive web app
and then trimming out any expensive
the most.
60 may 2016
OFFICE CULTURE
MIKE BUSBY
may 2016 61
SHOWCASE
TIMELINE
A look at the pivotal dates in
Mike Busby’s design career
AUGUST 2006
JULY 2007
Ford Canada Busby battled strict design guidelines and a tight deadline to create this microsite for
MAY 2009
Notable.ca and Ford Canada
Rebuilds portfolio website for the
seventh time net: There’s a lot attention being given behind a menu. The features that are not
to animation at the moment. How do needed as often are kept in the ‘More’
FEBRUARY 2010 you approach this aspect of your job? menu for easy access. We have users from
MB: Having a good understanding of UI all over the world, and in turn many
Scores first big-name client development allows me to directly build
my animations in browser. I brainstorm utilised. I took all this into account when
concepts, build prototypes and iterate designing the navigation we have today.
APRIL 2011
62 may 2016
SHOWCASE How we built
HOW WE BUILT
12 DISHES
Elespacio created an online recipe book that celebrates small food
producers and takes viewers on a culinary journey around the world
5
6
CLOSE UP
BRIEF
(1) The homepage was conceived as a gateway illustrations capture the essence of each recipe
For this self-initiated project, to the individual recipe pages. (2) Each page and the independent producer behind it. (5) This
digital agency Elespacio joined food
features a recipe and relates it to an independent project was a collaborative effort: digital creative
advocate Imogen Wells to create a
beautiful and thought-provoking food producer’s story. On desktop, the layout is agency Elespacio was joined by independent food
site that combines 12 tasty recipes split vertically. (3) From the beginning of the high- producers, a food advocate, a nutritionist, and
with the stories of small food level concepting stage, responsive design was a a food photography studio. (6) Each recipe was
producers around the world. must. You need to be able to browse comfortably carefully prepared by food advocate Imogen Wells
on your mobile and tablet while cooking! (4) The and artfully photographed by Lumen.
64 may 2016
How we built
TIMELINE
The key dates in the
12 Dishes project
15 OCT 2015
Elespacio reaches out to Imogen Wells to
Juanmi is the founder and ActionScript hero-turned Art director David was explore the possibility of a collaboration
director of Elespacio. He came modest frontend dev Jacek is responsible for the UX and
up with the original idea for the Elespacio’s lead senior developer visual design of the site
site and acted as producer w: www.jacekzakowicz.com w: www.davidbonas.com
w: www.elespacio.net t: @jacekz t: @davidbonas 20 OCT 2015
The team prepares documentation
outlining the project and sends it to
Keen to embark on a self-initiated up with the idea of using illustrations. independent food producers
project but in need of a suitable We combined a vibrant colour palette
story to tell, Elespacio teamed up with with subtle texture as a reference to the
food advocate Imogen Wells to create a multicultural nature of the project, and 21 OCT 2015
small but perfectly formed online recipe also the type of food producers we were
High-level concept creation and
book featuring 12 dishes from around the interested in: small farmers, organic wireframe exploration starts, followed by
world, with a focus on independent food food, traditional production methods, development validation
producers and the stories behind each and so on.
recipe. The result (www.12dishes.com) is
a responsive site in which typography, net: The whole package is very print- 30 OCT 2015
illustrations and mouthwatering food like in its aesthetic. Did you face any
Content is curated and work begins
photography work together to bring a difficulties pulling it all together?
on the design and layout
selection of unusual recipes to life in DB: In the end we received an amazing
a thought-provoking way. response from the food producers and
they sent us great images, which we
net: What’s the story behind Around used as a base for the illustrations.
16 NOV 2015
the World in 12 Dishes? We thought elegant serif fonts would Each of the 12 dishes are cooked for
JS: I’ve always admired Imogen for create an interesting contrast with the Lumen to shoot. Meanwhile, the vector
illustrations are created
her passion and original point of illustrations and the colour palette.
view with regards to food. She sees food It’s also nice to see print-inspired
as a means to bring us closer to our typography in a digital context.
essence as humans; to grow respect for For the food photography, we were 18 NOV 2015
the people who choose to sacrifice some very lucky to convince our friends at Recipes and their ingredients
productivity in order to output products photography studio Lumen (lumenstudio. are finalised. The development
with a soul and real nutritional value. es) to get involved. They did an amazing phase kicks off
may 2016 65
SHOWCASE How we built
EVOLUTION
66 may 2016
How we built
may 2016 67
FEATURES Cover feature
NEW SKILLS
IN WEB DESIGN
Christopher Murphy lays out his skills roadmap,
pinpointing the areas you should be brushing up on
O
ur industry is evolving at a
dizzying rate, and it seems to
develop faster and faster each
year. Knowing what to focus
on in order to stay up to speed
AUTHOR can be a challenge. Ask 10 different
CHRISTOPHER designers or developers ‘What should
MURPHY I learn this year?’ and you’ll get 10
Christopher is a writer, different answers.
designer and speaker As a senior lecturer teaching
based in Belfast.
Interaction Design at the Belfast School
He’s a passionate
educator, mentor to of Art, it’s important to me to ensure
creative entrepreneurs, my curriculum’s up-to-date and fit for
and the author and purpose, so I welcomed the opportunity
publisher of Tiny Books to reflect upon the skills that web
www.tinybooks.org
professionals should be homing in
on this year. Like everyone, I find it
ILLUSTRATOR
a struggle to keep on top of everything,
MARCO GORAN
so I think it’s important to spend some
ROMANO
Italian illustrator time at the start of the year outlining
Marco’s work has been a list of topics on which to focus during
featured in books and the year ahead.
magazines around the To ensure this list was industry-
world, and in 2014 he
focused and relevant, I approached
was named one of Print
magazine’s ‘20 Under a number of others whose opinions
30’ New Visual Artists I respect (including Sara Soueidan, Andy
www.goranfactory.com Budd, Jonathan Snook, Dan Edwards
68 may 2016
may 2016 69
FEATURES Cover feature
and Jake Giltsoff) to find out where they In my teaching I explain that HTML layouts that are perfect for RWD and
see things heading. I’ve combined their is a design element. We can do a great interface design.
thoughts with the topics I’m focusing on deal at the markup layer, and we owe it Flexbox is a layout mode that, as the
learning to create a ‘skills roadmap’ for to our content to do so. Understanding W3C puts it, is optimised for UI design.
the rest of 2016. CSS is important before embracing tools Chris Coyier’s flexbox guide (netm.ag/
Some of these topics will merit deep like Sass that abstract it – and the same guide-275) is regularly updated. Wes Bos
dives and focused research, others are goes for JavaScript. Know the cost of has also created a series of 20 free videos
included as areas to read up on and dependencies such as jQuery and other entitled ‘What the flexbox?!’ (flexbox.io)
familiarise yourself with. So without libraries and frameworks. Keep your to help you master this dark art.
further ado, let’s get started!
70 may 2016
The future
by Andy Budd
3Modular design
As screen sizes multiply, the
contexts we design for are changing.
Snook’s SMACSS (Scalable and Modular
Architecture for CSS), we end up with an
approach I call ‘modular design’, which
before they get left behind.
Augmented reality is certainly not
new, but with the nearing release of
What we need are ‘content building lends itself to the multiple contexts we HoloLens, 2016 is going to be the year
blocks’ that adapt themselves to any have to design for. that it hits the mainstream. In the early
environment. Learning about modular, stages, these augmented experiences
reusable fragments of content as a basis
for design helps us create content that
fits any situation, which is a powerful
4 Typographic principles
“95 per cent of the information
on the web is written language,”
will most likely be created by game
designers. However, the challenges
of navigating UIs that are overlaid
skill to have. says information architect Oliver onto the real world are considerable,
With this in mind, I’m looking Reichenstein. “It’s only logical to and require a whole new set of skills
forward to Brad Frost’s Atomic Design say that a web designer should get and experiences.
book, which should see the light of good training in the main discipline With the rise of artificial intelligence,
day this year. Frost is helpfully sharing of shaping written information. In we’re moving away from traditional
the content of his book while he works other words, typography.” graphical UIs and towards a world
on it (atomicdesign.bradfrost.com). Reichenstein raises a good of discursive UI: interfaces that hold
“My search for a methodology to point. However, I would argue that conversations with their users, either
craft interface design systems led understanding ‘the craft of words’ through text input or voice commands.
me to look for inspiration in other (netm.ag/craftbook-279) should take Senior interaction designers face a
fields and industries,” explains Frost. priority. Words are an essential steep learning curve to get to grips with
“Fields such as industrial design and design element and, as designers the demands of this new approach.
architecture have developed smart, of content, we often find ourselves Of the three, motion design is
modular systems for manufacturing working with language. A little time obviously the most pressing, so that’s
immensely complex objects like spent learning about language and where designers should put their
aeroplanes, ships and skyscrapers.” how it can shape user experiences money at the moment. However, the
Frost’s approach involves designing can go a long way. long-term future of design is discursive
systems built around atoms, molecules, That being said, the principles of UI, so that’s where they should focus
organisms, templates and pages. When typography – especially as applied if they still want to have a job in 10
we couple this approach with Jonathan to the web – is something I think years’ time.
Conferences we can all stand to learn more about. If your focus is on the frontend, the
drive learning Great typography enhances readers’ ability to design and prototype websites
enjoyment of content; something we and mobile apps, from wireframe to
Conferences are a great way to meet should all strive for. finished product, is extremely valuable.
like-minded individuals and hear from
the leading voices in our community.
They’re also a great place to learn new
Digital prototyping tools have come of age over
skills. Whether your focus is on design the last few years. Tools like InVision, Marvel and
or development, there’s a conference
that fits your bill perfectly – you just Principle enable designers to create fully fledged
need to find it.
Lanyrd, a social conference directory,
digital prototypes, quickly and easily
helps you to find the conferences that
are right for you. Even better, it allows I’m looking forward to reading I’d strongly recommend diving in and
you to make connections with other Richard Rutter’s Kickstarter-funded acquiring some new knowledge.
ticket-holders so you no longer feel like Web typography: A handbook (book. This progression in tooling also
you’re attending an event alone. Sign webtypography.net). While Rutter works means that designers focused on
up and you’ll soon discover a wealth on completing his book, I’d recommend designing complex, interactive products
of learning opportunities. exploring his site webtypography.net, now have the tools at their disposal to
We’re blessed with an abundance which provides a practical guide to turn their visions into rich prototypes
of web industry conferences. Three web typography. – complete with an emphasis on user
that spring to mind are Generate (run interaction and also, importantly,
by the net magazine team), Smashing
Conference and beyond tellerrand. All
have built strong, friendly communities,
5Prototyping tools
Digital prototyping tools have
come of age over the last few years,
animation and transitions.
Of course, understanding the
fundamentals of what is possible
and all are worth attending. and the opportunities in this space (and what is codable) is important.
If I could recommend one – highly are developing rapidly. Tools like This knowledge, coupled with
beneficial – way of learning, it would InVision, Marvel and Principle (not to an understanding of how digital
be to attend the occasional conference mention Adobe’s soon-to-be-unveiled prototyping tools work, will ensure
workshop. Yes, a workshop might be Project Comet) enable designers to create you’re future-focused and ready
an added expense, but look on it as an fully fledged digital prototypes, quickly for the exciting opportunities that
investment. Attending a workshop gives and easily. lie ahead.
you the time and space – away from
the studio – to focus on acquiring a new
skill. Not to mention a chance to make
new acquaintances.
6 Animation principles
Animation is increasingly expected
in the interfaces we design. “Subtle
animations and interactions, used
well, can be the difference between
an app or site that’s feeling native,
seamless and engaging, and one that is SVG on the web This practical guide to Scalable Vector Graphics comes courtesy of Typekit’s Jake Giltsoff
static and unintuitive,” states designer
Dan Edwards.
Understanding the principles that
underpin animation – ideas like
timing, easing and spatial awareness
– is becoming increasingly important.
There’s lots to learn from here, but I’d
recommend starting with the work of
Disney (netm.ag/disney-279).
There are a number of helpful tools
that allow you to work on animation
within an interaction design context,
and exploring these is going to become WebComponents.org This site covers everything you ever Time out Workshops like this React workshop with Wes Bos
increasingly helpful for designers. wanted to know about Web Components offer a chance to learn a new skill in a focused way
Tools like After Effects, Framer and
Atomic will become a valuable part
of the designers’ toolbox.
One key point to stress, however,
very small file sizes, and can be easily
edited, modified and maintained.”
Using SVGs offers a number of
8 APIsI find APIs a little complicated,
as I live firmly on the designer end of
is that animation should be used with benefits: reduced file sizes, improved the nerd-designer continuum, but that
caution. After all, as Sophie Paxton performance, and the possibility of doesn’t mean I can’t learn a little more
blogged, ‘Your UI isn’t a Disney movie’ lean and efficient animations. These about these technologies. I think it’s
(netm.ag/paxton-279). are all good things from a performance important that we spend a little time
perspective. A little time spent learning getting to know skills from outside our
may 2016 73
Treehouse In a few short years, Treehouse has grown to become the perfect one-stop shop for expanding your skillset
Skillshare This online learning platform’s focus is on enabling users to learn new skills. Its courses are taught by passionate creatives from all over the world
Online learning comprehensively cover the world of web design range of topics, many of which are web-related.
Our industry might be evolving rapidly, but and development, offering “a library of lessons If you’re interested in acquiring new skills
we’re incredibly fortunate to be living in an age that goes far beyond the surface”. Its learning I’d recommend exploring this library.
where educational resources are literally at tracks are also supplemented with short quizzes,
our fingertips. The web is an ideal medium and ensuring that what you’re focusing on learning Skillshare www.skillshare.com
there are numerous resources to kickstart your is actually sticking in your brain. Though its focus isn’t entirely web-related,
learning. Here are three of the best: Skillshare has a large volume of web-related
Udemy www.udemy.com material nonetheless. Membership is very
Treehouse teamtreehouse.com Udemy is an excellent source of video tutorials, reasonably priced and offers users the
Treehouse is a great resource that I can which make learning easy and enjoyable. It opportunity to learn at their own pace and
recommend highly. Its video tutorials offers a library of over 40,000 courses on a huge – importantly – to learn by doing.
Cover feature
One efficient way to pick up skills The web is struggling under the weight conversational forms of discursive
in these areas is to spend some time of giant hero images, gargantuan video UI. Emmet Connolly, a digital product
identifying conferences that are running backgrounds and growing quantities designer at Intercom, spoke about
workshops in your particular area of of web fonts. Let’s all go on a diet and this recently in a talk titled ‘Design is
weakness. A day spent at Industry address this. Ask yourself, ‘How can I a conversation’ at Rebase in Dublin.
conference’s React JS Workshop with make this smaller?’ Trust me, your users Read some of his comments around
Wes Bos, for example, is a great way to will thank you. the subject at emmetconnolly.com.
learn something new, in a time-focused
manner, away from the everyday
distractions of the studio.
The web is struggling under the weight of giant
hero images, gargantuan video backgrounds and
9Performance
I’m sure we’re all guilty of having
built cumbersome, overweight pages in
growing quantities of web fonts. Let’s all go on
our time. We know we should do better
a diet and address this. Your users will thank you
(optimise!) and this year, like most
years, I’m reminding myself of the need
to be mindful when it comes to page
weight and performance.
10 New technologies
on the horizon
The web is evolving at a dizzying
In closing …
There’s never been a more exciting
time to work on the web, but, equally,
rate and, as part of this constant it’s never been more challenging. The
recently published a wonderful roundup development, we’re seeing a number of modern web is rapidly diversifying,
of his thoughts on this matter: ‘The new and exciting technologies starting and looks very different to when I first
website obesity crisis’ (netm.ag/obese- to appear on the horizon. Though these started wrestling with it in the early
279). Skewering, amongst other things, might not be within our reach at this 90s. It’s becoming increasingly difficult
‘fat ads’ and ‘interface sprawl’, he makes precise moment, our realm as designers – if not impossible – to hold everything
a passionate case for paring things back. is ever-expanding, and they might very you need to know in your head.
As he puts it: “Keeping the web simple well be soon. And that’s alright – after all, no one
keeps it awesome.” Virtual reality, augmented reality, can know everything. We are finding
I’d strongly suggest spending some discursive interfaces … there’s a lot ourselves increasingly gravitating
time developing your skills around on the horizon and plenty to learn here towards specialisms; focused areas
performance: learning about image (see boxout 71). It’s always good to stay of practice we can learn inside out.
compression; focusing on keeping ahead of the curve, and a little research So long as you can master the core
your HTML, CSS and JavaScript lean; and reading around these topics will add techniques around your area and
reducing weighty dependencies and a further string to your bow. acquaint yourself with other techniques
so on. All of these things matter, not With the recent growth in messaging- in related areas, you should be fine.
least due to the increasing shift towards centred services, one area worth You might not be able to dig deep into
mobile patterns of consumption, where focusing on in the coming months everything I’ve covered, but the key
bandwidth is expensive. is text-driven interfaces and other, is to keep on learning!
Fat sites explores ‘the website obesity Augmented reality The first fully untethered, holographic computer, Microsoft’s HoloLens promises to change the
crisis’ in this talk future of holographic computing
may 2016 75
DESIGN A WINNING
UX PORTFOLIO
For UX designers a CV isn’t enough: only a top-notch portfolio will get you on the
path to your dream job. Ian Fenn shows you how to make a great first impression
F
or any UX designer looking for before interview back then, it acted as a
work, a portfolio is practically teaser – a way of saying ‘Here’s what I’ll
mandatory these days. Apple, talk through when we meet’. Today, with
Google, IBM, and Adobe are among increased competition (over 100 applicants
the many companies that insist on average per role) and much ambiguity
job candidates submit a UX portfolio along over what pertains to UX design, that AUTHOR
with their CV. Hiring managers will review approach is not useful. What you need is IAN FENN
both documents, but typically only those a portfolio full of design-based stories. Ian (@ifenn) is an
independent consultant
with a decent portfolio will be invited to UX design expert Jared Spool nailed
in London, where he
interview. this in his post ‘A Great Portfolio isn’t helps businesses get UX
In this article, I’ll run through some a Collection of Deliverables’ (netm.ag/ design done. He’s the
tips for pulling together a portfolio your spool-279). In it he describes one UX author of the upcoming
prospective employers can’t ignore. designer’s portfolio, which was well put book Designing a UX
Portfolio
together, but didn’t specify the designer’s
TELLING YOUR STORY accomplishments: “He didn’t talk about
Over the past four years, I’ve spoken the projects he created the wireframe
with several hundred hiring managers for. He didn’t say how he developed the
and recruiters from across the globe. personas or how they were used. He didn’t
What they see from candidates most talk about places where the project got
often is portfolios containing galleries of complicated and he worked through it,
beautiful user interfaces or collections of producing an elegant outcome given the
commonplace design documents such as constraints. These are things that smart
site maps and wireframes. hiring managers look for.”
A decade ago this would have been fine. When you submit a UX portfolio before
If you were asked to submit a portfolio the interview, it will be examined without
FEATURES Second feature
that protects information the client deems yourself. There is no need for any written
confidential. They can raise problems when narrative. So pull together an impactful My research suggests many hiring
it comes to sharing work in your portfolio. deck of images, deliverables and key facts, managers prefer PDF-based portfolios,
Some designers choose to share their then present that instead. as they’re simple to navigate, annotate
work regardless. This approach will lead Remember, the purpose of a UX and share internally. They can also be
to many hiring managers questioning your portfolio is to get you an interview. It’s printed quickly for the daily commute
ability to keep a confidence and concern a sales document – in it, you’re trying to home. For a candidate, a key benefit is that
about your professionalism in general. illustrate what you can offer the person it can be customised for specific jobs – and
Just don’t do it. reviewing it by demonstrating what you the more relevant the portfolio, the more
An attractive option is to anonymise any did for others. It is not a place for personal likely an interview will result.
affected work. Be careful if you adopt this experimentation or for going into great It’s difficult to customise a web-based
approach, particularly if you intend only to detail about your needs or interests. You portfolio in quite the same way. However,
remove the name of the client. It is often can address your requirements later on an online portfolio will act as public
possible to identify the client by cross- in the hiring process. promotion every day and night.
referencing the obfuscated design against Portfolio communities are often image-
information in an accompanying CV. FOLIO FORMATS led, and this doesn’t tend to suit the
The ideal situation is to avoid signing One question that seems to vex many demands of the UX designer or researcher.
an NDA in the first place. The best time to candidates is whether their portfolio Another issue is that your competitors
query company policy on this is after the should be a PDF, a personal website or are often just one click away. A recruiter
company has shown an interest in hiring a gallery within a portfolio community recently told me he’d been impressed
you, not before. Ask them their policy on like Behance or Dribbble. Each platform by a Dribbble portfolio he’d been sent a
employees sharing work in their portfolios. has its pros and cons. link to, only to realise he’d taken a wrong
If they reply that all work is subject to an
NDA, decide if this is a deal-breaker.
Some clients may agree to let you
feature them in your portfolio if it’s
password-protected. If you do this, put the
minds of portfolio reviewers at rest on the
confidentiality issue – make it clear you
have permission. ‘Work made available with
permission’ is all you need to say.
Under wraps Designer Phil Verheul (www.philv.co.uk) Platform options Boraham Cho (www.medium.com/borahm- Share your story James Grant (netm.ag/grant-279) uploaded
keeps his portfolio password-protected cho) used Medium to quickly get his UX portfolio online his portfolio to SlideShare
Second feature
In detail Portfolio sites like Dribbble aren’t enough to communicate the intricacies of UX Keep it real A short, pragmatic introduction like this from Janice Ahn (www.janiceahn.com)
design, or the stories behind the projects works better than vague marketing speak
turn and arrived on another designer’s a hiring manager will review portfolios best work, looking for projects where you
portfolio instead. Good for the recruiter, five minutes at a time, between doing really made a difference for your employer
who now had another prospective multiple other jobs, which might include or client.
candidate to contact, but not so good coaching new starters and meeting with Ensure it’s work you wouldn’t mind
for the original applicant. peers and managers. doing again. If you don’t want to sit in
a corner and produce wireframes every
day, leave past projects like that out of
your portfolio! Also, exclude work that
Research suggests reviewers will scan is too similar to another project – you
only need to tell a story once.
a portfolio for around a minute before For each achievement, write up the
business problem you were asked to
deciding to reject it or explore further address, the actions you took to solve it,
and what the results were. Many hiring
managers will be looking for evidence of
how you understood user needs, so ensure
FIRST IMPRESSIONS Jon Kolko, founder and director of the you cover that too.
Whichever format you opt for, the secret Austin Center for Design, has also posted The ability to collaborate and facilitate
to making an effective portfolio is to on the challenges that hiring managers is also seen as a definite plus. Be explicit
treat it much as you would any other face (netm.ag/kolko-279): “The sad reality and honest about your role and who
design project. In other words, make it of sending a portfolio to a consultancy
user-centred. Your first step should be is that your chances of getting a job are
to understand the reviewers. Few hiring a weighted dice roll, based on a mixture
managers review portfolios because of extremely fast first impressions,
they want to; it’s a means to an end. serendipitous timing, and who you know.”
They merely wish to exclude candidates Whether you’re looking for freelance
so they have a list of interviewees. work or full-time employment, increase
Research suggests recruiters and your chances of success by understanding
hiring managers spend six to 15 seconds the company you wish to work for. Ensure
reviewing a CV. You get a little more time your UX portfolio contains only what
with a UX portfolio, but not much: most you are confident will interest them,
reviewers will scan a portfolio for around and nothing more.
a minute before deciding to reject it or
explore it further. Exploring it further BEST FOOT FORWARD
will take another five minutes. Creating an exciting portfolio of design
In a blog post (netm.ag/wodtke-279), stories starts with gathering together your Funny start Adrienne Hunter (www.hunterux.com)
UX coach Christina Wodtke explains that biggest achievements. Pull together your communicates a sense of humour with her opening image
may 2016 79
FEATURES Second feature
you worked with. Any white lies on this keep an archive of previous stories for
front will quickly unravel later on in the SEO purposes, but ensure your portfolio
hiring process. prioritises the stories you consider most
relevant to your target audience.
QUALITY, NOT QUANTITY If you’re just starting out, it’s fine to
One of the things hiring managers have a portfolio of just one story, as long
look for is how well the portfolio has as it’s a good one. For junior roles, the
been curated. The quality of the stories smartest hiring managers will be looking
is more important than the quantity. for evidence of user-centred thinking,
If you’re creating a PDF-based portfolio, passion, self-education and collaboration.
the entire document probably shouldn’t A single story can be enough.
run more than 15 pages, even if you’re
very experienced. WRITE WELL
With an online portfolio, it can be With recruiters spending so little time
tempting to provide links to every single reviewing portfolios, it’s important to
thing you’ve ever worked on. Doing this write your stories well. First, ensure your
suggests you have no opinion about your spelling and grammar are perfect. UX
80 may 2016
Second feature
Word up Advice of advertising legend David Ogilvy: use short words, short sentences and short paragraphs
to this rule, which is known as the portfolio once saved to their hard drive.
aesthetic usability effect. If your skills ‘UX-Portfolio.pdf’ won’t stand out!
do not include visual design, there are two
fundamental principles you can follow FINAL WORDS
to keep things smart: adopt a consistent Like it or not, the UX portfolio is here to
grid structure, and limit the number stay. Portfolios are a critical part of the
of typefaces and colours you use. recruitment process for many companies,
but as many as nine out of 10 candidates
KEEP THINGS LEAN are failing to deliver what’s required.
If you’re creating an online portfolio, These tips will give you a competitive
ensure it’s responsive and as efficient as advantage that could help you snag the Download option Khoi Nguyen Truing (www.khointruong.
possible. Keep code weight and the human role of your dreams. Good luck. com) allows reviewers to download her case studies as PDFs
may 2016 81
FROM THE MAKERS OF
On sale
now
90 104 108
Desktop Mobile/tablet
0 0 BROWSER SUPPORT EXCLUSIVE VIDEOS
We feel it’s important to inform Look out for the video icon
0 0
our readers which browsers the throughout our tutorials.
technologies covered in our tutorials This issue, Marc Andrew has
0 0 work with. Our browser support created an exclusive screencast
info is inspired by @andismith’s to complement his article on
0 0 excellent Can I Use web widget Zeplin: take a look to see how
(andismith.github.io/caniuse-widget). Sketch and Zeplin can be used in
0 0 It explains from which version of tandem to enable communication
each browser the features discussed and bridge the gap between
are supported. design and development teams.
may 2016 83
PROJECTS Animation
A B O U T T HE A U T H O R
DONOVA N
HU T CHINS ON
w: www.hop.ie
t: @donovanh
job: Frontend designer
and developer
areas of expertise:
CSS animation, web design
and development, startups
q: what’s the most useless
gadget you own?
a: A solar-powered
Japanese waving cat.
It uses a solar panel to
charge a tiny battery, which
powers an electromagnet
to rock the arm. I love it
ANIMATION
CREATE A SET OF
MICRO-ANIMATIONS
Donovan Hutchinson
n discusses how we can create a bank of
small, simple animations that can be applied in multiple situations
Animations can help our user understand might be a list of links fading in, or a Submit button
our designs. They can also add polish and even changing from ‘Submitting’ to ‘Done’.
make your site feel faster. We can have animations These simple animations may not be the main
that introduce the page content, or animations reason people visit your site, but they can make the
that activate when we interact with the UI or difference between an average and an exceptional
when we scroll. experience. Each one plays a part in communicating
VIDEO Big, splashy animations are great for attracting your brand.
Ever wonder how you attention and making our sites more fun, but it’s
can bring animation
into the workflow of a
the small ones that really boost the quality of our ANIMATION LIBRARIES
larger project and keep work. We can call these ‘micro-animations’: the As we develop our projects and they get bigger
it consistent? Donovan small animations that achieve one single purpose, and more complex, it’s easy for all these micro-
Hutchinson explains
as opposed to larger ones that tell stories through animations to become inconsistent. Different
how in this video
from Defuse Dublin: multiple sequences of movements. timings, easing and styles can add up to problems
netm.ag/defuse-279 These subtle movements draw visitors to what we when conveying a unified brand. We can solve this
want them to see or understand. A micro-animation problem with a little forward-planning.
84 may 2016
Animation
FOCUS ON
TRANSITIONS VS
ANIMATIONS
Transitions and animations are both ways to introduce
movement to your web pages, but each works in a different
way and comes with its own set of considerations. Essentially,
Aha! A simple, reusable fade animation causes this light bulb to light up a transition is a rule that tells the browser how to go from one state
on page load (netm.ag/animatepen-279)
to another (and back again), whereas an animation is a series of key
frames that describe more complex movements.
In this article, I’ll look at how we can create The syntax for the transition property is simpler. You only need
a library of small, generic micro-animations to add one rule to your element’s CSS:
that can be applied to our projects as needed and
reused many times. This common set of source transition: all 0.5s linear;
animations can be used across multiple scenarios,
and adjusted as necessary by overriding and This tells the browser to animate all aspects of the CSS (height,
changing specific properties. width, colour, transforms and so on) over a period of 0.5 seconds,
and to do so in a linear easing style. If added to a link, then the
exceptional experience and are not reliant on user input. If you want to fade in some
content on page load, this is the option to go for.
You can use timing functions to dramatically change the feel of
It’s almost like an object-oriented approach, both animations and transitions. Rather than sticking to the basic
where we create generic animations and associated ease-in or ease-out , try some custom Béziers (I recommend
classes, and modify them as required. This saves using www.cubic-bezier.com to generate them). With the right Bézier
the creator from having to reinvent an animation curve, your animations can bounce and zoom around with all sorts
each time one is needed, and also ensures they of character.
remain consistent across a project.
Once we’ve decided what sort of movements
we want to put across, how do we deliver these
micro-animations? Putting animations in your
style guide (24ways.org/2015/animating-your-brand)
is a great way to start. We can define a range of
animations, and set out rules for how they are
used in our projects.
SIMPLE ANIMATIONS
Creating your own library may seem a large task,
but we can start with basic examples and build them
up. Let’s begin by creating some simple animations,
and looking at ways we can apply them.
Note: In this article I’ve omitted prefixes such
as -webkit- from the examples. I’d recommend Custom curves Sites such as www.cubic-bezier.com can help you create
including these on production code. You can use your own unique Bézier curves
a service such as Prefix-Free or AutoPrefixer
to help streamline this process.
may 2016 85
PROJECTS Animation
.fade-in {
opacity: 1;
transition: all 1s ease-out;
}
<script src="js/wow.min.js"></script>
86 may 2016
Animation
<script>
new WOW().init();
</script>
Built-in easing values move objects. Let’s put these together to create principles you can apply to
make sure your animations
some more interesting effects. always run smoothly (netm.
It’s worth taking time We can use a fade animation to add some polish to
our page load. Rather than suddenly showing all the
to create your own content at once, we can make it transition into place.
In this example (netm.ag/content-279), the content all
properties. As it happens, these are the properties fades and slides into place at the same time.
that perform best. Let’s create the animation and a corresponding
Even when limiting ourselves to these two class to go with it.
properties, there are lots of effects we can create.
Opacity can be used to pulse objects or show and @keyframes fade-up {
0% {
opacity: 0; transform: translateY(3em);
}
100% {
opacity: 1; transform: translateY(none);
}
}
.fade-up {
animation: fade-up 3s cubic-bezier(.05,.98,.17,.97) forwards;
}
may 2016 87
PROJECTS Animation
IN-DEPTH
CSS ANIMATION
FRAMEWORKS
There are great sources of inspiration online if you’re getting
started with your own CSS animation library. Some you can
simply include in your project and start straight away, or you might
want to use them to create something custom for your brand or
project. If you need more inspiration, you can also find lots of CSS Figure 2 Apply different timings to existing animations to introduce
a different effect
and JavaScript animation examples on CodePen.
Motion UI
Consider ways content
zurb.com/playground/motion-ui
This Sass library from ZURB makes it easier to apply custom
might be introduced,
animations to your UI. It’s a little more involved than Animate.css, such as sliding up or
but very powerful. You can create and tweak animations to meet
your needs, then invoke them using JavaScript. appearing from the side
BounceJS We apply the fade-in class to each element,
bouncejs.com then specify an animation-delay value for each.
This is a useful tool if you want to create your own library of
animations. It has lots of fun presets and takes the heavy lifting fade-up { opacity: 0; }
out of writing complex animation code. It uses advanced transform h1.fade-up { animation-delay: 0.1s; }
operations to create the animations, which can then be added to p.fade-up { animation-delay: 0.25s;}
your own animation CSS file and applied as you wish. .image { animation-delay: 0.6s; }
88 may 2016
Animation
@keyframes fade-right {
0% { opacity: 0; transform: translateX(-3em); }
100% { opacity: 1; transform: translateX(0); }
}
li {
opacity: 0; animation: fade-right 12s cubic-
bezier(.05,.98,.17,.97) forwards;
}
li:nth-child(1) { animation-delay: 1s; }
li:nth-child(2) { animation-delay: 1.2s; }
... and so on ... We’re using opacity to fade the button in, while also Figure 4 Using JavaScript
we can add a class to an
applying rotation to shake the button left and right element that will cause it
This means if we want to adjust the timings of the as it appears. to animate when it scrolls
into view
fade-right animation, we only need to change one set We can apply this to the class wiggle using the
of key frames. animation property:
may 2016 89
PROJECTS Sketch
Exclusive o !
£10 OFF
Get £10 off the Discover Sketch
app book at netm.ag/offer-279
with the code NETMAG
Offer expires 29 May 2016
A B O U T T HE A U T H O R
MARC ANDRE W
w: themmed.com
t: @themmed
job: UI designer, author
areas of expertise:
Visual design, frontend
development
q: what’s the most useless
gadget you own?
a: A Beanie hat with built-in
earphones. Yes, really
SKETCH
COLLABORATE BETTER
WITH SKETCH AND ZEPLIN
Marc Andrew
w introduces Zeplin, a handy tool to help design
Sketch has gained quite a bit of traction and specs manually, where hours of production time
a lot of acclaim over the past few years. It has can be potentially lost. Say hello to you and your
become the de facto application for the modern-day developer(s) working together as a tight unit, from
UI designer, and rightly so. Since Sketch started to hand off to sign off.
make a significant imprint on the digital landscape, As any designer can attest, creating and passing
many companion apps have sprung up around it that design specs to a developer can be one of the most
make the whole design and development process time-consuming parts of any project. But with
VIDEO much more streamlined. Zeplin you can rest assured your developer will have
Marc Andrew has One of those is Zeplin, a fantastic collaboration the most accurate specs, every step of the way.
created an exclusive
tool for designers and developers. This application In this tutorial, we’ll create a simple screen design
screencast to go with
this tutorial. Watch helps you transition from a final design in Sketch to for an iOS app inside Sketch, and then I’ll show you
along at netm.ag/ a working, pixel-perfect product with the greatest how to take that design into Zeplin. I’ll talk you
zeplinvid-279
of ease. Say goodbye to the confusion of half-baked through many of the time-saving features that are
specifications and the drudgery of creating your available to you from within that application.
90 may 2016
Sketch
Step 2 Add a rectangle at the top; this is where your page header will sit Step 3 As we’re designing an iOS app, it makes sense to add a status bar
First, create a new Sketch (remember to remove the border). ( T ) and insert something like EXPERT TIP
01 document. From here we’re Place this at the top of the artboard. ‘Choose your membership’. You can
going to create a design for an iOS
app screen that shows a list of As we’re working on a
edit the font size, colour and spacing
in the Inspector panel. Place this
WORK WITH
03
membership options for a fictional
service. Press A to bring up your
screen for an iOS app, it
makes sense to include a status bar.
text layer inside the rectangle you
created previously.
ICONJAR
artboard choices, and choose the Choose File > New From Template Keeping the various icon
iPhone 6 option from the Inspector > iOS UI Design . Then, from the We’re going to create three sets you have on your
panel on the right. Use cmd+R and assortment of UI elements now
05 membership options, so machine in order and
rename it ‘Membership options’. presented to you, select one of let’s go ahead add those to our
Give the artboard a background the ‘Status Bars (White) Symbols’, design. Press R , and draw out a one for a project can be
colour of #FFFFFF. and position it at the top of rectangle 375x195 with a fill colour
the artboard. of #4B5D79. Then alt+click and With Iconjar (geticonjar.
Select the Rectangle tool drag the shape layer to duplicate com) you have access to
02 ( R ) and draw out a rectangle Now add in a title for this it. Repeat this process one more all your icons from one
375x80, with the fill colour #324158
04 screen. Bring up the text tool time. Give the second rectangle application, and can
a fill colour of #719A9A and make search, organise and tag
the third one #E2787D.
an icon you like? Just
Let’s bring some icons into drag it from Iconjar and
06 the mix. I’m using an SVG drop it straight into the
icon set called Entypo (www.entypo. project you’re working
com), but you can choose one of
your own. Select a suitable icon
for each of the membership options
(I chose the Trophy, Emoji Happy
and Price Tag icons). Place one in
each of your three rectangles, and
position them just away from the
left edge.
may 2016 91
PROJECTS Sketch
EXPERT TIP
I use on a regular basis are shift+ctrl+U for setting my type to upper case, and shift+ctrl+l
Step 9 Add descriptions of each option
92 may 2016
Sketch
Step 18 Measure the distance between elements by hovering over any part of the design Step 19 You can even leave notes for your developer on different elements of the design
when all my devs are on Windows Want to leave a note for your receive specific updates – for EXPERT TIP
machines?’ argument to bed.
19 dev? Need their feedback example, when new designs are
may 2016 93
PROJECTS CSS
CSS
A B O U T T HE A U T H O R
JODIE DOUBL EDAY
w: www.holidayextras.co.uk
TYLE
SHEETS WITH CSS LINTING
t: @jodiedoubleday
job: UI architect,
Hungry Geek
areas of expertise:
CSS, beer
q: what’s the most useless
gadget you own? Are your style sheets a bloated mess? Jodie Doubleday
y takes a look
a: I bought a camera to
check up on my new puppy at how CSS linting can help you create tidy, maintainable code
at home. It just means I can
now watch my dog chew
my mail remotely We often start our CSS clean, simple and with not a new concept – notably, it was used in the Unix
good intentions, but as teams grow and we operating system in 1979. We have recently seen a
continue to deploy our code, it’s usually the style heavy push for linting in our JavaScript projects,
sheets that suffer. Developers scroll to the bottom using services like ESlint or JSHint. So why not
of a CSS file, adding in their new bits as they go, apply the same principles to our CSS?
with blatant disregard to the structure or rules that
have gone before. FIRST STEPS
I thought I was the only person who was tired of Linting your CSS doesn’t have to be hard. If you’re
seeing relatively simple websites with 3,000-plus working on a small, uncomplicated project it’s as
lines of badly written, inconsistent code, often simple as manually copying and pasting your CSS
scattered with the dreadful !important declaration. into the CSSLint website (csslint.net). The strapline
However at conferences I’ve spoken to many people of this website will sum up your reaction as you
with the same passionate hatred as me, from small parse your first CSS file: ‘Will hurt your feelings
startups to tech giants. (And help you code better)’.
Our style sheets are becoming monsters we Don’t be put off by the errors or warnings you
need to tame. Daniel Eden recently spoke at the first encounter; the key is to learn why your code
dotCSS conference about the same problems is producing these errors, why they are important,
at Dropbox, and how his job is now focused on and (of course) how to fix them. At the time of
re-architecting the company’s CSS codebase. writing the most recent stable version of Bootstrap
(v3.3.6) produced three errors and 247 warnings.
START LINTING The next step is to customise your linting rules.
So how do we solve this issue? Where do we even CSSLint breaks all its rules down into six distinct
start? One solution is to bin the CSS and start again. sections: errors, compatibility, accessibility,
Hey, why not do a full redesign of the website while maintainability and duplication, performance and
you’re there? Although this seems like a fun project, OOCSS. Each section’s rules can be individually
it doesn’t really solve the issue. It just sweeps it turned off or on, depending on your project.
under the rug for another year, until the same thing For example, one of the rules states that you
happens again. This is where linting can be your must not use box-sizing in your code, as it’s not
springboard to maintainable CSS. supported by IE7 and below. Most companies have
If you have not heard of linting before, it is the ditched support for this browser (I’m so sorry if
static analysis of code to alert you to obvious errors yours hasn’t, I’ll give you a hug if we ever meet),
in your codebase. It gets its name from lint rollers therefore this rule is not needed. Switch it off and
of the real world, rolling over the top of your work, suddenly the warnings on Bootstrap will go down
picking up those unsightly balls of code. Linting is to 225. Not bad at all.
94 may 2016
CSS
analysis of code to alert Travis or CircleCI (both free if your project is open
source) set up, you can get them to do the legwork.
you to obvious errors If someone deploys CSS that fails linting, these
tools will fail the build and alert you or your team
in your codebase to the error. Nothing should go through a pull
request without first getting the big green light
command line. You or your team can now check the from your CI tool.
status of your work as you go, which is much better
than being alerted to all the errors after hours of PREPROCESSORS
development time. If you use a preprocessor like Sass, Less or PostCSS,
To run CSSLint on the command line: then of course there is a linting tool out there for
you to use. Most are based on CSSLint but there are
csslint [options] [path-to-file] a few exceptions with different rules. Before you
rely on these in your projects, you need to ensure
This will report all the errors and warnings you are using them for the right reasons.
according to the default settings. However, you If it’s code quality you are after, and your linting
can customise the rules by passing in a comma- rules mainly fall in the maintainability and
separated list of options to the linter. duplication section, then linting your unprocessed
code is perfect. If you’re looking to ensure the code
--warnings= --errors= --ignore= being served has a high level of performance, then
it would be more beneficial to lint your processed
For example, if you wanted any use of the !important CSS, as that’s what the browser will be consuming
declaration to throw an error, you would write: and where performance matters most.
may 2016 95
Learn the secrets to
solving everyday web
problems with CSS.
©2016 O’Reilly Media, Inc. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. D1700
Head to head
A B O U T T HE A U T H O R HEAD TO HEAD
CHRIS P E A RCE
GETTING TO GRIPS
Writing styles with JavaScript will feel surprisingly You already know CSS! The big adjustment is that no
familiar. No preprocessors required – you have the classes will be shared between files. Reusing styles
full programmatic power of the JavaScript language. comes down to using the explicit composes keyword.
HURDLES
States (e.g. :hover ) and media queries will require CSS Modules maintains the nicer features of CSS
custom solutions if you’re not using a library (such as (states and media queries) but we still have to define
Radium or JSS). All styles need to be explicit as you all our states up-front and rely on source-order.
can no longer rely on cascade or nested selectors Similar to CSS-in-JS, cascade and nested selectors
(e.g. ul > li ). are not reliable between components.
INTEGRATION
Going ‘raw’ and writing your styles inline with your CSS Modules requires a simple build step (the most
components requires no extra tooling, and you can popular being webpack’s css-loader ) after which
start right now. There are libraries that help fill the you can simply import and reference styles in your
gaps of the CSS-JS jump. However, all come with extra JavaScript. First-class support for static templating,
RES OURCES tooling and output, which can result in bloat. such as Jade or HAML, is on the roadmap.
Take a look at the
slides from Christopher SUPPORT
Chedeau’s ‘React:
For support, you need look no further than the rapidly CSS Modules is stable (albeit rather new) and has an
CSS-in-JS’ talk, where
it all began, at netm. growing React Native community, where CSS-in-JS is active, united community behind it. There are great
ag/js-278. For a the primary method for styling apps. docs and articles to get new users going.
comparison of different
CSS-in JS-techniques VERDICT
from Michele Bertoli, go
to netm.ag/bertoli-278. Both solutions require an atomic, component-style architecture to be utilised to their full
Finally, you’ll find an
introduction to CSS
potential, and really shine at larger scales. They are both pretty new, and under constant
Modules from Glen iteration by some of the cleverest engineers around. CSS Modules (being a minimal layer on
Maddern at netm.ag/ existing CSS) is by far the simplest to start with, but the power and portability of CSS-in-JS
maddern-278.
(especially looking at cross-platform JS apps) means it is worth considering for some apps.
may 2016 97
PROJECTS SVG
A B O U T T HE A U T H O R SVG
SHEHZ A D A ZR A M
ICONS ACCESSIBLE
Backend development,
PHP, Python
q: what’s the most useless
gadget you own?
a: Electronic bubble wrap
(it was a gift). No one can
resist the temptation of Shehzad Azram
m explores how SVG icons could help solve
bubble wrap!
accessibility issues, and shows you how to implement one
Things have come a long way from the days the creation of a separate image, which would
when we used plain images as icons. Yet there increase the size of the sprite.
are still a number of accessibility issues when it Next came icon fonts. These are vector-based
comes to icons. Thankfully, SVGs could go a long and therefore resolution-independent, and things
way towards addressing this problem. In this article, like colour and position can be manipulated through
I’ll take you through the different icon options we CSS. They also boast wide-ranging support across all
have used in the past, then explore the benefits major browsers and versions. However, to make icon
(and drawbacks) of SVG icons. Finally, I’ll explain fonts accessible you have to include some extra code
how to implement SVG icons, using automation tools that browsers ignore but screen readers do not.
to reduce the workload. There are further problems with this approach.
If designers use their own CSS with a different font,
ICON HISTORY a different icon will show. If the font rendering fails,
First, let’s go through a brief history of icons so you the icon will not display; instead users get something
can understand how things have moved on. Before like a square box, which doesn’t mean much to
the advent of CSS, people used images to create anyone. Relying on CSS font positioning properties
icons, which gave rise to issues around accessibility like line height and font size can be unintuitive when
and semantics. Each icon would have multiple working with graphical glyphs, particularly when the
images to support different states – for example, icons need to align with images and text.
to show hover states, different colours or sizes. Fundamentally, using fonts to render vector
The number of icons being used increased HTTP images is a hack to get widespread browser support.
requests, and thus also the page load time. If you had However, if for whatever reason SVG icons are not
to redesign the site, you would need to build a whole a possibility, see the boxout opposite for a guide to
new set of images for each icon. using icon fonts properly.
When CSS was introduced, things got better.
People became accustomed to using sprites (many ENTER SVG
RE ADING images glued together in one big image), resulting Finally, along came SVG. These are based on an XML
For a really great break- in one request. As well as faster page loads, this also markup language for describing two-dimensional
down on how to style
improved accessibility. Readers were able to ignore vector graphics, which means you can create
with SVGs, take a look
at this article from the icons if they were for decoration purposes only, graphics using code. Alternatively, if you don’t want
Jakob Jenkov: netm.ag/ as there was no markup on the page. However, to write code, you can create graphics using software
jenkov-279
altering icons remained a cumbersome process – such as Illustrator, save them as SVGs, and the code
changing the colour or resolution still necessitated will be generated for you.
98 may 2016
SVG
IN-DEPTH
Unlike font icons, icon instead, which may look horrible. To avoid this, make sure you
define an alternative glyph using unicode.
SVGs already contain
semantic title and
description attributes
On top of this, SVGs have more CSS properties,
providing designers and developers with greater
control over stroke width and colour (they can now
create multicoloured icons, for example), as well Correct icon How a Favourite icon might look
as enabling them to target different sections of the
icons individually. It is also possible to animate all
or part of an SVG with JavaScript or CSS.
IMPLEMENTING SVGS
Having looked at the background to the issues
surrounding accessibility with icons, the question
arises as to how SVG icons can best be implemented.
Let’s look at an example workflow. Along the way Incorrect icon How a Favourite icon is changed on failed request
I’ll explain the caveats you should be aware of when
using SVGs.
may 2016 99
PROJECTS SVG
AUTOMATION TOOLS
While doing all this manually can be tedious, tools
such as gulp and Grunt can help. Through these
tools and with the help of plugins, we can automate
Enhanced workflow
the process of converting SVGs into sprites, setting gulp-svg2png: Converts SVGs to PNGs gulp is an automation tool
gulp-svg-symbols: Converts SVGs files into that can streamline your
workflow
We can automate the a single SVG file as a symbol
GET STARTED
You should now have a basic idea why SVG icons
are a good idea, how to implement them, and any
particular caveats. Check the reference boxout for
further resources that will help you automate your
workflow and give some more detailed information
on the hows and whys of the SVG.
Remember, it may take some time to get used to
a new workflow, especially if you are working in a
large team that is accustomed to using font icons.
Due to time constraints and having to support old
browsers, it may not even be possible for you to use
SVG icons. However, you could certainly experiment
with them in a personal project before introducing
Automation help Task runner Grunt automates repetitive tasks them to your company and to the team.
www.creativebloq.com
Standards
WEBVR
what A-Frame is doing.
A-Frame is built off an entity-component system,
a pattern common in game development and
universal game engines like Unity. Developers can
Kevin Ngo explains how Mozilla’s write, share and plug in components that extend
A-Frame promotes innovation in VR new features. So if a feature doesn’t yet exist or isn’t
to par, they don’t have to wait on the core A-Frame
The first wave of virtual reality headsets is team. The ecosystem already features third-party
shipping. Many of us have dreamed about components that enable gamepad controls, physics
a Metaverse: virtual worlds we can explore as if and voice recognition. The extensibility of A-Frame
they were real. WebVR is VR within the browser grants developers permissionless innovation. With
and it’s a natural vehicle for driving that Metaverse. this short-term innovation scheme, developers can
Just as today we can jump from page to page on the rapidly experiment with new ideas in order to help
web, with WebVR we’re able to jump from world to advance WebVR.
world. Today we can publish a website; with WebVR Another tenet of the Extensible Web Manifesto
we spawn worlds free from gatekeepers. It is is to make new features easier to understand and
important that WebVR makes early advancements, build out. A-Frame introduces a virtuous cycle:
as we’re already witnessing fragmentation across developers try out new things while the MozVR
different devices in the VR ecosystem. team introduces bleeding-edge WebVR APIs.
With VR being fairly new and WebVR even more With A-Frame as a vehicle, we can ship tools and
of a greenfield, it’s difficult to know what will implementations around the new WebVR API to
emerge as common patterns or best practices. With developers immediately. They, in turn, can iterate
new features on the web there tend to be months and validate them. Hence the virtuous cycle.
or years of proposing and drafting behind closed For WebVR to succeed, we’re going to need new
doors, careful implementation by browser vendors interfaces, new tools and new ideas. Rather than
and gradual adoption by developers, and only then designing these slowly behind closed doors, we built
feedback and iteration. This is not a feasible course A-Frame so we could pull the entire web community
of standardisation for WebVR. into the effort. Together we’ll try lots of things and
For WebVR to evolve quickly, we need open slowly focus on the ones that work. Then we’ll look
experimentation and healthy competition between at standards. And then at the Metaverse.
A B O U T T HE A U T H O R
JAMIE K NIGH T
w: www.jkg3.com
t: @jamieknight
job: Senior accessibility
specialist, BBC
areas of expertise:
Accessibility, performance,
HTML, CSS
q: what’s the most useless
gadget you own?
a: A Three-branded Skype
phone I keep as a ‘spare’.
It’s a terrible phone but
works reasonably well as
a hammer or a doorstop
PERFORMANCE
SITE PERFORMANCE
ADVICE FROM THE BBC
Jamie Knightt reveals the techniques the BBC uses to speed
Last year during a user testing session for fast and our users flowing easily. I will first look at
the BBC News app, one of the users made preserving flow, then take a closer look at caching.
a comment that has really stuck with me. They
declared: “I like to flow”. I don’t think there’s a KEY GOALS
better summary of what performance means to our Preserving flow within a site will help meet the
users. On a fast app or website, the user can flow needs of different users. There are two goals to bear
around, interact and engage with the content. in mind:
Flowing experiences are good for site owners too.
RES OURCE A fast-flowing experience helps users achieve their 1 Minimise pauses: Delays reduce the user’s focus
This is a great goals, and in turn we achieve our organisations’ and introduce a switch in context
discussion of different goals. Amazon and others have demonstrated the 2 Prioritise content: Load the content the user
approaches to caching, strong link between performance and user activity: cares about most first
with pragmatic advice
on when and how to use as the wait for pages goes down, the amount of time
different techniques: and money the user spends goes up. To achieve both goals we must consider website
netm.ag/basics-279 In this tutorial I am going to explore some of performance holistically. Performance is about
the techniques we have used to keep the BBC site more than just how long it takes for a page to load
To preserve our users’ requested. This is very useful when working on websites made up
of many modules. It can also perform other optimisations, such as
managing cookies, various forms of routing and managing multiple
different ‘variations’ automatically, to increase the hit rate.
For more information about how we have used Varnish at the
BBC, check out the presentation at netm.ag/varnish-279.
CACHING Caching layer Varnish is an open source project providing a network cache that
Caches are created when a small amount of can be controlled directly by the site operator
something is stored closer to where it is needed,
normally to prevent rework. For example, if I am
eating Skittles, I tend to pour a few into my hand
and then eat from there. In effect, I am creating
a cache of Skittles in my hand as it’s quicker to eat
them that way than going back to the packet.
This same pattern is used in technology. There
are three caches we have to consider:
RESOURCES
FURTHER READING
There are plenty of articles out there to help you expand
your knowledge on caching techniques. These are some of
the best, to get you started:
CACHING HTML
So that’s the theory, let’s get practical. First, we
need to tell the world that our pages are cacheable.
Then we need to look at how to best use the
cached pages to boost performance without losing
functionality. For this deep dive, I will focus on
network and browser caches.
Let’s start by looking at caching the request for
the HTML. Caching of all file types is controlled
using HTTP headers. The headers are meta data
(data about data) sent from the server to the
browser and visible to all the network hardware
Server-side variation
in-between. To tell the world it has permission to how we treat pages. Cached items are identified
Across the BBC sites,
cache our pages and to share that cache between using the URL. There are ways to ‘revalidate’ cached signed-in users will have
their user name swapped
users, we set the following header: content, but for the simplest case one URL means
into place client-side
one cache entry, so caching HTML pages for too long
Cache-Control: public, max-age=30 can result in users missing content updates.
However, we can take advantage of this behaviour
Here, we have also set a time limit: the maximum when it comes to static assets. At the BBC we send
amount of time the cache should reuse this page all static assets with a maximum age of 31,536,000
for, in seconds. For this example, I have set it to 30 seconds set in the cache header. This ensures the
seconds. Explore the Further Reading boxout on the assets are cached for 365 days. In effect, assets are
left for more resources on setting cache times. only requested once. This is good for performance,
By setting the page to public , the user’s browser but bad for flexibility as changes to that asset will
(and any hardware along the way) will keep a take a long time to get to the user.
copy. So the first page load will make a request, In order to work around this, every time we
but all page loads after that will reuse the original release a new version of a page, we change the URL
response, until the time limit is reached. where the assets are kept. This trick means that
The effect of network hardware along the way new changes are put in front of users immediately,
can be profound. Many large networks (such as ISPs) but we still get the same performance benefits.
will have a cache shared between users. Mobile
operators also use this technique heavily – for CLIENT-SIDE VARIATION
example, to cache and recompress images served As we observed before, putting the right content in
over 3G. Site operators can also place a HTTP cache front of the user is key. An example from the BBC
in front of their service. This is what we have done would be showing signed-in users their user name
at the BBC (see boxout on page 105). on each page. People don’t visit the BBC to view
their user name, so it’s not priority content.
CACHE STATIC ASSETS FOR AGES If implemented server-side, this variation would
A technique we use a lot at the BBC is to treat static be terrible, as every signed-in user would have
assets (like images, CSS and scripts) differently to unique pages missing the cache. Instead, we give
all signed-in users a single page, then swap the
user name into place client-side. This is a good
example of progressive enhancement being used to
aid performance. It’s a subtle technique, but it gives
a huge performance boost.
RES OURCE
FINAL WORDS An in-depth discussion
In this article we have looked into using caching of how video files are
cached differently to
in order to enhance website performance. The web pages within the
enhanced performance will in turn lower operating BBC platform: netm.ag/
costs for our websites and preserve our users’ flow, video-279
Static assets BBC iPlayer stores static assets for a year – alterations to the
URL ensures users see new versions promptly leading to a great user experience.
A B O U T T HE A U T H O R
CR AIG SUL L IVAN
t: @OptimiseOrDie
job: Optimiser of
everything, Optimal
Visit Ltd
areas of expertise:
Analytics, UX, split testing
q: what’s the most useless
gadget you own?
a: A videophone featuring
a (gasp) 1200/75 modem
and keyboard, with CRT
monitor. It’s like something
from a 60s Bond film!
Photo: iStock
TESTING
I started messing around with HTTP log files device experiences. If you get a small number of
and user agent strings over 15 years ago, complaints, you probably have a major disaster on
analysing and attempting to understand all the your hands. If you don’t get any complaints, it’s
different devices rocking up at the early John Lewis likely still broken.
ecommerce websites. What advice would I give We can’t rely on website visitors to be our ‘canary
myself, if I could go back in time? in the coal mine’ for device and browser problems
RESOURCE It would be this: Every website or product – we have to take responsibility, and become
If you want to use
you work on from now on will be broken – you smarter and more proactive in how we test. Device
Google Analytics to just don’t know where, on what device or browser, compatibility is a right not a privilege, and getting
optimise your device or how severely. If you hunt these defects down, it wrong is a form of neglectful discrimination.
experiences, this article
gives a complete step-
you’ll make easier money for your clients than This article outlines the key rules to remember for
by-step guide to mining almost all your other work put together. cross-device optimisation and A/B testing. Tackle
the data profitably: It’s taken me 15 years to realise that despite the optimisation tips first. If you’re making basic
netm.ag/mining-279
the tendency of customers to complain quickly, mistakes with device compatibility, performance
the vast majority won’t report bugs in your and usability, there’s no point bothering with A/B
just don’t know where There are a number of tools that let you test desktop browsers using
real software (not simulators). Take a look at www.crossbrowser
Open device labs Here, people donate their old hardware to make a free
Further reading: ‘Conversion research in one hour’ device lab where people can come and test their projects
(netm.ag/batman-279); ‘Session replay tools for
research’ (netm.ag/replay-279).
IN-DEPTH
Lab in a laptop
With the right software, you can turn your laptop into a mobile
usability lab that captures video, audio and faces. Here are some
options for this:
CamStudio (www.camstudio.org) – Basic but free Swapping devices A Google Analytics User ID view showing
overlapping device usage
Camtasia (www.techsmith.com/camtasia.html) – Good for the price
Snagit (www.techsmith.com/snagit.html) – Brilliant despite
some limitations 3. DO TRACK PEOPLE, NOT DEVICES
Silverback (Mac) (www.silverbackapp.com) – Widely used Unless you’re using an analytics set-up that tracks
Techsmith Morae (netm.ag/morae-279) – Pricey but excellent users, you’ll just end up tracking devices instead.
Companies complain that their ‘mobile’ traffic isn’t
Recording mobiles and tablets converting – and we find that the traffic is actually
Whilst I love usability rigs where you put your device under a converting, just on a completely different device.
camera and lights, it just never feels natural. Plus, it doesn’t work in People may use their phone to browse and add
a pub! So, some clever solutions here to mirror a device to another a product to their basket, but find it’s tricky to get
room, and a screen recorder for Android and iOS devices: through the checkout, so finish the sale on their
laptop. The site thinks of these as two people:
Reflector Airplay Mirroring (www.airsquirrels.com/reflector) a mobile customer and a desktop customer.
UX Recorder: iOS (uxrecorder.com) So your conversion problem is actually an
Screen Recorder: Droid (netm.ag/probe-279) attribution issue. How can you credit the sale to
a device experience if the customer uses more
Skype hugging (netm.ag/hug-279) is a great idea too – web-call your than one device? Google Analytics has a user view
participant and get them to turn their laptop around and hold the you can switch on (for logged-in users) that lets
phone in front of the webcam. Record the session, and you’re doing you track people, not devices, and there are many
mobile remote UX testing. analytics tools to help you make sense of this.
In your data, you need Further reading: ‘Interpret site speed’ (netm.ag/
to split devices by OS metric-279).
netm.ag/WordPressguide
PROJECTS Accessibility
ACCESSIBILITY
The onClick handler is a powerful piece of these over arbitrary clickable elements. Ensure you
JavaScript. You can add it to any HTML element provide multiple ways to perform an action. You can
to make that element clickable. But should you? Alas, add a click event to an element that isn’t natively
there’s a big difference between making something actionable, as long as there’s another way to perform
clickable and making it actionable. that action with a keyboard.
Many frontend developers code first for what Imagine you’re coding a tiled interface, where
an element should look like, then what it should clicking a tile expands its content. Making the entire
do. So, ‘an X in the upper-right corner that closes tile a button would mean screen reader users would
a panel’ might result in code with the onClick hear the full text of the button, but no indication
tacked on after styling: <span class="pos-top-right" of what it does. Instead, adding an ‘Expand’ button
onClick="close()">x</span> . inside the tile and assigning the same click event
This span works as expected with a mouse, but to both tile and button would make the action
keyboard users can neither reach it nor activate it keyboard-friendly while preserving the mouse
with Enter or Space. So how can you ensure every affordance of a larger click region:
clickable element is fully actionable?
<article onClick="expand()">
MAKING ELEMENTS ACTIONABLE <h2>Article 1</h2>
Always tackle functionality first. If we think of the <p>Text…</p>
same element as ‘a button that closes a panel and <button onClick="expand()">Expand</button>
appears as an X in the upper-right corner’ it’s more </article>
obvious how to structure it with semantic, accessible
code: <button class="pos-top-right" onClick="close()" Test your website with just a keyboard to ensure you
aria-label="Close">x</button> . can activate each clickable element. If not, opt for
By default, the only HTML elements in the tab more natively actionable controls, or use onKeyDown
order whose click events work natively via keyboard events and ARIA to roll your own widgets that have
are buttons, inputs and anchors with href s, so favour full keyboard-mouse parity.