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

How I'm still not using GUIs in 2019

How I'm still not using GUIs in 2019

Lucas Fernandes da Costa

November 01, 2019
Tweet

More Decks by Lucas Fernandes da Costa

Other Decks in Technology

Transcript

  1. HOW I AM STILL
    NOT USING GUIS
    IN 2019
    A THOUSAND WORDS
    THEWIZARDLUCAS
    LUCASFCOSTA.COM

    View Slide

  2. HOW I AM STILL
    NOT USING GUIS
    A THOUSAND WORDS

    View Slide

  3. WHY

    View Slide

  4. HOW

    View Slide

  5. why? how?

    View Slide

  6. oh my god why

    View Slide

  7. oh my god why
    ???????????????

    View Slide

  8. WHY

    View Slide

  9. View Slide

  10. View Slide

  11. View Slide

  12. H A C K E R N E W S O ' C L O C K

    View Slide

  13. View Slide

  14. View Slide

  15. View Slide

  16. View Slide

  17. View Slide

  18. View Slide

  19. View Slide

  20. H O T T A K E A L E R T

    View Slide

  21. G U I S 

    A R E 

    B L O A T W A R E

    View Slide

  22. Word, Excel, PowerPoint, and other Microsoft programs have
    intimate — one might say promiscuous — knowledge of each
    others’ internals. In Unix, one tries to design programs to
    operate not specifically with each other, but with programs
    as yet unthought of.
    — Doug McIlroy

    View Slide

  23. Write programs to handle
    text streams, because that
    is a universal interface.
    — Doug McIlroy

    View Slide

  24. Write programs that do one thing and do it well.
    — Peter H. Saulus

    View Slide

  25. Write programs to work together.
    — Peter H. Saulus

    View Slide

  26. M O R E C L I S 

    L E S S S O F T W A R E

    View Slide

  27. M O R E C L I S 

    L E S S S O F T W A R E
    L E S S T I M E F I X I N G I T

    View Slide

  28. M O R E C L I S 

    L E S S S O F T W A R E
    L E S S T I M E F I X I N G I T
    L E S S T I M E D E B U G G I N G I T

    View Slide

  29. M O R E C L I S 

    L E S S S O F T W A R E
    L E S S T I M E F I X I N G I T
    L E S S T I M E D E B U G G I N G I T
    L E S S T I M E T H I N K I N G A B O U T I T

    View Slide

  30. M O R E C L I S 

    L E S S S O F T W A R E
    L E S S T I M E F I X I N G I T
    L E S S T I M E D E B U G G I N G I T
    L E S S T I M E T H I N K I N G A B O U T I T

    View Slide

  31. The only thing better than "less software" is no software at all.

    View Slide

  32. L I M I T I N G
    GUIs

    View Slide

  33. N O T S C A L A B L E
    L I M I T I N G
    GUIs

    View Slide

  34. H A R D T O I N T E G R AT E
    L I M I T I N G N O T S C A L A B L E
    GUIs

    View Slide

  35. H A R D T O I N T E G R AT E
    L I M I T I N G
    H A R D T O A U T O M AT E 

    N O T P O R TA B L E
    N O T S C A L A B L E
    GUIs

    View Slide

  36. GUIS ARE FRIENDS, NOT FOOD

    View Slide

  37. USE A GUI

    View Slide

  38. USE A GUI

    WHEN YOU

    NEED A GUI

    View Slide

  39. GUIS ARE FRIENDS, NOT FOOD

    View Slide

  40. GUIS ARE FRIENDS, NOT FOOD
    D I S C O V E R A B I L I T Y

    View Slide

  41. GUIS ARE FRIENDS, NOT FOOD
    N O N - R E P E T I T I V E
    TA S K S
    D I S C O V E R A B I L I T Y

    View Slide

  42. GUIS ARE FRIENDS, NOT FOOD
    N O N - R E P E T I T I V E
    TA S K S
    M U LT I M E D I A
    D I S C O V E R A B I L I T Y

    View Slide

  43. GUIS ARE FRIENDS, NOT FOOD
    N O N - R E P E T I T I V E
    TA S K S
    M U LT I M E D I A
    D I S C O V E R A B I L I T Y

    View Slide

  44. GUIS ARE FRIENDS, NOT FOOD
    N O N - R E P E T I T I V E
    TA S K S
    M U LT I M E D I A
    D I S C O V E R A B I L I T Y

    View Slide

  45. GUIS ARE FRIENDS, NOT FOOD
    N O N - R E P E T I T I V E
    TA S K S
    M U LT I M E D I A
    D I S C O V E R A B I L I T Y

    View Slide

  46. G U I S 

    A R E 

    B L O A T W A R E

    View Slide

  47. G U I S 

    A R E 

    B L O A T W A R E
    F O R W H AT W E D O

    View Slide

  48. The symbols we share
    And how we share them

    View Slide

  49. Technology
    Communication

    View Slide

  50. “As soon as we start putting our
    thoughts into words and
    sentences everything gets
    distorted, language is just no
    good—I use it because I have to,
    but I don’t put any trust in it. We
    never understand each other.”
    Marcel Duchamp

    View Slide

  51. Speaking
    the same
    language
    SH AR E D A B ST R AC TI O NS
    MORE PRECI SE VO CABULARY
    L E S S M A G I C

    View Slide

  52. HOW

    View Slide

  53. THE TOOLS
    zsh %

    View Slide

  54. zsh %
    + oh-my-zsh

    View Slide

  55. WHAT IS A SHELL?

    View Slide

  56. WHAT IS A SHELL?

    View Slide

  57. View Slide

  58. In computing, a shell is a user
    interface for access to an
    operating system's services.
    (Yes, Wikipedia)

    View Slide

  59. W
    AIT, WHAT?
    THE TERMINAL
    THE TERMINAL
    EMULATO R
    THE SHELL
    zsh %
    Autopilot [CC BY-SA 3.0], via Wikimedia Commons

    View Slide

  60. W
    AIT, WHAT?
    Terminal emulators are software simulations of “real” terminals.

    View Slide

  61. W
    AIT, WHAT?
    Terminal emulators are software simulations of “real” terminals.
    The TTY driver is responsible for handling the data to and from programs.

    View Slide

  62. View Slide

  63. WHY?
    $ /bin/sh

    View Slide

  64. WHY?
    $ /bin/sh
    Feel the difference.

    View Slide

  65. WHY?

    View Slide

  66. oh-my-zsh
    Oh My Zsh is an open source, community-driven framework for managing your zsh configuration.

    View Slide

  67. tmux
    terminal multiplexer
    + tpm

    View Slide

  68. View Slide

  69. How tmux works
    S E R V E R
    1
    S T O R E S Y O U R 

    S E S S I O N S

    View Slide

  70. S E S S I O N
    S E R V E R
    1 2
    S T O R E S Y O U R 

    S E S S I O N S
    W H I C H Y O U C A N 

    A T T A C H T O O R
    D E T A C H F R O M
    How tmux works

    View Slide

  71. S E S S I O N PA N E ( TA B )
    S E R V E R
    1 2 3
    S T O R E S Y O U R 

    S E S S I O N S
    W H I C H Y O U C A N 

    A T T A C H T O O R
    D E T A C H F R O M
    W H I C H I S A T A B 

    T H A T C O N T A I N S 

    A S E T O F W I N D O W S
    How tmux works

    View Slide

  72. W I N D O W
    4
    How tmux works
    S E S S I O N PA N E ( TA B )
    S E R V E R
    1 2 3
    S T O R E S Y O U R 

    S E S S I O N S
    W H I C H Y O U C A N 

    A T T A C H T O O R
    D E T A C H F R O M
    W H I C H I S A T A B 

    T H A T C O N T A I N S 

    A S E T O F W I N D O W S
    W H I C H C O N T A I N T H E 

    A C T U A L I N S T A N C E S 

    O F T H E S H E L L

    View Slide

  73. TMUX PLUGINS

    View Slide

  74. vim
    (actually, nvim)

    View Slide

  75. VIM My text editor of choice.


    View Slide

  76. VIM My text editor of choice.

    Vim is harder because it's different.

    View Slide

  77. VIM My text editor of choice.

    Vim is harder because it's different.
    Vim is better because it's different.

    View Slide

  78. NVIM A continuation and extension of vim.
    Better support for async tasks.
    Better scripting alternatives (LUA)

    View Slide

  79. WHY IT MATTERS
    It's not about writing code faster.

    View Slide

  80. WHY IT MATTERS
    It's not about writing code faster.
    It's about writing thoughts faster.

    View Slide

  81. WHY IT MATTERS
    It's not about writing code faster.
    It's about writing thoughts faster.
    It's about reducing drudgery.

    View Slide

  82. WHY IT MATTERS
    It's not about writing code faster.
    It's about writing thoughts faster.
    It's about reducing drudgery.
    It's about ergonomics.

    View Slide

  83. HOW TO

    BECOME

    A PRO
    T H E C R A S H
    C O U R S E
    v i m t u t o r

    View Slide

  84. HOW TO

    BECOME

    A PRO
    T H E C R A S H
    C O U R S E
    v i m t u t o r
    D o t h i n g s t h e V I M w a y

    View Slide

  85. HOW TO

    BECOME

    A PRO
    T H E C R A S H
    C O U R S E
    v i m t u t o r
    G o v a n i l l a
    D o t h i n g s t h e V I M w a y

    View Slide

  86. HOW TO

    BECOME

    A PRO
    T H E C R A S H
    C O U R S E
    v i m t u t o r
    G o v a n i l l a
    D o t h i n g s t h e V I M w a y
    " I s t h e r e a b e t t e r w a y t o d o t h i s ? "

    View Slide

  87. HOW TO

    BECOME

    A PRO
    T H E C R A S H
    C O U R S E
    v i m t u t o r
    R e s i s t t h e u r g e t o q u i t
    G o v a n i l l a
    D o t h i n g s t h e V I M w a y
    " I s t h e r e a b e t t e r w a y t o d o t h i s ? "

    View Slide

  88. How do I quit?

    View Slide

  89. :q

    View Slide

  90. :q!

    View Slide

  91. VIM PLUGINS
    N E R D T R E E
    F Z F
    E M M E T
    A L E
    N E O M A K E
    L A N G U A G E S P E C I F I C 

    P L U G I N S

    View Slide

  92. General Tips
    & References

    View Slide

  93. A FEW EXTRA TIPS
    D O T F I L E S
    D O M O R E U S I N G L E S S
    O N E T R I C K AT A T I M E
    A U T O M AT E E V E R Y T H I N G
    D O - N O T H I N G S C R I P T S
    L E A R N T H E
    F U N D A M E N TA L S

    View Slide

  94. THE TOOLBELT
    S T R E A M S
    S E D
    A G
    A W K
    C U R L
    J Q
    M A K E
    C R O N
    V I M I U M
    M A N

    View Slide

  95. https://github.com/lucasfcosta/dotfiles

    View Slide

  96. HOW I AM STILL
    NOT USING GUIS
    A THOUSAND WORDS

    View Slide

  97. HOW I AM STILL
    NOT USING GUIS
    A THOUSAND WORDS

    View Slide

  98. A THOUSAND WORDS
    https://sanctum.geek.nz/arabesque/

    View Slide

  99. Thank you.
    @THEWIZARDLUCAS (TWITTER)
    @LUCASFCOSTA (GITHUB)
    LUCASFCOSTA.COM

    View Slide

  100. Thank you.
    @THEWIZARDLUCAS (TWITTER)
    @LUCASFCOSTA (GITHUB)
    LUCASFCOSTA.COM

    View Slide

  101. Thank you.
    @THEWIZARDLUCAS (TWITTER)
    @LUCASFCOSTA (GITHUB)
    LUCASFCOSTA.COM

    View Slide

  102. Thank you.
    @THEWIZARDLUCAS (TWITTER)
    @LUCASFCOSTA (GITHUB)
    LUCASFCOSTA.COM

    View Slide