Por que o Joomla não cresceu no Brasil assim como o WordPress

Joomla é um excelente CMS (Content Management System), tem módulos que podem ser importados, uma forte estrutura e interface intuitiva, além de permitir muita customização, algo essencial para desenvolvimento de sites e aplicativos poderosos. Houve um enorme crescimento por volta de 2008 e foi uma das grandes promessas que iria se desenvolver de acordo com o tempo, porém com o tempo foi sendo substituído em muitos projetos pelo WordPress, outro CMS amplamente conhecido e utilizado em grande parte dos portais e blogs brasileiros, por exemplo. Mas o que será que causou essa transição?

Mas o Joomla não é a mesma coisa que WordPress?

Não, ambos têm a mesma estruturação, porém com intuitos diferentes. O Joomla é mais indicado para criação de sites, já o WordPress para blogs, claro que isso é muito relativo porque fica a critério dos desenvolvedores e dos projetos que devem ser criados, já que ambas as plataformas oferecem flexibilidade e facilidades para personalizar de acordo as suas necessidades.

Estamos na era do conteúdo, divulgar ideias e pensamentos está em alta hoje em dia, além daqueles artigos que são voltados para diversos nichos de leitores, não é a toa que grandes portais de notícias utilizam o WordPress, assim como a Abril e outros blogs de grande volume. Então por isso a rápida aceitação do WordPress ao invés do Joomla.

Veja esse artigo bacana falando sobre as vantagens e desvantagens de cada um, contém dados bacanas que podem ilustrar melhor minhas ideias.

Então o que realmente faz a diferença para escolherem WordPress ao invés do Joomla?

Resumidamente dois pontos foram essenciais: Intuito e comunidade. Quando me refiro ao Intuito é no sentido em que o WordPress é muito mais voltado para a divulgação de conteúdo, na forma de blog, que facilmente pode ser adaptado em portais de notícias, as facilidades de criação de funções e módulos foram uns dos fatores determinantes, além da personalização do layout. Já a comunidade que esteve altamente ativa, dando suporte e dicas para quem estava desenvolvendo, não que a comunidade Joomla seja fraca, longe disso, porém não há discussão que uma é muito maior que a outra, sendo maior, mais requisições e soluções serão criadas, tornando o mais completo e diversificado.

Ouvi dizer algumas vezes que é difícil criar e dar manutenção em módulos Joomla, eu trabalhei bem pouco com eles então não há muita propriedade no que digo, mas serve como comentário.
Há diversos projetos e sites feitos em Joomla que são sensacionais, novamente retifico que depende muito de quem está desenvolvendo o sucesso da aplicação.

Gostaria de saber sua opinião, se você acha que a ideia que tenho do Joomla está certo, ou se o cenário atual mudou ou comente se falei algo errado.

Anúncios

História do Python e porque ela é tão legal

Achei recentemente esses 2 vídeos que são sensacionais, o primeiro conta a história do Python, desde sua origem, em quais linguagens foi inspirado e mostrando até hoje o crescimento dele, sendo comentado sobre sua aplicação dentro do Dropbox, empresa do qual foi baseada através da linguagem.

No outro vídeo é mostrado as possibilidades que a linguagem oferece ao desenvolvedor, as facilidades e bibliotecas que enriquecem o desenvolvimento, tornando muito mais simples criar funções e blocos de códigos de forma mais produtiva.

O único problema é que os vídeos estão totalmente em inglês, porém tendo o mínimo de conhecimento acredito que possa acompanhar facilmente o que eles tem a dizer. E se caso você deseja ser um bom programador, inglês não deve ser um obstáculo, até porque grande parte do conteúdo atualizado hoje em dia é feito pelas pessoas fora do Brasil.

Quais são as melhores formas para aprender Python, IDE’s, referências e dicas.

É redundante dizer o que podemos fazer com Python e as vantagens que oferece ao utilizar essa poderosa linguagem, diversas pessoas indicam formas de aprendizado, sejam através de tutoriais, livros, guias ou vídeo – aulas, porém cada um tem seu modo de fixação, sendo assim complicando o entendimento dependendo do tópico.

Assim como eu, diversas pessoas já criaram tópicos em diversos fóruns a respeito sobre como podemos aprender Python de forma produtiva, ou seja, de forma que seja gradativa, crescente e que prepare para o mercado de trabalho, sendo que Python a cada dia tem crescido bastante e precisa de bons profissionais.

Formas de se aprender Python

Como disse anteriormente, cada um tem uma forma melhor de fixação de conteúdo, irei indicar então três formas que podem ser bem úteis:

– Livros:

Learn Python the hard way – Um livro que ensina com tópicos curtos e simples criando curtos programas, mostrando os conceitos básicos de programação, um dos principais livros que é indicado para quem está no começo.

Python Books – Uma coletânea com diversos livros, desde para os mais iniciantes até os avançados, uma excelente fonte de referência e estudo, ficando ao seu critério qual deles se adapta melhor as suas necessidades. É imperdível.

Python para desenvolvedores: Luiz Eduardo Borges – Uma das boas referências em português, vale muito a pena ler, pois aborda desde os conceitos básicos até avançados, avançando pouco a pouco em cada assunto.

Os livros citados todos são gratuitos, claro que também há ótimas opções de livros físicos que também podem ser comprados, dê uma checada por exemplo no livro do Osvaldo Santana sobre Python e Django.

– Video -aulas

Python e Django com Osvaldo Santana – O Osvaldo Santana escreveu o livro citado acima sobre desenvolvimento de aplicativos web através desse framework poderoso, talvez o mais referenciado com Python, da mesma forma que Rails está para Ruby. Com o tempo divulgou no Youtube vídeos complementares aos assuntos abortados no livro, sendo uma boa ferramenta de apoio. Se você deseja aprender através de vídeo, com certeza esse será o mais indicado.

Web2py com Bruno Rocha – É provável também que já tenha ouvido falar do Web2py, um framework que vem crescendo muito no conceito de experientes profissionais, full-stack(com tudo junto), fácil, com webserver integrado e podendo ser criado aplicações em menos de 10 minutos, ou em menos de 1 hora uma aplicação completa. Veja também essa fonte de referências que escrevi aqui.

Python com Khan Academy – Muito famoso pelas suas aulas online, a Khan Academy aborda diversos assuntos, e com certeza programação não ficaria de fora, pelo fato de acreditar que Python é a linguagem mais simples para ser ensinada, mostrando conceitos e ideias, vale muito a pena para adquirir uma base, só que está em inglês.

Python for Zombies: Fernando Masanori – Se é o primeiro contato que tem com Python ou programação, esse vídeo é muito bem indicado, mostra as peculiaridades da linguagem, abordagem principal e suas características que a fazem ser tão popular.

Python: Loogica – Uma iniciativa que está com conteúdo bem legal, mostrando vídeos de forma simples, direta e prática, serve como uma boa forma de ver tópicos interessantes. Vale muito a pena e dar uma forma para o pessoal lá.

The best way to learn Python: Nettutplus – Faz uma excelente referência de diversas fontes de aprendizado, dando dicas valiosas, além de boas práticas, uma ótima fonte de referência para buscar informações, sendo um belo guia através da linguagem, passando do básico até o avançado, mostrando os passos que devem ser seguidos para ser um programador pleno. Está em inglês.

Mutirão Python – A Pycursos criou um evento sensacional, convidou diversos profissionais espalhados pelo Brasil para falarem gratuitamente dando vídeo-aulas (Hangouts) falando sobre diversos assuntos. Veja, é imperdível.

– Tutoriais

Python com Evaldo Junior – Há algum tempo Evaldo teve interesse em aprender Python, como forma de exercício e fixação do aprendizado, criou esses tutoriais bem bacanas que ensinam muito bem a sintaxe básica.

Killer web development – Se gosta de colocar a mão na massa esse site é ótimo, aprendendo sem qualquer conhecimento tanto do Web2py como o Python, mostrando boas metodologias de desenvolvimento como Test Drive Development(TDD), além do controle de versão(Mercurial) e como colocar sua aplicação no ar, porém está em inglês.

– Ferramentas

Dreampie – Muito melhor do que o IDLE que acompanha na instalação do Windows, o auto-complete dele te ajuda muito para compreender conceitos de forma mais simples, e também é indicado quando for testar um código antes de implementar em sua aplicação.

Ipython – Ele é um interpretador Python mais poderoso, podendo modificar e trabalhar no processo de desenvolvimento, permitindo acessar bancos de dados, teste de funções e várias outras coisas bem legais.

Virtualenv – Serve muito bem para criar ambientes de desenvolvimento isolados, ótimo para criar seus aplicativos sem que interfiram um ao outro.

– IDE’s ou editores de texto

Pspad – Se você utiliza Windows esse editor é show, leve, rápido e gratuito. Temos também o Notepad ++ que é mais conhecido, mas não tem tantas funcionalidades voltadas especialmente para programar com Python.

Gedit – Para quem está aprendendo, criar códigos sem ajuda do editor é interessante, irá exercitar seu raciocínio e não haverá preguiça ao escrever suas funções, é claro que sempre queremos trabalhar desde o começo com as melhores ferramentas para nos acostumarmos desde já, porém um editor de texto simples que nem ele é indispensável. O próprio Gedit já vem no Ubuntu, necessitando apenas algumas configurações básicas para começar, no livro Learn Python Hard Way ensina como configurar.

NinjaIDE – Sensacional, poderosa com diversos complementos e integrações que ajudam bastante, personalizável, recomendável tanto para iniciantes como aqueles que desejam experimentar um novo editor que traga produtividade.

SublimeText – Acredito que já tenha ouvido falar dele, a grande maioria o indica. Leve e maleável para configurar de acordo com suas necessidades, sendo gratuito ou podendo colaborar comprando a licença, a combinação default de cores permite uma legibilidade muito boa para leitura de códigos, além de poder ser utilizado tanto no Windows, Linux ou Mac.

Na verdade quando se é iniciante o editor de texto não é um fator determinante para que se tenha um bom aprendizado, claro que cada um tem suas vantagens que podem agregar bastante em seu aprendizado, mas não é essencial. Claro que temos o VIM e emacs, mas não vale a pena investir seu tempo com isso, por enquanto.

– Fontes de referências

Tenho uma grande lista com diversas referências sobre Python no blog, veja aqui.

– Frameworks

Django – O termo “Fenomenal” é bem apropriado, grandes empresas e startups trabalham com ele, seja a Globo.com a mais famosa, além do Instagram, Pinterest e Disquss. Falar sobre suas vantagens será repetição pois nos links acima já tem bastante coisa.

Web2py – Também outro bem bacana, tem uma ótima documentação e diversas pessoas estão engajadas em criar tutoriais e artigos para ajudar. Veja o link com as referências no Bruno Rocha.

Flask – Outro framework de desenvolvimento bem rápido, muito bem indicado para quem está aprendendo programação por ser leve, simples e sem complicações, com certeza indicaria tanto ele como Web2py para criação de aplicações durante seu processo de aprendizado.

Minha opinião

Reforçando, cada um tem a sua preferência, em cima temos diversas fontes de conteúdo de excelente qualidade, acredito que lendo algum livro básico, combinados com vídeo-aulas seja uma forma simples, rápida e que não faça você perder o pique ou o foco. Também quando houver dúvidas entre em contato com o pessoal através do Twitter, Facebook, Google Groups ou e-mail, sempre haverá gente que terá o prazer de ter ajudar resolvendo suas dúvidas, e também sou um deles que fico a disposição.

Se deseja trabalhar com Python, é aconselhável que tenha o conhecimento de frameworks como Django, Zope e Plone, são frameworks que tem maior mercado atualmente e já existem diversos sistemas dos quais já foram desenvolvidos com eles.

Onde encontrar podcasts brasileiros sobre Python

Algo que me deixa feliz é a quantidade de conteúdo sobre Python que a cada dia vem crescendo mais e mais, tornando o aprendizado e a divulgação da linguagem mais simples. A comunidade tem o sentimento natural de dividir seus conhecimentos, dicas e tutoriais para todos os tipos, voltado tanto para os profissionais avançados quanto os que estão bem no começo do aprendizado sobre programação. Python é a linguagem que muitas pessoas indicam para quem está começando a programar, sintaxe simples, poderosa, frameworks excelentes e além de outras facilidades que ela nos traz.

Indico para quem deseja se aprofundar mais sobre o assunto que ouça esses podcasts de uma galera bem bacana, o Castálio Podcast do OgMaciel que é show de bola, repleto de entrevistas de diversos assuntos que abordam desenvolvimento em geral. Indico 3 dele:

Luciano Ramalhoaqui

Henrique Bastosaqui

Python em geralaqui

E também temos o Grokpodcast do Carlos Brando e do Rafael Rosa Fu que falam de algumas linguagens de programação convidando diversos profissionais referência em suas áreas, de excelente qualidade, vale muito a pena, assim como o podcast do OgMaciel.

Python com Henrique Bastos pt.1aqui

Python com Henrique Bastos pt.2aqui

Django com Henrique Bastosaqui

Se houver outros, indique nos comentários, será ótimo agregar mais fontes para a galera.