Você gostaria de aprender a programar, mas se sente desconfortável ou acha difícil acompanhar os cursos e vídeos disponíveis na internet? Talvez esteja na hora de você experimentar uma nova forma de aprendizado! O uso de jogos ou mesmo uma plataforma de aprendizado gameficada pode oferecer várias vantagens, principalmente para iniciantes ou para aqueles que desejam desenvolver suas habilidades de programação de maneira interativa e envolvente. Aqui estão 10 sugestões para você colocar a mão na massa que fogem um pouco dos já famosos Scratch e Minecraft.
1- CodeCombat
CodeCombat funciona como um jogo de RPG e fantasia e ensina os códigos Java Script e Python, com tela dividida entre um editor de código e um labirinto com seu personagem, os jogadores só podem controlar seus personagens escrevendo código real usando linguagem de programação. Depois de experimentar o CodeCombat com certeza torna o processo de aprendizagem menos intimidante e mais divertido. A instrução é direta e muito fácil de manusear. O jogo é gratuito, para computador e em inglês, mas dá para traduzir a página.
- Acesse em : https://codecombat.com
- Nível : Iniciante.
- Requisitos: Um dispositivo conectado a internet que tenha um teclado conectado (Não funciona bem no teclado virtual)
- Valor: $39,90 por ano.
- Idiomas: 40 em tradução.
- Observações: É possível agendar uma aula grátis de 60 minutos. Possui outros planos com o acompanhamento de um instrutor/professor 1 vez por semana.
Opinião: Possui um programa bem estruturado. A empresa possui outros programas de formação, para outros públicos e faixa de idades e isso ajuda a criar conteúdos mais robustos e que consigam engajar o público Jovem.
2- Jsrobot
É um site onde você controla um robozinho para coletar moedas e chegar ao final de uma fase aprendendo a codificar em Java Script. Nele, usuários precisam evitar obstáculos, coletar moedas e eventualmente alcançar a bandeira. A dinâmica do jogo é muito simples. Na guia “Instructions” ele fornece instruções para você programar a ação do robô. As ações devem ser testadas na guia “Console” e o código deve ser escrito na guia “Scripts”. O JSRobot, é um ótimo complemento para quem está iniciando, com exercícios interativos onde você aprende a programar em JavaScript de uma forma mais descontraída. O jogo é gratuito em inglês e para computador. O seu desenvolvimento é do desenvolvedor inglês Reaal Khalil. O projeto também está disponível no GitHub.
- Acesse em : https://lab.reaal.me/jsrobot/
- Nível : Iniciante.
- Valor: Gratuito.
- Idiomas: Inglês
Opinião: A iniciativa do desenvolvedor @reaalkhalil é muito interessante e muito bem estruturada. O usuário pode se sentir um pouco perdido com as abas na parte inferior da tela do jogo, e desistir antes mesmo de começar. Para aqueles que já possuem algum conhecimento de programação ou alguém próximo que possa dar dicas e ajudar com alguma mentoria, é uma ótima opção.
3- Codingfantasy
Coding Fantasy é a plataforma para aprender CSS jogando jogos que combinam as partes que faltam no aprendizado tradicional: muita prática e um ambiente de aprendizado envolvente. Aqui há 2 jogos, o Flex Box Adventure onde os jogadores controlam seus personagens usando o CSS Flex Box, e o Grid Attack onde os jogadores controlam seus personagens usando CSS Grid. O jogo é gratuito, para computador, e em inglês, mas dá para traduzir a página.
- Acesse em : https://codingfantasy.com/games
- Nível : Intermediário.
- Valor: Gratuito.
- Idiomas: Inglês
Opinião: Material é muito bom para quem está querendo aprender a criar interfaces e telas baseadas em HTML e CSS de alta qualidade. Muitos desenvolvedores experientes tem grande dificuldade em trabalhar o posicionamento de elementos em tela usando o Flex Box e este jogo endereça este tipo de dor. É mais indicado para quem já tem uma noção básica de HTML e CSS.
4- Codewars
Code Wars é um site onde encontramos desafios (chamados de "Kata") de 8 níveis diferentes, sendo o nível 8 o básico e o nível 1 extremamente avançado. Por causa dessa variedade, o site se torna atrativo tanto para um iniciante quanto para quem já tem mais conhecimento de programação. Existem Katas para aprender muitas linguagens de programação como React, Clojure, Coffeescript, C#, Crystal, Csharp, Dart, Elixir, Fsharp, Haskell, Java, Javascript, Ocaml, PHP, Python, Ruby, Rust, Shell, SQL, Swift e Typescript. O conceito da plataforma é você resolver quebra-cabeças preenchendo os espaços em branco. E o mais legal de tudo: depois de resolver um desafio você pode ver como outras pessoas resolveram o mesmo desafio, aprendendo assim novas técnicas, novos comandos,e isso torna o Codewars o lugar perfeito para aprender e desenvolver suas habilidades! O acesso à plataforma é gratuito,em inglês e para computador.
- Acesse em : https://www.codewars.com/
- Nível : Intermediário.
- Valor: Gratuito.
- Idiomas: Inglês
Opinião: A plataforma exige conhecimentos um pouco mais avançados que o básico. Possui uma proposta de desafios associados a uma comunidade ativa e engajada. Acreditamos que seja muito mais valioso para quem deseja expandir os horizontes, seja por meio de aprofundamento dos conhecimentos em uma linguagem ou por meio da generalização em novas linguagens e conteúdos. Pode aumentar bastante a produtividade de um time, em uma empresa já estabelecida.
5-LeetCode
LeetCode é uma plataforma de codificação online com vários desafios de codificação para escolher. Esses desafios são geralmente focados em estruturas de dados e algoritmos. Existem mais de 2.000 problemas para escolher, então você sempre tem algo para praticar. No entanto, alguns estão bloqueados com uma assinatura tipo premium". LeetCode é uma plataforma de codificação muito envolvente e divertida e que distribui prêmios, dando uma inspiração a mais para ajudá-lo a melhorar suas habilidades, a plataforma em inglês e para computador.
- Acesse em : https://leetcode.com/
- Nível : Iniciante / Intermediário.
- Valor: Gratuito.
- Idiomas: Inglês
Opinião: Os materiais cobrem diversos assuntos diferentes que tentam explicar conceitos importantes que existem em diversas linguagens de programação e não apenas o código em si. É um material interessante para estabelecer os fundamentos para quem quer entrar de verdade na ciência da computação.
6- Mimo
Mimo é um aplicativo que oferece formas diferentes de aprendizado e traz uma interface simples e amigável, o app usa um sistema de gamificação dos estudos, com recompensas que te incentivam a continuar programando. Você terá a oportunidade de aprender algumas linguagens e tecnologias, como: Python, JavaScript, Java, HTML, CSS, SQL, Swift, Kotlin, C++, SQL e PHP. Ele é gratuito para Android e iOS e em português.
- Acesse em : https://mimo.org/
- Nível : Iniciante .
- Valor: Gratuito - Basic / $99 ano - Pro.
- Idiomas: Inglês
Opinião: Os materiais e sessões oferecidos pela plataforma são bem simples para quem está começando. As trilhas possuem materiais que são bem completos e podem te tirar do zero bem rapidamente.
7-Programming Hero
O Programming Hero é um aplicativo projetado para ensinar você a programar do zero. Ele é construído em torno de lições, além de questionários curtos criados para testar o que você aprendeu e sua capacidade de aplicar seu conhecimento recém-adquirido em exemplos práticos. Ele é gratuito para Android e iOS e em inglês. Além disso o programa tenta direcionar os alunos para o mercado de trabalho, oferecendo para empresas a possibilidade de contratar os alunos. Turmas são formadas de tempos em tempos para selecionar candidatos a participarem das formações.
- Acesse em : https://www.programming-hero.com/
- Nível : Iniciante.
- Valor: Gratuito.
- Idiomas: Inglês / Bengali
Opinião: O material e os treinamentos são muito focados para o mercado de Bangladesh, diversas partes do site ainda são exibidas no idioma Bengali. Embora a iniciativa e os materiais sejam ótimos, pode não ser apropriado para o público internacional / brasileiro.
8- Enki
O Enki é um aplicativo que adapta as lições às preferências e nível de habilidade do usuário. Você pode aprender mais de 20 habilidades, incluindo aquelas relacionadas a JavaScript, Python, CSS, blockchain e análise de dados. Enki tem mais de 2.500 lições e uma comunidade interativa que permite que você aprenda com outras pessoas. O aplicativo (assim como os demais apps desta lista) também apresenta uma interface bem atrativa e acessível e está disponível para Android e iOS em inglês e traz muitos recursos gratuitos, mas é possível também assinar mensalmente o plano Pro para ter acesso a todo o conteúdo da plataforma.
- Acesse em : https://www.enki.com/
- Nível : Iniciante.
- Valor: Gratuito / $8 mês com IA.
- Idiomas: Inglês.
Opinião: Possui acesso tanto pelo website como pelo aplicativo (está mais completo no app), o material é bom e possui ótimas revisões por parte dos usuários. No site possui uma versão somente leitura e outra paga que pode-se interagir com uma IA que ajuda no aprendizado. O conteúdo no site é mais orientado a dados, relatórios, consultas, e tem mais a característica de ser um livro interativo.
9- Sololearn
O Sololearn esta disponível tanto por meio de um aplicativo como no website. que integra quebra-cabeças e questionários tradicionais com um elemento de comunidade. Você pode compartilhar suas pontuações e resultados dentro da plataforma. Nele tem uma ampla variedade de linguagens, incluindo Java, JavaScript, Python, SQL e C++. Sololearn está disponível nas plataformas Android e Apple em inglês. A assinatura básica da Sololearn é gratuita, mas é possível também assinar mensalmente o plano Pro para ter acesso a todo o conteúdo da plataforma.
- Acesse em : https://www.sololearn.com/
- Nível : Iniciante/Intermediário.
- Valor: Gratuito / $69,99 Ano - PRO.
- Idiomas: Inglês.
Opinião: Ter uma comunidade para tirar dúvidas, trocar ideias e discutir pontos ajuda bastante no processo de aprendizado, mas é algo que nem todas as pessoas se sentem a vontade. A ferramenta possui algumas trilhas interessantes que facilitam o entendimento de quem está começando.
10- Encode
O Encode é um aplicativo com explicações curtas, desafios de codificação e exemplos do mundo real que aprimoram suas habilidades de codificação.O processo é bastante prático, feito por meio de tarefas curtas, para que o usuário possa aprender aos poucos. Nele tem uma variedade de linguagens de programação, permitindo um aprendizado mais amplo. Uma das suas grandes vantagens é poder ser utilizado também em modo offline, ou seja, sem necessitar de uma conexão com a internet. Pode ser baixado para Android e iOS em inglês é gratuito, mas se quiserem um pouco mais de conteúdo, poderão comprar.
- Acesse em : https://upskew.com/encode-android/
- Nível : Iniciante/Intermediário.
- Valor: Gratuito.
- Idiomas: Inglês.
Opinião: É uma solução simples mas que se os roteiros forem seguidos com dedicação te conduzirá a obter as habilidades necessárias para o inicio de carreira.
Conclusão
Existem diversas ferramentas no mercado que podem te ajudar, entretanto se você está iniciando e precisa de uma ajudinha para se engajar e aprender de verdade, recomendamos os serviços da Codingfantasy e da CodeCombat. Se já estiver um pouco mais avançado e possuir alguns fundamentos importantes, Letscode, Mimo e SoloLearn podem ser uma boa opção. Se quiser se aprofundar e seguir o modelo de "LifeLong Learning" a CodeWars é para você!
Se você prefere aprender pelo bom e velho livro, abaixo estão algumas indicações que podem te ajudar no desenvolvimento profissional.
- Guia Front-End: O caminho das pedras para ser um dev Front-End
- Fundamentos de HTML5 e CSS3
- Codificação Para Leigos
- Lógica de Programação. Crie Seus Primeiros Programas Usando Javascript e Html
- Introdução à Programação com Python: Algoritmos e Lógica de Programação Para Iniciantes
- Inteligência artificial Para Leigos
- Bancos de Dados Sem Mistério : Guia para iniciantes em Tecnologia da Informação
- Unity Total: Fundamentos Essenciais [2D & 3D, Versão 2019]: Entre no mundo do desenvolvimento de jogos com este guia essencial para todos que desejam começar agora mesmo
Bons estudos!