Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
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
130
Cloud Computing Com Amazon Web Services
mateusrevoredo
1
80
Desenvolvendo Aplicações Metro
mateusrevoredo
2
170
Bugzilla
mateusrevoredo
4
160
ASP.NET MVC Keynote
mateusrevoredo
1
130
Casos de Uso e Cenário
mateusrevoredo
1
110
Other Decks in Technology
See All in Technology
サイバー捜査員研修(前半)
nomizone
1
1.9k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
AI ネイティブな組織に Gemini Enterprise Agent Platform がなぜ必要なのか
asei
1
190
モダンフロントエンド 開発研修
recruitengineers
PRO
4
580
グローバル基準のSREは、運用現場でどう機能したか:成熟度アセスメントの実践 / SRE NEXT 2026
sorawatanabe
0
160
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
210
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
240
LanceDB入門
mocobeta
5
170
20260804_Q4AzureUpdateBite_FabricDataAgentの精度を高める設計.pdf
matayuuu
1
120
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
260
Issue設計から始める仕様駆動開発 / 20260731 Mizuki Hirata
shift_evolve
PRO
1
150
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
56k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
550
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
630
A Modern Web Designer's Workflow
chriscoyier
698
190k
A designer walks into a library…
pauljervisheath
211
24k
Scaling GitHub
holman
464
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
380
Believing is Seeing
oripsolob
1
180
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
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
?