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

Zen Mode: Developing While You're Offline

Zen Mode: Developing While You're Offline

Video: https://www.youtube.com/watch?v=q93YcVryNYU

Those of us who work in the web industry find that we’re online a huge amount of the time. Going offline can make us feel disconnected. But what about going offline while we’re working? Right at the time when we think we’re most likely to need an internet connection: to get our job done.

Working offline can be highly productive, and is often calming and focused. Whether we choose to go offline, or whether our surroundings make it necessary — such as while we’re traveling — having the right tools, environment, and frame of mind allows you to make working offline a joy.

In this talk, I cover the tools and approaches that I use to develop while I'm in zen mode and not connected to the internet.

Presented at:

* LoopConf, February 2018
* WordCamp Miami, March 2018

#wordpress #loopconf #wcmia

John Blackbourn

February 23, 2018
Tweet

More Decks by John Blackbourn

Other Decks in Technology

Transcript

  1. Zen Mode:
    Developing While You're Offline
    John Blackbourn
    @johnbillion

    View Slide

  2. Let's go offline

    View Slide

  3. View Slide

  4. Welcome to Zen Mode

    View Slide

  5. How are you feeling?

    View Slide

  6. Why go offline?

    View Slide

  7. "I'm going offline for a while
    to concentrate"

    View Slide

  8. Let's get to work

    View Slide

  9. 1. Preparation
    2. Tools
    3. Mindset
    4. Reconnection
    5. Backup Plan

    View Slide

  10. 1. Preparation

    View Slide


  11. First, download the Internet

    View Slide

  12. What will you work on?

    View Slide

  13. Local environment
    •git clone --recursive
    •npm install
    •composer install
    •vagrant up

    View Slide

  14. Local environment
    •Clone the GitHub wiki

    View Slide

  15. Local environment
    •Identify assets on CDNs & other hosts
    •Install fonts locally

    View Slide

  16. View Slide

  17. Local environment
    •Spend time testing dependencies

    on external hosts
    •Improve resilience to network

    failures for end users

    View Slide

  18. Connect before you disconnect

    View Slide

  19. Connect before you disconnect
    •Dropbox
    •Google Drive
    •Email client
    •git fetch --all

    View Slide

  20. Communicate
    •Tell your colleagues & clients

    when you're going offline

    View Slide

  21. 2. Tools

    View Slide

  22. Offline documentation

    View Slide

  23. Offline documentation
    •Dash for Mac
    •Zeal for Windows & Linux

    View Slide

  24. View Slide

  25. View Slide

  26. View Slide

  27. View Slide

  28. View Slide

  29. Offline documentation
    •man grep
    •wp --help

    View Slide

  30. Working offline
    Airplane Mode
    •Blocks external JS and CSS
    •Replaces Gravatar with local image
    •Removes HTTP API requests
    •Disables update checks

    View Slide

  31. Airplane Mode on Airplane Mode off
    0.39s 2.35s

    View Slide

  32. View Slide

  33. View Slide

  34. Working offline
    Mocking, not Blocking

    View Slide

  35. Working offline
    Charles HTTP Proxy
    •DNS spoofing
    •Monitoring, throttling, recording
    •Breakpoints & rewriting
    •Mapping to local files

    View Slide

  36. View Slide

  37. View Slide

  38. View Slide

  39. Working offline
    Capturing emails
    •MailHog - for all outgoing email
    •Email Log - for wp_mail()

    View Slide

  40. View Slide

  41. View Slide

  42. 3. Mindset

    View Slide

  43. Embrace offline

    View Slide

  44. Change your habits

    View Slide

  45. See the benefits to others

    View Slide

  46. See the benefits to you

    View Slide

  47. Always be charging

    View Slide

  48. 4. Reconnection

    View Slide

  49. Avoid the immediate social binge

    View Slide

  50. Action points

    View Slide

  51. Problems?

    View Slide

  52. 5. Backup Plan

    View Slide

  53. Documentation
    •Inline docblocks
    •Update that readme
    •Wiki pages

    View Slide

  54. Learning & reading

    View Slide

  55. Non development work

    View Slide

  56. If all else fails

    View Slide

  57. thedisconnect.co

    View Slide

  58. John Blackbourn
    @johnbillion

    View Slide