quarta-feira, 3 de fevereiro de 2010

Mono: Bastidores da Implantação do Mono na PGE-CE

Objetivo:

Vou explicar como foi a experiência de implantar o Mono na Procuradoria Geral do Estado do Ceará. (Mas não vou dar nome aos bois)

Tudo começou se não me engano em Dezembro de 2007, quando o governador "Recomendou" para que os orgãos migrassem tudo para software livre, esse pedido foi atendido de prontidão pelo então procurador geral do estado, e repassado a CTI que era a empresa que geria toda a tecnologia usada na PGE, ( e ainda deve ser )  que acatou muito bem as ordens e com muito esforço implantou de forma brilhante, o uso de tecnologia livre em todos os setores do orgão. 

Mas voltando ao assunto, quando iniciamos o projeto a nossa equipe era relavivamente pequena, de desenvolvedores, fui chamado na sala do coordenador junto com o gerente de projetos para ouvir o que ele tinha a dizer, que era para avisar que o Procurador Geral pediu para ele pessoalmente que todos os softwares tinham que ser livres. me assustei um pouco, mas quase que de imediato pensei em uma nova tecnologia que se propunha a rodar .NET no linux e deixar ele "Portátil" o Mono, quando eu falei eles não acreditaram muito nao...  Ainda lembro que na época o então Coordenador do CTI, junto com o Gerente de Infra, me pediu para assinar um termo me comprometendo a rodar uma aplicação .NET no Linux, mas sinceramente eu não lembro se era brincadeira, mesmo assim tive sete dias para instalar em uma maquina que foi "doada" exclusivamente para essa tarefa uma aplicação .NET rodando perfeitamente no linux, e com muito esforço conseguimos rodar nosso primeiro helloword. 

Mas nem tudo foram flores, para chegar e dizer para o nosso coordenador que estava tudo ok, foram mais três meses de luta, primeiro que o Assessor Especial de Tecnologia do Governo na epoca batia o martelo junto com um outro profissional parceiro dele que a distribuição tinha que ser Fedora, o que eu não concordava muito, pois me parecia lógico que se o mono tem apoio da novell, nada mais inteligente usar OpenSuse, mas tudo bem, ordens são ordens ( acredito que essas pessoas estavam muito mais acostumadas com fedora e não queriam alterar ou mudar seus habitos ) isso acarretou muitos problemas de instalação dificultando muito a configuração do servidor por parte do nosso amigo Rafael, e por minha parte com o MonoDevelop, que não rodava legal nesse ambiente (Não compilava nada feito em VB e só estava rodando parte  de algums códigos, não reconhecer o CodeBehind do webform e erros de dependências impossiveis de decifrar), mesmo que em teoria era para funcionar com perfeição, Só que quando instalamos o openSuse e conseguimos rodar um app que já tinha sido feito em .NET com o Visual Studio e sem praticamente migrar nada, é que bati o martelo e falei para o coordenador do CTI que éra a unica forma de rodar legal e sem dificuldades seria a adoção do openSuse. e o que acabou se confirmando e até hoje está nessa distro.

No final do projeto, entrei em contato com o MonoBrasil que é um grupo de usuários que eu acreditava que fossem se interessar pela notícia, o que se confirmou, recebemos inclusive a visita de um dos engenheros da novell do mono, mas apartir dai eu segui outro caminho e a PGE/CTI o seu. 

Só para lembrar que hoje são 400 Desktops Linux. Eles estão usando Firefox + Thunderbird + OpenOffice como solução base, a distribuição escolhida foi o OpenSuse. Os servidores da rede foram todos migrados para Suse Enterprise Linux, agora eles estão rodando um ambiente 100% livre e não esquecendo, com um ambiente de desenvolvimento, que até esse texto era Mono.

Matheus, mas as maquinas eram dualboot? ou rodava em uma VM? tinha interlicense no codigo? tinha o famoso Arrastar e soltar controles da toolbox? 
R:Não nada disso, e acredito que até hoje não tenha, mas foi muito proveitoso.

Matheus posso usar mono com outros frameworks, como Nhibernate e Spring.NET?
R:Sim, claro, porque não? é até um conselho que dou, sempre teste seus componentes de negócios antes de colocalos em uma interface , use NUnit para testar, é até melhor do que esse framework da Microsoft para testes. 

Você trabalha com mono hoje em dia? 
R:Apenas em um, estou trabalhando no projeto com Iphone com Mono Touch, e quando esse projeto estiver "OK" eu posto um feedback dele.

Nenhum comentário:

Postar um comentário