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
6
950
[RubyConf 2015] Learn From My Mistakes
Flavia Fortes
September 18, 2015
Tweet
Share
More Decks by Flavia Fortes
See All by Flavia Fortes
[RubyConfBR 2017] Elixir/Elug - Flavia Fortes e Charlotte Oliveira
flaviafortes
0
130
[RubyConfBR 2017] Refatorando Rails apps com confiança
flaviafortes
3
210
[Women Dev Summit 2017] Introdução ao framework Phoenix
flaviafortes
0
100
[Rails Girls SP 2017] Lógica de programação com Ruby
flaviafortes
0
150
[RubyConf 2016] Como funciona o Rails
flaviafortes
1
230
Other Decks in Programming
See All in Programming
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.2k
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1k
ABEMAモバイルアプリが Kotlin Multiplatformと歩んだ5年 ─ 導入と運用、成功と課題 / iOSDC 2025
akkyie
0
320
2025年版 サーバーレス Web アプリケーションの作り方
hayatow
23
25k
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
320
CSC305 Lecture 01
javiergs
PRO
1
390
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.2k
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
2
130
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
130
猫と暮らすネットワークカメラ生活🐈 ~Vision frameworkでペットを愛でよう~ / iOSDC Japan 2025
yutailang0119
0
220
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
GitHub's CSS Performance
jonrohan
1032
460k
Code Review Best Practice
trishagee
72
19k
Navigating Team Friction
lara
189
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Producing Creativity
orderedlist
PRO
347
40k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
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!