Fluência


O objetivo de um percurso de linguagem no Exercism é dar às pessoas uma forma de alcançar um elevado nível de fluência com um baixo nível de proficiência.

O nosso objetivo é a fluência na sintaxe, nas expressões idiomáticas e na biblioteca padrão da linguagem.

Os Language Hunters descrevem a fluência como

Aquilo que consegues dizer quando te acordam a meio da noite com uma lanterna apontada à cara.

Isto é distinto do conceito de proficiência, que não tem a ver com facilidade, mas sim com grau.

Descrevem quatro níveis de proficiência:

  1. Ideias simples e concretas - muitas vezes é o suficiente para desenrascar em transações simples do dia a dia. «Com sede». «Boa música». «Mais um».
  2. Frases simples e completas - a capacidade de manter uma conversa simples e de compreender as respostas.
  3. Frases complexas - consegues ter conversas interessantes, contar histórias.
  4. Ideias complexas - consegues discutir assuntos complicados, como temas sociais, económicos e políticos.

Podes ter a capacidade de atuar num determinado nível sem conseguires fazê-lo sob pressão. A proficiência não implica automaticamente fluência.

Embora estes níveis tenham sido definidos no contexto das línguas humanas, aplicam-se bastante bem às linguagens de programação.

  1. Sintaxe básica - a capacidade de usar estruturas de dados e funcionalidades básicas da linguagem
  2. Programas simples - consegues juntar um pequeno programa para resolver um problema pequeno
  3. Programas do mundo real - consegues usar a linguagem de programação para resolver problemas do dia a dia com as ferramentas e bibliotecas do ecossistema mais alargado da linguagem.
  4. Conhecimento profundo da linguagem e do ecossistema - em vez de usares o que já existe, passas a contribuir para inventar novas ferramentas, melhorar a linguagem e fazer evoluir o ecossistema

Dentro deste framework, no Exercism pretendemos um elevado grau de fluência num nível 2 de proficiência. Isto preenche a lacuna entre o «Hello, World» e a produtividade.

Ser fluente neste nível básico permite que as pessoas concentrem toda a atenção em pensar a um nível mais elevado e mais útil. Também as coloca numa boa posição para aproveitar os recursos e a documentação que já existem para a linguagem.