Personal/Activities
From Cristiano da Cunha Duarte
Contents |
Informática
Belo Horizonte
Nasci em Belo Horizonte, cidade que guardo no coração e onde vivi boa parte da minha vida.
Em 1984, aos 11 anos, fui transferido para o Colégio Anchieta, onde vi pela primeira vez um computador, era um TRS-80, de 8 bits que, quando muito, rodava CP/M. Normalmente, a única opção disponível era criar alguns programas em BASIC e perdê-los ao terminar a aula de informática ou o intervalo do recreio. Meu primeiro programa em BASIC, assim como o de muitos naquela época, foi:
10 PRINT "CRISTIANO "; 20 GOTO 10

Naquele natal, minha mãe gastou boa parte das suas economias e comprou meu primeiro computador, um MSX HB-8000 HOTBIT!!!
Naquela noite fui dormir às 4 horas da manhã, após digitar diversas linhas de codigo de examplo do manual do MSX-BASIC(lógico que fiz as minhas modificações também). E foi nesse momento que comecei a gostar de verdade de informática e, principalmente, de programação. Nessa época, eu comprava revistas Micro-sistemas, Info, e algumas outras que vinham com código em BASIC e, algumas vezes em linguagem de máquina, e digitava-os no MSX. Como não possuia gravador, perdia todos os programas ao desligar o computador. Em fevereiro de 1988, finalmente comprei o meu gravador HB-2400 da SHARP. A partir daí, não perdia mais os códigos digitados, o que me incentivou a criar códigos maiores.

Em 1988, comecei meu curso Técnico em Processamento de Dados pela UTRAMIG, onde aprendi Algoritmos, PASCAL, CLIPPER, Eletrônica Digital e Contabilidade.
Em 1989, fiz estágio na TELEMIG(agora TELEMAR) e, em dezembro do mesmo ano, o vestibular para Ciência da Computação, passando na PUC/MG. Em fevereiro de 1990, entrei para a universidade, e como havia uma constante necessidade de se criar programas em C e PASCAL, acabei comprando uma unidade floppy de 5 1/4 " com capacidade de 360Kb e uma interface para o Slot do MSX. Com isso comecei a fazer os meus programas no TURBO PASCAL 3.0 e no AZTEC C, que rodavam sobre o MSX-DOS, e os levava para a universidade, onde rodavam no TURBO PASCAL 4.0 e no TURBO C++ para IBM-PC.

Comecei a trabalhar em Janeiro de 1994, como Oficial Temporário, na Seção de Informática do CPOR/BH. Nessa época, não havia rede local e o computador mais avançado era um 386. Nesse mesmo ano, o Colégio Militar de Belo Horizonte(CMBH) foi reativado e, como a estrutura administrativa do CMBH era provida pelo CPOR/BH, passei a trabalhar, também, para essa nova unidade.
Em meados de 1995, tive a minha primeira experiência com Linux, em uma máquina com Slackware e que funcionava como Proxy.
Até 1998, trabalhei com programação em MS-Access, Visual Basic e Visual C++, Servidores Novell Netware, Windows NT e Linux além de manutenção de microcomputadores, onde aprofundei os meus conhecimentos em Hardware. Meus grandes amigos dessa época, e profissionais excelentes de informática, foram o Ten Art Fábio(da minha turma) e o Ten Int Alessandro(codinome chefinho).
Fiz o concurso público para a Escola de Administração do Exército(EsAEx) no final de 1998 e fui aprovado. Ao deixar o CPOR/CMBH, estes estavam providos de acesso à Internet em toda a Rede Interna, dois servidores Windows NT gerenciados através de um servidor Novell Netware(que centralizava todas as contas de acesso à rede), uma rede interna com mais de 1Km de extensão que abrangia todo o CPOR/CMBH e diversos sistemas desenvolvidos para o apoio à atividade de ensino. Senti a minha missão como cumprida e fui rumo a EsAEx com a certeza de deixar muitos amigos e um trabalho bem feito.
Salvador
O ano de 1999 foi de muitas novidades mas, também, de muito sacrifício. Na EsAEx, fiz vários cursos da Oracle, do SQL básico até Forms, Reports e Designer 2000. Além disso, operei pela primeira vez um Sistema Operacional AIX.
Brasília
Sempre me falaram mal de Brasília. Diziam que a cidade era muito "fria", que era tão seca que eu não aguentaria, etc. No entanto, hoje, não pretendo sair daqui. Brasília tem eus encantos, basta passar o choque inicial que você percebe essas belezas por trás das grandes vias, da simetria de suas superquadras e da amplidão do planalto.
Comecei a trabalhar, em dezembro de 1999, no recém criado 7º CTA e tínhamos que cumprir a missão com o que possuíamos. Nesse período em que fiquei no CTA, conheci o Yellow Dog Linux, uma distribuição para PowerPC, pois possuíamos duas antigas RS/6000 da IBM e um desktop RISC onde o Yellow Dog foi instalado com sucesso e funcionava como roteador/firewall. Nas RS/6000, consegui instalar diversos serviços sobre o AIX, graças aos softwares disponibilizados pela Bull no site Bull AIX Freeware, tais como Apache, PHP, PostgreSQL, DNS, DHCP e Samba. Com isso, a rede mista Windows/Linux/AIX funcionava perfeitamente.
Em 2001, fui nomeado para servir no Gabinete do Comandante do Exército, onde encontrei o melhor ambiente para trabalho na área de informática. Foi no Gabinete que me aprofundei em Linux, PHP, PostgreSQL e Oracle. Fui a três edições do Fórum Internacional de Software Livre(FISL), ao III Seminário de Desenvolvimento em Software Livre(SDSL), entre outros, onde conheci grandes personalidades do Software Livre no Brasil e no mundo.
Durante o desenvolvimento do meu primeiro software no Gabinete, percebi que muitas atividades eram repetidas em cada página. Comecei a agrupar essas atividades em arquivos tipo "biblioteca de funções", o que diminuiu consideravelmente o tamanho de cada página PHP. Mesmo assim, as atividades vinculadas a cadastro em banco de dados eram, também, repetitivas. Por isso, resolvi criar um framework baseado em XML, onde eu poderia passar o XML contendo a estrutura da informação que gostaria de ler/gravar no banco e ele faria o resto. Foi assim que surgiu a primeira versão do RADFrame. Ainda incipiente, cheio de "remendos" e baseado no PHP4, ele não possuia praticamente nenhuma orientação a objetos e, muito menos, padrões de projeto.
Foi um amigo meu, o Ten QCO Hednilson, que me chamou a atenção para Design Patterns(ou padrões de projeto) que nada mais são do que um agrupamento de soluções consolidadas para problemas cotidianos em projeto/desenvolvimento de sistemas. A partir daí, comecei a me interessar ainda mais pela Orientação a Objetos e Padrões de Projeto, onde esbarrei no PHP5, CORBA e PHPPatterns. Foi então que decidi recriar o framework em PHP5, com utilização extensiva de padrões e com suporte a CORBA, para que pudesse criar verdadeiros servidores de aplicação em PHP5. Surgiu, então, um problema: a extensão CORBA para PHP4(Universe) não funcionava em PHP5.
Em 2002, comecei a minha especialização em Projeto e Aplicação de Redes de Comunicação(PARC) na Universidade de Brasília(UnB). Foi um dos melhores cursos que fiz. Grandes professores como Alba Cristina(Plataformas e Sistemas de Informação) e João Gondim(Redes) fizeram o curso valer a pena. Durante o curso, percebi que poderia desenvolver um suporte CORBA para PHP5 como trabalho de final de curso. A minha proposta foi aceita e comecei a desenvolver o IDL2PHP.
O projeto consistia em um compilador IDL para PHP5 e uma extensão em C++ para criar uma interface entre a linguagem PHP e o ORB MICO. As extensões para PHP5 são desenvolvidas em C ou C++ e, com isso, vários problemas surgiram, principalmente a falta de conhecimento do funcionamento da Zend Engine 2(que é o coração do PHP5) e de como criar extensões para o PHP5. Grande parte desses problemas foram resolvidos no newsgroup php.internals onde encontrei pessoas fabulosas, dispostas realmente a ajudar. Entre elas destaco Marcus Börger, que me ajudou muito, principalmente no "pontapé inicial".
Em 2004, comecei a trabalhar com o Debian, já que o haviam instalado em vários servidores do Gabinete. Achei bem interessante: para servidores. No entanto, ainda prefiro o Fedora Core para estações de trabalho.






