• Share
  • ?
  • Profiles ▼
  • Communities ▼
  • Apps ▼

Blogs

  • My Blogs
  • Public Blogs
  • My Updates

This community can have members from outside your organization. iMasters

  • Log in to participate
fd26864d-cb41-49cf-b719-d89c6b072893 Blog

▼ Tags

▼ Similar Entries

Compile PHP, Informi...

Blog: developerWork...
Gadde_Radhika 50J9GYTSQP
Updated
0 people like thisLikes 0
No CommentsComments 0

All Application Lang...

Blog: DB2 Performan...
DaveBeulke 2700023WUN
Updated
0 people like thisLikes 0
No CommentsComments 0

Build amd deploy a R...

Blog: developerWork...
Arvind_Gupta 2700025SKH
Updated
2 people like thisLikes 2
No CommentsComments 0

Bluemix DevOps Servi...

Blog: Notes from Ra...
AcdntlPoet 2700019V2G
Updated
0 people like thisLikes 0
No CommentsComments 0

Getting started with...

Blog: MQdev Blog - ...
j0nnymac 120000F9BQ
Updated
1 people likes thisLikes 1
No CommentsComments 0

▼ Archive

  • January 2014
  • August 2013
  • July 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • April 2010

▼ Blog Authors

iMasters

View All Entries
Clicking the button causes a full page refresh. The user could go to the "Entry list" region to view the new content.) Entry list

Moving to Python/Ruby On Rails

iMasters 27000343BF | | Tags:  desenvolvimento django ruby php linguagens artigo ‎ | 4,518 Views
Estava com saudades de escrever coisas por aqui, mas estava às avessas com a Giran, com eventos e tudo mais. É claro que que a desculpa "falta de tempo" não existe quando você está motivado e focado em algo.

Continuo motivado com muita coisa, principalmente com o crescimento natural e meio que imposto pela velocidade que as coisas estão acontecendo e que pedem cada vez mais uma postura e abordagem - o que exige MUITA disciplina.

Mas uma coisa que não me motiva há tempos é o PHP, não pela linguagem em si, mas por todo um entorno que acabava impactando diretamente na melhoria contínua disso.

Frameworks

Larguei o CakePHP pelo CodeIgniter em busca de uma framework mais light e customizável. O CodeIgniter serviu muito bem, mas peca em duas coisas muito importantes: o suporte mais integrado a testes e um ORM bacana.

Nem o SimpleTest nem o PHPUnit se mostraram muito bem integrados, e o melhor ORM que achei foi o Overzealous DataMapper. São duas boas ferramentas, mas que não atingiram totalmente (e juntas) o objetivo proposto: ter coisas estáveis pra desenvolver.

Há pouco tempo palestrei sobre frameworks, mas acho que é preciso melhorar muito até chegar em um nível de maturidade legal. Ou seja, isso acaba atrapalhando e muito a questão de trabalhar com todas as ferramentas e técnicas possíveis para o desenvolvimento de aplicações com alto nível de qualidade. Para quem não demanda toda a qualidade que estou/estamos buscando, essas ferramentas são bacanas demais.

Existe uma certa carência de um set de ferramentas que possam trabalhar em conjunto para oferecer a sustentabilidade desejada para um projeto de, digamos, qualidade máxima.

Não estou dizendo que as ferramentas são ruins, mas cheguei num ponto em que queria me focar mais no negócio e, por isso, espero ferramentas que já estejam maduras o suficiente para que eu possa confiar nelas. Num certo ponto, estava me preocupando com questões de estabilidade e de funcionamento que eu esperava já terem sido resolvidas pelos projetos.

Desafio

Por conhecer e programar em PHP há MUITO tempo, cheguei em um nível em que ou me dedicava ao desenvolvimento de uma ferramenta ou algo mais complexo para manter isso aceso, ou até mesmo partiria para a evangelização da linguagem - atividade que já faço em partes como um dos coordenadores do PHP-ES.

Desenvolver um projeto novo é legal, mas prefiro contribuir com os que existem com patchs e o que puder. Desenvolver algo novo deve primar pela ideia em si e não pela tecnologia. E se a idéia é nova, por que não brincar com justamente com a novidade?

Mas lá no fundo entrei em loop no que tange aprender mais PHP. E isso, dentro do meu universo pessoal onde mudo e toda hora procuro algo pra fazer, chegou a um ponto que ficou insustentável. Como diria o poeta, "já deu?".

Comunidade

Acredito que faça dois anos que começamos de fato com os eventos com o PHP-ES e estava tudo indo bem exceto por dois pontos:

  • a falta de mobilização da comunidade em prol de algo que não seja discutir salários e questões banais como sindicalização no fórum;
  • a falta de interesse do próprio time de coordenação em querer fazer as coisas da melhor maneira, ajudando no dia-a-dia e não apenas não-presencialmente.

Não julgo ninguém, mas no fundo fui me sentindo meio que lutando e tentando fazer crescer um mercado onde as pessoas, de certa forma, ou não se interessam tanto, enquanto comunidade, ou não estão preocupadas com evolução, isso tanto pessoal quanto, novamente, em comunidade.

Me amarro em fazer eventos e ensinar o pouco que sei sempre, seja por blog, por MSN, em eventos ou o que for. No caso de eventos, existe um sentimento meio chato de não ver as pessoas se movendo em prol de um objetivo mútuo. Deve ser a idade chegando, mas já havia passado por algo em outras áreas de atuação.

Se não existe comunidade, você luta pra fazer crescer uma. Quando já existe e você vê o desinteresse das pessoas, você precisa tomar decisões, e a minha postura é de que "estou aqui pra ajudar. Mas tomar a frente, não tão cedo".

Por que Python/Ruby on Rails?

A escolha de Python e de Rails foi a mais natural, pois ambas são linguagens de script. Além disso, um conjunto de coisas me levaram a escolher essas duas também:

  • comunidade irada;
  • frameworks maduras;
  • ferramental para testes e tudo mais maduros;
  • orientadas a objeto de verdade;
  • preparadas para o que der e vier.

O Python/Django foi uma escolha ideal no sentido de que se pode desenvolver tanto para web, quanto para um tanto de outras coisas, até pra iPhone. 

O Ruby/Rails foi outra escolha bacana por ser, atualmente, sem modismo, uma das melhores (se não a melhor) frameworks para desenvolvimento web, e que segue "por default" uma filosofia voltada à qualidade e agilidade.

Vi várias coisas embasbacantes na QCONSP (e ainda vou escrever um texto completo sobre essas novidades) e é motivante ver tanta gente correndo atrás da melhoria, não apenas da ferramenta, mas da comunidade toda em si.

Muitas oportunidades sempre rolaram em relação a desenvolver com elas, e acho que chegou a hora de me dedicar a isso com força.

Então, PHP nunca mais?

Deixar de estudar uma linguagem não é um "nunca mais trabalho com ela" nem coisa do tipo. Tive ótimos feedbacks em relação aos artigos de TDD com o Simpletest e pretendo continuar (mas com PHPUnit talvez) com mais algo de Selenium. Enfim, coisas mais voltadas à qualidade de código final do PHP do que o desenvolvimento dele em si.

Além de continuar falando sobre PHP em relação a isso, pretendo continuar ajudando a comunidade, seja através de palestras, seja ajudando os amigos da coordenação com os eventos e todos que ainda puder ajudar ensinando algo e por que afinal? Simples, eu gosto!

Enquanto isso, vamos seguindo nossas vidas e seja o que Alah quiser!


artigo publicado originalmente no iMasters, por Léo Hackin


  • Add a Comment Add a Comment
  • Edit
  • More Actions v
  • Quarantine this Entry
Notify Other People
notification_ex

Send Email Notification

Quarantine this entry

deleteEntry
duplicateEntry

Mark as Duplicate

  • Previous Entry
  • Main
  • Next Entry
Feed for Blog Entries | Feed for Blog Comments | Feed for Comments for this Entry