Show HN: Nova linguagem visual para ensinar crianças a programar

Uma nova IDE web chamada Pickcode busca fazer a ponte entre ferramentas baseadas em blocos como o Scratch e linguagens textuais ao oferecer uma forma estruturada, guiada por menus, para crianças escreverem código que se pareça mais com Python ou Java. Os comentaristas elogiam o polimento e o feedback em tempo real, mas debatem se criar uma linguagem própria é melhor do que ensinar um subconjunto de Python, quanta sintaxe e complexidade de POO jovens aprendizes devem ver e se ferramentas visuais devem priorizar estilos imperativos ou funcionais. O feedback prático foca no atrito da interface, na necessidade de preços mais claros e acesso a sandbox, no suporte a crianças mais novas ou que não falam inglês, e na importância de professores capazes de explicar como o código se relaciona com a computação real.

Reação geral ao Pickcode

  • Muitos acham o site polido, a ideia atraente e o editor “slick” para ensinar programação digitada.
  • Vários estão animados para testar com seus filhos, especialmente aqueles que estão superando o Scratch, mas ainda não estão prontos para programação textual completa.
  • אחרים, outros, são céticos de que seja necessária uma nova linguagem/IDE em vez de começar diretamente com Python ou outras ferramentas mainstream.

Público-alvo, objetivos e pedagogia

  • A ferramenta é voltada para estudantes do ensino médio inicial/final do fundamental, como uma ponte entre linguagens em blocos e Python/JS/Java.
  • Alguns acham que essa abordagem de “ponte” é válida e motivadora; outros questionam por que não ensinar diretamente um subconjunto de Python ou usar linguagens educacionais já existentes que crescem progressivamente em complexidade.
  • Um tema recorrente: o objetivo real é fazer as crianças se empolgarem e se sentirem capazes, não modelar perfeitamente como o hardware funciona.

Visual versus baseado em texto / edição estruturada

  • O Pickcode usa edição estruturada, guiada por menus, com reruns em tempo real, e não o encaixe tradicional de blocos.
  • Alguns elogiam a edição estruturada por ser mais próxima de código “real” do que o Scratch; outros dizem que ela combina o pior dos dois mundos: entrada restrita, mas ainda permite erros de sintaxe e edição desajeitada de expressões.
  • As sugestões incluem:
    • Permitir edição em texto puro de expressões com análise de volta para bolhas.
    • Suportar inserção de tokens via teclado para reduzir atrito.
    • Melhorar o tratamento de parênteses, tokens vazios e arrastar blocos aninhados.

Design da linguagem: imperativa versus funcional, palavras-chave

  • Há debate sobre se crianças devem começar com estilo mutável/imperativo ou com modelos funcionais/declarativos.
  • Alguns argumentam que o imperativo combina com o hardware subjacente e é necessário; outros acham que pensar “data-first” ou de forma funcional é conceitualmente mais limpo para iniciantes.
  • Palavras-chave como var, set e call são vistas por alguns como esclarecedoras (especialmente para distinguir atribuição de igualdade); outros as consideram ruidosas e desnecessariamente verbosas em comparação com comandos no estilo BASIC/LOGO.

Comparação com outras ferramentas e alternativas

  • O tópico menciona Scratch, Snap, Pyret, os “language levels” de Racket, Hedy, LOGO, NetLogo, LabView, Node-RED e outros como parentes próximos ou trabalho anterior.
  • Alguns acreditam que um subconjunto de Python ou ferramentas como Hedy são melhores pontes; outros valorizam o editor estruturado do Pickcode e sua integração estreita com o currículo.

Feedback de UI/UX, preços e ecossistema

  • Pedidos por:
    • Um modo sandbox de forma livre, claramente visível, e recursos de compartilhamento/comunidade mais claros.
    • Mais exemplos na página inicial e dicas de tutorial mais claras.
    • Preços informados antecipadamente; esconder o custo atrás de cadastro é visto como desanimador.
    • Ajustes para celular/tablet (teclado numérico para números, falhas de rolagem).
  • Alguns professores ressaltam que a habilidade de ensinar importa tanto quanto a profundidade técnica, e que as ferramentas precisam se adaptar a ambientes escolares restritos.