gamedeveloper

Adeus Ghost, olá Jekyll

Adeus Ghost, olá Jekyll

Há um ano eu decidi migrar o meu blog feito no Wordpress para alguma plataforma que permitisse eu ter um blog estático (sem banco de dados, apenas HTML/CSS) e usar a hospedagem gratuita do GitHub Pages. Na época eu acabei escolhendo usar o Ghost, como contei em detalhes neste post. Um ano depois percebi que não foi a melhor escolha, pois apesar de solucionar os meus problemas acima não era nada prática publicar um post.

O GitHub Pages funciona apenas com HTML/CSS estático ou Jekyll, por isso precisei utilizar uma tool em Python chamada Buster para converter o blog feito no Ghost para páginas estáticas, e então publicar no GitHub Pages. E aqui começaram meus problemas: eu precisava de depois repositórios para o projeto: um rodando o blog em Ghost, que é uma aplicação NodeJS, e outro com as páginas estáticas no GitHub. Então para cada post novo ou alteração eu precisava rodar o projeto em um servidor local, rodar a tool para exportar em páginas estáticas, e depois fazer um commit para o repositório no GitHub. Além de deste processo não ser prático eu dependia de ter um computador configurado para postar no blog.

O Ghost é uma ótima plataforma, leve e rápida, porém não foi a melhor escolha para o meu blog. Fiquei empolgado em conseguir migrar do Wordpress para o Ghost rapidamente e não pensei em fazer testes ou verificar se não teria problemas. Além da dificuldade de publicar um post, tive problemas com a tool Buster que exportava o blog para páginas estáticas, e por estar sem suporte há alguns anos eu tive que corrigir algumas coisas no seu script Python. Cheguei até a escrever um script Ruby para automatizar boa parte do processo de publicar que, apensar de funcionar bem, dependia de mais configurações na máquina para rodar todo processo.

Acho que depois de uns 6 meses eu percebi que continuar com este processo não era uma boa opção, então decidi fazer um teste usando o Jekyll. Para aprender e testar esta opção, e não cometer o mesmo erro anterior, eu decidi fazer um projeto pequeno mas até o final. Assim refiz o meu portifólio, que antes eram apenas páginas estáticas feitas a partir de um template do Bootstrap, e hoje é algo bem prático para eu atualizar com novos projetos. Como o conteúdo era relativamente pequeno eu demorei apenas 1 semana para refazer o portfólio, e fiquei muito feliz com o resultado.

Tão feliz que decidi refazer o blog usando Jekyll, e planejei este projeto para Janeiro deste ano, assim poderia terminar o ano sem interrupções nos posts. Eu não queria apenas migrar o conteúdo, como fiz quando migrei do Wordpress para o Ghost, mas sim corrigir problemas e adicionar funcionalidades ao blog. Estas eram minhas metas com este novo blog:

  • Continuar utilizando hospedagem gratuita do GitHub Pages
  • Tornar o processo de publicar um post simples
  • Poder escrever e publicar de qualquer lugar, sem depender configurações
  • Adicionar um campo de busca para achar o conteúdo
  • Melhorar as categorias
  • Layout simples e rápido
  • Corrigir todas imagens e links quebrados de posts antigos

Utilizando a tool do Jekyll de migração a partir do Ghost, a base do meu portólio e um template básico do Bootstrap para blogs, iniciei o projeto que teve duração de pouco mais de 1 mês. A migração foi bem simples, e ajustar o layout usando HTML e CSS no Jekyll não demorou tanto quanto pensei. Meu maior problema foi cumprir a última meta e corrigir mais de 300 posts que escrevi nos últimos 8 anos. Foi um trabalho muito longo e cansativo, mas valeu muito a pena. Talvez ainda exista algo que deixei passar sem querer, mas acredito que hoje o blog está tão redondo quanto no seu início. O código-fonte do blog está no GitHub.

Muitas coisas quebraram das migrações que fiz de servidores e serviços. Meu blog começou no próprio Wordpress, depois migrei para o Uol Host (não recomendo), depois para o Bluehost (não recomendo). Após péssimas experiências decidi configurar meu próprio servidor no Digital Ocean (recomendo!), depois migrei para o Amazon Web Services (recomendo!) usando serviços separados para o banco de dados (RDS) e aplicação (Elastic beanstalk). Passei 6 anos pagando em média $10 dólares para manter este blog no ar, além de renovar o domínio todo ano, e então decidi migrar para algo mais rápido e gratuito. O resto da história está neste post.

Espero que gostem do resultado, afinal fiz tudo isso para você que vem de vez em quando por aqui ler meus posts. Este ano no dia 24 de Abril o blog vai fazer 8 anos e muita coisa mudou aqui e na minha carreira. No início nem imaginava que eu teria passado por empresas de jogos internacionais, e nem que hoje estaria em Porto Alegre trabalhando na Aquiris. De vez em quando volto aos meus primeiros posts para me lembrar dos sonhos que tinha, ficar feliz onde cheguei, e sempre lembrar que ainda estou começando.