SlideShare uma empresa Scribd logo
1 de 73
Baixar para ler offline
NLHTML5
Mobile and TV development @ Netvlies
Agile mobile first
Responsibly responsive in an agile environment
Jelmer de Maat
Front-end developer @ Netvlies
jelmer@netvlies.nl
@jelmerdemaat
Netvlies — Est. 1997
44 communicative professionals with 18 years of experience in complex online projects
What is our goal?
Being responsibly responsive in an agile environment
Topics
Leveling the playing field
What do “responsive” and “mobile first” really mean? Theories and concepts.
An agile workflow
The consequences for your team: observations and advices.
An agile front-end
How to build for a changing environment: tips and techniques.
Conclusions and Q&A
Leveling the playing field
But what’s next? An iPad website? An N90
website? Can we really continue to commit to
supporting each new user agent with its own
bespoke experience? At some point, this starts to
feel like a zero sum game. But how can we —
and our designs — adapt?
Ethan Marcotte — Responsive Web Design
“
Creating a website in a device-
agnostic way, thus making its
content accessible and its interface
usable to a diverse range of users.
— Me
Responsive
Fluid
Large phone
...
Adaptive
Liquid
Small tablet
...
All web pages are by
default responsive
motherfuckingwebsite.com
Breaking that is your choice.
Luke Wroblewski in
a tweet about an
OpenSignal study
on app downloads.
We need to expand beyond the viewport and consider
how we support myriad device capabilities, how we
retain accessibility in complex interfaces, and how
we deliver assets over the wire.
Scott Jehl — Responsible Responsive Web Design
“
Think of it like you're moving. If you're living in a
mansion and you have to move into a small
apartment, it's really hard to find a place for all of
your stuff. If you live in a small apartment first, you
learn how to get by with less stuff, and you can then
add more stuff when you move into a mansion.
Clarissa Peterson, UX strategist
“
Your desktop website
Your user’s
mobile browser
Content first
Performance first
Future proof
Progressive enhanced
Mobile first
“Constructing a website mobile first costs more time”
...not understanding what responsive/mobile first means?
...not willing to think about abstract systems?
...not enough proficient with the tools that are required to build it?
..scared of trying new things that may affect available hours?
An agile workflow
✔ Changing, fast and often
✔ New insights
✔ Collaborative
✔ Iterative
✔ Shifts in priorities
consequences for
Client communication
Things Clients Ask Who Don’t
Understand Responsive
?
?
?
?
©
Things clients ask who don’t understand responsive
Can you put my products inside
the screen at all times? Users
have to scroll now.
“
Things clients ask who don’t understand responsive
This text we have
should always run
over two lines.
“
Things clients ask who don’t understand responsive
Why don’t these two
columns have the
same height?
“
Things clients ask who don’t understand responsive
This image should
align with the height
of the text next to it.
“
Things clients ask who don’t understand responsive
It all has to fit on my
screen; make
everything smaller.
“
Things clients ask who don’t understand responsive
At which resolution
should we deliver the
designs?
“
consequences for
Design and concept
We already have component X!
Let’s use it again on this new page.
Be prepared for this request
“
Component based
✔ Your client is already convinced
✔ Discuss what deliverables are
✔ Define the constraints with the team
✔ Delivering a design system (styleguide)
✔ Sell it!
/*---
title: Buttons
section: Base CSS
---
Button styles can be applied to any element. Typically you'll want to use
either a `<button>` or an `<a>` element:
```example:html
<button class="btn">Click</button>
<a class="btn" href="/some-page">Some Page</a>
```
*/
.btn {
background-color: black;
color: white;
}
Hello Workspace
Defining the constraints
So...
✔ your entire team knows what responsive means
✔ your entire team knows what mobile first means
✔ your entire team knows what the design implications are
✔ you communicated what the design implications are
✔ your workflow is agile
✔ you have set up a design system
Now, how to build the thing?
An agile front-end
We need a system that is
Brad Frost - Maintaining Design Systems
✔ official
✔ maintainable
✔ cross-disciplinary
✔ approachable
✔ visible
✔ agnostic
✔ contextual
(and more)
We need this
Even when the final deliverable is a
pattern library, clients often still expect to
sign off on page designs.
Charlotte Jackson — From Pages to Patterns: An Exercise for Everyone, ALA
“
There are two hard things in
computer science: cache
invalidation and naming things.
Phil Karlton
“
There are two hard things in
computer science: cache
invalidation, naming things and off-
by-one errors.
— Internet joke
“
Charlotte Jackson — A List Apart
Part one: paper and scissors
Part two: naming components
Part three: code
From Pages to Patterns: An Exercise for Everyone
Part one: paper and scissors
Part one: paper and scissors
Part two: naming components
Part two: naming components
Part three: code
1. Everyone grab a component.
2. Code it up in HTML and CSS. Set a time limit.
3. Compare and discuss your code.
4. Repeat.
Dare to challenge coding conventions
&
test your assumptions
{ ? }
html {
font-size: 1em;
}
/**
* Headings are always ‘just a bit bigger’ than body copy.
*/
h1, h2, h3, h4, h5, h6 {
font-size: 1.25rem;
}
Absolute units are usually the wrong
answer.
Elika J. Etemad (fantasai) — CSS Best Practices
“
And other tips
✔ Go for modular CSS as much as possible
✔ Avoid using ID's
✔ Avoid nesting selectors
✔ Keep the specificity graph in mind
✔ Make use of progressive enhancement
✔ Embrace new technologies where
possible
Harry Roberts — The Specificity Graph
We have a codebase that is likely to prove
problematic because we have erratic and
poorly managed specificity-and-source-order:
we are more likely to spend time undoing or
negating the effects of high specificity CSS that
was defined too early in the project.
Elika J. Etemad (fantasai) — CSS Best Practices
“
Harry Roberts — The Specificity Graph
Functional CSS
Component-driven design vs. component-driven CSS
Cole Peters — Building and shipping functional CSS
<div class='u-relative u-mt1 u-p2 v-bg-white v-bs2'>
<!-- The contents of the card -->
</div>
Functional CSS
Component-driven design vs. component-driven CSS
Cole Peters — Building and shipping functional CSS
<div class='u-relative u-mt1 u-md-mb0 u-p2 v-bg-white v-bs2'>
<!-- The contents of the card -->
</div>
Conclusions
responsive mobile first agile workflow agile code
Conclusions
What’s the necessary basis for doing this right?
✔ Determine if everybody on your team understands "responsive"
✔ Determine if everybody on your team understands "mobile-first"
✔ Research, setup and evaluate your agile, componentized workflow
✔ Dare to challenge coding conventions and test your assumptions
Thanks!
Questions?
? Jelmer de Maat
Front-end developer @ Netvlies
netvlies.nl
jelmer@netvlies.nl
@jelmerdemaat

Mais conteúdo relacionado

Mais procurados

BDD - Collaboration & Hands-on practices
BDD - Collaboration & Hands-on practicesBDD - Collaboration & Hands-on practices
BDD - Collaboration & Hands-on practicesMagenTys
 
How to write Great Requirements
How to write Great RequirementsHow to write Great Requirements
How to write Great RequirementsGreg Thomas
 
Boston Ruby Meetup: The promise and peril of Agile and Lean practices
Boston Ruby Meetup: The promise and peril of Agile and Lean practicesBoston Ruby Meetup: The promise and peril of Agile and Lean practices
Boston Ruby Meetup: The promise and peril of Agile and Lean practicesmtoppa
 
Build a Product Narrative
Build a Product NarrativeBuild a Product Narrative
Build a Product NarrativeSV.CO
 
6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your Website6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your WebsiteFloown
 
Lean responsive - Expanded
Lean responsive - ExpandedLean responsive - Expanded
Lean responsive - ExpandedJosh Jeffryes
 
The Web and Beyond - Chrissy Welsh
The Web and Beyond - Chrissy WelshThe Web and Beyond - Chrissy Welsh
The Web and Beyond - Chrissy WelshChrissy Welsh
 
Devops journey conference may 2016
Devops journey conference may 2016Devops journey conference may 2016
Devops journey conference may 2016Clive Hannon
 
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...DevDay.org
 
An Introduction to XP and Agile
An Introduction to XP and AgileAn Introduction to XP and Agile
An Introduction to XP and AgileJason Yip
 
Architecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to SuccessArchitecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to SuccessRandy Williams
 
Sww 2006 Redesigning Processes For Solid Works
Sww 2006   Redesigning Processes For Solid WorksSww 2006   Redesigning Processes For Solid Works
Sww 2006 Redesigning Processes For Solid WorksRazorleaf Corporation
 
The craft of making software
The craft of making softwareThe craft of making software
The craft of making softwarePragmatists
 
Form Function Class 6, Manila, Philippines 14/11/2015
Form Function Class 6, Manila, Philippines 14/11/2015Form Function Class 6, Manila, Philippines 14/11/2015
Form Function Class 6, Manila, Philippines 14/11/2015Holger Bartel
 
Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Jonathan Bardin
 
Trial engineering moving parts
Trial engineering moving partsTrial engineering moving parts
Trial engineering moving partsSV.CO
 
Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)Ben Hall
 
The StartUp Agency - A Case Study on CFPB
The StartUp Agency - A Case Study on CFPBThe StartUp Agency - A Case Study on CFPB
The StartUp Agency - A Case Study on CFPBGovLoop
 
Enough about Process, Let’s Use Patterns
Enough about Process, Let’s Use PatternsEnough about Process, Let’s Use Patterns
Enough about Process, Let’s Use PatternsTechWell
 

Mais procurados (20)

BDD - Collaboration & Hands-on practices
BDD - Collaboration & Hands-on practicesBDD - Collaboration & Hands-on practices
BDD - Collaboration & Hands-on practices
 
How to write Great Requirements
How to write Great RequirementsHow to write Great Requirements
How to write Great Requirements
 
Boston Ruby Meetup: The promise and peril of Agile and Lean practices
Boston Ruby Meetup: The promise and peril of Agile and Lean practicesBoston Ruby Meetup: The promise and peril of Agile and Lean practices
Boston Ruby Meetup: The promise and peril of Agile and Lean practices
 
Build a Product Narrative
Build a Product NarrativeBuild a Product Narrative
Build a Product Narrative
 
6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your Website6 Things to Think About Before Building Your Website
6 Things to Think About Before Building Your Website
 
Lean responsive - Expanded
Lean responsive - ExpandedLean responsive - Expanded
Lean responsive - Expanded
 
The Web and Beyond - Chrissy Welsh
The Web and Beyond - Chrissy WelshThe Web and Beyond - Chrissy Welsh
The Web and Beyond - Chrissy Welsh
 
Devops journey conference may 2016
Devops journey conference may 2016Devops journey conference may 2016
Devops journey conference may 2016
 
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
 
An Introduction to XP and Agile
An Introduction to XP and AgileAn Introduction to XP and Agile
An Introduction to XP and Agile
 
Architecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to SuccessArchitecting Solutions and Systems – Randy’s Secrets to Success
Architecting Solutions and Systems – Randy’s Secrets to Success
 
Sww 2006 Redesigning Processes For Solid Works
Sww 2006   Redesigning Processes For Solid WorksSww 2006   Redesigning Processes For Solid Works
Sww 2006 Redesigning Processes For Solid Works
 
The craft of making software
The craft of making softwareThe craft of making software
The craft of making software
 
Form Function Class 6, Manila, Philippines 14/11/2015
Form Function Class 6, Manila, Philippines 14/11/2015Form Function Class 6, Manila, Philippines 14/11/2015
Form Function Class 6, Manila, Philippines 14/11/2015
 
Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development Technical Challenges In Offshore Software Development
Technical Challenges In Offshore Software Development
 
Super Projects
Super ProjectsSuper Projects
Super Projects
 
Trial engineering moving parts
Trial engineering moving partsTrial engineering moving parts
Trial engineering moving parts
 
Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)Building Startups and Minimum Viable Products (NDC2013)
Building Startups and Minimum Viable Products (NDC2013)
 
The StartUp Agency - A Case Study on CFPB
The StartUp Agency - A Case Study on CFPBThe StartUp Agency - A Case Study on CFPB
The StartUp Agency - A Case Study on CFPB
 
Enough about Process, Let’s Use Patterns
Enough about Process, Let’s Use PatternsEnough about Process, Let’s Use Patterns
Enough about Process, Let’s Use Patterns
 

Destaque

90_e_travel_briefs (2)
90_e_travel_briefs (2)90_e_travel_briefs (2)
90_e_travel_briefs (2)Debbie Pappyn
 
9-11 settembre 2016 | Quale umano per il terzo millennio?
9-11 settembre 2016 | Quale umano per il terzo millennio?9-11 settembre 2016 | Quale umano per il terzo millennio?
9-11 settembre 2016 | Quale umano per il terzo millennio?AskesisSrl
 
A smart front end real-time detection and tracking
A smart front end real-time detection and trackingA smart front end real-time detection and tracking
A smart front end real-time detection and trackingLihguong Jang
 
Teaching Portfolio Catalina Lawsin
Teaching Portfolio Catalina Lawsin Teaching Portfolio Catalina Lawsin
Teaching Portfolio Catalina Lawsin Catalina Lawsin
 
9/16/09 Tokurou Te Lang Yanagi PowerPoint
9/16/09 Tokurou Te Lang Yanagi PowerPoint9/16/09 Tokurou Te Lang Yanagi PowerPoint
9/16/09 Tokurou Te Lang Yanagi PowerPointjoji511
 
ITRI's SON deployment case
ITRI's SON deployment caseITRI's SON deployment case
ITRI's SON deployment caseStanley Tseng
 
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...University of Malaya (UM)
 
Advice for Corporate Accelerator Mentors
Advice for Corporate Accelerator MentorsAdvice for Corporate Accelerator Mentors
Advice for Corporate Accelerator MentorsEric Tachibana
 
Endangered ,Rare & Extinct Species
Endangered ,Rare & Extinct SpeciesEndangered ,Rare & Extinct Species
Endangered ,Rare & Extinct SpeciesUtkarsh Das
 

Destaque (15)

Kunstmaan dev
Kunstmaan devKunstmaan dev
Kunstmaan dev
 
Guillermo cabrera
Guillermo cabreraGuillermo cabrera
Guillermo cabrera
 
90_e_travel_briefs (2)
90_e_travel_briefs (2)90_e_travel_briefs (2)
90_e_travel_briefs (2)
 
94 97
94 9794 97
94 97
 
Diabetes
DiabetesDiabetes
Diabetes
 
9-11 settembre 2016 | Quale umano per il terzo millennio?
9-11 settembre 2016 | Quale umano per il terzo millennio?9-11 settembre 2016 | Quale umano per il terzo millennio?
9-11 settembre 2016 | Quale umano per il terzo millennio?
 
A smart front end real-time detection and tracking
A smart front end real-time detection and trackingA smart front end real-time detection and tracking
A smart front end real-time detection and tracking
 
Teaching Portfolio Catalina Lawsin
Teaching Portfolio Catalina Lawsin Teaching Portfolio Catalina Lawsin
Teaching Portfolio Catalina Lawsin
 
9/16/09 Tokurou Te Lang Yanagi PowerPoint
9/16/09 Tokurou Te Lang Yanagi PowerPoint9/16/09 Tokurou Te Lang Yanagi PowerPoint
9/16/09 Tokurou Te Lang Yanagi PowerPoint
 
Banco de electivos
Banco de electivosBanco de electivos
Banco de electivos
 
ITRI's SON deployment case
ITRI's SON deployment caseITRI's SON deployment case
ITRI's SON deployment case
 
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...
Multiplex and De-multiplex of Generated Multi Optical Soliton By MRRs Using F...
 
Advice for Corporate Accelerator Mentors
Advice for Corporate Accelerator MentorsAdvice for Corporate Accelerator Mentors
Advice for Corporate Accelerator Mentors
 
Endangered ,Rare & Extinct Species
Endangered ,Rare & Extinct SpeciesEndangered ,Rare & Extinct Species
Endangered ,Rare & Extinct Species
 
E010242430
E010242430E010242430
E010242430
 

Semelhante a Agile mobile first

Is everything we used to do wrong?
Is everything we used to do wrong?Is everything we used to do wrong?
Is everything we used to do wrong?Russ Weakley
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile designIgor Moochnick
 
Design Systems Operations
Design Systems OperationsDesign Systems Operations
Design Systems Operationsuxpin
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
 
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...Jeremy Johnson
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product DevelopmentGary Pedretti
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandEmma Jane Hogbin Westby
 
Stc 2015 preparing legacy projects for responsive design - technical issues
Stc 2015   preparing legacy projects for responsive design - technical issuesStc 2015   preparing legacy projects for responsive design - technical issues
Stc 2015 preparing legacy projects for responsive design - technical issuesNeil Perlin
 
Rapid Product Design in the Wild, Agile 2013
Rapid Product Design in the Wild, Agile 2013Rapid Product Design in the Wild, Agile 2013
Rapid Product Design in the Wild, Agile 2013Michele Ide-Smith
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsChristian Heilmann
 
Single sourcing to the max
Single sourcing to the maxSingle sourcing to the max
Single sourcing to the maxNeil Perlin
 
Front-end Developer- Amsterdam
Front-end Developer- AmsterdamFront-end Developer- Amsterdam
Front-end Developer- AmsterdamMario John
 
Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018Kyvio
 
Mobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web DesignMobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web DesignCantina
 
Finding balance of DDD while your application grows
Finding balance of DDD while your application growsFinding balance of DDD while your application grows
Finding balance of DDD while your application growsCarolina Karklis
 

Semelhante a Agile mobile first (20)

What’s Up, EDoc?!
What’s Up,EDoc?!What’s Up,EDoc?!
What’s Up, EDoc?!
 
Is everything we used to do wrong?
Is everything we used to do wrong?Is everything we used to do wrong?
Is everything we used to do wrong?
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile design
 
Winfred Peereboom - Architecture for the future
Winfred Peereboom - Architecture for the futureWinfred Peereboom - Architecture for the future
Winfred Peereboom - Architecture for the future
 
Design Systems Operations
Design Systems OperationsDesign Systems Operations
Design Systems Operations
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
Holistic Product Development
Holistic Product DevelopmentHolistic Product Development
Holistic Product Development
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days Ireland
 
Why agile?
Why agile?Why agile?
Why agile?
 
Stc 2015 preparing legacy projects for responsive design - technical issues
Stc 2015   preparing legacy projects for responsive design - technical issuesStc 2015   preparing legacy projects for responsive design - technical issues
Stc 2015 preparing legacy projects for responsive design - technical issues
 
Rapid Product Design in the Wild, Agile 2013
Rapid Product Design in the Wild, Agile 2013Rapid Product Design in the Wild, Agile 2013
Rapid Product Design in the Wild, Agile 2013
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teams
 
Single sourcing to the max
Single sourcing to the maxSingle sourcing to the max
Single sourcing to the max
 
Front-end Developer- Amsterdam
Front-end Developer- AmsterdamFront-end Developer- Amsterdam
Front-end Developer- Amsterdam
 
Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018Digital Success Stack for DCBKK 2018
Digital Success Stack for DCBKK 2018
 
Mobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web DesignMobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web Design
 
Finding balance of DDD while your application grows
Finding balance of DDD while your application growsFinding balance of DDD while your application grows
Finding balance of DDD while your application grows
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Último (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Agile mobile first

  • 1. NLHTML5 Mobile and TV development @ Netvlies
  • 2. Agile mobile first Responsibly responsive in an agile environment
  • 3. Jelmer de Maat Front-end developer @ Netvlies jelmer@netvlies.nl @jelmerdemaat
  • 5. 44 communicative professionals with 18 years of experience in complex online projects
  • 6. What is our goal? Being responsibly responsive in an agile environment
  • 7. Topics Leveling the playing field What do “responsive” and “mobile first” really mean? Theories and concepts. An agile workflow The consequences for your team: observations and advices. An agile front-end How to build for a changing environment: tips and techniques. Conclusions and Q&A
  • 9.
  • 10. But what’s next? An iPad website? An N90 website? Can we really continue to commit to supporting each new user agent with its own bespoke experience? At some point, this starts to feel like a zero sum game. But how can we — and our designs — adapt? Ethan Marcotte — Responsive Web Design “
  • 11.
  • 12.
  • 13. Creating a website in a device- agnostic way, thus making its content accessible and its interface usable to a diverse range of users. — Me
  • 15. All web pages are by default responsive motherfuckingwebsite.com Breaking that is your choice.
  • 16.
  • 17. Luke Wroblewski in a tweet about an OpenSignal study on app downloads.
  • 18. We need to expand beyond the viewport and consider how we support myriad device capabilities, how we retain accessibility in complex interfaces, and how we deliver assets over the wire. Scott Jehl — Responsible Responsive Web Design “
  • 19. Think of it like you're moving. If you're living in a mansion and you have to move into a small apartment, it's really hard to find a place for all of your stuff. If you live in a small apartment first, you learn how to get by with less stuff, and you can then add more stuff when you move into a mansion. Clarissa Peterson, UX strategist “
  • 20.
  • 21. Your desktop website Your user’s mobile browser
  • 22.
  • 23. Content first Performance first Future proof Progressive enhanced Mobile first
  • 24. “Constructing a website mobile first costs more time” ...not understanding what responsive/mobile first means? ...not willing to think about abstract systems? ...not enough proficient with the tools that are required to build it? ..scared of trying new things that may affect available hours?
  • 26. ✔ Changing, fast and often ✔ New insights ✔ Collaborative ✔ Iterative ✔ Shifts in priorities
  • 28. Things Clients Ask Who Don’t Understand Responsive ? ? ? ? ©
  • 29. Things clients ask who don’t understand responsive Can you put my products inside the screen at all times? Users have to scroll now. “
  • 30. Things clients ask who don’t understand responsive This text we have should always run over two lines. “
  • 31. Things clients ask who don’t understand responsive Why don’t these two columns have the same height? “
  • 32. Things clients ask who don’t understand responsive This image should align with the height of the text next to it. “
  • 33. Things clients ask who don’t understand responsive It all has to fit on my screen; make everything smaller. “
  • 34. Things clients ask who don’t understand responsive At which resolution should we deliver the designs? “
  • 36. We already have component X! Let’s use it again on this new page. Be prepared for this request “
  • 37. Component based ✔ Your client is already convinced ✔ Discuss what deliverables are ✔ Define the constraints with the team ✔ Delivering a design system (styleguide) ✔ Sell it!
  • 38.
  • 39. /*--- title: Buttons section: Base CSS --- Button styles can be applied to any element. Typically you'll want to use either a `<button>` or an `<a>` element: ```example:html <button class="btn">Click</button> <a class="btn" href="/some-page">Some Page</a> ``` */ .btn { background-color: black; color: white; }
  • 40.
  • 41.
  • 43. So... ✔ your entire team knows what responsive means ✔ your entire team knows what mobile first means ✔ your entire team knows what the design implications are ✔ you communicated what the design implications are ✔ your workflow is agile ✔ you have set up a design system Now, how to build the thing?
  • 45. We need a system that is Brad Frost - Maintaining Design Systems ✔ official ✔ maintainable ✔ cross-disciplinary ✔ approachable ✔ visible ✔ agnostic ✔ contextual (and more)
  • 47.
  • 48. Even when the final deliverable is a pattern library, clients often still expect to sign off on page designs. Charlotte Jackson — From Pages to Patterns: An Exercise for Everyone, ALA “
  • 49.
  • 50.
  • 51.
  • 52. There are two hard things in computer science: cache invalidation and naming things. Phil Karlton “
  • 53. There are two hard things in computer science: cache invalidation, naming things and off- by-one errors. — Internet joke “
  • 54. Charlotte Jackson — A List Apart Part one: paper and scissors Part two: naming components Part three: code From Pages to Patterns: An Exercise for Everyone
  • 55.
  • 56. Part one: paper and scissors
  • 57. Part one: paper and scissors
  • 58. Part two: naming components
  • 59. Part two: naming components
  • 60. Part three: code 1. Everyone grab a component. 2. Code it up in HTML and CSS. Set a time limit. 3. Compare and discuss your code. 4. Repeat.
  • 61. Dare to challenge coding conventions & test your assumptions { ? }
  • 62. html { font-size: 1em; } /** * Headings are always ‘just a bit bigger’ than body copy. */ h1, h2, h3, h4, h5, h6 { font-size: 1.25rem; }
  • 63. Absolute units are usually the wrong answer. Elika J. Etemad (fantasai) — CSS Best Practices “
  • 64.
  • 65. And other tips ✔ Go for modular CSS as much as possible ✔ Avoid using ID's ✔ Avoid nesting selectors ✔ Keep the specificity graph in mind ✔ Make use of progressive enhancement ✔ Embrace new technologies where possible
  • 66. Harry Roberts — The Specificity Graph
  • 67. We have a codebase that is likely to prove problematic because we have erratic and poorly managed specificity-and-source-order: we are more likely to spend time undoing or negating the effects of high specificity CSS that was defined too early in the project. Elika J. Etemad (fantasai) — CSS Best Practices “
  • 68. Harry Roberts — The Specificity Graph
  • 69. Functional CSS Component-driven design vs. component-driven CSS Cole Peters — Building and shipping functional CSS <div class='u-relative u-mt1 u-p2 v-bg-white v-bs2'> <!-- The contents of the card --> </div>
  • 70. Functional CSS Component-driven design vs. component-driven CSS Cole Peters — Building and shipping functional CSS <div class='u-relative u-mt1 u-md-mb0 u-p2 v-bg-white v-bs2'> <!-- The contents of the card --> </div>
  • 71. Conclusions responsive mobile first agile workflow agile code
  • 72. Conclusions What’s the necessary basis for doing this right? ✔ Determine if everybody on your team understands "responsive" ✔ Determine if everybody on your team understands "mobile-first" ✔ Research, setup and evaluate your agile, componentized workflow ✔ Dare to challenge coding conventions and test your assumptions
  • 73. Thanks! Questions? ? Jelmer de Maat Front-end developer @ Netvlies netvlies.nl jelmer@netvlies.nl @jelmerdemaat