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
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
dbt と Snowflake と tag
kevinrobot34
2
290
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
460
あなたの知らないバージョン命名規則
sat
PRO
2
850
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
terara
0
480
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
5k
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
950
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
0
200
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
120
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
6
3.3k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
指示待ちから変化に応じるClaude Codeへ!~環境からAgentへの帰り道を作る~
gotalab555
7
1.5k
AWSとGitHub Actionsの責任境界と 組織で安全に使用する取り組み
nealle
0
210
Featured
See All Featured
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
430
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
sira's awesome portfolio website redesign presentation
elsirapls
0
350
Into the Great Unknown - MozCon
thekraken
41
2.7k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
490
Being A Developer After 40
akosma
91
590k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
360
Faster Mobile Websites
deanohume
310
32k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
250
Visualization
eitanlees
152
17k
Paper Plane (Part 1)
katiecoart
PRO
1
10k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
260
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
?