Top Banner
13.02.2015 – wedebs - #brainpirlo LEAN FRONTEND DEVELOPMENT
62

Lean frontend development

Jul 16, 2015

Download

Technology

Matteo Guidotto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lean frontend development

13.02.2015 – wedebs - #brainpirlo

LEANFRONTEND

DEVELOPMENT

Page 2: Lean frontend development

13.02.2015 – wedebs - #brainpirlo

ABOUT USMatteo Guidotto – Twitter: @j8matteoPM, UX & Frontend Developer, Agile Lover  matteoguidotto.com

Marco Solazzi – Twitter: @dwightjackFrontend Web Developer - github.com/dwightjack/ 

Page 3: Lean frontend development

WE WERE WEBMASTER

Page 4: Lean frontend development

OUR WORKFLOW

WASN’T SO SEXY

Page 5: Lean frontend development

WE ARE FRONTEND DEVELOPERS

Page 6: Lean frontend development

WE NEED TO BE LEANWE NEED TO BE STRONGWE NEED TO BE AGILE

Page 7: Lean frontend development

PLAN

Page 8: Lean frontend development

GET OUT OF NEVERENDING

SOFTWARE

Page 9: Lean frontend development

CHOOSE RIGHT WEAPONFOR YOUR WAR

Page 10: Lean frontend development

UNICORN TECHNOLOGYDOESN’T EXIST

Page 11: Lean frontend development

DON’T USE ANGULAR FOR EVERYTHING

Page 12: Lean frontend development
Page 13: Lean frontend development

DEFINEUSER AND BUYER

PERSONAS

Page 14: Lean frontend development

DEFINEUSER AND BUYER

PERSONASDEVICES

Page 15: Lean frontend development

DEVICE CENTEREDDEVELOPMENT

Page 16: Lean frontend development

BUDGETING ACTIVITIES

Page 17: Lean frontend development

BUILDBRICK BY BRICK

Page 18: Lean frontend development

TRY

Page 19: Lean frontend development

FEATURE’S DESIGNTO

REAL STUFF

Page 20: Lean frontend development

MINIMUMVIABLE

PRODUCT

Page 21: Lean frontend development

MINIMUMVIABLE

PRODUCTCODE

Page 22: Lean frontend development

“ MVC: UNPOLISHED, BAREBONE, TESTABLE, FAILABLE PIECE OF

SOFTWARE ”

Page 23: Lean frontend development

YOUR FEATURE DESIGN IS AN ASSUMPTION

Page 24: Lean frontend development

“ANIMATED FONT SIZE ON A VERTICALLY DISTRIBUTED FULL

HEIGHT LIST…”

display: table?

Page 25: Lean frontend development

TRY IT OUT!

Page 26: Lean frontend development

Do or do not... there is no try

Page 27: Lean frontend development

Do or do not... there is no try

He didn’t know

CodePen

Page 28: Lean frontend development

CLUNKY

!

http://codepen.io/dwightjack/pen/ogwQKz

Page 29: Lean frontend development

“LET’S TRY OUT flexbox”

Page 30: Lean frontend development

http://codepen.io/dwightjack/pen/azwPzv

Page 31: Lean frontend development

YOUR PREJUDICES ARE ASSUMPTIONS TOO!

Page 32: Lean frontend development

“JS NATIVE METHODS JUST ROCK”

Page 33: Lean frontend development

http://jsperf.com/native-vs-for-loops

Page 34: Lean frontend development

COOL / SOLID OPTIONS

Page 35: Lean frontend development

ADVANTAGES:

• WON’T CLUTTER YOUR CODEBASE WITH TEST CODE• CLEAN / SANBOXED ENVIRONMENT IN NO TIME• SHARE AND TEST ON MULTIPLE BROWSERS/DEVICES• GREAT FOR PROTOTYPING• WIDE SUPPORT FOR YOUR PREFERRED STACK

Page 36: Lean frontend development

BUILD

Page 37: Lean frontend development

TEST PASSED!

LET’S GET REAL

Page 38: Lean frontend development

“THERE’S NO BIG SOFTWARE

JUST BIG MISTAKES”

Page 39: Lean frontend development

“Everything is acompound thing”

First Modular Development

Master in history

“Everything is a compound thing”

First Modular Development

Master in History

Page 40: Lean frontend development

WHY MODULAR DEVELOPMENT:

SIMPLICITYENCAPSULATION

SEPARATION OF CONCERNS

Page 41: Lean frontend development

PICK YOUR FLAVORS

Page 42: Lean frontend development

FULL STACK FRONTEND

DEVELOPERS?

Page 43: Lean frontend development

CROSSFUNCTIONAL FRONTEND TEAMS

Semantics + Accessibility(HTML + ARIA)

Presentation(CSS)

Interactivity(JavaScript / BaaS APIs)

Page 44: Lean frontend development

BROWSERS ALREADY DO THAT

<input type=”date” required min=”10” max=”100”>

input[type=”date”]::-webkit-datetime-edit-month-field { color: #bada55;}

document.querySelector(‘input[type=”date”]’).checkValidity();

Page 45: Lean frontend development

“WE NEED TO OUTPUT15 PAGE TEMPLATES”

- a random PM

Page 46: Lean frontend development

STYLEGUIDE DRIVEN DEVELOPMENT

Page 47: Lean frontend development

ADVANTAGES:

• shared knowledge base (with teammates and customers)

• every module state and variation is clearly visible• code snippets (how to implement) and visual

output (how it looks)

Page 48: Lean frontend development

LIVING STYLEGUIDES/* ========================================================================== Media Object ====

``` <div class="media"> <img src=//placehold.it/150x150 alt="" class="media__image"> <div class="media__wrap"> <h1 class="media__title">Media Title</h1> <p class="media__body"> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </p> </div> </div> ``` ========================================================================== */

Page 49: Lean frontend development

LIVING STYLEGUIDES/* ========================================================================== Media Object ====

``` <div class="media"> <img src=//placehold.it/150x150 alt="" class="media__image"> <div class="media__wrap"> <h1 class="media__title">Media Title</h1> <p class="media__body"> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </p> </div> </div> ``` ========================================================================== */

Page 50: Lean frontend development

COOL / SOLID OPTIONS

Page 51: Lean frontend development

CHECK

Page 52: Lean frontend development

KITCHEN ISN’T A 3DMAX RENDER

WEBSITE ISN’T A PSD

Page 53: Lean frontend development

CHECK IS LEARNING

DO IT TOGETHERNOT ONE vs ONE

Page 54: Lean frontend development

CODE SHOULD BEBEAUTIFUL TOO

Page 55: Lean frontend development

COOL / SOLID OPTIONS

Page 56: Lean frontend development

CODE SHOULD BEREUSABLEMODULAR

COMMENTED

Page 57: Lean frontend development

CODEREVIEW ASRETROSPECTIVE

Page 58: Lean frontend development

ITERATE

ALL THE TIME

Page 59: Lean frontend development

IT’S NOT A GUIDE

IT’S A FRAMEWORK

Page 60: Lean frontend development

GET OUT OFDELIVERY OBSESSION

Page 61: Lean frontend development

IT’S A DECLARATION OF INDEPENDENCE

Page 62: Lean frontend development

13.02.2015 – wedebs - #brainpirlo

THANKS