• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Developer 0.0
 

Developer 0.0

on

  • 2,730 views

Apresentação do Tiago Pascoal sobre o que todo developer deveria saber antes de 'tocar no teclado' na 25a Reunião Presencial da Comunidade NetPonto (http://netponto.org) em Lisboa.

Apresentação do Tiago Pascoal sobre o que todo developer deveria saber antes de 'tocar no teclado' na 25a Reunião Presencial da Comunidade NetPonto (http://netponto.org) em Lisboa.

Statistics

Views

Total Views
2,730
Views on SlideShare
1,385
Embed Views
1,345

Actions

Likes
0
Downloads
10
Comments
0

4 Embeds 1,345

http://pascoal.net 1297
http://feeds.feedburner.com 33
http://www.pascoal.net 13
http://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Developer 0.0 Developer 0.0 Presentation Transcript

    • 25ª Reunião Lisboa - 17/12/2011 http://netponto.org Developer 0.0 Tiago Pascoal
    • Patrocinadores “GOLD”
    • Patrocinadores “Bronze”
    • Developer 0.0Tiago Pascoalhttp://pascoal.net
    • Também disponível em vídeo... Assista!http://www.youtube.com/watch?v=8wDDqYl0d0I
    • O que a apresentação NÃO é...
    • Apresentação a ser feita há 36 anos
    • Fungíveis....• É assim que o IT é visto.• Será isto bom?• Fungibilidade é o atributo pertencente aos bens móveis que podem ser substituídos por outros da mesma espécie, qualidade ou quantidade. In http://pt.wikipedia.org/wiki/Fungibilidade
    • Uma Interpretação
    • A realidade...Em bom rigor...
    • A realidade...Em bom rigor...Não é totalmente verdade
    • A realidade...Em bom rigor...Não é totalmente verdadeTemos brinquedos mais modernos
    • A realidade...Em bom rigor...Não é totalmente verdadeTemos brinquedos mais modernos
    • Mas será justo?• Incapacidade para entregar nos prazos
    • Mas será justo?• Incapacidade para entregar nos prazos
    • Mas será justo?• Incapacidade para entregar nos prazos• Incapacidade para entregar dentro do orçamento
    • Mas será justo?• Incapacidade para entregar nos prazos• Incapacidade para entregar dentro do orçamento
    • Mas será justo?• Incapacidade para entregar nos prazos• Incapacidade para entregar dentro do orçamento• Incapacidade para entregar o que o negócio precisa
    • Mas será justo?• Incapacidade para entregar nos prazos• Incapacidade para entregar dentro do orçamento• Incapacidade para entregar o que o negócio precisa
    • Não é por acaso que o movimento ágil surgiu...• Exactamente para tentar contrabalançar esta necessidade
    • Não é por acaso que o movimento ágil surgiu...• • Exactamente para tentar contrabalançar esta Individuals and interactions over processes and tools• Working software over comprehensive documentation necessidade• Customer collaboration over contract negotiation• Responding to change over following a plan
    • Não é por acaso que o movimento ágil surgiu...• • Exactamente para tentar contrabalançar esta Individuals and interactions over processes and tools• Working software over comprehensive documentation necessidade• Customer collaboration over contract negotiation• Responding to change over following a plan • Mas o movimento ágil por vezes tende a ignorar o mundo em que vivemos...
    • Se calhar o problema tem que seresolver a montante...• Premissa. Enquanto não se resolver este assunto nada de
    • Isto devia estar embebido noDNA...Conhecimentosbásicos de economiaMas antes comecemos pela base
    • Discutível?Everything is politics Thomas Mann
    • Para que serve o sofware?Enquanto não se entender isto tudo o resto éirrelevante...O software é um meio paraatingir um fim não é um fimem si mesmo...
    • Isto não é discutível.• É perfeitamento binário... ( 0|1) (excepto numa realidade alternativa)Until your pretty code is in production,making money, or doing whatever it does,youve just wasted your time -- Chris Read
    • Software  Business Value• Uma nova funcionalidade• Melhoriar uma funcionalidade existente• Menos bugs• ...Business Value é _qualquer_ coisa quefaz com que as pessoas dêem dinheiroà pessoa/organização que o produz.
    • A visão...
    • Mas.... Escrevemos código para o negócio. O negócio não passa cheques para as nossas masturbações intelectuais PONTO
    • E agora politicamente correcto• Os engenheiros são contratados para criar valor não para programar coisas.• Drucker definiu o centro de custos e o centro de lucros. –Escolham o vosso lado…
    • E agora politicamente correcto• Os engenheiros são contratados para Produzir código bonito? Resolver problemas técnicos complexos? Escrever código sem erros? criar valor não para programar Usar linguagens sexy? coisas.• Drucker definiu o centro de custos e o centro de lucros. –Escolham o vosso lado…
    • E agora politicamente correcto• Os engenheiros são contratados para Produzir código bonito? Resolver problemas técnicos complexos? Escrever código sem erros? criar valor não para programar Usar linguagens sexy? coisas. são objectivos são meios. Isso não• Drucker definiu o centro de custos e o centro de lucros. –Escolham o vosso lado…
    • E agora politicamente correcto• Os engenheiros são contratados para Produzir código bonito? Resolver problemas técnicos complexos? Escrever código sem erros? criar valor não para programar Usar linguagens sexy? coisas. são objectivos são meios. Isso não• Drucker definiu o centro de custos e Os objectivos são (tipicamente) o centro de lucros. –Escolham o vosso lado…
    • E agora politicamente correcto• Os engenheiros são contratados para Produzir código bonito? Resolver problemas técnicos complexos? Escrever código sem erros? criar valor não para programar Usar linguagens sexy? coisas. são objectivos são meios. Isso não• Drucker definiu o centro de custos e Os objectivos são (tipicamente) o centro de lucros. reduzir custos Aumentar lucros, –Escolham o vosso lado…
    • (Voltando ao) PicassoPercebia a diferençaentre tempo e valor
    • Se pretendem• Ser uma commodity?
    • Se pretendem• Ser uma commodity?• Então terão muita companhia
    • Se pretendem• Ser uma commodity?• Então terão muita companhia
    • Se pretendem• Ser uma commodity?• Então terão muita companhia
    • E se....The job of a programmer is not towrite code; it is first and foremostto think. Don’t skim; read carefullyevery change line by line in yourdiff tool, and think about them. in http://altdevblogaday.com/2011/10/04/a-pre-commit-checklist/
    • Vossa EscolhaCommodity Escassez• Race to the • Que combate bottom com o valor E recolhe oQue compete respectivopelo preço prémio
    • Custo das mudanças de contexto
    • Custo das mudanças de contexto
    • Custo das mudanças de contexto Culpa do gestor obviamente
    • Como reagiam?
    • Como reagiam?
    • 15 Minutos == 1/16 dia trabalho• Cada interrupção pode custar 15 minutos de recuperação http://www.nytimes.com/2007/03/25/business/25multi.html
    • 15 Minutos == 1/16 dia trabalho• Cada interrupção pode custar 15 minutos de recuperação http://www.nytimes.com/2007/03/25/business/25multi.html
    • 15 Minutos == 1/16 dia trabalho• Cada interrupção pode custar 15 minutos de recuperação http://www.nytimes.com/2007/03/25/business/25multi.html
    • 15 Minutos == 1/16 dia trabalho• Cada interrupção pode custar 15 minutos de recuperação http://www.nytimes.com/2007/03/25/business/25multi.html
    • 15 Minutos == 1/16 dia trabalho• Cada interrupção pode custar 15 minutos de recuperação http://www.nytimes.com/2007/03/25/business/25multi.html
    • Aquilo que era culpa nos outrosDeixa subitamente de terresponsáveis
    • Não perseguir coisas brilhantes...
    • Apenas porque brilham.....• Vamos fazer o upgrade de uma biblioteca? porquê? –Quais são os ganhos? • Muitas vezes nenhuns –E nem sequer avaliamos que se vai perder? • Nem se analisa o que mudou • E muito menos se testa em condições
    • Custo de oportunidadeQuando fazemos A em vez de B.Não só o que custa fazer A mastambém as perdas de não fazerBVamos fazer algo porque sim em vez detrazer valor?
    • Teoria da vantagem comparativaDavid Ricardo 1772-1823Reduz o nosso custo de oportunidadeFará sentido escrever um parser deXML?
    • Contexto Corrida Entre VS Quem Ganha?
    • Depende...50 Km Pista Tartan...
    • Responsabilização pelo que se faz• Apesar da qualidade ser uma responsabilidade da equipa. A responsabilidade de testar não é de terceiros.• Os erros acontecem e são constantes com a dimensão do código, mas a responsabilidade é nossa.• Terceiros podem validar mas a responsabilidade....
    • Responsabilização pelo que se faz• Apesar da qualidade ser uma responsabilidade da equipa. A responsabilidade de testar não é de terceiros.• Os erros acontecem e são constantes com a dimensão do código, mas a responsabilidade é nossa.• Terceiros podem validar mas a responsabilidade....
    • Responsabilização pelo que se faz• Apesar da qualidade ser uma responsabilidade da equipa. A responsabilidade de testar não é de terceiros.• Os erros acontecem e são constantes com a dimensão do código, mas a responsabilidade é nossa.• Terceiros podem validar mas a responsabilidade....
    • Final Word...
    • A evitar...• Falta de sentido de urgência – é preciso é calma...• Distrair-se fácilmente – falta de foco• Preguiça• Começa algo mas nunca acaba• Falta de comprometimento – compromete-se mas nunca entrega• Argumentativo – discussões incessantes em vez de simplesmente fazer• Lento – demora a fazer coisas• Perfecionista – tendência para overengineering procura a implementação perfeita em vez de algo que funciona 95% dos casos
    • A evitar...• Falta de sentido de urgência – é preciso é calma...• Distrair-se fácilmente – falta de foco• Preguiça• Começa algo mas nunca acaba• Falta de comprometimento – compromete-se mas nunca entrega• Argumentativo – discussões incessantes em vez de simplesmente fazer• Lento – demora a fazer coisas• Perfecionista – tendência para overengineering procura a implementação perfeita em vez de algo que funciona 95% dos casos
    • TakeawaysPara que serve o softwareAnálise custo beneficioCusto de oportunidadeTeoria vantagem comparativaResponsabilização
    • Use only that which works, and take it fromany place you can find it.Life itself is your teacher, and you are in astate of constant learning.In Jeet Kune Do, its not how much you havelearned, but how much you have absorbedfrom what you have learned. It is not howmuch fixed knowledge you can accumulate,but what you can apply livingly that counts.‘Being is more valued than doing
    • Patrocinador “Lata”
    • Patrocinadores “GOLD”
    • Patrocinadores “Bronze”
    • Questões?
    • Próximas reuniões presenciais• 17/12/2011 – Dezembro• 21/01/2012 – Janeiro (Lisboa)• 11/02/2011 – Fevereiro (Coimbra)• 18/02/2011 – Fevereiro (Lisboa)Reserva estes dias na agenda! :)
    • Obrigado!Tiago Pascoaltiago@pascoal.nethttp://pascoal.nethttp://twitter.com/tspascoal