Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
[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
170
[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
260
Other Decks in Programming
See All in Programming
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
200
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
260
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
170
Event is what happens
moro
2
2.2k
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
190
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
320
パスワード再設定メールのURLについて知っておこう
uyuki234
0
200
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
220
Railsバージョンを4倍にした話
optim
0
840
dotNET_vulnclicker_intro.pdf
deka_morita
0
160
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
500
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
310
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Leo the Paperboy
mayatellez
10
2.4k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
590
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Ruling the World: When Life Gets Gamed
codingconduct
0
430
Docker and Python
trallard
47
4.2k
Building an army of robots
kneath
307
47k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.7k
How GitHub (no longer) Works
holman
316
150k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
660
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!