Porquê escolher Concrete5 como Content Management System
Pequena história de como comecei a fazer webdesign
Há muitos anos que faço sites, aliás um dos projectos de final de curso foi mesmo fazer um site em… Netscape Composer. Como as lacunas deste editor eram muitas, tive que aprender os fundamentos do HTML, editando em Notepad. Isto acontecia em 1998... ok, somos uns dinossauros, com a vantagem da experiência.
Com o evoluir das coisas comecei a fazer os sites em Dreamweaver, um excelente editor com mais capacidades e a fabulosa possibilidade de ver código e página ao mesmo tempo. Trabalhava para um pequena agência de publicidade e assim continuei a produzir os sites até fundar a minha própria empresa de web design. Poucos anos depois, após a minha saída para agência de publicidade, encontrava-me a trabalhar exactamente da mesma maneira.
Ora, por volta de 2012 o site da empresa onde trabalho estava num ponto em que a dificuldade de actualização era enorme, até porque era um site bilíngue, com secção de notícias regularmente actualizada. Isto tudo feito em HTML puro e duro, com algumas coisas em Javascript e Flash. Cheguei portanto ao ponto em que teria que fazer um novo site com backoffice, que permitisse a adição rápida de conteúdos sem grandes complicações.
A primeira coisa de que me apercebi foi de que não ia ser fácil: existem literalmente milhares de CMS (Content Management System) no mercado, desde os gratuitos até aos que custam milhares de euros por site.
Eu procurava fazer sites de forma simples e que tivesse um backoffice intuitivo para o cliente final actualizar.
A segunda coisa de que me apercebi foi que a minha vida tinha sido diferente se tivesse investido tempo a procurar um CMS antes. Fazer um site de raiz e começar sempre do zero com uma página em branco, parece-me agora completamente absurdo.
O terceiro passo foi instalar, ler documentação e consultar fóruns. Falei no assunto ao Hélder Vasconcelos, que tinha trabalhado comigo e evoluído de outra maneira: sugeriu e meteu as mãos no fogo pelo Concrete 5, um CMS de que pouca gente tinha ouvido falar, baseado em PHP.
Permiti-me então testar a situação com alguns sites de clientes e amigos. Fiz então uma série de projectos com o Concrete5, e após uma curva de aprendizagem bem suave reduzi o tempo de implementação para cerca de metade e a formação ao cliente faz-se em 30 minutos. Agora os clientes finais interagiam com os sites e atualizavam conteúdos sozinhos (pelo menos até se fartarem, mas isso é outra história).
Porque não usar WordPress?
Já tinha referido que o objectivo do CMS era fazer sites simples de construir e de actualizar. Entretanto começaram a passar para mim e para o Hélder projectos cada vez mais complexos, Neste ponto tínhamos duas hipóteses - apostar ainda mais no C5 e começar a usá-lo como uma framework ou passar para um CMS mais "poderoso".
Nisto passei algum tempo a instalar e a mexer com o Joomla, Drupal e Wordpress e a minha conclusão é que são mais famosos, sim, mas de melhores pouco têm.
O Joomla e o Drupal são o que se costuma chamar spaghetti code. Os 3 têm milhares e milhares de plugins, sim, mas são completamente selvagens e é raro o que funciona.
O Wordpress é excelente para blogs, mas fazer um site institucional é uma batalha. Era tudo à volta de post e comentários. Os sistemas de criar temas deste três eram horríveis e era tudo gerido num backoffice sem qualquer relação com o frontoffice. A criação de temas e plugins é selvagem, com enormes lacunas de segurança. Há tanta coisa disponível que é simplesmente uma lotaria aferir a segurança e funcionamento de tudo.
Acresce aqui que o Wordpress é tão disseminado que se torna um alvo frequente de ataques de hackers, pelo que é muito vulgar termos possíveis clientes a queixarem-se de que o site foi hackado. E pior do que isso, não é só a questão de haver muitos sites em Wordpress, é um facto que o Wordpress é um CMS frágil em termos de segurança.
O Drupal é brutalmente difícil e é praticamente impossível um cliente final actualizar conteúdos.
Aqui deixo uma ressalva: não sei como está actualmente a situação com as diversas actualizações. Isto porque...
...escolhemos o Concrete5
A nossa opção passou por aprofundar o Concrete5. Estamos a usá-lo com a twitter bootstrap framework. Dá-nos toda a liberdade de programar o que for necessário, mas com a vantagem de ter já várias coisas feitas: utilizadores, gestor de ficheiros, validações, etc.
Os add-ons e temas no Concrete5 market são aprovados pela equipa que o desenvolve e funcionam mesmo, incluindo os muitos gratuitos disponíveis. O suporte de quem fez os addons é gratuito inicialmente e mesmo após anos muitos estão ainda disponíveis para ajudar. O próprio fórum tem uma base de apoio forte.
Em suma, conseguimos fazer qualquer site tipo com o melhor backoffice de sempre, perfeitamente utilizável pelos clientes.
Nem tudo são vantagens
Um defeito do Concrete5 é não se encontrar facilmente um tutorial que cubra o desenvolvimento de um site todo, desde criar o tema, definir as áreas editáveis e globais, definir os tipos de páginas, criar as páginas, criar os blocos, etc.
Existe documentação sobre tudo isto, mas está separada por vários sítios e só com a experiência se consegue ter uma visão geral da coisa e saber a ordem pela qual as coisas se fazem. Mas volto a referir que a curva de aprendizagem é bem suave e do lado do cliente final ou do curador do site, ainda mais suave é.
Webdesign com Concrete5
Entretanto, após treinar em alguns projecto menores, pus em mãos a nova versão do site da empresa: baseada num tema de Concrete5 altamente modificado através de CSS, o site tem centenas de páginas, é actualizado regularmente em minutos nos dois idiomas e consegue excelente resultados na pesquisa orgânica, graças também à facilidade de fazer SEO que já é nativa do Concrete5.
Neste momento ainda está feito numa versão relativamente antiga do C5, mas as últimas versões contam com um interface de backoffice melhorado, apoio multilingue nativo e melhor suporte ao SEO.
Para vermos como o Concrete5 é tratado pela equipa de desenvolvimento (a Portland Labs), foi completamente redesenhado e programado de raíz na versão 5.7 com Laravel framework, entre outras tecnologias de ponta, de forma a ter o código mais limpo e funcional. Na versão 5.8 já estava estável e totalmente funcional e ainda mais refinado para o utilizador. Fez agora dia 30-09-2018 10 anos desde a sua primeira versão e está disponível a versão 8.4.3, utilizada para fazer este site. Já a utilizei para sites de clientes como este.
Demonstração do Concrete5
Quer visitar o backoffice do Concrete5 para ver como é acessível editar o site ou acrescentar páginas? Veja aqui este site de demonstração. Nem precisa de instalar nada.
Este artigo já está a ficar extenso, daí optar pela divisão em vários futuros artigos. Considero que com este texto todo já poderão ficar com uma ideia sobre a nossa opção por este CMS.
Iremos de futuro adicionar aqui um índice dos artigos relacionados com Concrete 5.