1. Metodologias e técnicas de produtividade =========================================== ## 1.1 - Apresentação ### 1.1 - Apresentação do professor e do curso * Silvio Rhatto, desenvolvedor autodidata. * Curso dividido em aulas independentes umas das outras. * O curso completo é acompanhado pelo desenvolvimento de uma pequena aplicação. ### 1.1 - O que são boas práticas de desenvolvimento? * Trata-se de *organização* no trabalho para que ele flua. * Não há um único caminho: existem inúmeras metodologias e técnicas. * Vou ensinar as mais *simples* e que tendem a resistir ao tempo. * Foco em Software Livre e Aberto (FOSS). * Experimente diversas metodologias, técnicas e ferramentas e monte seu próprio kit. ### 1.1 - Queremos / não queremos Queremos evitar: * Ansiedade. * Procrastinação. * Empacamento. * Ruído. Queremos: * Simplicidade sem comprometer funcionalidade (KISS). * Excelência (melhoria incremental) ao invés de perfeccionismo obssessivo. ## 1.2 - Mitos e verdades do desenvolvimento * Linearidade: pessoa-mês (Lei de Brooks). * Métricas: dificuldade de se estimar o tempo gasto. * Deterioramento natural do software! ## 1.3 - Metodologias pessoais ## 1.3 - Metodologias pessoais - Básico * Evitar distrações. * Uma tarefa por vez. * Foco na missão. * Fazer o essencial. ### 1.3 - Metodologias pessoais - Pomodoro * É a técnica mais simples. * Material: alarme e lista de tarefas. ## 1.4 - Metodologias pessoais - Get Things Done (GTD) * GTD. * ZTD. ## 1.5 - Metodologias em equipe * A catedral e o bazar: Lei de Linus. * Agile. * Scrum. * XP. * Kanban. * TDD. Começando um projeto -------------------- * Brainstorm! O que é o projeto? * Pesquisa do que já existe. Referências ----------- * [Best coding practices - Wikipedia, the free encyclopedia](https://en.wikipedia.org/wiki/Best_coding_practices). * [Best practices for software development projects](http://www.ibm.com/developerworks/websphere/library/techarticles/0306_perks/perks2.html). * [Boas práticas de engenharia de software | Guia da Startup e da Gestão de Produtos de Software](http://www.guiadastartup.com.br/boas-praticas-de-engenharia-de-software/). * [Boas Práticas de Desenvolvimento – melhorando o seu dia-a-dia](http://blog.matheusbodo.com/boas-praticas-de-desenvolvimento-melhorando-o-seu-dia-a-dia/). * [Melhores Práticas para Desenvolvimento de Sistemas e Software](http://www.ibm.com/developerworks/br/rational/library/systems-software-lifecycle-development/). * [Arquitetura, padrões, projetos e boas práticas sobre desenvolvimento de software - georgemendonca](http://softwarelivre.org/georgemendonca/blog/arquitetura-padroes-projetos-e-boas-praticas-sobre-desenvolvimento-de-software). * [HOME -The Pomodoro Technique®](http://pomodorotechnique.com/). * [Técnica de Pomodoro: Melhorar a Produtividade | Freelancer e Produtividade](http://www.escolafreelancer.com/tecnica-de-pomodoro-melhorar-produtividade/) * [Técnica pomodoro – Wikipédia, a enciclopédia livre](https://pt.wikipedia.org/wiki/T%C3%A9cnica_pomodoro). * [Zen to Done - ZTD - Lucas Teixeira](http://lucasteixeira.com/ztd/). * [Zen To Done (ZTD): The Simple Productivity System : zen habits](http://zenhabits.net/zen-to-done-ztd-the-ultimate-simple-productivity-system/).