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
[RubyConf 2015] Learn From My Mistakes
Search
Flavia Fortes
September 18, 2015
Programming
1k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[RubyConf 2015] Learn From My Mistakes
Flavia Fortes
September 18, 2015
More Decks by Flavia Fortes
See All by Flavia Fortes
[RubyConfBR 2017] Elixir/Elug - Flavia Fortes e Charlotte Oliveira
flaviafortes
0
160
[RubyConfBR 2017] Refatorando Rails apps com confiança
flaviafortes
3
230
[Women Dev Summit 2017] Introdução ao framework Phoenix
flaviafortes
0
120
[Rails Girls SP 2017] Lógica de programação com Ruby
flaviafortes
0
180
[RubyConf 2016] Como funciona o Rails
flaviafortes
1
250
Other Decks in Programming
See All in Programming
RSSとCodexを使ってX投稿自動化してみた
ochtum
0
110
Building an Out-of-Order CPU
latte72
1
720
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
640
ALB ログから Trace を気合で繋げる技術
fohte
7
880
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
120
XHTMLが残したもの
yosuke_furukawa
PRO
2
440
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
2
350
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.3k
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
230
Hono + Inertia + React で LP を構築した話
oukayuka
2
220
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
0
460
typoなんかねぇよ
raspython3
0
670
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
41
2.7k
WCS-LA-2024
lcolladotor
0
820
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
Darren the Foodie - Storyboard
khoart
PRO
3
3.9k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
770
Git: the NoSQL Database
bkeepers
PRO
432
67k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Mind Mapping
helmedeiros
1
350
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Done Done
chrislema
186
16k
Transcript
FLAVIA FORTES @flafortes FlaviaFortes
Learn from my mistakes
Como faz um software bom?
Como ser um programador bom?
BOAS PRÁTICAS
1. Escreva testes!
Tá, mas por quê?
Reduz bugs
Auxilia a evolução do software
Facilita a manutenção
Serve de documentação
Aumenta a velocidade
2. Teste no browser!
3. Documente seu código
4. Crie um README para o seu projeto
Uma breve descrição da aplicação
Dependências
Setup
Processo de deploy
5. Defina um Style Guide
http://guidelines.plataformatec.com.br
E lembre-se: O código é de todo o time :)
6. Utilize diferentes ambientes
➔ Development ➔ Staging ➔ Production
7. Utilize ferramentas de controle de segurança e qualidade
Análise de código
None
Detectores de vulnerabilidades
None
8. Evite o Big Design Up Front
YAGNI (YOU AIN’T GONNA NEED IT)
9. Faça Code Review
Foco no coletivo
Disseminação do conhecimento
Nivelamento
Pull Requests
10. Escreva mensagens de commit úteis!
git commit -m “fix”
Commit early and often
Merge early and often
Leitura recomendada The Pragmatic Programmer - Andrew Hunt - David
Thomas cc Leitura recomendada
Leitura recomendada Test-Driven Development By Example - Kent Beck cc
Leitura recomendada
Leitura recomendada Clean Code - Uncle Bob cc Leitura recomendada
Leitura recomendada The Clean Coder - Uncle Bob cc Leitura
recomendada
Leitura recomendada Eloquent Ruby - Russ Olsen cc Leitura recomendada
Leitura recomendada Refactoring Ruby Edition - Jay Fields - Shane
Harvie - Martin Fowler - Kent Beck Leitura recomendada
cc Leitura recomendada Driving Technical Change - Terrence Ryan
Recapitulando …
1. Escreva testes
1. Escreva testes 2. Teste no browser
1. Escreva testes 2. Teste no browser 3. Documente seu
código
1. Escreva testes 2. Teste no browser 3. Documente seu
código 4. Crie um README
1. Escreva testes 2. Teste no browser 3. Documente seu
código 4. Crie um README 5. Defina um Style Guide
1. Utilize diferentes ambientes 2.
1. Utilize diferentes ambientes 2. Utilize ferramentas de controle de
segurança e qualidade 3.
1. Utilize diferentes ambientes 2. Utilize ferramentas de controle de
segurança e qualidade 3. Evite o Big Design Up Front 4.
1. Utilize diferentes ambientes 2. Utilize ferramentas de controle de
segurança e qualidade 3. Evite o Big Design Up Front 4. Faça Code Review 5.
1. Utilize diferentes ambientes 2. Utilize ferramentas de controle de
segurança e qualidade 3. Evite o Big Up-Front Design 4. Faça Code Review 5. Escreva mensagens de commit úteis 6.
É preciso ser humilde para aprender e para ensinar
OBRIGADA!