Django Utilidades :: Marinho Brandaohttp://marinhobrandao.com/pt-brTue, 06 Jan 2009 06:56:46 -0000Vagas na Visiehttp://marinhobrandao.com/blog/p/vagas-na-visie_79/A <a href="http://visie.com.br/"><strong>Visie</strong></a> está precisando de gente que domine Python, Ruby e PHP. Se quiser dar uma olhada, clique <a href="http://visie.com.br/blog/ha-vagas-na-visie">aqui</a>.Comentando: Pai do Unified Process diz “Chega de Processos”http://marinhobrandao.com/blog/p/comentando-pai-do-unified-process-diz-chega-de-pro/Um <a href="http://rander.webdoisonline.com">amigo e colega de trabalho</a> mandou um link na nossa lista de discussão interna deste artigo do <a href="http://www.akitaonrails.com/" target="_blank">Akita on Rails</a>: <a href="http://www.akitaonrails.com/articles/2007/04/11/pai-do-unified-process-diz-chega-de-processos" target="_blank">"Pai do Unified Process diz 'Chega de Processos'"</a>. Eu ia responder mas acabou ficando bonitinho e resolvi publicar aqui. Segue abaixo. Eu acho que ninguém é contra processos, até porque sem processo, não há produção, não há profissionalismo. Mas o que eu entendi do que o autor defende (pela lida rápida que dei) - e eu compartilho da opinião ao menos de forma geral - é que há muito discurso e pouca experiência. Muitos acadêmicos saem da faculdade (ou mesmo que não seja dela) berrando a UML a toda altura sem ter idéia de como usá-la, e aí tudo isso em conjunto acaba criando toda uma "Engenharia de Software" (termo que é até bem questionável) com uma complexidade sem-fim. Eu sinceramente acho que depois de muitos anos de amadorismo, os profissionais de sofware resolveram apelar pro outro extremo: o de transformar a "ciência" da computação em algo extremamente complexo de cheio de técnicas. E eu acho que não é bem assim, eu acho que não somos tão importantes quanto pensamos... somos tão importantes quanto qualquer outra área técnica, tão descartáveis quanto, e as coisas podem ser muito mais simples se apenas quisermos que seja: precisa de um canhão? Use um canhão! Precisa de um estiligue? Use um estilingue! Ou seja: pra quê preencher uma pilha de papéis pra fazer um projeto de uma semana? E eu acho que não fazemos coisas tão complexas assim que se possa ser chamado de canhão. Eu acho que é por aí. Agora, uma coisa é certa: temos que colocar algum processo em prática pra ganharmos maturidade. Só assim é possível falar com mais solidez para contribuir que a nossa área continue avançando. PS: este artigo não foi escrito para progamadores da NASA, da RSA ou similar.O que falta ao Rails e ao Django para o cheque-matehttp://marinhobrandao.com/blog/p/o-que-falta-ao-rails-e-ao-django-para-o-cheque-mat/Nos últimos meses temos visto uma locomotiva atropelar paradigmas antigos, linguagens "perfeitas" e conceitos tidos como clássicos. Na verdade a locomotiva já existia há tempos... o que faltava eram os trilhos. Pois agora não falta mais: o Ruby on Rails é a grande coisa dos últimos anos em assunto de programação e deve permanecer assim por bastante tempo. Com a mesma disposição - mesmo que em doses leves - a cobrinha do Python vem "picando" uma boa parcela do mercado há anos, tanto que pouco percebem que ela já está em todo lugar, seja com o aclamado Ubuntu, seja nos bastidores do Google e do YouTube, seja nas manchetes da Microsoft. Ela está lá, criaram uma pista de dança e botaram a cobra pra dançar, e como ela dança bem, aos passos de Django. Estamos vivendo hoje um período muito semelhante ao de cerca de 10 anos atrás, quando o Java aparecia e o C# era anunciado no Slashdot, pela primeira vez, mas Ruby e Python possuem uma qualidade que Java e .Net não possuem: elas se amam. Enquanto a maioria dos "embates" sobre Java e .Net terminam com alguns mortos e muitos feridos, Ruby e Python sempre terminam com lições apreendidas e trocas de elogios. É a maturidade no ambiente do desenvolvimento. E, é claro, existe espaço também para o Java, o C#, o PHP, etc... Pois bem, mas então, se a sentença já está dada, porquê essa constância em afirmá-la? A resposta é simples: <strong>porque não há sentença</strong>, nada está garantido. Da mesma forma que há 10 anos atrás, o momento é de suposições - bem embasadas, é claro - mas ainda há muito caminho a trilhar (e muita música pra dançar). E existem algumas características, digamos "básicas", que estas duas maravilhas frameworks precisam conquistar, para que convençam nossos patrões de que elas são eficazes como cantamos a todo momento. Portanto, bolei a lista abaixo com o que eu acredito ser o que falta para o Rails e para o Django - observando que sou um "djanger" falando sobre Rails, portanto, qualquer deslize, o espaço para comentários abaixo é ilimitado e democrático, ok? <strong>O que falta no Django</strong> <ul> <li>atualização do banco, através de controle de versões;</li> <li>suporte a alguns SGBDs "coringas" do mercado <ul> <li>SQL Server (não me fale de adodb que me dá calafrios)</li> <li>Oracle</li> <li>DB2</li> <li>Firebird</li> </ul> </li> <li>um pouco mais de clareza sobre o MVC (o mercado adora patterns);</li> <li>uma definição melhor sobre widgets e forms em ajax - o newforms foi uma evolução, mas está longe de ser um <a href="http://www.ajaxscaffold.com" target="_blank">AjaxScaffold</a>;</li> <li>melhor suporte a SOAP;</li> <li>um repositório de contribs <em>à là</em> <a href="http://www.railslodge.com/" target="_blank">RailsLodge</a> ou <a href="http://www.codeplex.com/" target="_blank">CodePLex</a>;</li> <li>uma maior comunidade brasileira;</li> </ul> <strong>O que falta no Rails</strong> <ul> <li>compilação em <em>bytecode</em>, para proteção do código;</li> </ul> <strong>O que falta nos dois</strong> <ul> <li>um gerador de relatórios;</li> <li>grandes cases;</li> <li>um bom recurso para chamadas SQL de valores agregados (sum, avg, min, max, count) e agrupados (group by);</li> <li>um bom recurso para chamadas SQL de união (union);</li> <li>planos de hospedagem em provedores mais populares, como a <a href="http://www.locaweb.com.br" target="_blank">LocaWeb</a>, por exemplo;</li> </ul> Bom, como você pode ver, eu tenho mais a dizer sobre o Django do que sobre o Rails, mas mesmo que eu fosse expert nos dois, é explícito que o Rails está alguns passos à frente (ainda que "explícito" seja uma característica mais marcante no Django do que no Rails), mesmo que o Django venha evoluindo rapidamente. Uma afirmação que não posso deixar passar vagamente, é que nossa comunidade <a href="http://www.djangobrasil.org" target="_blank">Django Brasil</a>, está funcionando cada vez melhor em seu <a href="http://groups.google.com/group/django-brasil" target="_blank">embrião</a>, portanto, ela precisa crescer, mas ela está cada dia mais ativa. Por fim, acho que está bem claro que temos muito trabalho pela frente, mas contando com as duas frameworks que temos em mãos, o trabalho é bem mais gostoso e rápido do que seria antigamente! <a href="http://simplesideias.com.br/ganhe-o-livro-repensando-a-web-com-rails/" target="_blank"><strong>Update:</strong> este artigo está concorrendo um livro sobre Rails, que o <strong>Nando Vieira</strong> está promovendo em seu <strong>SimplesIdeias.com.br</strong></a>