Tenho muitos amigos que veem o que faço, acham interessante e me fazem a pergunta
Do you think I could be a programmer?
Minha resposta é
... ummm ... do you like math?
Gostaria de ter uma resposta útil, por isso não sabia se alguém sabia de um teste de aptidão bastante decente para alguém que começaria do zero, mas que possui habilidades de pensamento crítico e resolução de problemas?
Respostas:
"Gostar de matemática" é um teste ruim. Eu nunca gostei de matemática (principalmente porque 90% dos professores de matemática do ensino médio eram péssimos).
Quando você diz "matemática", a maioria das pessoas pensa que você quer dizer "resolver cuidadosamente uma equação de acordo com um conjunto muito estrito de regras". A programação não é assim.
Programar é mais como desenhar, pois o que você pode alcançar é restrito apenas pelo que você pode imaginar.
O que importa é a capacidade de imaginar um sistema e ver como ele funciona.
fonte
Lembro-me de quando eu fazia um teste de aptidão cerebral ; Ainda tenho o certificado armazenado em algum lugar ...
O esboço do teste:
fonte
Há uma chance de que já exista uma boa por aí.
Veja, por exemplo, a discussão sobre como separar ovelhas de programação de cabras não programadas :
O que o teste identifica é a consistência das pessoas em operacionalizar uma sequência de instruções. O que isso significa é que eles podem construir modelos (abstrações) em suas mentes e trabalhar com eles.
fonte
Eu acho que um "teste" mais importante seria mostrar a eles uma linguagem / ambiente de programação simples com a qual eles possam brincar. Por exemplo, processamento ou python . Se eles podem aprender e gostar de usar esse idioma - talvez enquanto resolvam uma tarefa simples ou duas -, esse é provavelmente o melhor "teste de aptidão" que você poderia solicitar.
fonte
"Você gosta de matemática?" não é um começo ruim. Matemática é fundamental, depois disso ...
É aconselhável ver se eles conseguem resolver um problema e começar a dividi-lo em blocos, apenas no discurso, se conseguem caminhar passo a passo por um problema básico é um bom começo inicial.
Se eles puderem respondê-las bem, da maneira analítica e profunda que um programador tem no dia a dia, provavelmente eles podem lidar com isso.
fonte
Uma vez exposto à codificação, você tem uma compulsão para fazê-lo ou não. A aptidão é apenas um fator para saber se você será bom ou não. Exposição a bons exemplos, instruções, tempo na tarefa, esforço são outros. Realmente querer / precisar fazer algo torna muito mais fácil tirar proveito dos outros fatores.
fonte
Uma pergunta melhor do que "Você gosta de matemática" é "Você gosta de resolver quebra-cabeças lógicos"? São coisas como Sudoku, etc., ou descobrir a resposta para enigmas como "John, Anne, Peter, Mary e Brittany são vizinhos. John tem um carro branco, Brittany mora à esquerda de Anne, blá blá, em que ordem para eles viverem? "
Porque é isso que é a programação: um enorme quebra-cabeça lógico.
fonte
Acho que uma pergunta melhor é "Você gosta de construir coisas com blocos de lego?"
fonte
Assim como o Gusteau, um personagem do filme Ratatouille disse:
Qualquer um pode cozinhar.
Da mesma maneira, qualquer um pode programar. Mas nem todos serão ótimos nisso. A maioria dos trabalhos de programação exige um nível médio de aptidão e competência.
Apenas responda sim. Por quê? Porque a maioria das pessoas só quer se sentir apreciada por alguém que considera inteligente.
fonte
Eu acho que a matemática do gosto é importante. Não do ponto de vista de que você desfrute de provas rigorosas, que seriam necessárias para ser um matemático sério. Mas, dado um problema que é importante para você, você pode formular os problemas envolvidos na solução de uma maneira matemática. Afirmo que tudo o que um computador faz é matemática, pega dados simbólicos de algum tipo e executa algum tipo de operação nele. Essa é a essência da matemática. Portanto, você deve ser capaz de abstrair as coisas em algum tipo de estrutura matemática e raciocinar sobre os passos adiante. Na falta disso, você está apenas invadindo, lançando algum código e esperando que ele faça o que você deseja. Ser capaz de resolver álgebra complicada sem erros de digitação e se perder, provavelmente não é tão necessário. Mas ser capaz de formular um plano é importante. Costumo escrever programas de dez linhas para verificar se minha matemática não é muito complicada. Combinar computadores com matemática, para fins de verificação, descoberta e sim, para descobrir os detalhes, quando existem muitos deles, é a chave real.
fonte