Não - você não precisa aprender a codificar

O mundo inteiro parece estar dizendo que você precisa aprender a programar. É por isso que você não o faz - e o que você deveria aprender.

Não - você não precisa aprender a codificar

Imagine ser assediado por uma enxurrada de artigos com manchetes como Por que todos deveriam aprender a tricotar. Com todo o respeito pelos knitters, pareceria ridículo. No entanto, o grito de guerra para aprender a codificar tornou-se tão difundido que quase não nos surpreendemos quando um desenvolvedor de software em Nova York se envolve em um tentativa altamente divulgada para ensinar um sem-teto a codificar. Prefeito de Nova York Michael Bloomberg notoriamente disse à imprensa no ano passado que até ele planejava fazer um curso sobre Codecademy, mas é claro, você também pode obter tutoriais de programação de Bill Gates ou Mark Zuckerberg no Code.org . Estranhamente, mesmo pessoas não técnicas como VCs são encorajando você a aprender a codificar .



Eu sou um programador. Eu acho que todos deveriam aprender a programar? Não. Aqui está o porquê.

As alegrias do ofício

O clássico de gerenciamento de projetos de software O Mítico Homem-Mês abre com uma descrição de as alegrias e tristezas da arte da codificação .



Por que programar é divertido? Que delícias seu praticante pode esperar como recompensa?
O primeiro é a pura alegria de fazer coisas. Assim como a criança adora sua torta de lama, o adulto gosta de construir coisas, especialmente coisas que ele mesmo criou. Acho que esse deleite deve ser uma imagem do deleite de Deus em fazer as coisas, um deleite mostrado na distinção e novidade de cada folha e cada floco de neve.



Não me lembro do conteúdo dos primeiros programas que escrevi; Só me lembro que foi divertido. Em um Natal da década de 1980, minhas irmãs e eu ganhamos um computador pessoal Sharp de Natal. Usávamos principalmente para jogar Pac-Man (que foi armazenado em uma fita cassete), mas a máquina também veio com um compilador BASIC e foi assim que aprendi a programar. Codificar era fácil para mim e era algo que eu podia fazer por horas a fio. Como os jogos, o código fornece feedback constante e, por esse motivo, pode rapidamente se tornar viciante, mas também é uma atividade extremamente demorada e muitas vezes enlouquecedora. Ao descrever as desgraças da embarcação, Brooks se refere às horas sombrias de trabalho tedioso e meticuloso e à precisão perfeita necessária para se comunicar com a máquina. Se um personagem, uma pausa, do encantamento não estiver estritamente na forma adequada, a magia não funciona.

o que é o modo escuro no messenger

Como qualquer habilidade, você só pode se tornar bom nisso com horas e horas de prática entediante, e há muitas outras coisas que você pode fazer com o seu tempo. A codificação treina você a pensar de uma certa maneira e, embora possa lhe ensinar habilidades cognitivas úteis, como resolver problemas, esse pensamento pode ser bastante restrito. Ficar sentado quieto e olhando para uma tela por dias, às vezes noites, é prejudicial à sua saúde e bem-estar geral . Finalmente, competência é a moeda do mundo do desenvolvimento. Bons programadores não querem trabalhar com iniciantes e não gostam de ver sua arte desvalorizada por hordas de desenvolvedores instantâneos esgotados em cursos curtos, embora possam estar preparados para orientar você se virem potencial. Ainda acha que quer aprender a programar? Leia.

Por que você deseja codificar?

Codificar não é um objetivo. É uma ferramenta para resolver problemas. Mesmo os desenvolvedores profissionais podem esquecer isso, quando eles são pegos nas minúcias de uma nova linguagem ou em uma discussão religiosa sobre o melhor AQUI (Ambiente de desenvolvimento integrado). Os melhores candidatos para aprender a codificar geralmente são cientistas ou profissionais em outras áreas que podem usar o código para resolver os problemas que veem na frente deles. Pense no que um cientista social pode aprender com os dados do Facebook ou Twitter. O prêmio Nobel de química acaba de ser concedido por modelagem computacional de reações químicas. Grande parte da codificação feita por pesquisadores não seria aprovada em uma equipe de software profissional e, muitas vezes, cai mais na categoria de script, mas isso não significa que algum conhecimento de codificação não possa melhorar os resultados em outros campos.



No entanto, muito do frenesi de aprender a codificar parece surgir da ideia de que você pode alcançar fama e riqueza abrindo uma empresa de tecnologia e você precisa realmente codificar algo primeiro. A programação não é um esquema para enriquecimento rápido. Mesmo que você acerte o jackpot, os CEOs de empresas de tecnologia de sucesso não gastam muito tempo codificando, mesmo que tenham começado atrás de um teclado. Existem simplesmente muitas outras tarefas envolvidas na gestão de uma empresa. Então, se codificar é o que você realmente ama fazer, provavelmente não gostaria de ser um CEO.

Algumas pessoas aprendem piano simplesmente para tocar uma determinada peça musical que amam. Da mesma forma, se você tiver um problema que pode ser resolvido com código e que ninguém desenvolverá para você, vá em frente e aprenda a codificar para criá-lo, mas esteja ciente de que se tiver sucesso você provavelmente precisará contratar um profissional para reescrever a coisa toda. Pense em seu esforço como um protótipo que você pode usar para obter feedback sobre sua ideia.

O código não pode resolver todos os problemas

Todo esse tempo gasto em frente a uma tela lutando, muitas vezes problemas criados por eles mesmos, podem levar os programadores à conclusão de que todo problema pode ser resolvido com mais ou melhor código. Não pode. Os maiores problemas sempre envolvem pessoas e sistemas, e as pessoas são irritantemente confusas e imprevisíveis. Uma das alegrias da codificação é que, quando você atinge o encantamento perfeito, a máquina fará exatamente o que você pediu repetidamente de maneira confiável. As pessoas raramente fazem isso, e os sistemas que dependem das pessoas também não. A história do desenvolvedor Patrick McConlogue tentando ensinar um sem-teto chamado Leo, como codificar ilustra essa ilusão perfeitamente. Não é que Leo não pudesse aprender, mas existem tantos outros recursos necessários para chegar ao estágio em que você pode ganhar a vida como codificador. Alguns dias atrás Leo foi preso por invadir um parque da cidade e seu laptop foi confiscado. A falta de moradia é um problema complexo e o código por si só não vai resolvê-lo.

Aprenda a programar ... em 10 anos



Peter Norvig, diretor de pesquisa do Google, escrevi que a tendência prevalecente implica que a programação ruim é fácil. Idiotas pode aprender em 21 dias , mesmo que sejam bobos . O fato de que você pode fazer um som em uma flauta não significa que você pode compor um concerto de flauta. Da mesma forma, juntar um pouco de JavaScript não o qualifica para construir sistemas complexos e escaláveis.

Se você deseja se tornar um desenvolvedor profissional ou descobre que realmente gosta de programação, continue a desenvolver seu conhecimento. Passar de um amador autodidata a um desenvolvedor de software competente geralmente não é um caminho curto, mas é bem trilhado no mundo do software. Contanto que você seja competente, outros programadores realmente não se importam onde ou como você adquiriu suas habilidades.

em n out agitar os preços

Norvig dá excelente conselho sobre como se tornar um bom desenvolvedor, ao contrário de alguém que pode encadear algumas linhas de código. Aprenda pelo menos meia dúzia de idiomas, trabalhe em projetos com outros programadores que irão zombar abertamente de seus erros ou fazer julgamentos silenciosos e fulminantes sobre sua ignorância, manter o código de outra pessoa e aprender o básico de como o hardware em que seu software é executado realmente funciona. Parece exaustivo? Aqui estão algumas alternativas.

Em vez disso, aprenda a entender codificadores!

Se você ainda quer trabalhar no mundo da tecnologia, mas está reconsiderando a codificação, o designer Nick Marsh sugere fazendo algo programadores achar útil. Por mais brilhantes que sejam os grandes desenvolvedores, há muitas coisas que eles detestam fazer ou nas quais não são bons. A codificação requer um nível de foco que beira a visão de túnel e, se há uma coisa que os desenvolvedores odeiam, são as distrações. Para um codificador, distrações significam lidar com executivos, gerentes, clientes ou, na verdade, qualquer pessoa fora da equipe de engenharia. Se você quiser se tornar popular entre os desenvolvedores, poupe-os de algumas dessas interações, que costumam ver como uma perda de tempo chocante. Um grande gerente de produto, por exemplo, é tão crucial para o sucesso quanto um codificador competente. Não importa o quão claro seja o código, se ninguém quiser o produto. Traduza a linguagem dos desenvolvedores para a dos usuários e vice-versa. Promova o produto. Todos os criadores de trabalhos criativos desejam que seu trabalho seja usado. Marsh conclui que é muito mais importante entender os programadores do que entender o código.

Aprenda como funciona o software do dia-a-dia

A menos que seu objetivo seja se tornar um programador profissional, pode ser mais útil aprender o básico de como as redes e o software que você usa todos os dias funcionam e seus preconceitos e pontos cegos, em vez de continuar a aumentar o estoque mundial de códigos ruins . Você pode dirigir um carro sem saber como funciona o motor, mas seria útil saber o que faz o motor morrer ou se a direção se inclina para a direita. Saber como avalie a barganha de privacidade fazemos com empresas de tecnologia, escapar da bolha do filtro , analisar os valores por trás de um software, verificar as informações que você obtém no Twitter, entender como a Internet está estruturada ou como os algoritmos de pesquisa e recomendação funcionam, provavelmente é mais valioso na vida cotidiana do que escrever código Python.

Aprenda algo totalmente diferente

O médico grego Hipócrates disse Ars longa, vita brevis, que significa: A arte é longa, A vida é curta. Portanto, escolha seu ofício com sabedoria. No tempo que você economizou por não aprender a programar, aprenda a fazer algo de que você gosta mais. Tocar um instrumento musical provou que melhora outras funções mentais incluindo criatividade , além de trazer alegria ao jogador. Yoga expande sua visão de mundo, bem como alonga seu corpo. Para dar prazer todos os dias, não aprenda a programar; aprenda a cozinhar. Finalmente, o gerente de engenharia Rands In Repose sugere aprendendo a escrever em seu próprio idioma.

Seus leitores são muito mais críticos do que o interpretador Python. Eles não se preocupam apenas com a sintaxe, mas também querem aprender algo e, talvez, se divertir enquanto todo esse aprendizado está diminuindo. Sucesso significa que eles continuam voltando - o fracasso é um silêncio solitário. Python está parecendo bem legal agora, certo?

currículo para aposentado voltando ao trabalho

Talvez a codificação fosse mais fácil, afinal.