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
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
160
Bugzilla
mateusrevoredo
4
160
ASP.NET MVC Keynote
mateusrevoredo
1
130
Casos de Uso e Cenário
mateusrevoredo
1
100
Other Decks in Technology
See All in Technology
インシデント事例と パッケージの全量解析に学ぶ ソフトウェアサプライチェーンの守り方 / supply-chain-attack-defense
flatt_security
0
150
インフラと開発の垣根を超えていき!〜元AWSインフラエンジニアがAWS開発で奮闘している話〜
hatahata021
3
300
SRE Next 2026 何でも屋からの脱却
bto
0
1k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
AI時代のPlaywright活用(システムテストを自動化する ー 実行エンジンにPla ywrightを選んだ理由)
ynisqa1988
1
700
マルチアカウント環境でSecurity Hubの運用、その後どうなった? / SRE NEXT 2026 miniLT会
genda
0
110
データエンジニアリングとドメイン駆動設計
masuda220
PRO
4
350
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
490
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
3
1.1k
第67回コンピュータビジョン勉強会CVPR2026読会前編
tsukamotokenji
0
160
「AIに依存している」と 「AIを使いこなしている」の違い
k8yasuma
0
120
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
160
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
2
1.8k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
360
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
410
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Mobile First: as difficult as doing things right
swwweet
225
10k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
730
How to train your dragon (web standard)
notwaldorf
97
6.7k
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
?