Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Produtividade Ninja: Como ZSH e Fabric Mudaram ...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
mateusrevoredo
March 21, 2015
Technology
150
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Produtividade Ninja: Como ZSH e Fabric Mudaram minha forma de trabalhar
mateusrevoredo
March 21, 2015
More Decks by mateusrevoredo
See All by mateusrevoredo
Bootstrapping web applications without Bootstrap
mateusrevoredo
0
140
Cloud Computing Com Amazon Web Services
mateusrevoredo
1
83
Desenvolvendo Aplicações Metro
mateusrevoredo
2
170
Bugzilla
mateusrevoredo
4
160
ASP.NET MVC Keynote
mateusrevoredo
1
140
Casos de Uso e Cenário
mateusrevoredo
1
110
Other Decks in Technology
See All in Technology
実体験から学ぶ分析エージェントの開発と運⽤
recruitengineers
PRO
8
2.4k
『SAR衛星データ解析入門』のご紹介とその応用
syuchimu
0
120
Getting Started with Google Antigravity
glaforge
0
320
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
1k
WasmをRustにする
sansantech
PRO
0
260
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
360
AI導入は済んだ。次は統制を作り替える番だ_AI×開発組織 Summit 2026
techtekt
PRO
0
320
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
340
Tofu-Controller lightning talk @ Containerday 2026
gionn
0
120
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
200
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Featured
See All Featured
Building Adaptive Systems
keathley
44
3.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Curse of the Amulet
leimatthew05
3
16k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
800
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
My Coaching Mixtape
mlcsv
0
360
Navigating Team Friction
lara
192
16k
Transcript
Produtividade Ninja: COMO ZSH E FABRIC MUDARAM MINHA FORMA DE
TRABALHAR
E quem é tu que eu nunca vi?
MATEUS REVOREDO * TECNÓLOGO EM ANÁLISE EM DESENVOLVIMENTO DE SISTEMAS
* MESTRANDO EM ENGENHARIA DE SOFTWARE * TRABALHANDO COM TI DESDE OS 13 ANOS * APPLE FANBOY * PROGRAMADOR PHP * CERTIFICADO MICROSOFT
PARA OS STALKERS DE PLANTÃO @mateusrevoredo ▸ github ▸ facebook
▸ linkedin ▸ twitter
E desde quando tu é Pythonista pra falar dessas coisas?
JOGO
GUESS THE BROWSER A FUN GAME FOR ALL THE FAMILY
None
None
None
None
None
None
None
None
None
None
Produtividade Ninja: COMO ZSH E FABRIC MUDARAM MINHA FORMA DE
TRABALHAR
PRIMEIRO DE TUDO: O que é ZSH?
"Zsh is a shell designed for interactive use, although it
is also a powerful scripting language." — http://www.zsh.org/
"Substituto do bash para os fortes !" — Mateus
None
None
INSTALADO POR PADRÃO NO MAC * * JUST TYPE "ZSH"
FACILMENTE INSTALÁVEL NO LINUX
Meu ZSH é muito mais cool do que seu Shell!
POR QUÊ?
Produtividade
AUTOCOMPLETE
None
None
None
None
None
* AUTOCOMPLETE INCRÍVEL * HISTÓRICO COMPARTILHADO * AUTOCORRETOR PARA COMANDOS
CONHECIDOS * CUSTOMIZAÇÃO VIA Plug-ins
VOCÊ DISSE PLUG-INS?
Meus Favoritos
OH MY ZSH
None
.ZSHRC
cd ~/.oh-my-zsh/plugins git clone urldogitsuperdifícildedecorar
ANTIGEN
▸ antigen bundle githubusername / projectname ▸ antigen bundle zsh-users/zsh-syntax-
highlighting ▸ antigen bundle Tarrasch/zsh-mcd
Z
"z is the new j, yo" — https://github.com/rupa/z
None
None
LAST WORKING DIR
None
None
SUDO
None
WTF!
+
None
None
BULLET TRAIN
None
˜/.ZSHRC ˜/.OH-MY-ZSH ˜/.ANTIGEN
˜/.TMUX.CONF ˜/.VIMRC ...
MINHA NOSSA! QUANTOS ARQUIVOS DE CONFIGURAÇÃO!
DOTFILES
DOTBOT [DOT] FILES [BO]O[T]STRAPPER
DOTBOT
YAML - link: ~/.config/terminator: create: true path: config/terminator/ ~/.vim: vim/
~/.vimrc: vimrc ~/.zshrc: force: true path: zshrc
Massa!
Mas o que Python tem a ver com isso tudo?
PRODUTIVIDADE != AGILIDADE
1. TERMINAL SUPERMEGAÁGILELEGAL 2. CUSTOMIZAÇÃO AUTOMÁTICA 3. CONFIGURAÇÃO AUTOMÁTICA
FABRIC
"Fabric é uma biblioteca Python e ferramenta de linha de
comando para simplificar o uso de SSH para administração do sistemas" — http://www.fabfile.org/
FABFILE ESCRITO EM PYTHON !
FABFILE.PY from fabric.api import run def host_type(): run('uname -s')
fab -H localhost,linuxbox host_type [localhost] run: uname -s [localhost] out:
Darwin [linuxbox] run: uname -s [linuxbox] out: Linux
from fabric.operations import local as lrun, run from fabric.contrib.files import
exists from fabric.api import * from fabric.state import env @task def vagrantbox(): env.hosts = ['127.0.0.1:2222'] env.user = 'vagrant' env.password = 'vagrant' @task def install(): execute(install_zsh) execute(install_ohmyzsh) execute(clone_dotfiles_repository) execute(run_dotbot) @task def install_zsh(): sudo('yum -y install zsh') @task def install_ohmyzsh(): run('wget --no-check-certificate http://install.ohmyz.sh -O - | sh') @task def clone_dotfiles_repository(): run('git clone --recursive https://github.com/mateusrevoredo/dotfiles.git ~/.dotfiles') @task def run_dotbot(): with cd('~/.dotfiles'): run('sh install')
fab vagrantbox
WOW
EM RESUMO
PRODUTIVIDADE CONFIGURAÇÃO AUTOMAÇÃO
ZSH DOTBOT FABRIC
?