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
770
[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
120
[RubyConfBR 2017] Refatorando Rails apps com confiança
flaviafortes
3
200
[Women Dev Summit 2017] Introdução ao framework Phoenix
flaviafortes
0
92
[Rails Girls SP 2017] Lógica de programação com Ruby
flaviafortes
0
130
[RubyConf 2016] Como funciona o Rails
flaviafortes
1
220
Other Decks in Programming
See All in Programming
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
180
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
kazumain
0
240
ゆるい個人開発のススメ
kuroppe1819
10
940
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
910
本格ローグライク制作にEbitengineを選んでみた
nagainaganawa
0
290
プールにゆこう
irof
2
120
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
180
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
300
try! Swift Tokyo 初参加報告LT
hinakko2
0
190
1인 개발자로 행복하게 살기 - GDG 송도 헬로월드 2024
benjaminkim
1
5.6k
try! Swift Tokyo 2024のLT枠に採択されたプロポーザルを出すときに考えていたこと
ski
0
340
CQRS/ES avec Symfony, c’est (trop) bien !
jeremyfreeagent
1
630
Featured
See All Featured
Web Components: a chance to create the future
zenorocha
305
41k
Designing with Data
zakiwarfel
95
4.8k
A Philosophy of Restraint
colly
196
16k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Typedesign – Prime Four
hannesfritz
36
2.1k
Rails Girls Zürich Keynote
gr2m
91
13k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.4k
Building Applications with DynamoDB
mza
88
5.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
The Illustrated Children's Guide to Kubernetes
chrisshort
29
46k
Writing Fast Ruby
sferik
620
60k
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!