Monday, March 16, 2015

the Ten Commandments of Egoless Programming

This is about work, yes I do programming and get paid, not that much though :). I got by this post on my GPlus timeline and I couldn't resist. When I saw the book reference, it make me want to keep this as a reference as I like the writings from Gerard Weinberg.
Maybe I will read this sometime in the future: The Psychology of Computer Programming, written in 1971, here are The Ten Commandments of Egoless Programming:

  1. Understand and accept that you will make mistakes.
  2. You are not your code.
  3. No matter how much “karate” you know, someone else will always know more.
  4. Don’t rewrite code without consultation.
  5. Treat people who know less than you with respect, deference, and patience.
  6. The only constant in the world is change.
  7. The only true authority stems from knowledge, not from position.
  8. Fight for what you believe, but gracefully accept defeat.
  9. Don’t be “the coder in the corner”.
  10. Critique code instead of people – be kind to the coder, not to the code.

Brand new start

Estava eu lendo e estudando diversos assuntos como de costume quando lembrei da necessidade de gerar alguma anotação para referência futura, tipo, deixar um rastro para que possa revisitar um tema ou idéia. Isso me fez procurar esse blog e recomeçar. Veio da música Little Joy - Brand New Start o título, apesar de ser uma baladinha romântica, o nome cai bem.
Vamos ver onde vou chegar com esse recomeço...

Friday, March 16, 2012

Qual a melhor religião?

Gostei tanto dessa resposta que resolvi escrever novamente no blog para registrar.

Leonardo Boff: Qual é a melhor religião do mundo?
Dalai Lama: É aquela que te faz mais compassivo, mais sensível, mais desapegado, mais amoroso, mais humanitário, mais responsável… A religião que conseguir fazer isso de ti é a melhor religião…

Encontrei essa referência na cloud.


Sunday, January 15, 2012

Bênção Irlandesa

Revisando as anotações antigas, encontrei mais um para a série frases/mensagens prontas de citações:

"Que o caminho seja brando a teus pés,

O vento sopre leve em teus ombros,

Que o sol brilhe cálido sobre tua face,

As chuvas caiam serenas em teus campos,

E, até que de novo eu te veja,

Que Deus te guarde na palma da mão."

(Bênção Irlandesa)

That`s all folks!

Sunday, December 05, 2010

On the purpose of iteration planning

Wrap up of "Clarifying the purpose of iteration planning":

...the purpose of the iteration planning is for the team to arrive at a commitment to some set of functionality that they feel reasonably confident they can complete in the coming iteration. The purpose is not to identify tasks. The purpose is not to estimate the number of hours for each of those tasks. The purpose is to figure out how many and which product backlog items they can commit to delivering in the coming iteration.
...
I strongly recommend that an iteration planning meeting involve identifying tasks, estimating the effort of each, and then using that information to arrive at a set of product backlog items the team can commit to. I think this is the best way for a team to arrive at that reasonable commitment that I believe is the purpose of this meeting.

Wednesday, September 01, 2010

The "wise" Architect

I ) The enthusiastic Developer: boring...
II ) The disillusioned Developer.
III ) The enthusiastic Architect: "the generic thing machine"!
IV ) The disillusioned Architect: yagni, kiss, working software...
V ) The "wise" Architect: question: *; answer: It depends!

Monday, August 30, 2010

Metáforas para desenvolvimento de software


Metáforas:

1) Engenharia

Construção, desenvolvimento, manutenção, prototipagem, etc…
+ Produtividade
+ Previsibilidade
+ Qualidade

2) Fábrica de Software

ERA INDÚSTRIAL == SEGUNDA ONDA!

"Indústria de Produção de Massa"

Princípios básicos:
  • Padronização.
  • Especialização (divisão do trabalho).
  • Sincronização (comunicação).
  • Concentração (ganhar escala).
  • Maximização (eficiência = produção / horas de trabalho == "produtividade").
  • Centralização (topo da pirâmide plajena, parte de baixo executa).

ERA PÓS-INDUSTRIAL == TERCEIRA ONDA!
CONFLITO: Trabalhador Manual vs Trabalhador do Conhecimento

Fatores para produtividade para trabalhador do conhecimento:
  • Definir tarefa a ser feita.
  • Auto-gerenciamento (autonomia e responsabilidade).
  • Oportunidade de inovar.
  • Aprendizado e ensino contínuo.
  • Qualidade mais importante que quantidade.
  • Ser tratado como "ativo" e não custo.

IMPORTANTE == CAPACIDADE DE PRIORIZAR! => FOCO.
PRODDUTIVIDADE => MOTIVAÇÃO É TUDO! => DESAFIOS.

3) Produção Enxuta (LEAN)
1- Eliminar desperdício.
2- Amplificar o aprendizado.
3- Adiar decisões ao máximo.
4- Entregar o mais rapidamente possível.
5- Delegar poder à equipe.
6- Incorporar integridade.
7- Ver o todo.

  • Indivíduos & Interações.
  • Software funcionando.
  • Colaboração com cliente.
  • Responder a mudanças.


Sunday, August 29, 2010

Tomar decições

É o peso dos prós e contras que tornam as escolhas complicadas.
Só erra quem decide!
Um caminho é se informar ao máximo sobre um assunto para se sentir seguro.
Outro é treino, repetição, a idéia é internalizar as reações.
A dedicação dirá quem vence a batalha. E ela depende muito de como o indivíduo desenvolveu a necessidade de decisão da unfância à vida adulta.
Isso inclui aprender a empreender, ter responsabilidades, pesar vantagens e desvantagens e, saber perder! Isso tudo é reforçado pelas figuras que cercam cada um.
Me questiono muito sobre qual "figura" estou passando para meu filho… complicado!
O segredo para uma boa decisão é informação.
O uso da razão com a intuição é o melhor método de escolha.