Erros na Codecademy em Português

May 13, 2015

Em 2014 o Programaê! começou a traduzir plataformas de ensino de programação para a língua portuguesa. Estão neste portfólio o Scratch, Code.org, o currículo de ciência da computação da Khan Academy bem como a Codecademy, na qual comentarei um pouco neste post.

Atualmente existem 6 cursos traduzidos dentro da Codecademy (e já temos previsão de outros). \o/

Para cada um destes cursos, depois da tradução ainda houve um momento de passar um pente fino para corrigir eventuais erros de tradução. Pessoalmente revisei o curso de python, na época detectei (e corrigi) MUITOS erros.

Os erros mais comuns eram:

  • erros de sintaxe/concordância na descrição e instruções dos exercícios
  • erros na verificação dos exercícios (ex. a inscrição pede para escrever print "Ola Mundo" e o algorimo que verifica espera print "Hello World")
  • erros do tipo: o código esta certo mas porque acusa erro?

Recentemente revisitando os fórums da Codecademy notei muita gente reportando problemas. Aparentemente algum deploy da CC quebrou as traduções.

Antes de continuar meu post eu peço encarecidamente: REPORTEM os erros. Vamos fortalecer nossa comunidade, o Programaê! é um movimento, vamos construir um conteúdo de qualidade, sempre grátis, para todos.

Usem o próprio fórum da Codecademy, a área de comentários aqui ou twitter.

Dito isso, vou tentar ajudar os usuários a resolver um dos erros, que penso eu, ser o mais comum.

O código esta certo mas porque acusa erro?

A Codecademy utiliza um algoritmo baseado em expressões regulares e condicionais simples (if) para verificar se você acertou ou não.

A título de exemplo, na trilha de Python o exercício Um Dia no Supermercado (8/13) pede na descrição da atividade:

Como no exemplo acima, exiba a chave juntamente com suas informações de preço e ações. Exiba a resposta no seguinte formato:

apple price: 2 stock: 0

Como no exemplo acima, já que sabemos que os dicionários prices e stock têm as mesmas chaves, você pode acessar o dicionário stock enquanto está percorrendo prices.

Quando for exibir, você pode usar a sintaxe do exemplo acima.

A saída correta:

Agora imagine um simples espaço no primeiro print

Note que ocorre um erro por um simples espaço, a mesma coisa iria acontecer se eu trocasse a palavra.

Isso acontece pois o algoritmo que verifica se a saída esta correta (ou não) é amarrado com a palavra pré-definida. Segue o exemplo do código que verifica o exercício:

Portanto, minha dica é: façam os exercícios da Codecademy respeitando os nomes de variáveis e as frases definidas. Longe de ser o melhor dos mundos mas é o como a plataforma foi estruturada.

Mais dúvidas estou a disposição e reforço, por favor, continuem reportando os problemas.