Amigos,
um amigo meu, Rodrigo Almeida de Oliveira, me enviou o artigo abaixo e achei muito interessante, compartilhando com vocês.
O Teste do Joel: 12 Passos para um Código Melhor
Blog criado para documentar e disseminar o conhecimento tecnológico adquirido por Thiago Campos Pereira e colaboradores.
terça-feira, novembro 09, 2010
Qual o nível da Reengenharia que você precisa?
As duas pulgas
Max Gehringer
Duas pulgas estavam conversando e então uma comentou com a outra:
- Sabe qual é o nosso problema? Nós não voamos, só sabemos saltar.
Daí nossa chance de sobrevivência quando somos percebidas pelo cachorro é zero. É por isso que existem muito mais moscas do que pulgas.
Elas então contrataram uma mosca como consultora, entraram num programa de reengenharia de vôo e saíram voando.
Passado algum tempo, a primeira pulga falou para a outra:
- Quer saber? Voar não é o suficiente, porque ficamos grudadas ao corpo do cachorro e nosso tempo de reação é bem menor do que a velocidade da coçada dele.
Temos de aprender a fazer como as abelhas, que sugam o néctar e levantam vôo rapidamente.
Elas então contrataram o serviço de consultoria de uma abelha, que lhes ensinou a técnica do chega-suga-voa. Funcionou, mas não resolveu.. . A primeira pulga explicou porquê:
- Nossa bolsa para armazenar sangue é pequena, por isso temos de ficar muito tempo sugando. Escapar, a gente até escapa, mas não estamos nos alimentando direito. Temos de aprender como os pernilongos fazem para se alimentar com aquela rapidez.
E então um pernilongo lhes prestou uma consultoria para incrementar o tamanho do abdômen. Resolvido, mas por poucos minutos.
... Como tinham ficado maiores, a aproximação delas era facilmente percebida pelo cachorro, e elas eram espantadas antes mesmo de pousar.
Foi aí que encontraram uma saltitante pulguinha, que lhes perguntou:
- Ué, vocês estão enormes! Fizeram plástica?
- Não, reengenharia. Agora somos pulgas adaptadas aos desafios do século XXI. Voamos, picamos e podemos armazenar mais alimento.
- E por que é que estão com cara de famintas?
- Isso é temporário. Já estamos fazendo consultoria com um morcego, que vai nos ensinar a técnica do radar. E você?
- Ah, eu vou bem, obrigada. Forte e sadia.
Mas as pulgonas não quiseram dar a pata a torcer, e perguntaram à pulguinha: - Mas você não está preocupada com o futuro? Não pensou em uma reengenharia?
- Quem disse que não? Contratei uma lesma como consultora.
- Mas o que as lesmas têm a ver com pulgas. quiseram saber as pulgonas...
- Tudo. Eu tinha o mesmo problema que vocês duas. Mas, em vez de dizer para a lesma o que eu queria, deixei que ela avaliasse a situação e me sugerisse a melhor solução. E ela passou três dias
ali, quietinha, só observando o cachorro e então ela me disse:
"Não mude nada. Apenas sente na nuca do cachorro. É o único lugar que a pata dele não alcança".
MORAL DA HISTÓRIA:
Você não precisa de uma reengenharia radical, nem de um complexo projeto para ser mais eficiente.
Muitas vezes, a GRANDE MUDANÇA é uma simples questão de reposicionamento.
Max Gehringer
Duas pulgas estavam conversando e então uma comentou com a outra:
- Sabe qual é o nosso problema? Nós não voamos, só sabemos saltar.
Daí nossa chance de sobrevivência quando somos percebidas pelo cachorro é zero. É por isso que existem muito mais moscas do que pulgas.
Elas então contrataram uma mosca como consultora, entraram num programa de reengenharia de vôo e saíram voando.
Passado algum tempo, a primeira pulga falou para a outra:
- Quer saber? Voar não é o suficiente, porque ficamos grudadas ao corpo do cachorro e nosso tempo de reação é bem menor do que a velocidade da coçada dele.
Temos de aprender a fazer como as abelhas, que sugam o néctar e levantam vôo rapidamente.
Elas então contrataram o serviço de consultoria de uma abelha, que lhes ensinou a técnica do chega-suga-voa. Funcionou, mas não resolveu.. . A primeira pulga explicou porquê:
- Nossa bolsa para armazenar sangue é pequena, por isso temos de ficar muito tempo sugando. Escapar, a gente até escapa, mas não estamos nos alimentando direito. Temos de aprender como os pernilongos fazem para se alimentar com aquela rapidez.
E então um pernilongo lhes prestou uma consultoria para incrementar o tamanho do abdômen. Resolvido, mas por poucos minutos.
... Como tinham ficado maiores, a aproximação delas era facilmente percebida pelo cachorro, e elas eram espantadas antes mesmo de pousar.
Foi aí que encontraram uma saltitante pulguinha, que lhes perguntou:
- Ué, vocês estão enormes! Fizeram plástica?
- Não, reengenharia. Agora somos pulgas adaptadas aos desafios do século XXI. Voamos, picamos e podemos armazenar mais alimento.
- E por que é que estão com cara de famintas?
- Isso é temporário. Já estamos fazendo consultoria com um morcego, que vai nos ensinar a técnica do radar. E você?
- Ah, eu vou bem, obrigada. Forte e sadia.
Mas as pulgonas não quiseram dar a pata a torcer, e perguntaram à pulguinha: - Mas você não está preocupada com o futuro? Não pensou em uma reengenharia?
- Quem disse que não? Contratei uma lesma como consultora.
- Mas o que as lesmas têm a ver com pulgas. quiseram saber as pulgonas...
- Tudo. Eu tinha o mesmo problema que vocês duas. Mas, em vez de dizer para a lesma o que eu queria, deixei que ela avaliasse a situação e me sugerisse a melhor solução. E ela passou três dias
ali, quietinha, só observando o cachorro e então ela me disse:
"Não mude nada. Apenas sente na nuca do cachorro. É o único lugar que a pata dele não alcança".
MORAL DA HISTÓRIA:
Você não precisa de uma reengenharia radical, nem de um complexo projeto para ser mais eficiente.
Muitas vezes, a GRANDE MUDANÇA é uma simples questão de reposicionamento.
segunda-feira, novembro 01, 2010
Controle de Código Fontes
O tema de como controlar os fontes de um programa (Source Control) já possui várias linhas de discussão na Internet e cada um defende uma linha.
Na minha opinião, a melhor ferramenta é o Microsoft Team Foundation Server (TFS), sendo que a maior vantagem é armazenar os arquivos em um banco de dados SQL Server, facilitando o backup/restore e a manutenção do banco, além de todas as vantagens que um banco de dados SQL Server fornece. O lado ruim é o custo, porém, se comparado aos benefícios, justifica o investimento.
A uns dez anos atrás, elaborei um manual de como usar o VSS, que em muitas empresas foram migradas para o TFS. Porém e durante vários anos, tivemos N problemas com este modelo e sempre me questionei se era a melhor forma de gerenciar códigos fontes.
Na semana passada, em uma reunião com a Microsoft sobre ALM, fiz este questionamento a mesma, expondo os problemas enfrentados. Em resposta, me passaram o site abaixo que explica como a Microsoft gerência os códigos fontes dos produtos, inclusive o Windows e o Office. O artigo é sensacional e responde a quase todas as minhas perguntas. O próximo passo é colocar o que está documentado em prática.
Abaixo o link para a documentação da Microsoft.
Visual Studio TFS Branching Guide 2010
Na minha opinião, a melhor ferramenta é o Microsoft Team Foundation Server (TFS), sendo que a maior vantagem é armazenar os arquivos em um banco de dados SQL Server, facilitando o backup/restore e a manutenção do banco, além de todas as vantagens que um banco de dados SQL Server fornece. O lado ruim é o custo, porém, se comparado aos benefícios, justifica o investimento.
A uns dez anos atrás, elaborei um manual de como usar o VSS, que em muitas empresas foram migradas para o TFS. Porém e durante vários anos, tivemos N problemas com este modelo e sempre me questionei se era a melhor forma de gerenciar códigos fontes.
Na semana passada, em uma reunião com a Microsoft sobre ALM, fiz este questionamento a mesma, expondo os problemas enfrentados. Em resposta, me passaram o site abaixo que explica como a Microsoft gerência os códigos fontes dos produtos, inclusive o Windows e o Office. O artigo é sensacional e responde a quase todas as minhas perguntas. O próximo passo é colocar o que está documentado em prática.
Abaixo o link para a documentação da Microsoft.
Visual Studio TFS Branching Guide 2010
PowerBuilder - Funções de conversão ascii para ebcdic/ebcdic para ascii
Função escrita por Jorge Batista Piazzarollo
// Converte ascii para ebcdic
long ll_pos, ll_len
as_ebcdic = ''
// Recupera o tamanho da string
ll_len = Len(as_ascii)
// Converte cada caractere
for ll_pos = 1 to ll_len
as_ebcdic = as_ebcdic + charA(tabela_toebcdic[AscA(Mid(as_ascii, ll_pos, 1)) + 1])
next
return
=====================================
//Converte ebcdic para ascii
long ll_pos, ll_len
as_ascii = ''
// Recupera o tamanho da string
ll_len = Len(as_ebcdic)
// Converte cada caractere
for ll_pos = 1 to ll_len
as_ascii = as_ascii + charA(tabela_toascii[AscA(Mid(as_ebcdic, ll_pos, 1)) + 1])
next
return
// Converte ascii para ebcdic
long ll_pos, ll_len
as_ebcdic = ''
// Recupera o tamanho da string
ll_len = Len(as_ascii)
// Converte cada caractere
for ll_pos = 1 to ll_len
as_ebcdic = as_ebcdic + charA(tabela_toebcdic[AscA(Mid(as_ascii, ll_pos, 1)) + 1])
next
return
=====================================
//Converte ebcdic para ascii
long ll_pos, ll_len
as_ascii = ''
// Recupera o tamanho da string
ll_len = Len(as_ebcdic)
// Converte cada caractere
for ll_pos = 1 to ll_len
as_ascii = as_ascii + charA(tabela_toascii[AscA(Mid(as_ebcdic, ll_pos, 1)) + 1])
next
return
Assinar:
Postagens (Atom)