Por que você não deve aprender a codificar com Codeacademy

O que há de errado com o Codecademy? Para aqueles que querem aprender codificação, o site instrucional é um dos melhores para começar. Mas o Codecademy te ensina a pensar como um codificador?

O que há de errado com o Codecademy?  Para aqueles que querem aprender codificação, o site instrucional é um dos melhores para começar.  Mas o Codecademy te ensina a pensar como um codificador?
Propaganda

A partir do título, você provavelmente acha que eu tenho um grande interesse com o Codecademy. Eu não.

De muitas maneiras, eu os admiro. Desde 2011, eles introduziram incontáveis ​​milhões à nobre embarcação de desenvolvimento de software Codecademy - Mãos para baixo A maneira mais fácil de codecademy - Mãos para baixo A maneira mais fácil de codificar Codecademy é um novo tutorial de programação interativa de slash de website que orienta você noções básicas de JavaScript. Embora não tenha sido em torno de muito tempo, o site já vem gerando um monte de buzz em ... Leia mais, e lançaram as carreiras de milhares de desenvolvedores. Esse número parece pronto para disparar com o lançamento do seu primeiro curso de Java. Mas, ao mesmo tempo, seu produto - e para ser mais preciso, seus métodos de ensino - deixam muito a desejar, deixando milhares de pessoas frustradas e sem saber onde progredir com suas habilidades de desenvolvimento formadoras.

Então, o que há de tão terrivelmente errado com o Codecademy?

E como você, como um programador de jornada, pode contornar essas falhas para alcançar seu potencial de programação?

Problema um: não ensina a mentalidade

Ser um programador é mais do que simplesmente regurgitar a sintaxe. Trata-se de ter uma mentalidade particular, em que você é capaz de dividir sistematicamente um problema em etapas individuais e lógicas e depois recriá-lo em uma linguagem que o computador entenda.

Você precisa ser capaz de analisar um problema em grande escala e entender como cada passo que você toma afeta o resto do programa. Além disso, você precisa ser capaz de tolerar um alto nível de frustração, e ser capaz de perseverar quando atingir uma parede de tijolo mental. 5 Maneiras de vencer o bloco do programador agora 5 maneiras de vencer o bloco do programador agora Todo programador encontra uma série de negativos emoções ao longo de sua jornada, e se não forem controladas, essas emoções podem ter um impacto profundo no progresso - até mesmo fazendo com que algumas desistam completamente. Consulte Mais informação . Você precisa ser capaz de pesquisar erros e mensagens de erro, e comunicar seu problema para os outros. Simplificando, você precisa ser capaz de pensar como um programador.

A Codecademy não ensina você a pensar como um codificador.

Em vez disso, ele ensina o básico de várias linguagens de programação, sem nenhuma instrução real sobre como aplicá-las a problemas da vida real.

Então, como você pode obter essa experiência inestimável?

Pessoalmente, eu sou um grande fã do Project Euler e do Reddit's Daily Programmer SubReddit, que apresenta bastante quebra-cabeças de programação para afundar os dentes de alguém. Sou um grande fã deste último, porque você é incentivado a compartilhar seu código para receber feedback de outros membros da comunidade.

ProgramaçãoChallenge

O subreddit Daily Programmer, como o nome sugere, vem com quebra-cabeças diários para todos os níveis, desde novatos absolutos até jóqueis de código endurecidos.

Problema dois: pisque e você vai perder

Uma das minhas maiores frustrações com a abordagem da Codecademy ao ensino é que ela é incrivelmente transitória. Você aprende algo, depois conclui um desafio e dificilmente revisita esse tópico novamente. Pisque, e você vai sentir falta disso.

CodeAcademy2

É diferente da abordagem adotada pelo Duolingo Aprenda uma língua e traduza para praticar com o Duolingo (agora aberto a todos!) Aprenda um idioma e traduza para praticar com o Duolingo (agora aberto a todos!) A internet nos deu algumas ferramentas fantásticas para aprender idiomas e Duolingo é o site mais recente para dar uma chance. Acabou de sair do beta fechado e agora está disponível para todos ... Leia Mais, por exemplo, onde você tem que regularmente revisar e reforçar o que aprendeu para progredir.

Então, se você quiser consolidar seu progresso, você terá que fazer alguma prática deliberada fora da Codecademy. Uma das melhores maneiras de fazer isso é simplesmente escrever código. Muitos programadores - e eu me incluo nesse quadro - também juram por revisão deliberada e revisão regular com flashcards.

Cartões flash de papel são baratos e eficazes. Na verdade, você pode comprar 1.000 na Amazon por menos de treze dólares.

Cartões de índice em branco Oxford, 3 "x 5", branco, 1.000 cartões (10 embalagens de 100) (30) Cartões de índice Oxford em branco, 3 "x 5", branco, 1.000 cartões (10 embalagens de 100) (30) Na Amazon $ 11, 99

Para aqueles com inclinação digital, há também vários aplicativos que você pode usar. Eu sou um grande fã da Anki, simplesmente porque é personalizável. Ele possui milhares de flashcards criados pela comunidade e é extensível por meio de sua interface de programação de aplicativos (API) poderosa e bem documentada.

Para usuários móveis, há também muitos aplicativos de cartão de memória para Android 6 Flash Card Apps para Android, em comparação: Qual é o melhor? 6 aplicativos de cartão flash para Android, em comparação: Qual é o melhor? Flashcards são uma ferramenta incrivelmente útil para estudar, mas nem sempre são convenientes para fazer e transportar; é aí que o seu smartphone entra. Leia mais, e para o iPhone Ace seu próximo exame Usando o Flashcard Apps para iPhone ou iPad Ace seu próximo exame usando o Flashcard Apps para iPhone ou iPad Se você quiser começar a fazer exames escolares, provavelmente querer começar a usar flashcards. Consulte Mais informação . Você também pode usar o Planilhas Google Como fazer flashcards digitais com planilhas do Google Docs Como fazer flashcards digitais com planilhas do Google Docs Leia mais para fazê-las!

Eu estou usando atualmente CodeCode.Ninja - que, divulgação completa, foi construída pelo meu amigo e ex-escritor MakeUseOf Erez Zukerman. Este serviço de assinatura é desenvolvido com os programadores em mente, e você pode construir uma base de conhecimento viva e baseada em cartão flash de tudo o que você precisa saber.

CodeCodeNinja

O que eu gosto sobre a abordagem adotada pelo CodeCode.Ninja é que para progredir através do seu deck, você é forçado a digitar deliberadamente a resposta para cada cartão. Isso, eu descobri, ajuda a construir sua memória muscular.

Problema três: sintaxe não é programação

Mais uma vez, o Codecademy ensinará a você a sintaxe de uma linguagem de programação, mas, na maioria das vezes, não lhe dirá como aplicá-la. É por isso que você costuma ver perguntas como essa, que foram postadas no subreddit LearnProgramming.

Onde começar

O JavaScript introdutório O que é JavaScript e a Internet pode existir sem ela? O que é JavaScript e a Internet pode existir sem ela? JavaScript é uma daquelas coisas que muitos tomam como garantidas. Todo mundo usa isso. O curso Ler mais não ensina como incorporar um script em uma página da Web para adicionar interatividade a HTML estático e plano. O curso Java não ensina como compilar seu código para executá-lo. Ei, nem sequer lhe diz que o Java é uma linguagem compilada, ou a diferença entre uma linguagem compilada e uma linguagem interpretada.

Há outras coisas que são desdobradas. A Codecademy não ensina como escrever código limpo para Arduino e Raspberry Pi Beginner? Aqui está como escrever código limpo Arduino e Raspberry Pi Beginner? Aqui está como escrever código limpo Leia mais e estilizado para ser legível e fácil de entender. Não ensina como escrever código auto-documentado. Ele não ensina sobre gerenciamento de pacotes e como usar o código de outras pessoas em seu próprio código.

Isso é algo que você só pode superar deixando os portos seguros da Codecademy na primeira oportunidade possível. Escrevendo código e aprendendo sozinho.

Problema quatro: Demasiado bolo, não bastante legumes

A razão pela qual o Codecademy é bem-sucedido é porque ele leva a codificação e a transforma em peças do tamanho de uma mordida que são fáceis de realizar e oferecem feedback instantâneo. É o doce da codificação.

programaçãoboeana

O problema é que aprender a ser um desenvolvedor muitas vezes significa que você tem que aprender sobre coisas que são importantes, mas a partir do offset não é tão empolgante, nem fácil. Você não aprende sobre a teoria da programação. O material que Donald Knuth gastou milhares de páginas - e a melhor parte de duas décadas - escreveu na The Art of Computer Programming.

A Arte da Programação de Computadores, Volumes 1-4A Boxed Set A Arte da Programação de Computadores, Volumes 1-4A Boxed Set Compre Agora Na Amazon $ 190.54

O Codecademy essencialmente protege você da parte complicada e complicada da programação. Não há como evitar isso, além de ser disciplinado e fazer sua própria pesquisa. Se você não sabe o que deve estar olhando, considere pedir aos desenvolvedores mais estabelecidos orientação.

Codecademy não é tão ruim

Há muito o que gostar no Codecademy. Eles introduziram milhares de pessoas nos fundamentos da ciência da computação. Mas há muito espaço para melhorias também.

Você já usou Codecademy? Doeu ou atrapalhou você? Conte-me sobre isso nos comentários abaixo.

In this article