5 pontos sobre desenvolvimento de software
DESCRIPTION
Apresentação usada na Conferencia SerFreelancer - Aveiro. Descreve alguns pontos sobre alguns aspectos profissionais da programação (e freelancing no geral). Foca essencialmente no compromisso das escolhas que fazemos.TRANSCRIPT
![Page 1: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/1.jpg)
Hello World!
![Page 2: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/2.jpg)
pontos sobre programação
![Page 3: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/3.jpg)
1) plataformas e tecnologias
2) comprar vs. construir
3) aprendizagem contínua
4) workflow
5) gestão
![Page 4: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/4.jpg)
plataformas e tecnologias
![Page 5: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/5.jpg)
a tua escolha
influenciará boa parte do caminho que seguirás
![Page 6: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/6.jpg)
open
vs. closed source
p.e.
![Page 7: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/7.jpg)
.NET vs. JAVA vs. PHP vs.
RUBY vs. …
p.e.
![Page 8: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/8.jpg)
SQL Server vs.
Oracle vs.
SQLite vs.
PostgreSQL vs.
NoSQL vs…
p.e.
![Page 9: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/9.jpg)
procedural
vs.
orientado a objectos vs.
funcional
vs. …
p.e.
![Page 10: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/10.jpg)
desktop
vs.
web vs.
mobile
vs. …
p.e.
![Page 11: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/11.jpg)
… como
escolher?
![Page 12: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/12.jpg)
o que já aprendi?
o que quero aprender?
o que é mais
adequado?
![Page 13: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/13.jpg)
…rentabiliza
o conhecimento que já tens, e acrescenta-lhe algo de novo…
![Page 14: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/14.jpg)
…e não te esqueças que a maioria dos teus
clientes
já têm sistemas implementados…
![Page 15: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/15.jpg)
…tecnologias
”legacy” são nichos interessantes e sempre necessários…
![Page 16: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/16.jpg)
…não esquecer que
tudo é um compromisso ...
![Page 17: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/17.jpg)
comprar vs. construir
![Page 18: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/18.jpg)
…é uma questão
constante: “sei construir software. porquê não construir o que necessito para mim?”
![Page 19: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/19.jpg)
existe?
há tempo para o construir?
quanto custa construir / comprar? faz parte da linha de
negócio?
![Page 20: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/20.jpg)
…(novamente)
tudo é um compromisso
![Page 21: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/21.jpg)
… antes de decidir, analisa
bem o que existe.
normalmente existe
alguma coisa…
![Page 22: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/22.jpg)
… não esquecer que software
demora a ser
construído e raramente está
terminado…
![Page 23: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/23.jpg)
… o que constróis
para ti pode ser
para outros… útil
![Page 24: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/24.jpg)
… se for reutilizável, geras
bibliotecas e
frameworks pessoais…
![Page 25: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/25.jpg)
… ou até uma
linguagem nova
(orientado a um domínio = DSL)…
![Page 26: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/26.jpg)
aprendizagem contínua
![Page 27: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/27.jpg)
… o mundo das tecnologias
muda a uma velocidade
incrível…
![Page 28: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/28.jpg)
… temos obrigação de o acompanhar dentro do possível…
![Page 29: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/29.jpg)
… não conseguimos aprender
tudo, mas podemos ter
noção para quando
precisarmos…
![Page 30: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/30.jpg)
… e não faltam
ferramentas…
Google StackOverflow
Livros Revistas
Blogs Podcasts Cursos Workshops …
![Page 31: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/31.jpg)
![Page 32: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/32.jpg)
![Page 33: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/33.jpg)
![Page 34: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/34.jpg)
![Page 35: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/35.jpg)
![Page 36: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/36.jpg)
… aprende à tua maneira, à
tua velocidade, mas procura
aprender continuamente …
![Page 37: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/37.jpg)
workflow
![Page 38: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/38.jpg)
… escolhe aquele com que te
sentes mais confortável e eficiente …
![Page 39: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/39.jpg)
svn
git
hg
cvs
…
VSS
source control
![Page 40: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/40.jpg)
iterações
histórias
pontos
integração contínua agile
![Page 41: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/41.jpg)
tdd
bdd
stress-test
ux-testing
… testes
![Page 42: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/42.jpg)
macros
scripts
batch
“migrations”
geradores de código
… automatização
![Page 43: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/43.jpg)
dsl
orm
scaffolding
t4
frameworks
…
geradores de código
![Page 44: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/44.jpg)
2 monitores
backups
ergonomia / conforto
organização
… eficiência
![Page 45: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/45.jpg)
… quanto consegues
poupar? Que
desperdício consegues evitar? …
![Page 46: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/46.jpg)
gestão
![Page 47: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/47.jpg)
… o projecto demora sempre mais que o que
prevemos inicialmente…
![Page 48: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/48.jpg)
… o cliente pede sempre mais do que pediu
inicialmente (e isso não é mau nem errado)…
![Page 49: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/49.jpg)
… cuidado com as tuas
finanças. Organiza-te e
planeia estratégias e compras …
![Page 50: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/50.jpg)
… o teu negócio não pode
estar escrito em pedra. Abraça
a mudança quando é
justificado …
![Page 51: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/51.jpg)
missão
![Page 52: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/52.jpg)
… a nossa
missão é simples …
![Page 53: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/53.jpg)
… resolver os
problemas dos
nossos clientes / utilizadores …
![Page 54: 5 Pontos sobre desenvolvimento de software](https://reader033.vdocuments.pub/reader033/viewer/2022060203/559e63301a28ab986d8b4807/html5/thumbnails/54.jpg)
… compreende os teus
utilizadores e as suas
dificuldades, resolve-as,
e saboreia o sucesso …