Programadores qualificados estão em alta demanda há anos, e não parece que a demanda esteja prestes a cair tão cedo. Mas mesmo que você não tenha a intenção de ganhar a vida como programador profissional, aprenda a programar proficientemente será útil em qualquer trabalho relacionado ao computador - mesmo como gerente. Mas se você está lendo isso, eu provavelmente não deveria ter que lhe dizer por que se tornar um programador é uma boa ideia. Você já sabe, e eu acho que você sabe de outra coisa também - não é fácil.
Dominar a arte da programação leva milhares (sim, milhares) de horas. Ainda assim, se você passar bem essas horas, chegará mais cedo (e se divertirá mais ao longo do caminho). Aqui estão algumas idéias para você considerar e talvez experimentar seu caminho para se tornar um programador.
Resolva um problema real
Teoria é chata. Então são problemas teóricos, geralmente. Se você só aprender a codificar para ganhar algum dinheiro, bem, não tenho certeza de como isso vai funcionar. Mas se você tem uma paixão real por construir coisas, vá construí-las. Portanto, a primeira pergunta que você provavelmente deve se fazer é “ por que eu quero aprender isso? Se essa resposta for “ fazer algo ”, bem, faça essa coisa. A boa notícia é que o primeiro passo não exige que você saiba como codificar nada: basta escrever (e, de preferência, esboçar) como seria essa coisa. Qual é o aplicativo que você está perdendo? Qual ferramenta não existe, mas você realmente precisa?
O que é legal nessa abordagem (também conhecida como “coçar sua própria coceira”) é que seu projeto não precisa ser grandioso. Você pode começar com algo realmente pequeno, basta criar um utilitário simples. Mas não importa o que seja, você deve se preocupar com isso. A primeira coisa que escrevi em Ruby foi um projeto pessoal que uso há anos e que nunca foi lançado ao mundo. Ainda assim, estou muito orgulhoso de como saiu, e muito do que sei sobre Ruby (não Rails) veio desse projeto.
Comece com informações de alto nível
Sim, eu destaquei um livro específico aqui. Não, O'Reilly não me pagou nada (ou MakeUseOf). É tão bom assim. Eu quase nunca passo através de um livro sobre programação, mas o Code Simplicity me manteve fascinado durante todo o tempo. É um livro sobre a arte da programação, quase sem código. Você não precisa conhecer uma linguagem de programação para entender isso. Abrange coisas como a razão básica para programar qualquer coisa (para ajudar as pessoas!), Quando você deve introduzir novos recursos em sua aplicação, quando otimizar seu código (e o que é otimização prematura), e muitas outras coisas boas.
Depois de terminar este livro (ou outro livro como este, se você encontrar um), você estará em um lugar muito melhor para julgar seus estudos futuros.
Escolha cuidadosamente sua tecnologia
Você deve codificar seu primeiro projeto em ANSI C direto? A menos que você tenha uma razão muito específica, a resposta para isso é "provavelmente não". Os bons codificadores sabem codificar, em vez de uma linguagem específica - eles podem aprender qualquer idioma que precisarem para um determinado projeto em um curto período de tempo. Mas fazer isso pela primeira vez não é tão fácil, porque não é a linguagem que você tem que dominar, mas os conceitos gerais de programação (lógica de programa e controle de fluxo, tipos de variáveis e escopo, objetos e todas essas coisas boas). Então, você definitivamente deveria gastar algum tempo pensando em qual idioma ou tecnologia deseja codificar.
Isso acontece depois de escolher o seu projeto, porque uma vez que você saiba o que está tentando fazer, estará limitado a um subconjunto mais restrito de possíveis tecnologias. Você não vai codificar um aplicativo nativo do iPhone em Ruby on Rails, por exemplo. Mas se você está codificando para a Web, existem cerca de um zilhão de idiomas diferentes que você pode usar, cada um com muitos frameworks diferentes. PHP, Python, Ruby, Go e a lista continua.
Gastar tempo pesquisando cada uma das alternativas - que tipo de comunidade tem? Quão fácil é obter suporte? Existem boas ferramentas de desenvolvimento gratuitas para isso? James abordou esse tópico em outro artigo, intitulado Qual linguagem de programação você deve aprender para desenvolvimento de software? Qual linguagem de programação você deve aprender para desenvolvimento de software? Qual linguagem de programação você deve aprender para desenvolvimento de software? Ao iniciar o caminho da programação, é importante investir seu tempo com sabedoria na escolha de aprender algo que irá beneficiá-lo no futuro imediato com resultados visíveis em sua plataforma de ... Leia Mais.
Não gaste muito tempo aprendendo grandes blocos de dados
Uma vez eu passei algumas semanas assistindo a um curso em vídeo sobre PHP. Eu acho que foram 30 horas de vídeo ou algo louco assim. Eu conheço PHP agora? Não, não. Quer dizer, eu posso ler um pouco do código, mas eu diria que essas horas foram um desperdício de tempo. Tentar empilhar tanto conhecimento sequencialmente sem codificar simplesmente não funciona. Para mim, codificar cuidadosamente um projeto de exemplo pré-feito é quase tão ruim, porque ele perde uma grande parte do aprendizado. Eu faço o meu melhor aprendizado quando estou tentando fazer algo que me interessa (veja acima) e aleatoriamente me deparo com problemas. Resolva um problema em que você sente algo e aprendeu algo novo. Olhe para a tela por 30 horas e… .bem.
Gastar tempo Configurando seu ambiente
Assim como existem muitas linguagens de programação, existem muitos ambientes de desenvolvimento disponíveis para todos os idiomas. Algumas pessoas usam um editor de texto como o Vim (que eu recomendei no The Top 7 Reasons To Give The Vim Text Editor) A Chance The Top 7 razões para dar ao editor de texto Vim uma chance As 7 principais razões para dar ao editor de texto Vim uma chance para anos, eu tentei um editor de texto após o outro.Você nome dele, eu tentei.Eu usei todos e cada um desses editores por mais de dois meses como meu principal editor do dia-a-dia ... Mais) ou o Notepad ++ (que mostramos como “preparar” aqui Sopa para cima do Notepad ++ Editor de Texto com Plugins do Notepad Plus Repository [Windows] Sopa para cima do Notepad ++ Editor de Texto com Plugins do Notepad Plus Repository [Windows] O Notepad ++ é um substituto digno para o editor de texto interno e muito apreciado do Windows, e é altamente recomendado se você for um programador, web designer ou simplesmente alguém que precise de uma poderosa planície ... Leia mais). Escolher um editor certo para você é um processo muito pessoal e é apenas o começo. Em seguida, você terá que personalizá-lo com atalhos de teclado, esquemas de cores, plug-ins e muito mais.
E isso é apenas uma pequena parte do trabalho - configurar um ambiente de desenvolvimento requer a instalação do idioma com o qual você deseja trabalhar, muitas bibliotecas de código, um sistema de controle de versão (como o Git, que James explicou aqui. Se você é um desenvolvedor O que é o Git e por que você deve usar o controle de versão se você for um desenvolvedor Como desenvolvedores da Web, a maior parte do tempo tendemos a trabalhar em sites de desenvolvimento local e só fazemos upload de tudo quando terminamos. é bom quando é só você e as mudanças são pequenas, ... Leia mais) e muito mais. Em outras palavras, você tem horas de trabalho antes de configurar o ambiente. E sabe de uma coisa? Tudo bem.
Basta fazer uma xícara de café ou dez e passar por ela. Diverta-se. Aprenda a conhecer sua ferramenta, assim como qualquer artesão conhece suas ferramentas. Aprenda os atalhos de teclado. Obter esse destaque apenas para a direita. Quanto mais confortável você se sentir com suas ferramentas, melhor será capaz de prestar atenção ao seu código. Então, esta é uma área que eu não economizaria.
Não se apresse - os prazos são seus inimigos
Faça o que fizer, lembre-se - você está aqui para aprender. Você não está dentro de um prazo. Quando surgir a tentação de usar um hack sujo em seu código apenas para fazê-lo funcionar, não faça isso! Aproveite o tempo e invista os cuidados para descobrir como fazer da maneira certa. Um primeiro projeto desleixado é melhor do que nenhum projeto, mas você aprenderá muito mais a partir de um projeto que você projetou e construiu com muito cuidado a cada passo do caminho.
Tenha paciência e suar os detalhes (quando se trata de técnicas de codificação e maneiras de fazer as coisas no código).
Pergunte
Nós temos as Respostas do MakeUseOf para suas perguntas, e há também o fantástico Stack Overflow que você pode ver na imagem acima. Existem muitos outros fóruns específicos de idiomas online, mas não importa o local escolhido, não tenha medo de fazer perguntas. Se as pessoas não são boas, descubra o que você fez de errado e aprenda a fazer perguntas melhores (um assunto para um artigo em si mesmo, na verdade).
Caso contrário, procure outra comunidade. Mas não importa o que aconteça, faça suas perguntas e ouça as respostas. Agradecer as pessoas pelo tempo que elas levaram para ajudá-lo também é uma boa ideia.
Use a repetição espaçada para reter a informação
Esta dica final é curta - leia tudo sobre o Método Janki. É uma maneira absolutamente brilhante de construir um arsenal de conhecimento de programação sempre atual e retê-lo indefinidamente, não em seu computador, mas em seu cérebro onde você precisa. Sério, vá ler esse post.
Pensamentos finais
Aprender é algo muito pessoal, então talvez nem todas essas dicas funcionem para você. Então, novamente, talvez você tenha alguns outros provados e verdadeiros que você gostaria de compartilhar.
Mais importante (para mim), eu gostaria de saber se você vai usar alguma dessas dicas em sua busca para se tornar um programador. Você poderia? Me avise abaixo.
Crédito da imagem: grandes livros antigos via ShutterStock