Prepare-se para comer poeira do git

maio 11, 2008

Percebi recentemente uma rápida adoção de projetos importantes no mercado hoje para o git. Na verdade parece todo mundo estar se organizando para isto.

O git foi um projeto isolado inicialmente para auxiliar o desenvolvimento do kernel do linux e criado por Linus Torvalds, sendo assim utilizado com uma engine de baixo nível.
Resumindo um pouco mais a história, com o tempo foi necessário facilitar e automatizar alguns passos, bem como abstratir certos procedimentos cansativos. Ficou claro e perceptível uma adaptação/otimização na engine de baixo nível e inclusão de alguns recursos novos adotados a partir de subprojetos como Cogito e StGIT de alto-nível.

Com o aprimoramento do kernel do linux e expansão do código-fonte, este foi mais um passo importante para agilização de release, checksum automatizado para md5, entre diversos benefícios. Aprendi isto ontem com Jorge, debian-pe. Estive discutindo sobre o assunto enquanto planejavamos com o grupo sobre o próximo dia D 2008 do debian. A partir daí percebi o quão a comunidade de desenvolvedores do gnome vem se mobilizando neste mesmo trajeto.

A partir daí é constatado uma mudança muito brusca a fim de buscar algo que não tinhamos com o cvs ou mesmo com o quase dono da pedaço svn. Muito se fala ainda em comparativos entre cvs e subversion[1][2][3][4][5][6]. Mas é preciso perceber as vantagens reais desta mudança. No mundo de hoje temos que acompanhar tendências e evoluções tecnológicas buscando não só agilidade e eficiência, mas também garantir as expectativas de seu projeto.

Atualmente, nem tenho idéia, como estão se comportando os mantenedores do cvs/svn/ss/starTeam, entre outros quanto a estas mudanças. Benchmarks[1][2] já estão sendo demonstrados, comparativos mostram-se publicamente justificados[1][2][3][4][5] o ganho que o git vem oferecendo. Basta apenas estarmos acompanhando estas evoluções e/ou colaborando nas principais listas existentes [1], bem como de boas ferramentas em processo de desenvolvimento em massa. Já tá rolando screenshots do plugin para o git(bem interessante o history views a partir do resource decorator na perspectiva logo abaixo na view da IDE do eclipse. isso vai virar febre logo, logo).

A um certo tempo atrás, apesar de não ter publicado em blog, mas aproveitando o espaço, estive pesquisando diversos serviços na web gratuitos a fim de mantermos projetos pela web free com alguns serviços integrados disponíveis de scm, tais como o google code, opensvn, sourceforge, entre outros. Descobri um bacana a partir da recomendação de Luiz Aguiar, colega conhecido do guj, para migração de seu projeto loocrum do devjavu para o assembla. Este assembla é show de bola! Os caras já estão dando suporte a git.

Hoje temos bem mais opções destes serviços acima citados suportados pelo git, bem como gitorious e repo.or.cz.
Bem, chegou a hora de falar o outro lado da história. Cuidado com a lei de murphy, afinal, nada está remoto de acontecer. Um belo dia o gremlins pode vir te pegar (em homenagem a um colega que trabalha comigo, arquiteto:hmigge). Levante o custo/benefício, quais são suas opções atuais e o que pode ser aplicado para os próximos meses. Uma boa saída para isto é efetuar bons testes, enquanto a galera continua desenvolvendo tranquilarmente em svn/cvs. Você pode também evitar dependências criando máquinas lógicas pelo vmware mesmo a fim de migrar para outros servidores com hardwares mais/menos sofisticados. Você pode buscar iniciativas interessantes como a galera do ThoughtWorks, bem como diversas opções disponíveis por aí, ou então a partir do debian segundo algumas dicas de Marcelo.

Fiquei também me perguntando como está sendo a reação da galera da comunidade assídua do cvs ou svn. Isto na verdade é um fator interessante e importante, assim como vem acontecendo com o java x .net(lado positivo de ambos, claro!), disponibilizando para a comunidade suas vantagens e opções.

Contudo está dado o recado que transparece novas opções para avaliarmos e consentirmos em nossos próximos projetos.

Referências:

  1. wikipedia
  2. introdução atualizada
  3. curso intensivo
  4. principais comandos básicos
  5. gerenciando projeto básico com git
  6. tutorial básico para desenvolvedores
  7. apresentação de linus torvalds sobre o git
  8. apresentação de randal schwartz (famoso engenheiro expert em perl)
  9. experiência de um engenheiro do ruby em ter executado o processo completo até deployer
  10. Prévia de um livro a ser lançado sobre git :: resumo na íntegra
  11. Artigo muito bom e didático de Junio C Hamano

Padrões de política de criação de branches

abril 29, 2008

Recentemente venho me planejando a me aprofundar um poucos mais quanto às práticas de SCM, percebi isto ao me preocupar com automatizar um simples processo de build e deploy em um servidor container web, bem como da necessidade em ter de desenvolver em paralelo e quais políticas poderei adotar tanto na criação como integração de branch.

Bem, isto não é novidade para muita gente, mas para uma simples decisão de qual a melhor estratégia diante de uma granuralidade de sub-equipes desenvolvendo módulos de um projeto em paralelo, tanto para manutenções bem como novas funcionalidades, acrescentarão estratégias que sua sub-equipe específica deverá utilizar para contemplar um conjunto de funcionalidades que posteriormente serão reintegradas e disponíveis aos branches da qual se originaram.

Identifiquei um guia excepcional que me auxilia no uso de determinadas práticas para casos específicos, se forem necessários. Isto depende bastante do projeto e conhecimento da equipe, mas tenha-se em mente que a cada branch criado, será necessário uma posterior integração. Particularmente sou a favor dos padrões [Branch per task] e [Active Development Line].

Estarei posteriormente publicando mais informações quanto a práticas interessantes e padrões comumente utilizados como práticas interessantes de gerência de configuração.

Citix, nossa cidade em movimento!

abril 29, 2008

Conheci um projeto bastante legal recentemente chamado citix, a partir do blog de meira. Para contextualizar, trata-se de uma fusão de informações de colaboração da sociedade sobre acontecimentos em determidados pontos geográficos.

Notoriamente percebe-se a utilização de recursos de web 2.0 como mashup, que tratam-se de aplicações web que usam conteúdo de mais de uma fonte para criar um novo serviço completo.

Apesar de estar na versão BETA, a novidade mencionada seria quanto a expansão de cobertura deste serviço para novas cidades, no qual atualmente dispõe apenas para as cidades de Belo Horizonte, Brasília, Jaboatão, Olinda, Paulista, Recife, Rio de Janeiro e São Paulo.

Gostei de saber que o Ministério Público Federal está por trás disto como um parceiro, o que transparece como um meio de colaboração de informações sobre denúncias e distorções encontradas, alertando tanto a sociedade dos cuidados sobre determinado ponto. Só não sei como as autoridades estarão se organizando quanto ao que a sociedade vem se manifestando.

Particularmente, semana passada, me cadastrei no citix, e lancei um ponto de assalto enquanto voltava para casa e percebi os indivíduos se aproximando, corri e pensei em lançar isto aqui no citix, para que a sociedade tenha mais atenção ao passar naquele ponto, já que a polícia encontra-se sempre ausente.

Praticamente foi um desabafo, mas analisando com calma o serviço deveria ter alguém que modere as informações pois eu poderia também estar blefando e acumulando besteiras e distorcendo a imagem de uma certa localidade à toa.

Espero que com o citix a sociedade possa nos alertar dos problemas existentes em nossa cidade quanto a locais de acesso, roubos e denúncias para que as autoridades acompanhem e tomem as medidas necessárias para a sociedade. Serviços como PEBodyCount e DisqueDenuncia também nos permite obter ou enviar informações as autoridades competentes.

Maiores informações sobre o projeto :: link

Firebug, esse cara veio para ficar!!! :^)

março 21, 2007

Recentemente tenho descoberto a partir do curso de ajax, que venho efetuando com Sang Shin(engenheiro da sun), uma nova forma de desenvolvimento interativo para web, utilizando diversos frameworks entre outras ferramentas também, assim como plugins a partir do netbeans/eclipse.

Bem, estou falando do firebug, que veio para facilitar a sua vida, principalmente para quem vem se virando com o javascript. A partir deste demo é possível comprovar as vantagens que são óbivias, ou a partir deste artigo. Caso você tenha se impressionado com as possibilidades demonstradas no vídeo, então você ainda não viu nada. Baixem aqui a nova versão e instalem[docs] agora mesmo e vejam as diferenças. Seria o mesmo que comparar a evolução da TV preto em branco para TV em plasma.

Para somar, já que estou falando de ad-ons, não poderia deixar de falar no web developer, que possibilita n-funções e algumas inimagináveis, visto que vêm sendo realizadas grandes concentrações de atualizações, assim como o firebug.

Você também poderá consultar a API do firebug quando necessário. Sem mais palavras, acessem meus bookmarks sobre o firebug para consulta rápida sobre informações relacionadas.

Gluon :: Novo projeto do Garage no C.E.S.A.R

março 21, 2007

Trata-se de uma ferramenta open-source voltada desenvolvimento de aplicações para celulares , que integra o ambiente de desenvolvimento BREW dentro do eclipse.

Quanto ao garage, trata-se de um ambiente interno para estimular a geração de produtos e serviços inovadores em tecnologias da informação e comunicação. Isto têm facilitado a rápida absorção das comunidades dentro dos EUA, alemanha, finlândia, japão e índia, inclusive aqui no Brasil, assim como pela equipe de desenvolvimento do C.E.S.A.R, é claro. :^)

Maiores informações sobre gluon (download e passos p/instalar), inclusive BREW e Eclipse.

TV DFJUG e abordagens do projeto JEDI

março 20, 2007

Interessante movimento liderado por Daniel de Oliveira, JUG Leader do DFJUG, em que estabelece informações sobre o projeto JEDI, inclusive com recursos disponibilizados em vídeos com direito a libras a partir do projeto rybena, juntamente com depoimentos de James Gosling a respeito do projeto entre outros pontos.

Congratulations!!! Passed SCWCD 75%

março 20, 2007

Uma semana após o carnaval, realizei o exame para a prova de certificação SCWCD 1.4 no qual tive 75% de aproveitamento. Achei ótimo este percentual por ter ao mesmo tempo estar atuando em um curso de testes avançados na qualiti, desenvolvimento de jogos em 3D no cIn/UFPE a partir do citi inclusive recentemente em um curso com um engenheiro da sun(Sang Shin) a partir de um curso de ajax. Compartilhei estas informações com a comunidade do guj.

Voltando a parte mais técnica da prova, efetuei várias pesquisas disponíveis em meu bookmark no qual particularmente um resumo me chamou atenção após ter realizado a leitura do livro Head First Servlets & JSP. Acredito que um pouco da experiência em projetos para web, facilitou a minha integração com o conhecimento adquirido.

Deixo aqui e considero uma prova bastante tranquila em se trantando de dificuldade, desde que você tenha se antecipado bem ao assunto, tenhas as API’s na ponta da lingua e desenvolvido projetos em parelelos para concretizar o seu aprendizado conforme leitura e sequência desenvolvida de acordo com o livro.

2007 Top 10 weirdest USB drives!

março 20, 2007

Cansado das mesmisse dos pen-drives atuais e sem o menor senso de humor, a partir daqui você poderá escolher entre os 10 mais estranhos já vistos entre os tops de 2007.

System.out.println(” My first post blog! :^) “);

fevereiro 3, 2007

Recentemente, a partir da comunidade do guj, que inclusive, considero uma das mais ativas, quanto se trata de um canal aberto para se discutir sobre java, e como faço parte da comunidade, deixei algumas dicas e um breve resumo daquilo que tinha achado sobre a prova de certificação SCJP1.5, em que considero uma melhores experiências que tive.

Atualmente, pretendo fazer a SCWCD1.4 nesta próxima semana, mesmo sabendo que a beta para o SCWCD1.5 estar por vir, assim como o SCBCD1.5 teve a sua vez, mas infelizmente o perdi, pois não consegui me resgistrar a tempo no site da prometric.

Posteriormente, estarei divulgando novas informações a partir deste mesmo post!