Esse é meu primeiro tópico no Bastter e gostaria de dar a dica para todos que querem aprender ou aprofundar seus conhecimentos em programação. A universidade de Harvard oferece um curso gratuito de introdução à ciência da computação chamado CS50, com direito a certificado (também gratuito; tem a opção paga também, mas é a mesma coisa). Não é necessário ter conhecimento prévio, mas o conteúdo é totalmente em inglês.
No CS50 já teve o Mark Zuckerberg falando sobre as tecnologias do Facebook quando ele havia acabado de criar a empresa, tem as experiências do Steve Ballmer, fundador e ex-CEO da Microsoft. É um baita curso, de alto nível, conteúdo denso e muita informação.
Há um desafio ao final de cada módulo, então é um aprendizado extremamente ativo, ao contrário de muitos cursos online, na qual o professor vai codando e só é necessário repetir o que ele faz, mesmo sem ter entendido direito. Nesses desafios são dados os requisitos técnicos para que a sua solução seja aprovada, algumas dicas e tutoriais, mas nunca é dada a resposta e o aluno precisa escrever a sua própria solução. E existe uma nota, que é dada através dos testes automatizados que eles fazem. Se não passar, dá para reenviar quantas vezes for necessário, corrigindo os erros.
Eu terminei esse curso ano passado e foi simplesmente o curso que mais me marcou na minha vida. Como o conteúdo é o mesmo dado aos alunos de Harvard, que é a nata da nata dos americanos, então o nível de dificuldade é bem grande e não tem arrego, mas ao mesmo tempo não é algo impossível, pois todas as ferramentas necessárias são dadas e é esperado que vc tire dúvidas e se aprofunde mais olhando outros sites, documentações e fóruns de discussões.
Resolver um problema difícil é extremamente gratificante e já dando spoilers, ele te ensina a ficar confortável com o desconforto, que é justamente uma das habilidades mais importantes que um programador precisa ter. Só terem uma ideia, terminei em 7 meses, me dedicando quase todo dia e tentando dar o melhor de mim nos desafios. Tem gente que termina antes, tem gente que termina depois, mas o importante é absorver toda informação possível.
Ainda existe a possibilidade de continuar o aprendizado fazendo outros cursos deles. Tem o focado em desenvolvimento web, mobile, games, um outro para profissionais formados em Direito, outro para pessoas de negócios aprenderem sobre tecnologia e logo mais teremos um de machine learning.
Recomendo muito a todos!
Link para o curso, hospedado na Edx:
Course | CS50 | edXTodos os cursos do CS50:
cs50 Courses | edXTem um vídeo muito bacana do Felipe Deschamps, que elogia o curso, explica que o curso realmente é gratuito (apesar de não parecer ser no Edx) e dá uns links interessantes: