Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Why hire a developer when you can hire a barista and teach them to code?

Why hire a developer when you can hire a barista and teach them to code?

Mike is the founder and CEO of the Sails framework (aka Sails.js). He asks: "Why hire a developer when you can hire a barista and teach them to code?"

June 7, 2018
San Francisco, CA
Dogpatch Studios

Mike McNeil

June 07, 2018

More Decks by Mike McNeil

Other Decks in Technology


  1. The Company Mike McNeil @mikermcneil founder & CEO of sails

    co. digital studio (a.k.a. design/dev/product shop) open-source MVC framework for Node.js creator of
  2. Who are these "recruiters"? (One of them said I was

    a rockstar...) Ignore them, we'd miss you here!
  3. The Company Layout & markup Interactivity Rudimentary terminal skills Text

    editor / IDE setup Running a local server Onboarding Wireframing Browser dev tools Floats & how to clear them Flexbox Normal flow, positioning & z-index Namespacing & mixins Using {{dynamic}} data Conditional classes & HTML ., +, &&, ||, and ?: Handling DOM events Media queries & animations Committing, pulling, pushing, & merge conflicts encodeURIComponent() Creating new pages Communication & agile Using other preexisting UI components Creating email templates Custom modal dialogs Pull requests
  4. The Company DevOps & QA HTTP & APIs Forms &

    persistence AJAX forms Loading states Client-side validation Server-side errors Routes & actions Querying the database Basic QA skills Server-side rendering Deploying to staging Using the REPL / db client to access the staging db DNS & registrar Reading 3rd party API docs Using Postman Making HTTP requests in server- side code SSL cert & redirects Setting environment variables Language/framework-specific configuration basics Reading 3rd party API docs Encoding request data & headers, parsing response data & headers Creating reusable helpers Negotiating errors, throwing custom errors, & using status codes
  5. The Company File uploads Security Messaging features Expiring, one-time-use tokens

    Scalability When to paginate Controlling the size of query result sets Stability Timeouts, retries & exponential backoff Most common language-specific gotchas Managing API rate limits Optimization Running things in parallel Secure file uploads Negotiating errors & throwing custom errors Reducing the # of queries and other async operations Using native queries & batch operations S3 bucket configuration Safe stream processing Listening for WebSocket messages in the browser Subscribing & broadcasting on the server PCI compliance re charging a card or enrolling a customer in subscription billing Automated SMS & emails Hashed passwords Untrusted requests Enforcing size quotas