Programar != desenvolver software (v2)

Elton Minetto
Elton MinettoSoftware developer, teacher, speaker, open source evangelist, tech leader at Code:Nation
Programar !=
desenvolver
software
Elton Minetto
@eminetto
- Características de um(a)
programador(a)
- Características de um(a)
desenvolvedor(a)
- Como posso me tornar um(a)
desenvolvedor(a)?
Características de
um(a)
programador(a)
Programar != desenvolver software (v2)
Programar != desenvolver software (v2)
- Programa muito, muito rápido
- Escreve código bagunçado, ilegível
- Bugs. Bugs, Everywhere
- Arrogância
Características de
um(a)
desenvolvedor(a)
- Sabe que sempre pode evoluir
- Humildade para assumir seus erros e
aprender com eles
- Escreve código legível e estruturado
- Esforça-se para entender como as
coisas funcionam
- Comunica-se e coopera com todos no
seu time
- Aberto a críticas e diferentes
abordagens
- Gosta de resolver problemas
Como posso me
tornar um(a)
desenvolvedor(a)?
- Seja pragmático
- Use padrões
- Seja um bom membro de time
- Seja verboso
- Automatize seu trabalho
- Teste o seu código
Seja pragmático
- Não se apaixone por linguagens
- Não se apaixone por ferramentas
- Aprenda mais de uma linguagem
- Aprenda mais de um paradigma
Use padrões
Object Calisthenics
- Como melhorar seus códigos usando
Object Calisthenics
- Object Calisthenics em Golang
Use padrões
Clean Code
- Livro
- Resumo
- Slides
Use padrões
Clean Architecture
- Post
- Livro
- Slides
Use padrões
Seja idiomático
- Zen of Python
- Go proverbs
- Use linters para ajudar neste
processo
Seja um bom membro de time
- Participe dos code reviews
- Colabore com o time para contribuir
com os objetivos
- Seja mentor para quem é iniciante
Seja verboso
- Boas práticas na criação de
milestones, tarefas, pull requests e
commits
- The anatomy of a perfect pull request
Automatize seu trabalho
- Aprenda um pouco de Shell script
- Aprenda a usar o Make
- Aprenda a usar Grunt, Gulp, ou algo
parecido
Teste o seu código
- Estude testes unitários
- Estude testes de integração
- Estude integração contínua
The Boy Scout rule
Always leave the code you're editing a
little better than you found it
— Robert C. Martin (Uncle Bob)
Perguntas
@eminetto
http://eltonminetto.dev
http://codenation.dev
https://www.slideshare.net/eminetto
1 of 22

Recommended

Programar != desenvolver software by
Programar != desenvolver softwareProgramar != desenvolver software
Programar != desenvolver softwareElton Minetto
1.6K views21 slides
Programação C - Aula 1 by
Programação C - Aula 1Programação C - Aula 1
Programação C - Aula 1Dalton Valadares
264 views8 slides
Todas as coisas que todo programador não pode deixar de saber by
Todas as coisas que todo programador não pode deixar de saberTodas as coisas que todo programador não pode deixar de saber
Todas as coisas que todo programador não pode deixar de saberLuiz Borba
1.2K views25 slides
Coding Dojo by
Coding DojoCoding Dojo
Coding DojoRodrigo Branas
663 views37 slides
Testes unitários como ferramentas de design de código by
Testes unitários como ferramentas de design de códigoTestes unitários como ferramentas de design de código
Testes unitários como ferramentas de design de códigoPaula Grangeiro
406 views27 slides
Carreira de desenvolvedor by
Carreira de desenvolvedorCarreira de desenvolvedor
Carreira de desenvolvedorLucas Moura
94 views33 slides

More Related Content

Similar to Programar != desenvolver software (v2)

#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams by
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreamsJacqueline Abreu
500 views56 slides
PHP Anti Patterns by
PHP Anti PatternsPHP Anti Patterns
PHP Anti PatternsTheoziran Lima
1.8K views33 slides
O que é ser um bom programador? by
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?Lucas Boeing Scarduelli
1.8K views85 slides
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013 by
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Gabriel Rubens
902 views142 slides
Palestra Testes De Unidade Com JUnit by
Palestra Testes De Unidade Com JUnitPalestra Testes De Unidade Com JUnit
Palestra Testes De Unidade Com JUnitPaulo César M Jeveaux
2K views147 slides
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013 by
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013Gabriel Rubens
488 views137 slides

Similar to Programar != desenvolver software (v2)(20)

#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams by Jacqueline Abreu
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
Jacqueline Abreu500 views
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013 by Gabriel Rubens
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Gabriel Rubens902 views
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013 by Gabriel Rubens
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Gabriel Rubens488 views
PARADIGMAS_LINGUAGENS_PROG_aula02.pdf by Athena542429
PARADIGMAS_LINGUAGENS_PROG_aula02.pdfPARADIGMAS_LINGUAGENS_PROG_aula02.pdf
PARADIGMAS_LINGUAGENS_PROG_aula02.pdf
Athena5424291 view
A Carreira de Desenvolvedor: do Jr ao Sênior by Marcos Pereira
A Carreira de Desenvolvedor: do Jr ao SêniorA Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao Sênior
Marcos Pereira314 views
Um desenvolvedor com princípios SOLID by Hélio Medeiros
Um desenvolvedor com princípios SOLIDUm desenvolvedor com princípios SOLID
Um desenvolvedor com princípios SOLID
Hélio Medeiros601 views
Introdução a Scala [GeekieTalk] by Nicolau Werneck
Introdução a Scala [GeekieTalk]Introdução a Scala [GeekieTalk]
Introdução a Scala [GeekieTalk]
Nicolau Werneck600 views
Por quê e como desenvolver a habilidade de programar? by Fernando Kenji Kamei
Por quê e como desenvolver a habilidade de programar?Por quê e como desenvolver a habilidade de programar?
Por quê e como desenvolver a habilidade de programar?
Marvin-AI - Um Projeto Open Source para Entregar e Gerenciar Projetos de ML by Rafael Novello
Marvin-AI - Um Projeto Open Source para Entregar e Gerenciar Projetos de MLMarvin-AI - Um Projeto Open Source para Entregar e Gerenciar Projetos de ML
Marvin-AI - Um Projeto Open Source para Entregar e Gerenciar Projetos de ML
Rafael Novello73 views

More from Elton Minetto

Go e Microserviços - Nascidos um para o outro by
Go e Microserviços - Nascidos um para o outroGo e Microserviços - Nascidos um para o outro
Go e Microserviços - Nascidos um para o outroElton Minetto
1.9K views37 slides
Object Calisthenics em Go by
Object Calisthenics em GoObject Calisthenics em Go
Object Calisthenics em GoElton Minetto
792 views79 slides
Gerenciando uma startup no Github Projects by
Gerenciando uma startup no Github ProjectsGerenciando uma startup no Github Projects
Gerenciando uma startup no Github ProjectsElton Minetto
402 views30 slides
Clean Architecture by
Clean ArchitectureClean Architecture
Clean ArchitectureElton Minetto
912 views37 slides
Serverless em Go by
Serverless em GoServerless em Go
Serverless em GoElton Minetto
428 views31 slides
JAMstack by
JAMstackJAMstack
JAMstackElton Minetto
517 views22 slides

More from Elton Minetto(20)

Go e Microserviços - Nascidos um para o outro by Elton Minetto
Go e Microserviços - Nascidos um para o outroGo e Microserviços - Nascidos um para o outro
Go e Microserviços - Nascidos um para o outro
Elton Minetto1.9K views
Object Calisthenics em Go by Elton Minetto
Object Calisthenics em GoObject Calisthenics em Go
Object Calisthenics em Go
Elton Minetto792 views
Gerenciando uma startup no Github Projects by Elton Minetto
Gerenciando uma startup no Github ProjectsGerenciando uma startup no Github Projects
Gerenciando uma startup no Github Projects
Elton Minetto402 views
Clean architecture em Go - v2 by Elton Minetto
Clean architecture em Go - v2Clean architecture em Go - v2
Clean architecture em Go - v2
Elton Minetto652 views
Clean Architecture em PHP by Elton Minetto
Clean Architecture em PHPClean Architecture em PHP
Clean Architecture em PHP
Elton Minetto3.3K views
Clean Architecture in Golang by Elton Minetto
Clean Architecture in GolangClean Architecture in Golang
Clean Architecture in Golang
Elton Minetto1.4K views
A jornada do desenvolvedor by Elton Minetto
A jornada do desenvolvedorA jornada do desenvolvedor
A jornada do desenvolvedor
Elton Minetto636 views
Modernizando projetos legados usando APIs by Elton Minetto
Modernizando projetos legados usando APIsModernizando projetos legados usando APIs
Modernizando projetos legados usando APIs
Elton Minetto1K views
12 factor in the PHP world by Elton Minetto
12 factor in the PHP world12 factor in the PHP world
12 factor in the PHP world
Elton Minetto1.4K views
O case da Compufácil e AWS by Elton Minetto
O case da Compufácil e AWSO case da Compufácil e AWS
O case da Compufácil e AWS
Elton Minetto256 views
Como extrair métricas do Trello by Elton Minetto
Como extrair métricas do TrelloComo extrair métricas do Trello
Como extrair métricas do Trello
Elton Minetto2.9K views
Memórias das trincheiras (parte 2) by Elton Minetto
Memórias das trincheiras (parte 2)Memórias das trincheiras (parte 2)
Memórias das trincheiras (parte 2)
Elton Minetto1.4K views

Recently uploaded

Uma exposição em um centro de convenção precisa contabilizar os visitantes po... by
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...josecarlos413721
48 views3 slides
A documentação de um programa é fundamental, independentemente da linguagem d... by
A documentação de um programa é fundamental, independentemente da linguagem d...A documentação de um programa é fundamental, independentemente da linguagem d...
A documentação de um programa é fundamental, independentemente da linguagem d...josecarlos413721
12 views5 slides
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr... by
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...josecarlos413721
12 views2 slides
Dimensions - Tutorial.pptx by
Dimensions  - Tutorial.pptxDimensions  - Tutorial.pptx
Dimensions - Tutorial.pptxbarbaraguerra088
29 views29 slides
Competências para extrair inovação na tecnologia! by
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!Annelise Gripp
15 views11 slides
Capturas microbit.docx by
Capturas microbit.docxCapturas microbit.docx
Capturas microbit.docxseruto231014
8 views5 slides

Recently uploaded(10)

Uma exposição em um centro de convenção precisa contabilizar os visitantes po... by josecarlos413721
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
Uma exposição em um centro de convenção precisa contabilizar os visitantes po...
josecarlos41372148 views
A documentação de um programa é fundamental, independentemente da linguagem d... by josecarlos413721
A documentação de um programa é fundamental, independentemente da linguagem d...A documentação de um programa é fundamental, independentemente da linguagem d...
A documentação de um programa é fundamental, independentemente da linguagem d...
josecarlos41372112 views
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr... by josecarlos413721
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
As ferramentas gerenciais da qualidade são estabelecidas para auxiliar a empr...
josecarlos41372112 views
Competências para extrair inovação na tecnologia! by Annelise Gripp
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
Annelise Gripp15 views
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima... by josecarlos413721
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...
O setor de PCP faz a gestão dos estoques de produtos acabados, matérias-prima...
Competências para extrair inovação na tecnologia! by AnneliseGripp1
Competências para extrair inovação na tecnologia!Competências para extrair inovação na tecnologia!
Competências para extrair inovação na tecnologia!
AnneliseGripp19 views
Um edifício é composto tanto de elementos estruturais — que são dimensionados... by josecarlos413721
Um edifício é composto tanto de elementos estruturais — que são dimensionados...Um edifício é composto tanto de elementos estruturais — que são dimensionados...
Um edifício é composto tanto de elementos estruturais — que são dimensionados...
josecarlos41372114 views

Programar != desenvolver software (v2)