7 Secrets for Techies to Become More Productive

Inside an environment highly demanding with frequent interruptions, people who work with technology need to be careful with their productivity. For that reason, I’m revealing seven secrets from my own experience. I hope they can be useful for you too.

Secret #1. Have a purpose

Firstly, do you really need to be more productive? Be more productive without a purpose is like a boat travelling on the high sea, going faster to anywhere. With a good purpose, your productivity will flow. Describe a purpose using objectives with goals. An objective is qualitative, like to work with new technologies to grow up in your company. A goal is quantitative and needs a deadline, like read three books of agile software development in the next two months. Each objective has goals, and each goal will be divided in tasks.

Secret #2. Work on a prioritized list of tasks

Make a list of all tasks that you need for your goals. How to prioritize tasks? Look to the importance and the urgency of each task. You can use apps running on the cloud to automatize your lists, like google.com/keep, todoist.com, evernote.com and rememberthemilk.com.

Secret #3. Visualize your progress

You will need small rewards, day by day, visualizing your work done. For that, you can use a task board, also called kanban board. A good app on the cloud is at trello.com.

Secret #4. Give the next step soon

Sometimes, you have so many important tasks to do that you might prefer to procrastinate. So, give the next step soon. Don’t wait a perfect moment. Just pull a task and start. Task by task, you will be rewarded with the feeling of accomplishment and motivation.

Secret #5. More focus

Focus is the key to be high productive. It happens when you use all of your capability for only one task. For this, use short periods of times (15-90min) to have high focus, avoiding at most anything that can interrupt or distract you. A simple and powerful technique for that is the Pomodoro Technique. One Pomodoro is a period of 25 minutes to work in one task each time, avoiding all distractions and interruptions. Set an alarm for each Pomodoro, you can use the alarm in your smartphone. Between two Pomodoros, take a short break of 3-5 minutes. Every four Pomodoros, take a long break of 15-30 minutes. There are some nice apps for that like e.ggtimer.com/25min or marinaratimer.com.

Secret #6. Take care of your energy

Yes, even techies need to care about the energy. Your mental and physical energies are the fuel of your productivity. So care about your nutrition, your hydration, your sleep, your body doing  stretching and physical exercises, mainly the aerobic ones. You might boost your mind with meditation or mindfulness. If you have never meditated you might try the onemomentmeditation.com, or insighttimer.com.

Secret #7. Productive habits and routine

You need discipline to achieve high productivity in a short term. However, for a long time, you will need to care about your habits and your routine. Use your discipline to make productive habits, starting to build a routine during the first weeks. To acquire new and more productive habits is a process that might require some effort and time.

Top Secret #8

Yes, a top secret. Be resilient! Sometimes everything seems to go wrong for your productivity among interruptions and distractions. Don’t give up, persist! Face it like a challenge.

Focus!

Image by Matthias Ripp, under license Attribution 2.0 Generic (CC BY 2.0).

TDD is a practice like swimming

A reader of our eXtreme Programming book asked us a guide to move from 0% TDD programming to 100% (or almost) TDD programming. But, there’s no manual that will really teach TDD, because it’s a practice. We could use a metaphor to explain it, TDD is like swimming, an activity that we practice.

Yes, TDD can be very hard at first time. Like swimming, you might not have enough breathing discipline, getting tired faster and giving it up. And after say “I didn’t like swimming, swimming is not for me”.

As a swimmer needs to jump in the water, a programmer needs to start with a failing test, write code until the test works, and refactor. And repeat these steps a lot of times. It’s a cycle, it’s a mantra:

image
TDD mantra: write a failing Test, Code until pass the test, so Refactor.

After a lot of TDD cycles, you will be understanding how to practice TDD. So, please, jump in the water and enjoy TDD.

— Thanks to Guilherme Motta for the review.

Lean para Potencializar a Qualidade no Software – Palestra na InfoQ Brasil

Saiu na InfoQ Brasil a palestra que fiz na trilha de Testes do TDC 2014! Nesta palestra, falo de como o Lean pode potencializar a Qualidade no Software. Segue o link:

http://www.infoq.com/br/presentations/lean-para-potencializar-a-qualidade-no-software

Métodos Ágeis para Desenvolvimento de Software Livre

O “Eureka!” de relacionar métodos ágeis e software livre veio no FISL (Fórum Internacional de Software Livre) no ano de 2013, enquanto eu assistia uma palestra no evento. Dois anos depois, no FISL16, estarei apresentando com a Jamile Alves a palestra métodos ágeis para o desenvolvimento de software livre. Falaremos de Lean Software Development, Kanban, Scrum e eXtreme Programming! 😀

Esses são os slides da palestra:

Lean Thinking: Mentalidade Enxuta para Desenvolvimento Ágil de Software

Qual a relação do Pensamento Enxuto e o Desenvolvimento Ágil de Software? Posso dizer que possuem a mesma essência. 🙂 Na Quarta do Conhecimento na PROCERGS em abril de 2015, a Jamile Alves e eu palestramos sobre Lean Thinking, Mentalidade Enxuta para Desenvolvimento Ágil de Software, fazendo a relação entre o mundo Lean e o mundo Ágil.

Seguem o vídeo compacto da palestra:

E os slides:

“Be lean, be agile!”

XP Playing Cards: aprendendo eXtreme Programming com muita diversão!

Que tal aprender eXtreme Programming (XP) de um modo bem divertido?

20150420_094518Em 2001, Joshua Kerievsky (Industrial Logic) criou um um baralho de cartas para jogos de XP. Depois de 13 anos, em 2014, a Jamile Alves e eu traduzimos e adaptamos essas cartas para o português, para realizar dinâmicas em turmas do curso de XP, facilitando a leitura aos alunos (e claro, cuidando da relíquia do baralho original da Industrial Logic que ganhei de presente do Rafael Helm).

Tipos das cartas

As cartas são de três tipos:

  • P – Carta de Problema
  • S – Carta de Solução
  • V – Carta de Valor
Screenshot from 2015-05-05 23:10:31
Ilustração das Cartas de Valores.

Baralho em PT-BR para download!

Junto à Industrial Logic, tornamos as cartas traduzidas para PT-BR livres para serem distribuídas, num formato PDF imprimível. Imprimimos numa impressora a laser colorida com uma folha mais grossa que a de ofício, ficou muito legal, é a primeira foto desse post.

Para fazer o download o arquivo do baralho de cartas em PDF, basta acessar: https://github.com/dsmoura/xp-playing-cards

Diversos jogos!

Existem ótimos jogos que podem ser realizados com essas cartas. O jogo que venho utilizando no curso de XP é o de associar soluções a um problema (variação do Explanations). A turma é dividida em grupos pequenos, distribuindo-se as Cartas de Solução igualmente para cada grupo. O facilitador lê uma Carta de Problema, e então o primeiro aluno que falar uma solução (e explicar, se necessário) que possui, descarta a carta. Ganha o grupo que zerar suas cartas de solução. Esse é um jogo que leva uns 45 minutos, com muita diversão. Mas o que mais interessa é que todos reconheçam o porquê de uma prática estar relacionada (ou não) a um problema.

Quer saber mais sobre os jogos da Industrial Logic? Veja no link: http://www.industriallogic.com/blog/xp-playing-cards/

Baralho autografado!

Ah, e no Agile Brazil 2014 eu levei as cartas para tirar foto com o Alexandre Freire, e autografar o baralho, óbvio (haha)!

20141106_123357Bom, esses baralhos viraram relíquia, mas espero que o formato digital seja útil para quem quiser aplicar em times e em cursos para continuar disseminando o eXtreme Programming! 🙂

 

O Nexus: para escalar e gerenciar grandes projetos ágeis

Essa é a tradução do artigo “The Nexus: for scaling and managing large agile projects” da Scrum.org.

O Nexus é o exoesqueleto para escalar Scrum. Ele guia o coração da questão de escalar – continuamente identificando e removendo dependências criadas pelo aumento da complexidade. Ele é construído no framework do Scrum e valores existentes. O resultado é um grupo efetivo de desenvolvimento acima de 100 pessoas utilizando as melhores práticas da indústria. Para maiores iniciativas, criando famílias de produtos ou interoperando unidades funcionais, foi criado o Nexus +, uma unificação de mais de um Nexus.

TheNexusBacklog do Produto
Uma lista ordenada de uma única fonte de requisitos para o Nexus. O trabalho de todos Times Scrum individuais é contido neste único Backlog do Produto.

Time de Integração
Um Time Scrum cujo trabalho primário é coordenar e guiar o trabalho dos Times Scrum Nexus. O Time de Integração consiste de um Scrum Master, Dono do Produto, e pessoas com habilidades necessárias.

Reunião de Planejamento da Sprint Nexus
Um evento que cria um plano para o próximo trabalho de Sprint para todos os Times Scrum dentro do Nexus. Esta reunião é estruturada para extrair as dependências, habilitar o trabalho coordenado, e entregar um Incremento integrado.

Backlog da Sprint Nexus
Um plano de alto nível que coordena o trabalho para todos os Times Scrum dentro do Nexus, ressaltando dependências entre times.

Reunião Diária Nexus
Uma reunião de planejamento diário onde os representantes dos Times Scrum de um Nexus avaliam e replanejam o trabalho no Backlog da Sprint.

Revisão da Sprint Nexus
Um evento que coordena totalmente o progresso por inspecionar o Incremento integrado e fazer adaptações apropriadas para o trabalho futuro planejado.

Incremento Integrado
O incremento da funcionalidade criada por todos os Times Scrum ao final da Sprint. A definição de “Pronto” é compartilhada entre os múltiplos Times Scrum.

Retrospectiva da Sprint Nexus
Um evento onde o Time de Integração e representantes dos Times Scrum do Nexus avaliam e melhoram como o Nexus opera.

Os termos foram mantidos da tradução existente do Guia do Scrum http://www.scrumguides.org/docs/scrumguide/v1/Scrum-Guide-Portuguese-BR.pdf Tradução realizada por Dionatan Moura.

Links referenciados:
https://www.scrum.org/Resources/Nexus
https://kenschwaber.wordpress.com/2015/01/30/more-on-scaling-scrum/
http://www.scrumguides.org/docs/scrumguide/v1/Scrum-Guide-Portuguese-BR.pdf

Observações:

Em seu blog, o autor Ken Schwaber comentou no dia 01 de fevereiro que mais materiais estão por vir nas próximas semanas (nada ainda surgiu). E também deixou um recado:

“Aqueles de vocês que tem investido e tentado metodologias comerciais para escalar tais como SAFe vão descobrir que esse workshop poderá preencher bem a lacuna que você notou quando teve que realmente estabelecer e rodar um desenvolvimento de software escalado.” Ken Schwaber