Turing Fest 2017 Summary - Day 2

The Road to Microservices and Beyond

by Adrian Mouat @adrianmouat
  • The 2-pizza rule - Development teams should be able to be fed by 2 pizzas. So no teams larger than 6-8 people. Any larger and communication becomes an issue.
  • Trend is local hardware to cloud servers, monolithic architecture to micro services, and serverless

Minor Bug Fixes

by Rob Gill @rob_gill_
  • Nobody reads release notes for app updates
    • because they're hidden behind a View More link
    • as a result companies don't write informative release notes
    • even large companies like Facebook
  • Some companies do a great job - 1Password, Slack
    • they include a TLDR
    • bullet points
  • The Perfect Release Note
    • An introduction
    • TLDR
    • New / Improvements / Fixes
    • A call to action to get feedback
  • Going even further
    • Localized release notes for specific languages
    • Don't ever say 'Minor bug fixes' - tell them specifically what was fixed
  • But nobody reads release notes...
    • True, but some do - its quality over quantity
    • People write in to give feedback
    • Use a ratings block CTA. Direct users who vote 4-5 stars to the app store so they can rate the app. Direct users who vote 1-3 stars to an email to get their feedback

Falling to Pieces: The Componentization of the Web

by Jonathan Snook @snookca
  • Style is important
  • Thinking in pages - many sites use a similar page layout with headers, footers, sidebar and main content
  • OOCSS, SMACSS, BEM help modularize CSS
  • Hurdles to being independent modules
    • Inheritance
    • Cascade
    • Browser Defaults
    • Putting Modules Together
  • Pros to using the above systems
    • Reduce the intersections
    • Simplify selectors
    • Dont need to be able to understand cascade
  • Cons
    • These methods are not libraries, so they require diligence
    • No tooling
  • Atomic CSS / Functional CSS
    • Single style classes
  • Styled Components / CSS Modules
  • Web Components
    • Templates, shadow don, custom elements, HTML imports

Fireside Chat

with Michael Pryor @michaelpryor and John Peebles @johnjpeebles
  • Pryor/Spolsky split their company Fog Creek 50/50, but vesting rules prevented either from leaving and keeping their 50%
  • Stackoverflow and Trello were much later products - they had many failures before that - Fogbugs, Citydesk
  • On becoming a CEO/manager from a developer - you might like it, you might not. The skills are totally different.
  • Worst bugs Pryor ever - pointed the e-commerce endpoint to the payment gateways sandbox account - so it looked like it was working but nobody was being charged. Also, once forgot to add sales tax and the state came looking for it.

A Clear-Eyed Look at Distributed Teams

by Maria Gutierrez @mariagutierrez
  • Works for FreeAgent
  • About 50 out of 130 of their team is distributed
  • A distributed team requires all team members show their commitment to the success of the company
  • Building a successful distributed team:
    • Critical Mass - avoid snowflakes. One or two remote team members when the rest of the team is localized will not usually work
    • Break through glass ceilings - management needs to understand the issues and complexities of working remotely
    • Office-based team members should have the ability to work from home occasionally to develop empathy for remote team members
    • Treat on-site and remote fairly, not equally -
    • Organize meetups for team members to meet in person
    • Communicate intentionally
    • Collaborate daily to build trust - use tools to communicate - trello, slack, github, screenhero, Gsuite, grafana
  • Traits of successful remote works
    • Being visible
    • Being honest and open
    • Being responsive
    • Delivering - do what you say you're going to do and be accountable
    • Being consistent - by showing your work
  • Showing your work
    • Create PRs and ask for feedback
    • Collaborate across the company
  • For remote managers
    • Wath the work, not the worker
    • Do your homework - budget, law, expectations
    • Understanding rules for hiring workers in different countries

- Moving From “Can We?” to “Should We?”: Emerging Challenges in Consumer Software

by Byran Dove @bdove99
  • Trust is earned in inches, lost in miles
  • Protect user data as though its your personal data
  • Transparency and opt-in, instead of opt-out

The Second Decade of PaaS: What’s Next for Cloud Development

by Adam Gross @adam_g
  • Adam Gross is CEO of Heroku, which is now 10 years old
  • App Dev is still accelerating
  • New pillars of PaaS
    • Development Experience
    • Customer Experience
    • Trust and Enterprise
  • New Data Services and Events
    • Relational / NoSQL DBs - PostgresSQL, Redis, MongoDB
    • Large Data Stores - Hadoop, Cassandra
    • Event Management - Kafka
    • Data Processing - Spark, Apache Storm
  • The nature of our applications will change as these services become commoditized