Evolução da Tecnologia para 2016 segundo a IBM

Posted by on Dec 20, 2011 in Tecnologia | 0 comments

A IBM preparou uma Série de Vídeos chamados “IBM next 5 in 5″ onde apresenta sua visão sobre algumas evoluções tecnológicas que tendem a ser tornar realidade nos próximos anos. Veja abaixo os vídeos.

Energia

Você poderá gerar toda a energia que precisar usar.

Analytics

Já pensou que seu celular poderá tomar decisões por você?

Leitura do Pensamento

Basta pensar e seu celular ligará para sua tia Margarida.

Segurança

Você não precisará lembrar de milhares de senhas, você será a senha.

Mobilidade

80% da população mundial possuirá um celular,

Leia o PDF publicado pela IBM para mais informações.

Read More

A Ilusão do Gorila

Posted by on Dec 20, 2011 in Agile | 5 comments

Para David Koontz, todo o time de Scrum precisa de um Scrum Master Integral (100% do tempo), para provar o motivo ele se apóia nessa interessante experiência chama “The Monkey Business“.

Veja o vídeo:

Koontz afirma que o Scrum Master deve estar em busca de Impedimentos o tempo todo. Se você está envolvido em uma tarefa provavelmente perderá os impedimentos óbvios e as mudanças sutis nos membros do time e no ambiente.

Para Jeff Sutherland, um dos criadores do Scrum, times de Scrum sem um ScrumMaster nunca atingirão o seu potencial total (disse no grupo de discussão Scrum Development do Yahoo).

Eu (André Faria) já prefiro ir mais na linha da Toyota e dizer que, não há uma única solução para todos os times, como sempre, depende do contexto. Cada contexto é uma realidade diferente e precisa de uma solução diferente. Mas fica aí a Provocação para você pensar. Vale a pena ter um ScrumMaster/Facilitador no seu Time trabalhando em tempo integral? Será que você está vendo os Gorilas Passarem?

Read More

Acredite em algo maior do que você

Posted by on Dec 20, 2011 in Empreendedorismo | 2 comments

Acabei de ouvir a gravação de uma palestra realizada em Stanford do Ex CEO da MySQL Marten Mickos, chamada “Acredite em algo maior do que você mesmo  (ou Believe in Something Bigger than Yourself)”. Muito inspirador, recomendo fortemente que você ouça também.

Alguns pontos interessantes:

  • Marten havia trabalho em 6 Startups antes da MySQL.
  • Empreendedorismo está ligado com Acreditar. Para perseverar é preciso acreditar de verdade.
  • Acredite em si mesmo e no seu potencial (mas sem arrogancia).
  • Você também precisará ter outras pessoas que acreditam em você por perto.
  • Tenha um “Driving Mantra“, um propósito que guia as ações da sua organização.
  • A fato de a Oracle ter processado a MySQL, foi uma excelente propaganda para a MySQL (apesar de inicialmente parecida que iria derubar a empresa).
  • O Golfinho é Rápido, Inteligente, Gentil, e em Grupos matam Tubarões, por isso o escolhemos como Simbolo.
  • Quando a Oracle comprou a InnoDB disseram: “Tentar matar a MySQL comprando a InnoDB é como tentar matar um golfinhobebendo a água do Oceano“.
  • A pessoa que é o maior ativo da sua organização pode repentinamente tornar-se o maior passivo.
  • Marten menciona a frase de Petter Drucker: “A Cultura come a Estratégia no Café da Manhã.
  • Quando perguntado sobre como sabe que as pessoas trabalham de casa, respondeu: “Como você sabe que as pessoa trabalham no escritório? Só por que elas dão as caras, porque vão as reuniões, dizem qualquer besteira, mas dizem algo? Nós sabemos que as pessoas trabalham porque elas apresentam resultados.”

Vale a pena ouvir, recomendo assinar o Podcast no iTunes.

Read More

Arquitetura de Software: Concorrência

Posted by on Dec 19, 2011 in Software | 0 comments

Acredito que concorrência é um dos tópicos mais básicos de arquitetura de software, e que deve ser conhecido e estudado por todo desenvolvedor de software. Este ano, fiz uma apresentação introdutória sobre o tema na Bluesoft, e gravei um episódio do DeveloperTalk.tv sobre assunto.

Confira os slides e vídeos e aprenda um pouco mais sobre:

  • Locking (Pessimista e Otimista)
  • Leituras (Consistente e Incosistente)
  • Compartilhamento de Recursos
  • Contextos e Escopos de Execução
  • Transações ACID
  • Deadlocks
  • Níveis de Isolamento Transacional

Read More

Apresentação sobre Programação em Par

Posted by on Nov 30, 2011 in Agile | 0 comments

Fiz essa apresentação na Bluesoft há alguns meses atrás, inspirado no curso de práticas da engenharia ágil do “Neal Ford on Agile Engineering Practices”.

Falo sobre:

  • Produtividade
  • Flow State
  • Keycaster
  • Pairing
  • Mentoring
  • Guidelines
  • Ping Pong Pairing
  • Tech Lead
  • Pair Mariage

Veja o vídeo do vimeo, e acompanhe os slides no slideshare.

Read More

Cálculo Financeiro

Posted by on Nov 27, 2011 in Finanças | 1 comment

Como parte do meu Personal MBA, estou estudando Administração Financeira, e gostaria de compartilhar neste post alguns conceitos básicos que acredito podem ser úteis para qualquer empreendedor e investidor.

Juros

O primeiro grande conceito é o Juro, que pode ser entendido como o custo do dinheiro. É o preço que se cobra para emprestar dinheiro, ou o retorno que se espera ganhar em operações de investimento.

Essencialmente, há dois critérios de capitalização de juros: o simples (ou linear) e composto (ou exponencial).

Juros Simples

No Juro Simples, não se cobra juros dos juros. Os juros incidem unicamente sobre o principal, ou seja, capital inicialmente aplicado, e geram, em consequência, remunerações, ou custos, diretamente relacionados ao capital e prazo envolvidos na operação. Pode-se calcular o Juro Simples com a seguinte fórmula:

M = C + J => Montante (ou Valor Futuro) = Capital Inicial (ou Valor Presente) + Valor do Juros.

J = C x i x n => Valor do Juros = Capital Inicial x taxa de juros x número de parcelas.

Taxa nominal de juros: representa a taxa de juros contratada em uma operação financeira. Essa taxa é normalmente expressa para um período superior ao da incidência dos juros. Um financiamento pode ser concedido para liquidação em pagamentos mensais, sendo a taxa nominal de juros contratada de 24% ao ano. Nesse caso, o período da operação é ano e o da incidência do juro é o mês, e  a taxa mensal das prestações é de 2%. Vale ressaltar que a taxa nominal de juros, não é o mesmo que a taxa efetiva da operação, pois pode haver outras obrigações como comissões, IOF, etc. 

Taxa proporcional: se duas taxas de juros são expressas em diferentes unidades de tempo, são definidas como proporcionais quando produzem valores iguais numa mesma unidade de tempo. Por exemplo, considere hoje uma quantia de $100,00 a juros simples de 10% ao mês nominal. Seriam taxas proporcionais 20% ao bimestre, 30% ao trimestre, etc.

Juros Compostos

Os juros compostos, incidem sobre o saldo acumulado. Para calculá-los recomenda-se a utilização de uma calculadora financeira como a HP12C. Você pode baixar uma versão gratuita para o Mac OSX.

Veja o vídeo: (em inglês)

Conclui-se que:

M = C (1 + i) ^ n

C = M / (1 + i) ^ n

Taxa equivalente e taxa efetiva:  Taxas equivalentes são taxas de juros que geram montantes idênticos quando capitadas sobre um mesmo capital e prazo. 2% ao mês., 6.12% ao trimestre e 12,62 ao semestre são taxas equivalentes, ou sejam produzem o mesmo valor futuro ao final de um mesmo período. Há uma fórmula para se obter a taxa de juros equivalente.

Capitalização e Descapitalização: faz-se uma descapitalização para calcular o valor presente através do valor futuro, e uma capitalização para calcular o valor futuro através do presente.

Séries de Pagamentos ou Recebimentos

Quanto às periodicidades dos pagamentos, podem ser uniformes ou não uniformes. Quando os pagamentos ou recebimentos não forem iguais no que diz respeito ao valor de seus termos ou à periodicidades, o valor presente (PV) é obtido pela somatória de cada um dos fluxos de caixa atualizados (descapitalizados) até o momento atual (presente). O PMT é o valor de cada pagamento ou recebimento periódico (quando uniforme). Aprenda mais.

Coeficiente de financiamento (CF): Indica o valor que deve ser pago por cada unidade monetária que está sendo tomada emprestada. Para R$1,00 emprestado, quanto o devedor deverá pagar de prestação?

Anuidades Perpétuas: Algumas situações financeiras, podem prever durações indeterminadas (perpétuas). Os Consols, por exemplo, são títulos do mercado financeiro que não tem vencimento, remunerando os investidores com juros indeterminadamente.

IRR - Internal Rate of Return

Também chamada de Taxa Interna de Retorno (TIR), refere-se a taxa de desconto da descapitalização. Trata-se da taxa de desconto, que quando aplicada a uma série de fluxos de caixa, gera um resultado igual ao valor presente da operação. É a taxa necessária para igualar o valor de um investimento (valor presente) com os seus respectivos retornos futuros ou saldos de caixa. Quando usada em análise de investimentos significa a taxa de retorno de um projeto. É utilizada para para verificar se um investimento vale a pena, quando maior o IRR, mais valioso é um projeto.

Este vídeo explica muito bem o que é IRR (em inglês):

Veja alguns exemplos de cálculo de IRR do mercado imobiliário (em inglês):

NPV – Net Present Value

Em português, VPL (valor presente líquido) ou VAL (valor atual líquido) é a fórmula matemático-financeira capaz de determinar o valor presente de pagamentos futuros descontados a uma taxa de juros apropriada, menos o custo do investimento inicial. É amplamente utilizada para comprar diferentes opções de investimento e encontrar a melhor oportunidade.

Veja como calcular o NPV:

Referências

Curso de Administração Financeira, Alexandre Assaf Neto e Fabiano Guast Lima – 2a. Edição.

Wikipedia – Valor presente Líquido

Read More

Mas o que faz um Product Owner?

Posted by on Nov 22, 2011 in Agile | 6 comments

Recentemente recebi uma pergunta no Facebook, sobre o que faz um PO. Gostaria de responder a pergunta e deixar minha opinião registrada através deste post.

A pergunta foi mais ou menos assim:

Onde eu trabalho estou para assumir o desafio de ser PO, e parece que a empresa não tem bem definido o quais são as funções do PO pois alguns dos POs desenham diagramas como um analista de requisitos, isto está correto?

Segundo eles esta é a lista de atividades:

  • Entender, criticar, questionar e mapear processos de negócio do cliente;
  • Levantar requisitos funcionais e não funcionais de sistema;
  • Mapear e descrever atores e casos de usos/user stories de sistema;
  • Definir complexidade dos requisitos de negócio;
  • Elaborar documento de escopo do sistema;
  • Prototipar interfaces de usuário do sistema;
  • Realizar reuniões de licitação de requisitos com cliente;

Vamos então as origens. De acordo com o Scrum Guides:

O Product Owner é responsável por maximizar o valor do trabalho que o Time de Scrum faz, [...] é  a única pessoa responsável pelo gerenciamento do Product Backlog e por garantir o valor do trabalho realizado pelo Time. Essa pessoa mantém o Product Backlog e garante que ele está visível para todos. Todos sabem quais itens têm a maior prioridade, de forma que todos sabem em que se irá trabalhar.

O Product Owner é uma pessoa, e não um comitê. Podem existir comitês que aconselhem ou influenciem essa pessoa, mas quem quiser mudar a prioridade de um item, terá que convencer o Product Owner. Empresas que adotam Scrum podem perceber que isso influencia seus métodos para definir prioridades e requisitos ao longo do tempo.

Para que o Product Owner obtenha sucesso, todos na organização precisam respeitar suas decisões. Ninguém tem a permissão de dizer ao Time para trabalhar em um outro conjunto de prioridades, e os Times não podem dar ouvidos a ninguém que diga o contrário. As decisões do Product Owner são visíveis no conteúdo e na priorização do Product Backlog. Essa visibilidade requer que o Product Owner faça seu melhor, o que faz o papel de Product Owner exigente e  recompensador ao mesmo tempo.

Isso dito, vamos fazer uma analise.

Product Owner (PO) é apenas um Papel do Scrum

Scrum é um  é um processo de desenvolvimento iterativo e incremental para gerenciamento de projetos e desenvolvimento ágil de software [Wikipedia]. O processo define 3 papéis, entre eles o do Product Owner . Dessa forma em se tratando de Product Owner, podemos afirmar apenas que suas responsabilidades são apenas o que dita o processo:

  1. Maximizar o valor do trabalho que o Time
  2. Gerenciar o Backlog (Manter, Priorizar, etc)
Isso significa que um Product Owner não pode fazer nada além disso? Não. Product Owner  não é um Cargo, é um papel, ou seja, é muito provavel que a pessoa que assumir esse papel tenha outras responsabilidades na sua organização, e isso tem uma relação direta com o contexto (projeto, produto, equipe,  cliente, etc.).
O Product Owner pode ser o próprio cliente, pode ser uma pessoa que faz parte da equipe do cliente (um médico, um advogado, um contador, um CEO), pode ser um gerente de produtos, pode ser um analista de negócios, etc. Se essa pessoa tiver disponibilidade para estar perto do time e estiver capacitada a maximizar o valor do trabalho do time e gerenciar o backlog, do ponto de vista do processo, não há nada de errado com isso.
Em outras palavras, se o PO fizer bem o papel, e tiver outras atividades, não há problema algum, e essas outras atividades que fizer estiverem relacionadas à gestão do Backlog e a Maximizar o trabalho do time, melhor ainda.

Mas então quais são essas atividades?

  • Criar protótipos?
  • Fazer Pesquisas de Mercado?
  • Detalhar Requisitos?
  • Visitar Diferentes Clientes?
  • Pesquisar Produtos Concorrentes?
  • Conversar com Usuários?
  • Desenhar Diagramas?
  • Escrever Testes de Aceitação?
  • Documentar?
  • Manter um Documento de Visão?
  • Servir Café aos Desenvolvedores?
A resposta, na minha opinião, é: Depende do Contexto/Cenário!
Alguns produtos são criados para um único cliente, outros para centenas de milhares, alguns envolvem grande complexidade, outros baixíssima, alguns produtos envolvem diversas áreas de conhecimento, como é o caso de um ERP, por exemplo, alguns produtos são tão grandes, ou tem um prazo tão curto que precisam que diversos times trabalhem simultaneamente para um mesmo target release (Agile Release Train), alguns produtos são construídos em empresas com 20 funcionários, outros em empresas com milhares.

Conclusão

Para todo problema complexo existe sempre uma solução simples, elegante e completamente errada. 

H L Mencken

Podemos concluir que não existe bala de prata! Ou seja não há um conjunto único de atividades (baixo nível) que um PO possa fazer que seja eficiente em todos os projetos e contextos. Você precisará, através de um processo de inspeção e adaptação, encontrar quais são essas atividades que fazem sentido na sua organização.
Read More