Os 5 principais requisitos para ser um bom programador

As pessoas sempre me perguntaram sobre ser um programador; “onde aprender”, “o que estudar”, “como aprender a programar” ou “o que é preciso fazer” para ser um programador.

A tecnologia sempre teve muito a ver com meu perfil e meus interesses. Programo desde a adolescência e não me lembro do momento em que me decidi por começar a programar, mas sei muito bem com é um bom programador e quais suas características. Fiz este post para explicar melhor o que é ser um bom programador.

Se você já saiu do zero, já sabe uma linguagem e está partindo para a segunda, um outro post bem interessante que você pode gostar é “O que todo bom programador precisa saber“.

Cinco característica que definem um bom programador

1 – Ter bom raciocínio lógico

Este é o ponto, o programador resolve problemas utilizando código para transcrever um raciocínio lógico. Não acredito ser possível alguém ir muito longe na programação se não tiver esta forma de pensar, com uma visão sistêmica.

2 – Ser autodidata

Não imagine que cursos irão lhe transformar em um programador, pois não irão. Para aprender o básico da programação ou o mínimo de uma nova linguagem vale a pena fazer um curso, mas você gastaria uma montanha de dinheiro para (tentar) ficar sempre atualizado com cursos. Programador tem que ser autodidata. Se não for auto-ditada não tem como ser programador. Veja minhas dicas e links em Aprender programação online, sozinho e do zero.

3 – Gostar de resolver problemas

Programação é em 80% do tempo resolução de problemas. Seja o problema que o software irá resolver ou seja resolvendo problemas no próprio software. O programador é curioso e tem grande interesse e em resolver problemas. Confira neste meu post “Os problemas e a profissão de programador”.

4 – Saber inglês

Sem inglês o programador fica em uma fina camada de conhecimento, não chega no nível intermediário. Infelizmente o conhecimento escrito em português neste segmento (em todos?) é bem restrito. Acredito que os livros de tecnologia em português detêm apenas 10% de informação e conhecimento dos livros em inglês. Você pode começar a programar sem saber inglês, mas para se tornar um programador incrível, precisará se dedicar nisso também.

5 – Gostar de aprender

Estudar é uma constante na vida de um programador, é preciso ler, pesquisar, investigar, desvendar, duvidar… quanto mais você aprender, mais perceberá que não sabe muito. É comum no programador iniciante achar que sabe tudo, porque ele ainda não percebeu o tanto de coisas “que tem pra cima”. Os melhores programadores que conheço são humildes, não se gabam do que sabem justamente porque entendem que só conhecem a ponta do iceberg.

Pense nisso em meu post “É difícil aprender a programar?“.

Aprender online!

Se você quer começar e não sabe por onde, recomendo ler meu post “Como aprender programação online, sozinho e do zero“.

Liberei recentemente o meu super treinamento “Aprender Programação em 20 Horas“, que é uma metodologia que desenvolvi e está sendo incrível! Te joga direto na prática, sem enrolação, sem teoria chata nem matemática. 🙂

Mas além disto….

Trabalhar com programação significa estar sempre pensando. É um trabalho mental e tudo o que tem a ver com programação, tem a ver com o pensamento e entendimento. Outros detalhes que também constituem um bom programador:

  • Ter bom nível de concentração (leia meu post “Porque programadores gostam de programar?“);
  • Ser curioso: “porque isso é assim”, “de onde isso vem” ou “porque isso acontece”. Perguntas devem ser constantes;
  • Ser disciplinado;
  • Ter disposição para estudar e aprender sempre, mesmo não sendo nas áreas de interesse;
  • Ser paciente e persistente;
  • Sempre desconfiar que está errado, ou, que existe uma maneira ainda melhor de resolver o problema;
  • Saber ouvir os mais espertos e os que sabem menos também, sempre existe algo para se aprender;
  • Não é preciso ser ótimo em matemática (algoritmo nada tem a ver com logaritmo)

Isso tudo te parece muito difícil? Existem muitas dicas para se tornar um bom programador!

Este é o seu perfil?

Os cursos superiores ligados a tecnologia são recordistas em desistência, já escrevi sobre isso em “porque algumas pessoas começam a programar, mas acabam desistindo“.

Programação é pensamento, é ficar ali raciocinando, as vezes por horas para resolver um problema qualquer. Programadores gostam de saber como as coisas funcionam, por isso costumeiramente entendem tão bem de outras áreas que podem ser melhores que os profissionais destas naquelas áreas de conhecimento.

Mas, se pensar excessivamente não é pra você, existem outros segmentos bem próximos, como banco de dados, web design, segurança e redes, manutenção de hardware e outra mais, onde você não precisará passar todo o tempo de trabalho tão concentrado.

O que faz realmente a diferença?

Falei disso em um dos meus posts mais recentes; o que todo programador precisa saber e em 4 coisas que todo programador Junios precisa saber.

Resolver problemas

Um bom programador é um cara que resolve problemas sem ficar dependendo dos outros. Faculdade? Cursos? Certificações? Tudo isso é indiferente se o “sujeito” sabe criar uma linda solução para um problema bem feio.

Ter um sistema com dados em um servidor é uma responsabilidade. Como disse o Tio Bem ao Peter Parker (homem aranha) “com grandes poderes vêm grandes responsabilidades”. O programador deve ter a capacidade de resolver qualquer problema decorrido das suas soluções, bem como garantir que tudo o que fez funcione como esperado. Se você sabe fazer, tem que saber resolver.

Programadores são reconhecidamente provedores de solução. É normal as pessoas pedirem ajuda em praticamente todas as esferas de conhecimento, de eletrônica a medicina, mecânica a psicologia, achando que o programador sabe tudo!

Responsabilidade e ética

Programadores costumam ter acesso a um grande volume de informação e conhecimento. Em boa parte das vezes informações sigilosas, portanto é preciso ter a ética como base para trabalhar nesta área. Nunca pense em fazer parte do “lado negro” da coisa, estes profissionais picaretas são percebidos no mercado como uma praga e raramente se vinculam a uma boa empresa ou nome de sucesso.

Entre nós, sabemos quem são as pessoas que pisam na bola, que furam com clientes ou saem das empresas para as quais trabalham sem dar um prazo para ser substituído. Eles se queimam muito rápido e em pouco tempo já não conseguem mais boas oportunidades.

Cafeína

A xícara (ou caneca) de café é o ícone do programador. Eventualmente é necessário uma boa dose de cafeína para o cérebro “entrar no ritmo” e conseguir “botar pra fora” um algoritmo mais complexo ou permanecer tantas horas focado em um mesmo código.

A complexidade é uma constante na vida de um programador. Tanto que não se assusta com qualquer probleminha, sabe que se debruçando sobre o problema e investigando, a solução aparece e tudo se torna imensamente simples.

Se atualizar, se atualizar e se atualizar

Você já deve ter cansado de ler isso, mas preciso dizer novamente. Diferente da maioria das outras profissões, sendo um analista você terá que estudar e aprender mais sempre. Quando eu digo sempre é todo dia. Porque o meio é assim, evolui rápido e se você não evolui dentro dele, já está morto.

Antigamente era preciso ser bom de verdade em uma linguagem de programação (clipper, delphi ou visual basic) e assim você viveria. Atualmente o esquema é aprender uma linguagem nova a cada ano.

Além de linguagens, existem outras coisas para se aprender; sobre servidores, gestão de projetos, análise de requisitos, modelagem de dados, segurança, escalabidade, desempenho, frameworks, bibliotecas, utilizar repositórios… ou seja, há muito o que aprender.

Onde trabalhar?

Programadores têm perfil diferente da maioria dos profissionais. São exigentes (tidos como chatos), cheios de idéias e gostam de poder criar livremente. Não gostam de ter um “roteiro” muito estrito para ser seguido e querem desenvolver a solução própria.

Boa parte das empresas ao redor do mundo já percebeu este perfil, portanto oferecem locais de trabalho mais abertos, com jogos, espaço para conversar e relaxar, horários diferenciados, comida a vontade (carboidratos), etc. Aqui no Brasil poucas empresas aderiram a este modelo.

Mas a empresa ideal para um programador trabalhar é aquela que valoriza o seu conhecimento, que aposta em suas idéias e dá espaço para a participação ativa.

Um dos mais importantes critérios é a possibilidade de crescimento. Em algumas empresas o programador entra como tester e fica ali por 1 ano ou 2, sem criar absolutamente nada. Só neste tempo ele já desiste de permanecer na empresa… O programador precisa ter a possibilidade de aprender, provar que é bom e ser reconhecido por isso! Não é uma questão de tempo, deve ser uma questão de mérito.

Ser freelancer? Autônomo?

Este é um meio onde autônomos e freelas podem se dar muito bem. Te dá a chance de ganhar muito mais (financeiramente falando), mas é preciso ser bem organizado, se comunicar bem e ser muito responsável.

Em “como trabalhar como freelancer” eu falo sobre as vantagens e desvantagens desta forma de trabalho, confira!

Outras fontes de informação

Tiago Gouvêa

Full-stack Developer, fazendo códigos desde o século passado. Criador da metodologia "Aprender programação em 20 horas" e diretor da startup App Masters, voltada para o desenvolvimento de aplicativos. Apaixonado por tecnologia e viciado em café.

Conteúdo relacionado

Respostas (108)

Escreva uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

  1. Carlos

    Excelente POST.
    Sou programador ha 30 anos.
    Neste artigo vc descreveu como somos realmente, ri muito quando falou (Chatos) kkkk.

  2. Rubens

    Boa tarde, Tiago
    Esta de parabéns pela sua iniciativa de ajudar as pessoas que são leigas na questão programação; então tenho umas ideias sobre Apps porém não sou programador.
    Entendo o básico de informatica e telecomunicações, já tive ate a cara de pau e o tentar repassar a ideia para o Mark Zuckerberg e para IBM, porem obvio que eles nem viram a mensagem; são muito ocupados rs.
    Gostaria de aprender programar só para poder colocar minhas ideias em pratica.
    Ou até mesmo alguém que eu possa repassar as tais ideias para que possa se realizar a criação e que se interesse em ver a mensagem.
    Irei acompanhar suas dicas e links postado para ajudar.
    Gosto de estudar e aprender!
    Grandes sucessos surgiram de pequenas ideias que com tempo se atualizaram para hoje ser sucesso.
    Abraço.
    Rubens

    1. Renan

      Olá Rubens, me chamo Renan, sou estudando de programação, aprincípio estudo programação em JAVA, também tenho os mesmos pensamentos que você me identifiquei bastante com o que você escreveu, me chame no Whatsapp para conversarmos melhor sobre essas idéias, pois também tenho idéias para compartilhar. Zap: 2178644820. Abraço e Sucesso!

  3. Ederson

    Primeiramente quero deixar meus parabéns pela iniciativa de ajudar e responder tantas pessoas com idéia é dúvidas de como iniciar programação.
    Então… eu tenho 26 anos, queria saber de quem exerce a profissão, se eu com essa idade seria uma boa começar a programar. Sou muito curioso, tenho uma sede de aprendizado, sou do tipo que não para enquanto na conseguir soluciona o problema. Mas a minha dúvida é a idade… Se você estivesse no meu lugar com 26 anos faria programação?

    1. Tiago Gouvêa

      Faria sim Ederson. Já respondi algumas vezes essa questão da idade aqui no blog, uma delas em “Idade para começar a programar – 40 anos?”.
      Com 26 anos você tá bem jovem ainda, não tem problema. O negócio é começar na pressão!
      Boa sorte!

  4. Mateus Soares

    Tenho 17 anos e simplesmente estou apaixonado pela programação, desde as linguagens de programação como as de marcação propriamente ditas. Iniciei a 2 anos na programação e tenho um grande interesse em exercer a profissão de programador ou até mesmo um analista de sistemas. Gostaria de saber em sua opinião qual as melhores linguagens para se aprofundar? para que assim eu tenha um currículo mais saboroso para uma empresa. Também tenho curiosidade em como eu posso ser um programador diferenciado por ter conhecimento avançado em diversas linguagens.

    1. Tiago Gouvêa

      Legal Mateus!
      Eu te recomendaria aprofundar em JavaScript, que é a linguagem do futuro. Mas… no Brasil as coisas nem sempre andam tão rápido, e as “empresas” que você mencionou certamente estarão ainda tentando resolver problemas com o Java, então talvez o Java seja também indicado.
      Mas, no geral, te digo, aprofunde em JavaScript. 🙂
      O bom programador não precisa ter “conhecimento avançado em diversas linguagens”, ele tem que ser NINJA em ao menos uma, e ser bom em resolver problemas sem depender dos outros. Essa é a fórmula.

  5. Ivan

    Discordo neste ponto: “Um bom programador é um cara que resolve problemas sem ficar dependendo dos outros.” Na verdade, um bom programador é um cara que resolve problemas, e sabendo das dificuldades, consegue buscar soluções, através de pesquisa e estudo, e algumas vezes até, se preciso for, obter orientação com colegas de equipe que já tenham estudado o assunto. Além disso, é preciso ter pensamento em equipe. É preciso sempre investir e discutir tecnologia com seus colegas. Isso não significa, necessariamente ser independente, mas saber adequar a simplicidade em um código compartilhado. Muitos desenvolvedores se fecham em seus próprios mundos, por seguir esta filosofia egoísta, e acabam se fechando num beco sem saída, crentes que sabem mais do que os outros. “Só sei que nada sei” – Sócrates.

    1. John

      Falou tudo, muito bem.

  6. junior

    Tenho muito interesse em linguagens de programação, e tenho estudado c ++ com frequência junto com Arduino.
    Gostaria de lhe perguntar se tem algum curso que você recomendaria de programação, para que eu pudesse fazer e com grandes possibilidades para conseguir como emprego como freelancer?

    1. Tiago Gouvêa

      Curso, você se refere a uma faculdade ou curso curto? Você quer emprego ou quer ser freelancer?

      1. junior

        Freelancer. Obrigado!

        1. junior

          Sou formado em engenharia mecânica e estou procurando um curso mais curto.

  7. Iano Omar

    A quase um ano comcluir o tecnico em informatica na linha de programção, mas eu não conseguir desenvolver nada. O que pode despertar o meu raciocinho logico para poder desenvolver pelo menos uma pagina de internet?

    1. Tiago Gouvêa

      Amigo, crie algo que você realmente queira fazer.. mesmo que uma coisa BEM simples. Desenvolva algo que te fará sentir que conseguiu! Manda aqui depois pra gente ver! 😀

      1. Jana

        Mas a pergunta do Iano, acredito, é em relaçao ao que você disse: sem raciocinio logico, nao é possivel ser um bom programador. Mas isso se adquire? Eu tbm estudo estudo estudo e quando me deparo com um problema nao consigo resolver. E quando vejo a soluçao, penso: “ah, mas é claro!”. Teria alguma dica pra quem nao tem a cabeça muito logica? É possivel desenvolver o raciocinio logico? Tenho um pouco de medo que seja algo “genético”…
        Abraços!
        Ps. Desculpe a falta de acentos

        1. Tiago Gouvêa

          Ei Jana!
          Então, quando leio “problema que não consigo resolver” penso que é algo da faculdade… aqueles probleminhas pra te testar.
          Agora, pense em algo que quer REALMENTE fazer, algum calculo, algum sistema super simples.. será que você conseguiria “resolver”?
          É disso que estou falando, nos cursos formais sempre tem muita procrastinação com este tipo de atividade. Na vida real não é assim.
          Resumindo, fazendo algo que se quer mesmo fazer, o raciocínio funciona melhor. 🙂
          Mas não sei se tem algo pra melhorar a lógica.. existem uns jogos pra exercitar e tal, mas não sei a eficácia. O que faço é dormir bem, beber pouco e me concentrar ao máximo quando preciso fazer algo difícil.
          Espero ter ajudado.
          Valeu!

    2. Ivan

      Iano, a lógica é o beabá, é como se alfabetizar na programação, a questão vai bem mais além da lógica, é preciso ser curioso e estudar muito, comece a procurar cursos no School of Net. Assista vídeos no Youtube, analise código fonte de páginas, procure ficar próximo de pessoas de programam, esta é a luz.

  8. Kennedy Araujo

    Sou formando de Ciências da Computação, como é de se esperar pra estar nessa área precisa saber de tudo um pouco, OK!, mas ja percebi que meu talento é muito bom pra lógica Pura, sofrer mesmo rsrs, ja com coisas de nível mais alto e criativo ja me atrapalho um pouco, isto é, pra back-end sou ótimo, mas pra front-end apanho um pouco, não que eu não possa aprender, mas acho que é uma coisa que não vem de dentro entende? , exemplo que vejo meus amigos de turma fazerem telas LINDAS, porém softwares pobres em funções e/ou incompletos (incompletos de acordo com o que é pedido nas atividades) ja o meu e de outras pessoas na mesma condição, softwares com telas não tão bonitas (leia-se feias rsrs) porém com a parte lógica perfeitinha, sei que não é o melhor exemplo, mas é só pra se ter uma idéia, enfim, sem mais enrolação é possível eu sobreviver no mercado sendo apenas back-end? pedreiro virtual mesmo, batendo cabeça dia e noite pra resolver problemas com o maior prazer, meus amigos a maioria quer ir pra web design ou similares, porém se não for na parte lógica gostaria de evitar, enfim é possivel ?

    1. Tiago Gouvêa

      Alô Kennedy!
      Claro que é possível viver só de back-end!
      O que você precisa ficar ligado é em não ficar totalmente focado só em resolver problemas… tenta ir subindo o nível aos poucos, entendendo melhor a solução, a arquitetura, o ambiente, continuous deployment… pra você ganhar mais conhecimento, sem necessariamente ir pro front.
      O que você não pode também é se desvalorizar, achar que sendo um “pedreiro”, vale menos.. isso não é verdade, se veja como um engenheiro, arquiteto, não como o pedreiro. Minha certificação em PHP é “Zend Certified Engineer”, ou seja, engenharia, é coisa fina.
      Manda bala!

  9. João Edson

    Olá!
    Eu tenho 14 anos e já tenho clientes. Não importa a idade só basta ter conhecimento 😀 (y)

    1. Tiago Gouvêa

      Excelente João!! Isso ai!

  10. Juliane

    Muito bom. Tenho a maior certeza agora de que vou me formar em engenharia de software, amei o conteúdo me esclareceu.

  11. Gabriel de Barros

    Muito bom artigo, vou compartilhar com meus contatos no linkedin, pois é uma matéria interessante para nós iniciantes.

  12. Henriques Sapalalo

    Valeu pelas dicas e gostei muito eu desde piqueno sempre gostei das Tics e ainda os meus focos estão nas seguites linguagens de programação (C e C#) mais em termo de tecnólogia no meus pais estamos muito atrazado o que fazer para um programador neste pais

  13. Anderson

    Post encorajador, Tiago. Parabéns e obrigado pelo compartilhamento. Gostaria de saber a tua visão sobre uma pessoa querendo se aprofundar em Programação (Android developer) com após os 30 anos de idade (31 pra ser exato). Em relação a carreira x idade, senioridade, etc.. Obrigado mais uma vez.

    1. Anderson

      Aguardando resposta amigo.

      Abs

  14. É difícil aprender a programar? - Tiago Gouvêa Tiago Gouvêa

    […] meu post “Os 5 principais requisitos par ser um bom programador” onde digo alguns pontos a mais sobre o perfil do […]

  15. Roger

    Afinal… qual é o curso na faculdade que preciso fazer para ser um programador????
    Tanto se falou de grande importância aqui nesse site nessa matéria, mas não se falou do mais simples e básico, qual curso da faculdade seria o que me fará trabalhar como programador?
    Seria o Curso Análise e Desenvolvimento de Sistemas????
    Pois é o único curso que encontro por aí nas faculdades particulares que tem alguma coisa haver com “programador”!… estou certo ou estou errado?
    Agradeço se me responderem… obrigado.

  16. Wellington

    Boa noite Tiago gostei muito do seu Post, eu ando meio perdido quando tenho que pensar o que fazer no futuro e gostaria de uma ajuda sua.
    Eu faço sistemas para internet (pelo Instituto Federal) mas percebo que não é o bastante, e nesses últimos tempos venho tendo a vontade de me tornar um otimo programador. estou terminando meu curso (provavelmente começo do ano que vem) e não sei o que fazer depois, apenas com o que sei, compreendo que nao conseguirei o que almejo. estou disposto a ir para outro estado fazer uma pos ou ate outra faculdade.
    o que você me indica?

    1. Tiago Gouvêa

      Que tal se tornar NINJA em programação? Ao invés de focar em fazer outro curso, foque em produzir algo, em aprender e mostrar resultado! 🙂

  17. Neves

    Valeu pelo texto Tiago, eu estava a pensar em desistir de programar. Programar leva tempo isso aprendi. E sobre a cafeina, ela não é prejudicial ?

    1. Tiago Gouvêa

      Legal Neves! Aprender a programar não é simples mesmo… tem que ter paciência. E é aprender sempre.
      Quanto ao café, depende né. Por exemplo, estou fazendo uma dieta com nutricionista e posso tomar café a vontade (sem açúcar). Desde que comecei a dieta (quase um ano) tive três queimações no estômago apenas, antes eu tinha umas duas por semana. Pra mim, a alimentação equilibrada é o segredo. 😀
      Aliás, procure sobre “bulletproff coffee”!

  18. anderson

    Ola tiago,estou estudando java,vejo tutoriais de java pra windows e java pra android ,mais tenho muitas duvidas e ninguem com conhecimento pra me ajudar,gostaria de saber primeiramente se tem diferença nos comandos pra um OS e outro ?

    1. Tiago Gouvêa

      Olá Anderson,

      No Java, não muda nada entre os SO. O que muda são algumas classes mas são diretamente ligadas ao que está fazendo, por exemplo, a “tela” no Android é a Activity que terá métodos e eventos dela, diferente de um Form para Windows que representa uma janela, terão outros métodos e tal.
      A linguagem em si não muda, ela é multiplataforma.
      Ok?

      1. anderson

        Ok tiago,muito obrigado,eu quero me dedicar mais a plataforma android,voce teria alguma sugestao de site,canal ou algo do tipo para aprender do zero a ser um programador java para android ?

        1. Tiago Gouvêa

          Ok Anderson!
          A Udacity tem vários cursos bons de android.
          Mas na internet tem muito conteúdo a respeito. O que é bom saber, é que em QUALQUER UM DELES você irá sofrer muito pra aprender… android é chato de aprender. 🙂
          Mas, vai na fé!
          Abraços!

  19. Lúcia

    Olá Tiago!
    Cheguei aqui procurando no Google informações para orientar meu filho nessa área.
    Meu filho tem 12 anos e vive em função de tecnologia. Penso que ele sabe muita coisa nessa área para idade dele, mas é dificil, para nós pais que não entendem nada disso, avaliar.
    Vc sabe como eu poderia avaliar esses conhecimentos dele?
    Obrigada.

    1. Tiago Gouvêa

      Olá Lúcia!
      Interessante.. nunca pensei nisso.
      Não sei se terá onde avaliar ele… o que eu faria, é incentivar ele. Dê a ele material pra estudar, pague um livro o outro, forneça o ambiente e equipamento necessário pra se desenvolver… é 99% esforço dele nesta hora, é um trabalho mental (e pessoal) dele.
      Apenas diga “siga em frente!!”
      Se eu puder ajudar em algo mais, é só falar!

      1. Lúcia

        Obrigada Thiago. Vou ficar de olho aqui nas sua dicas!

  20. Patricia

    Parabéns Tiago, achei muito interessante seu blog, e também como é atencioso com os comentários. Comecei a programar a uns dois anos, confesso que também me acho um pouco velha para começar, estou com 29 anos, porém com frequente atualização desta área e o surgimento de novas linguagens, creio e espero rs que se nós nos dedicarmos, independente da idade, podemos ser muito útil na programação e estar bem posicionados no mercado de trabalho.

    Obrigada pelo conteúdo e continue assim, muito atencioso e educado.

  21. julia

    oi, eu tenho 16 anos e vou acabar o ensino médio com essa mesma idade. Estou querendo fazer um curso de programador, porém existem duas opções: programador de sistemas e programador de web. Eu gostaria de saber qual das duas têm mais opções no mercado de trabalho e, consequentemente, qual seria a média salarial.
    obrigada.

    1. Tiago Gouvêa

      Olá Julia,
      As duas tem praticamente as mesmas oportunidades; muitas. A média salarial depende de cidade e do nível de conhecimento, prática, experiência, etc…
      Uma ideia dos valores você pode ver aqui.

  22. Luiz Carlos Rafael da Silva

    Cara tem 60 anos e desejo começar a fazer programação, pois sou bacharel e quero criar programa com meu estilo de administrar.

  23. Rafael

    Aprendi HTML e CSS (sei que não sou linguagens de programação). Estou começando programar com JavaScript, e tenho 13 anos. Idade é algo que interfere na hora de aprender?

    1. Tiago Gouvêa

      Legal Rafael!
      Quanto antes melhor! Foca mesmo no JavaScript, que terão sempre muitas oportunidades neste caminho!
      Abraços!

  24. Clodoaldo

    Thiago, gostei muito aqui do seu blog.
    Estou vivendo esse dilema. Estou cursando technologia da informacao, ja aprendi programar em algumas linguagens. HTML, CSS, PHP, JAVA, SQL, mas nada facil, nao consigo ter essa logica. Quando termina cada curso, passa uns dias, ja nao sei mais programar, tenho que comecar quase do zero para relembrar. Como poderia fazer para definitivamente aprender? Esse curso esta enchendo o saco, mas nao quero desistir.

    Obrigado!

    Clodoaldo

    1. Tiago Gouvêa

      Legal sua pergunta Clodoaldo! Então.. é assim mesmo. Eu também se estudo algo hoje e fico uns dias sem estudar ou fazer, esqueço. Você precisa fazer mais, praticar mais, exercitar… os comandos você esquece, é normal. O importante é ENTENDER o que está fazendo e aprender como se faz. Os comandos e tal, você busca quando precisar deles.
      Não desiste, mas, dedica um pouco mais de tempo nisso que você vai longe!

  25. Gustavo

    Parabéns Tiago, elucidou muitas coisas.

    No meu caso, tenho 32 anos, outra graduação e quero entrar na graduação para me tornar um gestor de tecnologia da informação / desenvolvedor. Você considera tarde? Sei que terei dificuldades pois venho das ciências humanas e a lógica é completamente diferente. Tenho pretensão de trabalhar com a área fora do brasil (canada / europa / australia). Há uma luz no fim do túnel?

    1. Tiago Gouvêa

      Legal Gustavo! Respondo essa pergunta da idade aqui : Idade para começar a programar – 40 anos?
      Ha MUITA luz no fim do túnel! Porque é uma área em expansão e com demanda altíssima! Pessoas com experiência de vida sempre agregam. Você tem tudo pra dar certo como gestor de tecnologia!
      Comente aqui depois o que decidiu.

  26. Abel André

    Ola gostei muito do conteúdo e também estou aprendendo a programação agora e está sendo muito difícil para mim porque ainda não domino a lógica de programação sei e acredito que o Sr. será e é capaz de me ajudar, gostaria de receber orientação para a resolução do mesmo.

  27. Guilherme

    Tiago, primeiramente parabéns pela página, é sensacional. Então cara, comecei meu contato com os computadores aos 12…13 anos +-… juntava dinheiro e comprava aquelas revistas mensais de cursos ligados a computação, perturbava minha mãe pra me dar dinheiro pra poder comprar. Computador nós não tínhamos, pois era muito caro e não tínhamos condições, então eu me contentava em ler as revistas sobre computadores. Lembro que a revista mais fantástica que li foi uma sobre os “segredos” da internet e funcionalidades ocultas do Google rsrs. Enfim um tio pagou um cursinho de manutenção de micros e ao final do curso eu tinha dado mais aulas que o professor. Desde então trabalhei em lojas de manutenção, etc. Mas sou fascinado mesmo é por programação, tanto na área de Ti/computação quanto na de CLP (automação industrial), não tenho nenhuma formação superior nestas áreas, porém, ano que vem pretendo comecar um curso superior e quero que este me possibilite trabalhar como programador e me abra também outras oportunidades como desenvolvimento web e áreas co-relatas. Entre “Tecnico Superior em Análise e desenvolvimento de sistemas” e “Engenharia da computação”, qual você me indicaria?

    1. Tiago Gouvêa

      Alô Guilherme! Difícil dizer qual dos dois… pesquise mais a respeito para entender as diferenças entre eles. Engenharia da computação é mais pesado, e mais voltado pra códigos mais avançados.. será um curso mais difícil.
      Boa sorte!

  28. Danilo

    Ola Tiago! Tudo bem?
    Eu tenho 29 ano, é tarde, para entrar na área? Mesmo eu tendo dificuldade em Matemática e em inglês, é possível aprender?
    Eu sou pirado em TECNOLOGIA, fico, com os olhos brilhando quando vejo os jogos, os programas rodando,. O que devo fazer?

    1. Tiago Gouvêa

      Olá Danilo!
      Respondi sua pergunta aqui ó: Preciso saber matemática e inglês? Com 30 anos estou muito velho pra aprender?
      Valeu!

  29. Leonardo

    Ola tiago, eu tenho uma duvida, qual as configurações ideias para um computador ( de preferência notebook ) de um especialista em programação ? Quais as coisas sao mais importantes ( ram, processador etc.. ) ou tanto faz ?

    1. Tiago Gouvêa

      Leonardo, importante é processador e memória. Programar consome muito os dois, dependendo da linguagem/ambiente. Considero então que um i5 com 8g é o MÍMINO hoje pra não passar raiva, o ideal é um i7 com 16g. Ok?

  30. Rodrigo Olegario

    Olá, Thiago blz?

    Tenho 17 anos essa idade e boa para esta no curso de programação?

    1. Tiago Gouvêa

      Olá Rodrigio,

      17 anos é uma idade ótima para começar! Acredite! Não é muito cedo nem muito tarde. 🙂 Apenas, comece agora!

      1. Daniel

        Eu tenho 15 anos estou fazendo um curso de Designer gráfico, e quando terminar vou fazer Programador junto com English!

        Conteúdo

        • Access
        • Lógica de programação
        • Visual Basic 1
        • Visual Basic 2
        • Delphi 1
        • Delphi 2
        • Java 1
        • Java 2

        Tempo do curso 16 meses (1 ano e 4 meses)

        acha uma boa opção para fazer esse curso ?

        1. Tiago Gouvêa

          Bem.. o conteúdo tá meio desatualizado. Delphi, visual basic e tal já estão meio fora de mora… access também.
          Sendo sincero, não me parece nada bom esse conteúdo.
          Sorry.

  31. Walles

    Olá, Thiago blz ?

    Cara gosto de informatica, uso computador desde os 16 anos, e hoje estou com 24, e queria saber por onde começar…

    1. Tiago Gouvêa

      Opa Walles, recomendo que leia o post “Como aprender a programar“. Boa sorte!

  32. Vinicius

    Boa tarde, gosto muito da área de programação, queria saber se nela tem como trabalhar em casa ou até mesmo com marketing digital?

    1. Tiago Gouvêa

      Alô Vinicius, tem sim. É certamente uma das áreas que mais facilita trabalhar a distância.. porém, é preciso ser muito bom em comunicação e em gerência de tempo. Tanto empresas contratam assim (IBM tem feito muito isso ultimamente) como sendo freelancer. Um post legal que você pode ser é “Como trabalhar como freelancer“.

  33. Matheus

    Eae Tiago, bom, eu tenho 14 anos e realmente eu já estou fascinado pelo mundo da programação, é meu sonho,mas eu li seu post e vi que precisa ser autoditada, mas eu tenho déficit de atenção, será que eu devo desistir dessa carreira ou tem algum jeito de superar isso?

    1. Tiago Gouvêa

      Amigo, já vi outras pessoas falando de déficit de atenção e conseguindo programar. Não sei o quanto mais difícil isso se torna, talvez um médico irá te falar isso melhor que eu… talvez com a medicação correta você consiga ter o foco necessário por um longo tempo. Mas acredito que dê pra superar sim. Manda bala!

  34. Maiara

    Olá,
    Tenho 23 anos e estou terminando o curso de administração, adoro sistemas e meu desejo é me tornar uma excelente programadora.
    Gostaria de saber Tiago, por onde devo começar?
    Desde já agradecida!!!

    1. Tiago Gouvêa

      Ei Maiara, que bom que deseja programar! Recomendo então ler meu post “Como aprender a programar”, que fala tudo sobre isso. Se tiver qualquer duvida a mais pode me enviar novamente! OK?

      1. Geilson ALMEIDA

        Tiago discordo de você não concorda com atualizações o verdadeiro profissional sempre se reinventa e aprende mais, muitos amigos meus que hoje trabalhão em grandes empresas tem preguiça de gasta algum dinheiro investindo em curso não basta só se torna programador e pronto a carreira tem limitações depedendo da escolaridade e dos conhecimentos do programador de nada vale um programa com vários problemas de segurança se o programador não soube concerta os problemas que aparecerem.

    2. Geilson ALMEIDA

      Sou programador java a anos faço Bacharel em Sistemas de Informações e te aconselharia a fazer algum curso ou apredizagem em lógica da programação para ver se você gosta mesmo e depois da prosseguimento quem sabe a uma graduação na área que possui diversos caminhos profissionais.

  35. Eliel Barone

    Caraca Tiago, se você pudesse me ouvir eu estaria batendo palmas, gostaria ainda de acrescentar uma única coisa, para que um programador evolua, ele tem que saber compartilhar o conhecimento, para cada pessoa que ele ensina, também aprende, e por isso é bom que você ensine para um milhão de pessoas, assim cada um aprende uma vez, e você aprende um milhão 🙂

  36. Progrmaadorororor

    Odeio programar!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    1. Cleber

      Amo programar e quanto mais baixo nível, melhor.

  37. carlos weber

    Muito esclarecedor este texto. Ajudou-me bastante

  38. Rafael Moura

    Meu maior problema é quanto a idade me acho velho demais para entrar na área, vou fazer 26 anos esse final de semana. O que você acha?
    Já trabalho envolvido na parte de HTML CSS e sou formado em design, mas venho me encantando cada vez mais por programação, já estudei lógica de programação, e agora estou estudando java e JavaScript.
    Mais o meu maior bloqueio é esse, a idade. será que ainda da tempo? Você tem algum exemplo de alguém que conheça começou tarde?

    1. Tiago Gouvêa

      Rafael, você não tem problema nenhum de idade!! Para com isso cara! Você está novo e pode ainda aprender perfeitamente e se tornar um ótimo programador!
      Anos atrás, quando eu dava aulas em um curso na cidade, apareceu um cara que era caminhoneiro, devia ter no mínimo uns 35 na época e queria aprender Delphi e PHP… confesso que fiquei meio em duvida no que daria. Hoje ele vive disso, tem uma pequena empresa onde faz seus sistemas, sites, etc..
      Nunca é tarde pra começar e o mercado está precisando de gente!
      Mete as caras amigo e boa sorte!

      1. Lucas

        Olá Tiago, bom dia.

        Para ser considerado um Programador, necessariamente eu tenho que ter um curso superior? Uma Pós Lato senso já seria suficiente? Ou só em ter o conhecimento na área é suficiente?

        Atc.,

        Lucas

        1. Tiago Gouvêa

          Olá Lucas,

          Farei um vídeo respondendo isso e te aviso aqui e por email quando estiver online!

    2. Leo

      Programo desde os 25, aprendi sozinho no inicio usando o dreamweaver, trabalhando com ASP e depois PHP (relacionando os dois códigos), aprendi o inglês técnico também sozinho mais leitura mesmo. Agora com 40, estou estudando um framework recente e várias coisas relacionadas já aprendi (Vagrant, GIT, composer…). Vontade de ter mais tempo para aprender mais, mas equilibro minhas rotinas e lazer com a familia.

    3. Ivan

      Nunca é tarde para começar!

  39. Dilson vasco Severino

    Como professor de PROGRAMAÇÃO (em Angola), sempre incentivo os meus estudantes a amar ou gostar, porque só seremos autodidatas se gastamos tempo e só gastamos tempo quando amamos a programação de verdade.

  40. Henrique Mendes Silva

    Eu tenho TDAH,também conhecido como déficit de atenção. Descobri durante o curso superior em Análise de Sistemas. Havia percebido que aquele curso, não era o mais ideal para mim. Pois é curso de alta carga curricular, por ser um curso tecnólogo de formação de 3 anos. Além claro exige disciplina,concentração,atenção,foco,organização..
    É algo que para quem tem TDAH é maçante e exigente. As vezes,exigindo alta carga de comprometimento,estudo,energia. Como não podia deixar de ser,’peguei’ algumas “dependências”.

    Mas mais do que estar convencido de que tenho e preciso melhorar, estou convencido de que é este o curso que quero e pretendo seguir.

    1. Tiago Gouvêa

      Muito bom ver sua disposição Henrique! Inspirador!

      Acredito que em maior ou menor escala, todo mundo tem um TDAH. 🙂 Ninguém consegue ficar 100% focado, concentrado, por longos períodos. O importante é você conhecer seus limites e trabalhar dentro deles. Aprender a usar sua energia na hora certa, da forma certa.

      Em dias que sinto que está mais difícil ficar focado em código, vou montar um relatório (que a principio só preciso ficar arrastando e soltando com o mouse) ou vou organizar alguma outra coisa. Dou tempo também pra minha cabeça quando ela não quer nada comigo.

      Mas, isso ai! Siga firme!

    2. Marcos Vinicius

      Meu caro Henrique, peço que você desconsidere a sua TDAH passei inúmeros anos da minha vida achando que isso era real. Hoje vejo que não! Descobri com um professor renomado chamado Pierluigi Piazzi vulgo Professo Pier que isso é uma pseudo doença. Estou cursando Análise de Sistemas e depois que li o material dele ajudou a minha vida. Leia o Livro Inteligência para Concursos e Vestibulares, quase no final, antes do apêndice ele explica o porque que TDAH não existe.

      No começo foi difícil aceitar, mas hoje vejo que foi a melhor escolha para a minha vida!

      Obs: Trabalho em comércio e estudo. Vivo uma rotina extremamente dinâmica mas consigo me sair bem. Força que você também consegue!

  41. Lucy J Keiko

    Olá,
    O que mais me chamou a atenção foi a parte que você escreveu dizendo que não é necessário ser bom em matemática para programação.
    Recentemente fui buscar informações sobre programação na universidade; contei ao coordenador do departamento de Engenharia e Informática meus objetivos; ao que ele me respondeu com uma pergunta “você é fera em matemática?” Eu respondi a verdade, “não”. Ele disse “então pode esquecer essas idéias, porque você não serve para nada que tenha a ver com computação.”
    E é aí que seu texto me surpreendeu… Não é a primeira vez que me disseram que se não sou crânio em matemática não posso entender computação, nem programação ou afins.
    Gostaria, que você me explicasse porque a matemática é (ou não é) imperativa nessa área… Eu entendo de lógica e física, mas não necessariamente de matemática. (Derivadas, integrais, algebra, etc )
    Minha idéia é aprender a programar para auxiliar meus pacientes com amputações, dentro da possibilidade de sensores de retrainning de marcha; com biofeedback proprioceptivo. (Ajudar a aprender a andar com prótese com auxilio de um programa)
    Obrigada desde já
    Lucy!

    1. Tiago Gouvêa

      Olá Lucy!
      O Coordenador da Engenharia foi muito breve ao te responder.
      Vamos lá. Programação não é matemática e não é diretamente ligado. Enquanto programamos, não ficamos calculando nem fazendo fórmulas, nem tendo que lembrar daquilo que aprendemos no segundo grau, por exemplo. Temos ótimos programadores excelentes em matemática, e temos ótimos programadores que quando precisam fazer cálculos mais avançados recorrem a livros ou a amigos. Portanto, matemática não é imperativa nesta área. Isso é um fato.
      Agora… cursar ciência da computação por exemplo, irá exigir que passe em Cálculo, que não é uma matéria fácil para quem não gosta ou não se dá bem com matemática.
      Quanto a área na qual você deseja aplicar estes conhecimentos (muito bacana por sinal), será necessário disposição para calcular. Você sabe, para simularmos um movimento, temos que entender bem de física e utilizar os recursos da matemática pra isso; cálculos.
      Mas, ainda assim, acredito que poderá ter grande sucesso nesta área, mesmo sem ser tão boa em matemática. Enquanto você desenvolve, você está livre para consultar, para estudar um pouco mais daquilo que precisa naquele momento… esqueceu uma fórmula, ou está em duvida se uma regra vale sempre ou só em determinada condição? Consulte um livro, a web, um professor… e aplique o cálculo em seus códigos. Uma vez que você consiga chegar ao resultado esperado, não precisará mais se preocupar tanto com o cálculo realizado.
      Espero ter ajudado.
      Abraços e boa sorte!

    2. Lucas Oliveira

      A matemática na verdade é de extrema importância para bons programadores, quando um programador não entende matemática, observe que você deve primeiro entender o que é entender matemática, você precisa abstrair da matemática para a lógica, pois a matemática possui uma base lógica, entender matemática não é decorar formulas só para dizer para as pessoas, entender matemática é ser capaz de ler um problema, formalizar uma solução e testar se a sua heurística esta correta ou não.

      Ou seja entender matemática é ter um raciocínio lógico, pois até para um papagaio você pode ensinar formulas e teorias, porém dado um problema aleatório , um papagaio não seria capaz de resolver.

      1. Lucas Oliveira

        (… corrigindo .. ) ” .. quando um programador não entende matemática {ele pode não conseguir uma solução aproximadamente ótima para um problema} , observe ….

    3. Marcelo

      Se matemática fosse o ponto principal da programação eu estava perdido.
      Pense no seguinte, programação nada mais é do que uma extensão digital para te ajudar a resolver seu problemas, sendo assim você irá usar muita matemática se seu problema for matemático.
      Exemplo: Você é um jurado e tem duas placas na mão, uma “SIM” outra “NÃO” o apresentador diz “Se gostou mostre sim”;
      Isso parece até bobo de se mostrar, mas é como o velho “Hello World!” quando você começa a programar.
      Tudo se baseia em perguntas e respostas, o que não precisa ser necessariamente matemática, se olhar um código verá que existem muitas linhas sem se quem um numero, mas “strings” (textos) sendo comparados para seguir um fluxo de decisões.

      Exemplo em programação falada:

      Variavel Gostou: Tipo Texto;

      Jurado, você gostou?

      Se (Gostou = ‘SIM’) então
      Mostre “SIM”
      Senão
      Mostre “Não”

      Este tipo de rotina é o mais usado em qualquer programação
      A questão matemática entra quando o jurado deve avaliar mais de um elemento e ai o sistema mostraria a media da sua nota, isso envolveria um calculo simples de media… é assim que é no dia a dia da programação, você deve saber matemática ou português conforme a necessidade.

      Claro que se souber Matemática profunda isso será excelente e ajudará muito, pois no decorrer do percurso vai precisar entrar em calculos, mas nada que uma pedida de ajuda a quem conhece não vá resolver seu problema, ou seja, você não precisa carregar a bagagem toda sozinho.

      Eu programo em Delphi e PHP a vários anos naõ me aprofundei em matemática, mas consigo desenvolver muitas soluções para empresas de diversos segmentos.

      Quer aprender a programar? Persistência é a palavra.

      Marcelo Silva

  42. Robson

    “Faculdade? Cursos? Certificações? Tudo isso é indiferente se o “sujeito” sabe criar uma linda solução para um problema bem feio.” … quem dera se todos os empregadores e donos de agência pensassem assim, hehe.
    Infelizmente se vc não tiver uma faculdade hj em dia no currículo, a maioria das empresas nem se quer dá uma oportunidade de vc mostrar o que sabe fazer.
    Triste realidade de quem é 100% autodidata.

    1. Tiago Gouvêa

      Verdade Robson,
      Dependendo da região, ou do tipo de empresa para a qual se deseja trabalhar, será necessário ter um currículo com várias páginas para chamar atenção.
      Já em outras, ter um github movimentado já é o suficiente para ser convidado para uma entrevista.
      Abraços

  43. mateus

    Porque fazer um post dizendo coisas do tipo ” ser autodidata “, “se pensar excessivamente não é pra você ” … ninguém nasce perfeito, ninguém nasce com uma solução na cabeça. É natural do bom programador pensar excessivamente, ainda mais programadores sem experiências profissionais digamos, “estagiários”, agora o pior de tudo foi ler que “Um bom programador é um cara que resolve problemas sem ficar dependendo dos outros” espera ai, então quer dizer q se trabalhamos em uma empresa, cada faz o seu e resolve o seu problema? Até onde sei não, até onde sei as empresas, pelo menos as grandes , buscam profissionais que trabalham em equipe, não pessoas q não dependem das outras.

    1. Tiago Gouvêa

      É muito importante trabalhar em equipe, ajudar e ser ajudado. Ruim é a pessoa só ficar dependendo dos outros, ficando no papel de “vítima” que nunca aprende nada.
      Você conhece gente assim?

  44. Tonito Dias Sumbelelo

    Gostei muito! Eu participei em cursos de java mas por não praticar continuo a me sentir cru em programação. O teu conteúdo me foi muito útil! Te agradeço.

  45. Vinicius Rodrigues

    6- Não abaixa a cabeça para erros que pareçam sem soluções

  46. Os 5 principais requisitos para ser um bom programador |

    […] original em Blog Tiago Gouvêa Imagem […]

  47. Os 5 principais requisitos para ser um bom programador | Profissionais TI

    […] original em Blog Tiago Gouvêa Imagem via […]

  48. Boas dicas para ser um bom programador | Ela é tech!

    […] Tiago Gouvea, Geek Inside, Viva o Linux, Programação Progressiva […]

  49. LazP

    Pergunta seria, e que todos perguntam, percisamos de saber matematica para programar? ou podemos aprender a programar como uns PROS sem ter matematica incluido.. so mesmo sair da nossa mente as coisas e oq sabemos sem muita aplicaçao da matematica

    1. tiago

      Amigo, não é preciso ser expert em matemática, para ser um bom programador.
      Alguns cursos, principalmente Ciência da Computação irão lhe exigir muito estudo da matemática para que possa concluir a graduação, mas a programação em si, não.
      O tipo de raciocínio necessário no dia a dia do programador é o chamado Raciocínio Lógico.

      1. Fabio Oliveira

        Me desculpe, mas dependendo do que for programar é necessário ser bom em matemática, para desenvolver softwares complexos, é necessário, ou trabalhar em áreas como contabilidade financeiro. Mas dependendo do que você pretende programar realmente não é exigido uma boa matemática e sim raciocínio lógico.

        1. Tiago Gouvêa

          Se for desenvolver jogos, é bom que saiba jogar. Se for desenvolver aplicativos mobile, é bom que se tenha um celular e saiba como usa-lo. O mesmo para softwares financeiros. Já desenvolvi softwares para área contábil e precisei aprender muito de contabilidade pra isso… trabalhei para indústrias químicas e precisei aprender como se misturam os componentes. Desenvolvi para indústria farmacêutica e aprendi como se fazem os remédios… trabalhei para indústrias metalúrgicas e aprendi como controlar a produção, implementar just-in-time de verdade e eliminar atrasos, de quebra aprendi sobre pintura, corte, dobra, solda, galvanização…
          Mas, para ser um bom programador, eu não precisava saber nada disso. 🙂
          Isso tudo me ajudou a saber um pouco mais.

  50. Jori

    Cara, super motivador esse seu texto, me deixou mais empolgado ainda em aprender, é por pessoas como você que sabem ultilizar as palavras que existem pessoas como eu que querem seguir os mesmos passos.

    Obrigado.

  51. truman

    Gostei bastante desse post!!!!!

  52. Rico

    Ola deixo esse comentário para me ajudares a programar estou aprendendo mas preciso de alguns toques.

    1. tiago

      Olá Rico,
      Comece pelo mínimo. Escolha uma linguagem simples que lhe permita estudar, leia tutoriais e vá se iterando sobre o assunto.
      Neste link (http://pt.kioskea.net/faq/377-programacao-como-iniciar-qual-linguagem) você encontra vários tutoriais divididos por linguagem, eu recomendo começar com PHP, pois as demais linguagens ali listadas vão lhe exigir um conhecimento prévio maior. O HTML costuma ser também um incentivo, pois mesmo não tendo algoritmos, lhe familiariza com códigos e marcações.
      Agora é contigo! Manda bala!