Arquivo de julho 2007

Este será o primeiro de uma série de postagens documentando o processo de migração do Oracle 9i para o 10g. Algumas decisões foram tomadas no meio do projeto e portanto não será possível adotar este guia ao pé da letra para todos os casos de migração possível. Particularmente, fiz a opção de não utilizar a ferramenta de migração automática da Oracle e seguir o esquema tradicional de importar e exportar os dados manualmente. Este guia poderá ser utilizado em grande parte numa migração com outras versões do Oracle como origem dos dados, mas isto não foi testado. Outras decisões foram tomadas para maximinizar a flexibilidade das instalações e importações como realizar as instalações sem a interface gráfica, utilizar um particionamento de disco um pouco mais agressivo (sem o uso do ASM) e realizar a importação dos dados esquema por esquema.

Fase I - Planejamento

Conheça o banco de dados atual:

1 - Veja como anda a ocupação dos discos, veja se o servidor novo tem a mesma configuração do atual. Veja se pretende manter o esquema de particionamento atual ou se seria um bom momento para mudar. O Oracle 10g trás uma nova ferramenta chamada ASM, pode ser uma alternativa interessante de se utilizar, se você tiver um número grande de discos ou grupos de discos (RAID) e principalmente se você pretende utilizar o RAC em um futuro próximo e já está utilizando um Storage externo. O ASM funciona muito melhor que utilizar RAW devices ou OCFS, mas ainda apresenta uma limitação conhecida: não é possível manipular os arquivos dentro de uma partição ASM através do SO. Além disso anote:
- O espaço ocupado por cada tablespace + margem de segurança + taxa de crescimento esperada;
- O número de datafiles que cada tablespace possui. Você pode utilizar os novos tablespaces do tipo bigfiles para tablespaces muito grandes;
- O espaço ocupado pelos archives;
- O espaço ocupado pelos backups lógicos e físicos;
- O número de logs de REDO;

2 - Conheça os recursos utilizados como JOBs, DB Links, Packages, XML, BLOBs, Streams, etc.

3 - Conheça os usuários, roles e permissões. Permissões de sistema que os usuários e roles possuem também são alvo de checagem cuidadosa neste processo.

4 - Verifique como anda o desempenho do seu banco. Apesar de muitas funcionalidade mudarem no 10g, você não deve desprezar os sinais que você já tem hoje. A distribuição dos Tablespaces, archives, logs de redo devem ser revistos. Os ajustes de memória provavelmente serão alterados, mas vale a pena checar o tamanho da SGA e PGA além do tamanho dos blocos. O momento da migração é um momento propício para fazer algumas mudanças, uma vez que exigem a parada do banco de dados, exportação e reimportação de dados, processo que será realizado na migração. No entanto, tome cuidado para não exagerar na dose:
- Se não tiver segurança no que estiver fazendo, não faça;
- Se for utilizar uma nova funcionalidade que nunca testou antes, não teste agora faça isso depois da migração;
- Se precisar comparar o desempenho entre o 9i e o 10g, você deve manter ao máximo a estrutura atual;
- Muitas mudanças ao mesmo tempo aumentam as chances de erro no processo;
- Se o tempo disponível para a migração for crítico, algumas alterações podem exigir tempo extra para implementar e testar.

5 - Conheça o tempo que leva para:
- Realizar um export e import full do banco de dados;
- Realizar um export e import por schema do banco de dados;
- Copiar todos os datafiles;

6 - Reserve espaço adicional para receber os arquivos de backup.

Fase II - Backup

1 - Pare o banco de dados e assegure-se que ninguém mais, além de você pode entrar no banco de dados. Você pode fazer subindo o banco de dados no modo restrito. Você também pode garantir que ninguém altere os dados colocando os tablespaces apenas para leitura.

2 - Realize um export full do banco de dados e um export para cada schema a ser migrado. Não exporte os schemas referentes a ferramentas do próprio Oracle.

3 - Rode scripts para copiar os dados sobre:
- Tablespaces e datafiles e quotas em datafiles;
- Usuários, roles, permissões e permissões de sistema;

Se estiver utilizando, copie também:
- Sinônimos públicos;
- Nomes para diretórios externos;
- Contexto de aplicações
- Definições de segmentos de rollback
- Perfis de usuários

4 - Se for migrar e utilizar o mesmo servidor, então copie para outro local:
- Todos os datafiles, controlfiles e logs de redo;
- Todos os exports gerados anteriormente;
- O init.ora, tnsnames.ora, listner.ora, sqlnet.ora;
- Outros scripts de manutenção criados no SO;
- Todos os dados gerados anteriormente (tablespaces, usuários, etc.)

Fase III - Preparação do SO:

Eu particularmente gosto de formatar o servidor onde a instalação será feita e configurar tudo a partir do zero. É comum durante a vida de um servidor serem instalados pacotes desnecessários, alterações em configurações não documentadas e outras coisas mais. Se você tem 100% de confiança sobre a configuração do seu SO, então você não precisa reinstalar ele.

1 - Instale o SO:
- Tome cuidado para não instalar pacotes desnecessários, particularmente eu prefiro não instalar a interface gráfica como um todo, o que economiza um pouco de espaço em disco, um pouco de memória e abre menos brechas de segurança;
- Faça o particionamento dos discos minuciosamente de acordo com o seu planejamento prévio;
- Instale todos os paths de segurança no SO.

2 - Instale as dependências do Oracle

3 - Crie os usuários e grupos no SO

4 - Crie os diretórios necessários e dê as permissões adequadas neles

5 - Faça alterações nos parâmetros do kernel e outros arquivos de configuração

6 - Copie o software do Oracle para o seu HD

7 - Copie os dumps e todos os arquivos a serem utilizados para para a criação do banco de dados

Fase IV - Instalação do Servidor Oracle:

Aqui você fará a instalação do software da Oracle. Existem 3 formas básicas de se fazer isso:
- Utilizando o Oracle Universal Instaler (OUI) no modo interativo, que é o método mais conhecido e exige a instalação da interface gráfica no servidor;
- Utilizando um arquivo de respostas para automatizar algumas respostas para o OUI, que automatiza e padroniza uma parte do trabalho e tem respostas visuais gráficas, o que exige a instalação da interface gráfica no servidor;
- Utilizar um arquivo de respostas no modo silencioso, que não exige o uso da interface gráfica no servidor.

1 - Configure as variáveis de ambiente necessárias.

2 - Crie o arquivo /etc/orainst.loc .

3 - Configure as variáveis de ambiente adequadas.

4 - Rode o instalador do Oracle no modo escolhido.

5 - Aplicaque os paths de atualização do Oracle

Fase V - Instalação do Banco de Dados Oracle

Novamente você tem 3 formas básicas de criar o seu banco de dados:
- Durante a instalação do Servidor Oracle que é a forma mais simples e menos flexível, que eu não recomendo para ambientes de produção;
- Utilizando o Data Base Configuration Assistant (DBCA), que é uma forma bastante flexível, mas exige o uso da interface gráfica instalada no servidor;
- Utilizando scripts SQL para a criação do banco de dados, que é a forma mais complexa, mais flexível e que não exige o uso da interface gráfica;

1 - Configurar as variáveis de ambiente

2 - Criar um arquivo init.ora

3 - Utilize o DBCA ou rode seus scripts para criar o banco de dados

4 - Configure a rede (listner.ora, tnsnames.ora, sqlnet.ora)

5 - Teste o banco de dados

6 - Crie o pfile

Fase VI - Importe os dados

1 - Crie os tablespaces adicionais

2 - Crie os usuários, roles e privilégios de sistema

3 - Crie os alias para diretórios dumps, perfis e DB Links.

4 - Importe os dados a partir dos exports por esquema

5 - Crie os privilégios e os sinônimos públicos e outros objetos exportados anteriormente

6 - Importe novamente os dados por esquema

7 - Compile os views, packages, procedures, functions e triggers

8 - Rode um analyze em todas tabelas e índices

9 - Realize testes preliminares

Fase VII - Configurações finais

1 - Configure as variáveis de ambiente no usuário Oracle

2 - Configure a inicialização automática do Oracle em /etc/init.d/

3 - Crie os scrips de manutenção

4 - Coloque a instância no modo archive

5 - Ative os parâmetros de auditoria mínimos

6 - Verifique a utilização do espaço em disco

7 - Verifique as políticas de segurança

8 - Crie um script para o controlfile

Fase VIII - Testes

1 - Teste os backups

2 - Teste a reinicialização do servidor

3 - Teste as aplicações

4 - Monitore o desempenho

5 - Termine a documentação do processo antes de liberar o servidor

6 - Libere o servidor

7 - Monitore atentamente o servidor nas primeiras semanas

Tags: , ,

Comments Nenhum comentário »

Após a publicação do resultado do Benckmark realizado pela Sun já comentado de passagem por aqui, comentários importantes se espalharam por aí. De olho no Blog do Sr. Josh Berkus, vi que ele publicou hoje comentários sobre o que foi publicado de notório sobre isso na Internet.

A primeira coisa interessante é notar o que a Information Week publicou sobre isso. Vale lembrar que o jornalista que escreveu o artigo não é um simpatizante do Software Livre. Aparentemente o pessoal do MySQL concordou graciosamente com a opinião do Josh, o que mostra que o pessoal que realmente entende disso no MySQL não fala mais bobagem sobre o assunto. É claro que estamos falando de um Benckmark focado em ambiente transacional, onde o uso do MyISAM é proibitivo. Vejamos como o MySQL vai se sair com o seu novo storage engine na próxima versão. Se eles conseguirem abandonar definitivamente o InnoDB (que pertence a Oracle, hoje) será realmente um feito notável e um grande avanço para os bancos de dados livres.

Já um blog sobre Oracle, questionou um pouco alguns resultados, mas de qualquer forma, isso não quer dizer que eles não sejam significativos. Seja como for… será interessante aguardar a disponibilização para download do Oracle 11g. Não postei nada sobre isso, por um motivo simples, a nova versão e sua documentação não estão disponíveis para download até a data deste post. De qualquer forma, o que vejo nas últimas versões do Oracle são grandes melhorias na parte de administração do Oracle e poucas melhorias na parte de performance. Já o PostgreSQL tem lançado uma versão por ano com um aumento de performance significativo. É claro que este aumento de performance a cada versão do PostgreSQL (e existem boas novidades previstas na versão 8.3) não poderão se manter neste ritmo por muitos anos, mas é esperado como certo que em alguns anos o PostgreSQL ultrapassará o Oracle, mantendo um TCO significativamente mais baixo.

Sem dúvida, teremos mais boas notícias em breve mostrando que as coisas mudam, e rapidamente!

Tags: , , , , ,

Comments 2 comentários »

Há algumas semanas eu conheci uma pessoa aficcionada por TV e Cinema. Chegou aqui no trabalho umas 17h para migrar a versão de um sitema com um boneco do Shrek e me contou que fazia parte de um grupo de pessoas que cria legendas em pt_BR para seriados em inglês. Eles só disponibilizam as legendas, se disponibilizarem o seriado, correm o risco de serem processados. É claro que isso pode ser baixado via P2P e não precisa de um site para isso. Alguém assiste e grava o episódio inédito na TV lá nos Estados Unidos. O pessoal coloca isso na Web e eles baixam aqui no mesmo dia (todos tem conexões de 4Mbit/s em casa…) e na manhã do dia seguinte as legendas já estão disponíveis, revisadas e sincronizadas. Um feito e tanto.

Então esta mesma pessoa me contou que no ano passado fazia parte de uma das equipes que traduziu o 6º livro do Harry Potter em cerca de uma semana. Houve uma certa disputa entre várias equipes para ver quem terminava a tradução primeiro. Assim como no ano passado, a versão traduzida oficial só chega meses depois, em Dezembro. Enquanto isso no mesmo dia em que o livro foi lançamento na Ingraterra as páginas escaneadas foram mandadas pela web para equipes de tradução e revisão. A versão foi traduzida em cerca de uma semana. Com qualidade provavelmente questionável, certamente, mas o suficiente para saciar a curiosidade de muitos leitores que não aguentam esperar até o final do ano ou não conseguem ler a obra na língua original.

Toda a operação é digna de piratas, sanguinários no melhor do estilo dos “Piratas do Tietê” é na verdade conduzida por jovens estudantes, boa parte com menos 18 anos. Eles não ganham dinheiro com isso. Não vendem nenhum produto. E mais uma vez a Internet sai quebrando paradgmas. O mercado fonográfico já vem enfrentando sérias dificuldades com a popularização dos MP3 Players. O formato de mídia conhecida como Compact Disc começa a definhar lenta e inexoravelmente. Ontem vi que já estão fazendo pen drives de 32 GB com o mesmo tamanho de um que continha apenas 128MB há poucos anos atrás.

Embora a tradução do último livro tenha sido rápida, e tenha recebido até notas de jornal, parece que o livro deverá vender bem aqui no Brasil quando a tradução oficial chegar nas livrarias. O motivo não é a qualidade questionável da tradução dos nossos jovens tradutores amadores, a questão é que ler um livro de 784 páginas num monitor não é muito agradável. Imprimir também não é uma alternativa muito boa, pois se você imprimir todas as páginas em A4 terá dificuldade em carregar o catatau de páginas, isso se o fizer em frente e verso.

Ai eu lembro do livro “A Vida Digital” do mesmo Nicholas Negroponte que hoje promove o famoso OLPC. O livro foi escrito há mais de 10 anos e previu muitas coisas que hoje se tornaram realidade. Uma das previsões mais incríveis foi a de que teremos “folhas de papel digital”, onde o monitor assumirá um formato tão confortável em termos de contraste, tamanho e peso como uma folha de papel. De certa forma estamos no caminho, os Tablets estão melhorando muito e já há opções muito interessantes. Se isso continuar… será o fim de uma das mais tradicionais mídias conhecidas até hoje, o papel! Até isso acontecer, a guerra pelos direitos autorais vai continuar crescendo e a fonte de receita dos “fabricantes de conteúdo” vai continuar migrando cada vez mais para serviços, como tem acontecido com os jogos eletrônicos que oferecem serviços para os jogos on-line ao invés de se concentrar na venda de licenças do jogo em si.

Seria interessante observar o que a máquina de fazer dinheiro que se tornou a saga de Harry Potter pretenderá fazer com os tradutores não oficiais do livro. Hoje, esta ação realizada por adolescentes não diminui os lucros astronômicos da editora. Se esta for inteligente, dará no máximo um puxão de orelhas em cada um. Mas o que acontecerá quando o papel digital chegar? Enquanto a história passa a contar com cada vez mais bytes e menos átomos, a expectativa é de que em poucos anos veremos muitas transformações acontecendo na nossa “era da informação”. De toda forma uma coisa em que eu acredito é que A Revolução Não Será Televisionada

Tags: , ,

Comments 5 comentários »

Olhando as estatísticas do SAVEPOINT descobri dois novos blogs dedicados exclusivamente ao PostgreSQL em pt_BR:

O primeiro está apenas começando, mas deixou um link para a pesquisa do evento de PostgreSQL, o que me deixou feliz :-) . O segundo já tem algumas dicas interessantes, e vem trazendo textos bastante pertinentes.

Parabéns aos mantenedores dos blogs e bons posts!

Se algum visitante aqui conhecer outro blog em pt_BR que tenha foco em PostgreSQL, por favor me avisem!!!

Tags: ,

Comments 1 comentário »

(Legião Urbana)

“É sangue mesmo, não é mertiolate”.
E todos querem ver E comentar a novidade
“É tão emocionante um acidente de verdade”.
Estão todos satisfeitos
Com o sucesso do desastre
Vai passar na televisão.

“Por gentileza, aguarde um momento.
Sem carteirinha, não tem atendimento
- Carteira de trabalho assinada, sim senhor.
Olha o tumulto: façam fila por favor.
Todos com a documentação.
Quem não tem senha, não tem lugar marcado.
Eu sinto muito mas já passa do horário.
Entendo seu problema mas não posso resolver:
É contra o regulamento, está bem aqui, pode ver.
Ordens são ordens.
Em todo caso, já temos sua ficha.
Só falta o recibo comprovando residência.
pra limpar todo esse sangue, chamei a faxineira
- E agora eu já vou indo senão eu perco a novela
E eu não quero ficar na mão”.

Comments 4 comentários »

Para quem não sabe, PGCon é o nome do evento internacional que vem ocorrendo nos últimos anos sobre PostgreSQL. Este é o evento mais importante do PostgreSQL e reúne a maioria dos desenvolvedores do PostgreSQL. Um novo fenômeno é o surgimento de eventos locais de PostgreSQL. Nestes dias 6 e 7 de julho foi a vez do PG Day que ocorreu na Itália. O evento contou com palestrantes internacionais e gente da comunidade local e está tendo uma boa cobertura no Planet PostgreSQL. E qual é a grande novidade agora? Heim? Adivinha?

PG Con Day Brasil… sim senhor, a versão tupiniquim do maior evento de PostgreSQL já tem data: 7 e 8 de dezembro de 2007, em São Paulo. A chamada para a comunidade ocorreu na lista nacional no dia 29/06 enquanto a organização segue pela lista pgbr_dev. Para o nosso azar, o servidor onde o site e a lista estão hospedados (por cortesia da CELEPAR) teve problemas nos seus HDs. A lista ficou parada alguns dias e o site da comunidade ainda não voltou. O faw, que gentilmente administra o servidor está aproveitando para fazer uma faxina e atualizar o servidor para a nova versão do Debian.

Mas enquanto as coisas não são regularizadas, combinamos na lista de lançar uma pesquisa aberta para ver quais são os temas que as pessoas gostariam de ver no evento. Para isso, hospedei um questionário aqui mesmo no midstorm com algumas perguntinhas. Você, caro leitor, está mais que convidado para responder o questionário e nos ajudar a montar uma grade para o evento que contemple os anseios da comunidade.

Preencha o questionário sobre o PGCon Day Brasil AQUI

Além disso, o Sr. Josh Berkus anunciou o primeiro Benchmark realizado pela SUN com PostgreSQL… vale a pena dar uma olhada. E para quem está curioso para saber como anda o desenvolvimento da versão 8.3 do PostgreSQL, dê uma espiada na situação atual dos patchs que já foram aplicados, os pendentes e o que vai ficar para a verão 8.4.

Tags: , , , , ,

Comments 1 comentário »

Há algum tempo eu escrevi sobre a lei dos 80-20 por aqui. Mas após uma conversa com o Everaldo Canuto, fiquei com vontade de escrever novamente sobre isso. Existem dezenas de linguagens disponíveis e utilizadas com frequência. Algumas tem nichos específicos de mercado como LISP, LUA ou AWK. E várias outras concorrem por fatias semelhantes de mercado. Em Banco de Dados, as coisas mudam, existem poucos fornecedores de SGDB que se destacam no mercado. Além disso, existe uma vontade mais que justificada de centralizar todos os dados de uma instituição no mesmo banco de dados. Administrar um ambiente com vários SGDBs de fornecedores diferentes é uma grande dor de cabeça, embora isto quase sempre ocorra. Mesmo assim, usar a ferramenta adequada para cada problema parece algo que merece ponderação. Existem inúmeros projetos em que a escolha do SGDB utilizado sequer passa por uma verificação das características realmente desejadas. Vejamos algumas opções que podemos utilizar e nem sempre são citadas:

Arquivos texto

Quem disse que não dá para fazer um monte de coisas bacanas guardando as informações apenas em arquivos texto? Por trás da cortina, há uma infinidade de programas que guardam seus dados em arquivos texto. Em aplicações de desktop, monousuário com uma quantidade de dados pequena e pouco complexos, os arquivos texto podem ser muito vantajosos. Arquivos de configuração são um exemplo comum, mas aplicações que trabalham com um pequeno volume de dados e poucas tabelas podem utilizar arquivos texto com tranquilidade.

Vantagens:

  • Tecnologia de domínio público
  • Praticamente toda linguagem de programação possui funções embutidas para ler e gravar dados em arquivos texto
  • Com um volume de até alguns milhares de linhas, o acesso pode ser bem mais rápido e simples que em um SGDB tradicional;
  • Você pode utilizar formatos como XML, CVS e outros que podem ser importados e exportados por outros programas facilmente.
  • Ocupa pouco espaço, é simples de realizar backup e consome poucos recursos da máquina.

Se você precisa usar uma quantidade maior de dados e quer o poder de uma linguagem SQL na mão, o SQLite pode ser a solução! Não é um SGDB, é uma biblioteca leve que você utiliza junto com o seu programa. Se você tem uma aplicação local como um site web com até 100 mil hits por dia, até 1GB de dados e poucas gravações concorrentes, o SQLite uma opção imbatível.

Vantagens:

  • Licenciado como Domínio Público
  • SQL e ACID
  • Apenas um arquivo para todo o banco de dados
  • Ocupa pouco espaço em disco (cerca de 250Kb)
  • Consome poucos recursos da máquina

Você tem uma estrutura de dados mais rígida e está preocupado com velocidade, transações concorrentes, replicação e precisa fazer tudo isso com hardware limitado? O BDB é uma biblioteca assim como o SQLite, mas com características menos flexíveis e mais robustas. É excelente em aplicações embarcadas e uma opção natural para serviços de diretório e outras aplicações, Você não tem uma linguagem de consultas como o SQL, tudo tem de ser definido via programação, você tem liberdade de definir estruturas totalmente adaptadas para a sua aplicação. Se você pode abrir mão da flexibilidade do SQL e precisa de desempenho e robustez, o BDB é uma escolha imbatível.

Vantagens:

  • Licença permite uso sem custos para aplicações com licenças livres ou para uso local
  • ACID, controle de transações avançado com MVCC
  • Replicação
  • Consome poucos recursos com bom desempenho

Ok, você precisa de um SGDB com todas a flexibilidade do SQL, funções, gatilhos, ACID, índices avançados e suportar diferentes aplicações com confiabilidade e robustez. O PostgreSQL é provavelmente um bom candidato. O PostgreSQL tem crescido com muita força nos últimos 10 anos e já provou que é capaz de suportar aplicações pesadas com bom desempenho.

Vantagens:

  • Licença BSD
  • Excelente conformidade com o padrão SQL
  • PL/pgSQL, PL/python, PL/Perl, PL/Ruby, PL/Java e outras linguagens procedurais
  • Replicação com Slony, pgPool e Hot Stand By
  • Particionamento de tabelas, MVCC, GiST, Tablespaces, Point In Time Recovery e outras funções avançadas

Há casos em que nenhuma destas soluções pode servir… em aplicações muito específicas, com grandes exigências de clusterização ou onde as demandas de integração com SGDBs já existentes são impressindíveis. Antes de pensar em sair comprando licenças da Oracle, DB2 ou Teradata, verifique quais são as suas reais necessidades. O fato é que muitas pessoas tem medo de adotar uma solução de um fornecedor que não gaste milhões de dólares em propaganda todos os anos. Antes de dizer que determinada solução não serve, teste e homologue. Mesmo no mundo lento e conservador dos bancos de dados as coisas mudam. Mudar pode significar uma implementação mais rápida, simples ou até um diferencial no mercado para o seu produto.

Tags: , , , ,

Comments 7 comentários »

Comprei o livro “O Manula do DBA - Oracle 10g” para me ajudar a ver as novidades do 10g em relação ao 9i. Com a versão 11 para sair do forno, chegou a hora de definitivamente migrar para o 10g!

Mas o curioso foi encontrar um livro com uma tarja na capa “GUIA OFICIAL ORACLE PRESS” com uma frase bonita como essa (justo no capítulo que vai mostrar como instala o RAC):

“Configuração do sistema operacional

O primeiro passo é preparar o sistema operacional. Instale o Red Hat 3.0 ES ou AS e instale todas as opções! A pequena quantidade de espaço em disco que poderia ser poupada é rapidamente compensada mais tarde, quando você não tiver um componente e precisar encontrar os CDs de instalação do componente ausente. “

Olha só que coisa bonita… já pensou você instalar logo tudo? Todos os serviços bacanas que vão estar instalados sem necessidades, quantas portas para o mundo o seu servidor estará se abrindo. É realmente uma solução genial. Já fico bravo por ter de instalar o X para usar o “Oracle Universal Installer”, agora só faltava essa, ter de instalar a distribuição inteira. Realmente, os DBAs ainda tem muito o que aprender com os sysadmins…

Tags: , ,

Comments 1 comentário »

Há tempos atrás eu descobri o Blog do Mussi. Dando uma passeada por lá encontrei uma referência a um artigo muito interessante chamado “CMMI no olho dos outros é refresco“. O artigo foi escrito pelo Sr. Mateus Velloso que possui em seu currículo uma quantidade impressionante de letrinhas relacionadas a certificações da Microsoft em seu currículo. O negócio deu tanta polêmica que quase dois meses depois ele escreveu uma contunuação/resposta ao primeiro artigo chamdado “Ainda sobre o CMMI e o refresco“.

<delírio>

Lembro de um professor muito bom que tive na faculdade. Toda semana tínhamos que ler praticamente um livro para a sua aula. Ao chegar na aula ele não discutia o livro, não explicava o que o autor dizia. Ele falava sobre porque o autor dizia aquilo. Para qual público ele se dirigia, o que ele queria provar com aquelas idéias, quais posições ele queria defender e atacar. Seu curso foi bem difícil, com uma bibliografia pesada, mas suas aulas eram incríveis e acho que aprendi muito lá. A grande questão é aprender a fazer a leitura das intencionalidades. As ações das pessoas são repletas de intencionalidades. Na educação, dizem que existe um currículo oculto, que são as coisas que se ensina sem contudo coloca-las explicitamente na grade do curso. Pode-se ensinar a repetir, copiar, obedecer, como pode-se ensinar a questionar, criar e comparar. O currículo oculto reflete a intencionalidade do educador com seus educandos.

</delírio>

Então vejo o texto do Sr. Mateus Velloso, que traz uma análise de intencionalidades. Encontramos uma tentativa desesperada do mercado em depender menos de pessoas talentosas e poder se contentar com profissionais medíocres e descartáveis. Enquanto alguns insistem em dizer que há falta de bons profissionais no mercado, o mercado vai sendo inundado com péssimos profissionais que desenvolvem soluções de baixa qualidade. Não importa a técnica que você empregue, é preciso investir mais na sua equipe. Bons profissionais levam tempo para se formar. Um bom programador leva 5 anos para se formar numa boa faculdade, em geral em período integral. Depois leva mais 5 anos trabalhando na área para poder amadurecer. Então este profissional que já deve estar com seus quase 30 anos descobre que é difícil sustentar uma família sendo um programador. Você acaba aceitando uma posição administrativa, coordenando equipes ao invés de programar. E assim, o que poderia se tornar um bom programador acaba se tornando um mau chefe.

<mais delírio>

Estes dias meu pai me explicava uma teoria interessante sobre médicos. Eu dizia a ele que é difícil confiar na opinião de um médico e que quando você vai com um problema em 5 médicos, é comum ter 5 opiniões diferentes. Aí ele me explicou algo que parece óbvio, mas não havia me ocorrido antes. Você tem que entender como o médico é remunerado para poder interpretar a sua atitude. Se o médico recebe uma remuneração fixa mensal, então ele tenderá a não recomendar nenhuma intervenção cirúrgica ou tratamento que vá dá trabalho para ele. No entanto, se o médico ganhar por procedimento, então ele tenderá a carregá-lo rapidamente para a mesa de cirurgia e recomendar tratamentos intermináveis.

E engana-se quem pensa que indo a médicos caríssimos estará livre deste tipo de situação. Você verá doutores muito conceituados com este tipo de prática. Aí olhamos para os hospitais, os convênios e a indústria farmacêutica e tudo faz sentido!

E como você escolhe um bom médico? No meu caso eu conto com o bom senso da família, que me indica o médico certo para cada tarefa que vá além de colocar um gesso ou receitar uma aspirina. Lembro de um programa onde a pessoa ia contratar um empreitero para reformar a sua casa e levava um cachorro enorme seu junto. Se ele concordasse com os termos do empreiteiro e o cachorro gostasse da pessoa, ele contratava. Parece besteira, mas faz sentido!

</mais delírio>

Agora, se você quer saber como uma instituição funciona, sua capacidade de atender suas demandas, investigue a forma como os seus funcionários são selecionados e descartados. Sim senhor, investigue isso, leve seu cachorro para cheirar a empresa. Todo consultor quer vender consultoria, é claro! Eles sempre lhe acharão um novo método revolucionário para reinventar a roda. Pode ser CMMI, PMI, ISO alguma coisa e por aí vai. Se a fundação Abrinq cria um selo de “Empresa amiga da criança” para as fábricas de brinquedo venderem mais, imagine o que os consultores não lhe empurrarão. Mas você não verá consultores questionando a sua forma de contratar seus empregados, quanto você paga a eles ou seu estilo de comando.

Realmente… seria bom se você pudesse ir para o supermercado e escolher os produtos que vêm com um “selo de qualidade” e ficar tranqüilo. Comprar software é realmente uma tarefa difícil. Então, devo dizer que quando escrevi aqui um texto sobre “compra de software corporativo” não levei em consideração isso. Pobre daqueles que dependem de licitações para comprar software, pois não podem levar seu cachorro para a mesa de negociação.

Por fim é curioso que o autor, mesmo sendo uma pessoa com siglas suficientes no currículo com o carimbo da Microsoft, acaba por fim acreditando em muitas coisas que a turma do Software Livre já está careca de saber. Não que eu vá acreditar piamente no modelo Bazar de desenvolvimento. Não existe uma solução única para todos os problemas. Mas quem se acostumou a usar menos o mouse, sabe que isso não é uma simples piada. É realmente possível ser muito mais produtivo lançando mão da perfurmaria e se concentrando em soluções mais robustas. É meu caro Velloso, nós acreditamos em muito do que você acredita também! E acreditamos tanto nas pessoas, que temos a coragem de acreditar na comunidade!

Tags: ,

Comments 3 comentários »

Faz uma semana que este blog entrou no ar e creio estar terminando os últimos retoques.

Uma das coisas que me deu trabalho foi encontrar uma galeria de imagens que fosse leve e ao mesmo tempo tivesse espaço para temas, diversos álbuns e descrição dos mesmos. Tentei algo que se integrasse ao WordPress e fiquei espantado como isso ocorre de forma ruim. Acabei optando pelo ZenPhoto. Para fazer a integração deste com o WordPress eu acabei criando uma página e colocando nela um iFrame apontando para o ZenPhoto. Precisei fazer alguns leves ajustes na largura de um dos temas do ZenPhoto e tudo ficou relativamente transparente. O pequeno inconveniente é que não é possível utilizar URLs diferentes para cada foto ou álbum. Pode ser que eu rezolva integrar o tema do WordPress ao tema do ZenPhoto para ter algo melhor. Mas por enquanto fica assim.

Para a área de Downloads, utilizei uma simples página e coloquei links para os downloadas direto de lá. Algo simples e funcional. KISS!

Tags: ,

Comments Nenhum comentário »