Sempre fui muito resistente ao uso de Linux, utilizava como argumento o fato do Linux não possuir ferramentas adeqüadas para desenvolvimento web. Como eu era ingênuo…
Tornei-me adepto ao Software Livre após conhecer os Padrões Web, o W3C, as ferramentas Google, o Apache, o PHP, o MySQL, o PostgreSQL e o meu novo “xodó”, o Python. Só pude me aprofundar nestas ferramentas com o uso de códigos-fonte distribuídos livremente, e que vejam só que maravilhoso: em troca do conhecimento, eles apenas solicitavam que eu os mencionasse caso redistribuísse o código; Nada mais justo, quando ví estava eu começando a distribuir componentes em Joomla! dentro da GNU/GPL.
No início do ano passei a usar Ubuntu Linux, logo descartei o uso do Windows XP, meu parceiro de longa data e que atendeu perfeitamente todas as minhas necessidades. Agora estava diante de um sistema operacional “novo”, e minha primeira atitude foi: escolher as ferramentas para desenvolver web, e acima de tudo, que todas sejam livres.
Navegador
Utilizando o Ubuntu com o ambiente GNOME já temos a disposição o Firefox. Até um tempo atrás minhas extensões favoritas do Firefox não tinham sido portadas para o Linux. Hoje já possuímos plugins essenciais como o Firebug e o WebDeveloper Tools.
Há também o Opera para Linux, mas como ele não é opensource preferí optar pelo Firefox, mas as vezes não há como fugir do uso do DragonFly.
Servidor (localhost)
O próximo passo foi escolher um servidor web. Obviamente o Apache foi a escolha imediata, e embora muitos achem difícil instalar o Apache, PHP e MySQL no Linux, no caso do Ubuntu não há maiores dificuldades. Em posts futuros poderemos detalhar o processo de instalação das ferramentas listadas…
Banco de dados
Tenho uma dificuldade imensa em administrar bancos de dados, nascí mesmo só pra montar SQL. Por isso minha escolha foi o MySQL. Leve, prático e simples de usar… até tentei o PostgreSQL, mas ele é banco de dados para gente grande. Há excelentes ferramentas para gerência, inclusive o próprio terminal interativo do MySQL… mas nada que substitua o bom e velho PhpMyAdmin.
Linguagem de Programação
Para client-side utilizo ECMAScript (Javascript) com a Framework Mootools. Para server-side me apaixonei profundamente por uma framework chamada Django. Ela é uma framework Python que utiliza o padrão MVT (Model, View, Template) que está sendo amplamente utilizada por desenvolvedores do mundo todo, inclusive seu mecanismo de templates vem sendo utilizado pelo Google App Engine.
Como servidores Python por aqui ainda estão em minoria, o uso de PHP é fundamental. No meu caso utilizo o PHP para a construção de portais e websites institucionais, logo passei a utilizar o Joomla! como ferramenta de CMS, mas pretendo migrar… provavelvemente para Drupal ou WordPress.
Não desenvolvo em Actionscript (Flash), Silverlight e afins. Penso que podemos reproduzir muita coisa dessas ferramentas com as tecnologias padronizadas do W3C (xHTML, XML, Javascript, SVG, SMIL, etc). O Google Chrome aposta nisso, possuindo uma das mais rápidas e eficazes engines de interpretação Javascript do mercado.
Mas para desenvolvedores Actionscript, há uma série de ferramentas livres que podem ser utilizadas para construir SWF… futuramente poderemos falar mais sobre este assunto.
IDE/RAD
Esta com certeza foi uma das tarefas mais árduas. Substituir o Dreamweaver não é uma tarefa fácil. Cheguei a utilizar o Bluefish, leve e rápido, mas sinceramente não era o que eu queria… precisava de algo que me auxiliasse com PHP, MySQL, HTML, CSS, Javascript, Python, XML e possivelmente outras tecnologias como Android, Actionscript (e porque não?), Java, C, etc.
Então, me lembrei que uma vez instalei um tal de Eclipse no meu Windows. Pesado e sofrível… não tinha nada a perder, e foi “paixão a primeira compilada da máquina virtual Java”.
O Eclipse é “modular”, podemos instalar vários plugins nele para portar várias linguagens de programação… hoje, sou capaz de programar em PHP ou Python com uma simples mudança de “workspace”. Ele continua “pesado” (isso é relativo ao hardware que você possui), mas é um preço que paga-se por utilizar algo tão “completo”.
Recomendo o plugin PDT (para PHP), Aptana e WST (para HTML, CSS, Javascript, etc.), Pydev (Python), DBViewer (para SQL), ArgoUML (para UML), SVNKit (para integração com servidores Subversion) e RegexUtil (para construção de expressões regulares).
Edição Gráfica
Sempre preferí o GIMP, mesmo no Windows. Há bons tutoriais na internet sobre como operar com o GIMP e sobre como fazer trabalhos excepcionais.
Quando passei a estudar SVG, conhecí um software chamado Inkscape. Uma excelente ferramenta de desenho vetorial proveniente do Sodipodi. Estou utilizando-a no meu projeto de iniciação científica sobre SVG e recomendo plenamente pois trabalha com o padrão SVG nativamente.
Postura
Admito! Estava muito acomodado e essa mudança de “ares” me fez ser um profissional melhor, mais “universal”. Fiquei aberto a novas tendências e tecnologias e aprendi muito nesta transição… aprendi a pedir ajuda e também a ajudar.
Nos próximos posts abordaremos mais sobre estas ferramentas… até lá!
4 Comentários
Eita Linux, mudando conceitos pouco a pouco…rsss
Final de ano atrasa tudo, até a leitura, rs.
Gostei muito deste Post!
Talvez seja minha hora de abandonar o ruindows também.
Grande abraço e obrigada por compartilhar experiências conosco.
Obrigado pelo feedback pessoal…
Me sentí muito mais confortável desenvolvendo web com Linux do que com o Windows. Além das questões puramente filosóficas estão os fatos, como segurança, ferramentas provenientes de plataformas unix-like, códigos abertos, etc.
E passar de Windows XP para Ubuntu não é nenhum bicho de sete cabeças… é necessário adaptação… mas isso ocorreu quando começamos a usar o Windows também, certo?!
Na medida do possível vou postando dicas da utilização do Ubuntu…
Uma IDE que utilizo e gosto muito é o Netbeans, utiliza no Windows agora instalei no Ubuntu e funciona muito bem, tem vários plugins tanto para PHP, Python, Javascript. Não utiliza tanto processamento como o Eclipse e na minha opinião é uma ferramenta muito mais leve e fácil de ser utilizada.