Evolution of a ruby web developer
Caso você já saiba sobre algum assunto abaixo, então pode pular! (Procure aprender Inglês ao longo dos estudos)
Esse carinha vai ser de muita importância daqui para o futuro, é utilizado por todas as empresas CVS, GIT (recomendo), SVN, Bitkeeper.
Iniciando o estudo por comandos no terminal para entender o básico do computador. Instalar/Atualizar, Listar arquivos, Mudar de diretório, Criar, Remover, Copiar, Mover, Renomear,Visualizar histórico de comandos, Manual.
- Instale o Ruby escolhendo um gerenciador, temos:
- RVM: [https://rvm.io/rvm/install]
- RBenv: [https://github.com/rbenv/rbenv]
- asdf: [https://asdf-vm.com/#/] (é bem completo)
Demorou mais chegou, porém caso não saiba de nada começe por Algoritmos e Estrutura de Dados.
livros para ajudar nos estudos:
- Livro 1: [https://leanpub.com/conhecendo-ruby]
- Livro 2: [https://books.goalkicker.com/RubyBook/]
Faça exercícios para fixar seu aprendizado.
- Link: [https://onebitcode.com/course/ruby-puro/]
- Link: [https://www.codesaga.com.br/]
- Link: [https://www.urionlinejudge.com.br] gosto desse site, pois quebra a cabeça por besteira :-)
Conheça o Rubocop para melhorar seu código!
Procure participar de um projeto Opensource.
Garanta que seus projetos serão bem construídos.
Curso bom: [https://onebitcode.com/course/minicurso-de-testes/]
Busque por mais conhecimento e pratique muito.
Os mais utilizados com Ruby são:
- PostgreSQL
- MySQL
- MS SQL SERVER
Aprenda sobre HTML, CSS e Javascript:
Aprenda o básico de início e caso ache algum curso melhor, faça!
Vou mostrar poucos frameworks para ruby:
- Rails - o mais utilizado (mais conhecido por Ruby on Rails, RoR).
- Sinatra - para aplicações simples.
- Hanami (ex Lotus)
- Hobbit - minimalista.
Curso de Ruby on Rails:
Link: [https://www.youtube.com/watch?v=ZHPondVB9RQ&list=PLe3LRfCs4go-mkvHRMSXEOG-HDbzesyaP]
Crie CRUD's para praticar, melhorando sempre. Evolua esse app de CRUD com login, permissões etc.
Escolha o seu:
- MongoDB
- RethinkDB
- Cassandra
- Couchbase
Aulinha: [https://www.youtube.com/watch?v=1B64oqE8PLs&list=PLVc5bWuiFQ8GgKm5m0cZE6E02amJho94o&index=27]
Aprenda como implementar um app caching usando **Redis ou Memcached"" Melhore os seus projetos anteriores com ele.
Aulinha: [https://www.youtube.com/watch?v=I8iGQjKGjDA&list=PLVc5bWuiFQ8GgKm5m0cZE6E02amJho94o&index=6]
Aprenda o padrão REST e como fazer uma API's RESTful e certifique-se de ler a parte sobre REST do papel original de Roy Fielding.
Aulinha: [https://www.youtube.com/watch?v=vGuqKIRWosk&list=PLVc5bWuiFQ8GgKm5m0cZE6E02amJho94o&index=2]
Aprenda sobre as diferenças e como implementá-los.
Aprenda sobre as quebras de mensagens, padronizando o 'porque' e escolha uma. Escolha uma:
- RabbitMQ
- Kafka
À medida que o aplicativo cresce, consultas simples em seu banco de dados não vão interrompê-lo e você terá que recorrer a um mecanismo de busca. Escolha uma:
- ElasticSearch
- Solr
- Sphinx
Corre que é coisa demais!
documentação: [https://docs.docker.com/] Aulinha: [https://www.youtube.com/watch?v=-pUZBovqRcU&list=PLVc5bWuiFQ8GgKm5m0cZE6E02amJho94o&index=10]
Aulinha: [https://www.youtube.com/watch?v=xbLpIhCsIdg&list=PLVc5bWuiFQ8GgKm5m0cZE6E02amJho94o&index=19]
Agora é com o tempo e as novidades que vier, tenha uma boa sorte e não desista!