$30 off During Our Annual Pro Sale. View Details »

[마소콘2018] 2080 라이프 - 이승민

[마소콘2018] 2080 라이프 - 이승민

2018년 12월 15일 마이크로소프트웨어 콘퍼런스, 마소콘 2018
2080 라이프 - 이승민

MICROSOFTWARE

December 17, 2018
Tweet

More Decks by MICROSOFTWARE

Other Decks in Programming

Transcript

  1. 2080 LIFE
    the search for efficiency
    SEUNGMINLEE #skelterlabs #masocon2018

    View Slide

  2. SKELTER LABS
    #codereview
    #codereview
    #codereview

    View Slide

  3. GERRIT git commit -m “Let there be code”
    git review

    View Slide

  4. CODE REVIEW
    #time
    #time
    #time

    View Slide

  5. WINDOWS
    AS A SERVICE
    Windows 10 is the last version of Windows with
    regular updates several times a year. However, many
    keep these unreliable updates at bay.

    View Slide

  6. THE PROBLEM
    #development_process
    #development_process
    #development_process

    View Slide

  7. WINDOWS
    OLD PROCESS
    Three iterations: prototype, real, real.

    View Slide

  8. 4-6 months
    DESIGN

    & PLANNING

    View Slide

  9. 1-2 months
    Not agile
    FEATURE

    DEVELOPMENT

    View Slide

  10. INTEGRATION 4 months
    Merge untested branches

    View Slide

  11. STABILIZATION 4 months
    Testing, bug reporting & fixing

    View Slide

  12. WINDOWS
    NEW PROCESS
    Takes 7-8 months instead of 2-3 years to improve
    response to customer and market needs.

    View Slide

  13. TECHINCAL DEBT
    Merge the bugs now. We’ll fix them later.

    View Slide

  14. THE FIX
    #high_expectations
    #high_expectations
    #high_expectations

    View Slide

  15. CODE REVIEW
    #time
    #time
    #time

    View Slide

  16. REALITY CHECK
    #time
    #cost
    #scope

    View Slide

  17. 80/20 RULE
    Around 80 percent of the effects come from 20 percent
    of the causes.

    View Slide

  18. 5 minutes per build max
    Distributed build system
    REDUCE

    BUILD TIME

    View Slide

  19. USE BRANCHES Predictable merges
    Git Flow

    View Slide

  20. STYLE JavaScript: ESLint Standard
    Vue.js: Strongly Recommended

    View Slide

  21. REVIEW Gerrit
    100 lines of logic per commit max

    View Slide

  22. REFACTOR // TODO(name): Refactor
    VSCode extension: CodeMetrics

    View Slide

  23. TEST Unit testing: Mocha
    E2E testing: Cypress

    View Slide

  24. Continuous integration: TeamCity
    AUTOMATE

    BUILD & TEST

    View Slide

  25. COMMUNICATE Form a committee
    Document expectations

    View Slide

  26. THANK YOU
    Microsoft’s problem isn’t how often it updates Windows—it’s how it develops it
    [email protected]
    [email protected]

    View Slide