Hello
World!
pontos sobre
programação
1) plataformas e
   tecnologias

2) comprar vs. construir

3) aprendizagem contínua

4) workflow

5) gestão
plataformas e
tecnologias
a tua   escolha
influenciará boa parte
do caminho que
seguirás
open
p.e.   vs.
       closed
       source
.NET
       vs.
       JAVA
p.e.   vs.
       PHP
       vs.
       RUBY
       vs.   …
SQL Server
       vs.
       Oracle
       vs.
p.e.   SQLite
       vs.
       PostgreSQL
       vs.
       NoSQL
       vs…
procedural
       vs.
       orientado a
p.e.   objectos
       vs.
       funcional
       vs.   …
desktop
       vs.
p.e.   web
       vs.
       mobile
       vs.   …
… como

escolher?
o que já aprendi?

o que quero
aprender?

o que é mais
adequado?
…   rentabiliza
o conhecimento que já tens,
e acrescenta-lhe algo de
novo…
…e não te esqueças que a
maioria dos teus

clientes
já têm sistemas
implementados…
…tecnologias

”legacy”
são nichos interessantes
e sempre necessários…
…não esquecer que

tudo
é um compromisso ...
comprar vs.
construir
…é uma questão

constante:
“sei construir software. porquê
não construir o que necessito
para mim?”
existe?

há tempo para o
construir?

quanto custa construir /
comprar?

faz parte da linha de
negócio?
…(novamente)

tudo
é um compromisso
… antes de decidir, analisa
bem o que existe.
normalmente existe
alguma coisa…
… não esquecer que software
demora         a ser
construído e raramente está
terminado…
… o que constróis

para ti pode ser
para outros…       útil
… se for reutilizável, geras
bibliotecas e
frameworks
pessoais…
… ou até uma
linguagem              nova
(orientado a um domínio = DSL)…
aprendizagem
contínua
… o mundo das tecnologias
muda        a uma velocidade
incrível…
… temos   obrigação
de o acompanhar dentro do
possível…
… não conseguimos aprender
tudo,mas     podemos ter
noção para quando

precisarmos…
Google
                 StackOverflow
                 Livros
                 Revistas
                 Blogs
                 Podcasts
… e não faltam   Cursos
                 Workshops
ferramentas…     …
… aprende à tua maneira, à
tua velocidade, mas procura
aprender
continuamente         …
workflow
… escolhe aquele com que te
sentes maisconfortável
e   eficiente …
svn
          git
          hg
          cvs
source    …
control   VSS
iterações

        histórias

        pontos

        integração
agile   contínua
tdd

         bdd

         stress-test

         ux-testing

testes   …
macros

                scripts

                batch

                “migrations”

                geradores de código

automatização   …
dsl

            orm

            scaffolding

            t4
geradores
            frameworks
de código   …
2 monitores

             backups

             ergonomia / conforto

             organização

eficiência   …
… quanto consegues
poupar?       Que
desperdício consegues
evitar?   …
gestão
… o projecto demora
sempre mais que o que
prevemos inicialmente…
… o cliente pede sempre
mais do que pediu
inicialmente (e isso não é mau
nem errado)…
… cuidado com as tuas
finanças. Organiza-te e
planeia estratégias e compras
…
… o teu negócio não pode
estar escrito em pedra. Abraça
amudança quando é
justificado …
missão
… a nossa

missão
é simples …
…resolver os
problemas dos
nossos clientes / utilizadores
…
…   compreende           os teus
utilizadores e as suas
dificuldades,resolve-as,
e saboreia o sucesso …
alho@miguelalho.com



obrigado

                      ;)

5 Pontos sobre desenvolvimento de software