Tenho 16 anos. Comecei a programar há um ano atrás, quando estava prestes a começar o ensino médio. Estou indo para uma carreira em programação e estou fazendo o meu melhor para aprender o máximo que puder. Quando comecei, aprendi o básico de C ++ em um livro e comecei a aprender coisas sozinho a partir daí. Hoje em dia sou muito mais experiente do que há um ano atrás. Eu sabia que tinha que estudar sozinha porque o ensino médio (provavelmente) não me ensinaria nada valioso sobre programação, e quero estar preparado.
A questão aqui é: qual a importância de estudar programação sozinho?
learning
self-improvement
Bugster
fonte
fonte
Respostas:
Isso é crítico. Acho que nunca conheci um bom programador que não fosse autodidata em algum nível. Como gerente de contratação de uma grande empresa, posso dizer que um candidato que descreve projetos pessoais e o desejo de aprender supera um candidato sempre com um grau impressionante. (Embora seja melhor ter os dois.)
A questão da faculdade é a seguinte: os cursos de Ciência da Computação ensinam teoria, não tecnologia. Eles ensinarão a diferença entre uma tabela de hash e uma árvore B e os conceitos básicos de como um sistema operacional funciona. Eles geralmente não ensinam idiomas de computador, sistemas operacionais ou outras tecnologias além de um nível superficial.
Lembro-me da época em que participei da minha primeira aula de estruturas de dados e recebemos um manual fino para essa nova linguagem chamada "C ++" que eles decidiram começar a aprender. Tivemos duas semanas para buscá-lo o suficiente para escrever código. Essa foi uma boa lição por si só. É assim que a sua carreira irá.
Sua escola provavelmente não vai lhe ensinar o que você precisa para conseguir um bom emprego. As escolas costumam acompanhar o que há de melhor no setor há muitos anos. Então você conseguirá um emprego. Qualquer empresa que você vá, certamente não gastará nenhum esforço específico para treiná-lo. As más companhias são muito baratas e, francamente, as boas empresas só contratam pessoas inteligentes o suficiente para buscá-las à medida que avançam.
Eu me formei em 1987. Fui trabalhar como programador C com experiência em programas DOS, NetBIOS e "Terminar e permanecer residente". Nos anos seguintes, tive pouco ou nenhum treinamento real. Olhe para os anúncios de emprego ... não é preciso muito para essas habilidades! A única razão pela qual posso trabalhar hoje é porque passei os anos seguintes aprendendo constantemente. Para ter sucesso como engenheiro, você precisa ter o hábito de aprender. Inferno, eu iria além disso: você precisa amar o aprendizado. Você precisa ser o tipo de pessoa que mexe com WebGL, Android ou iOS, porque parece divertido. Se você é esse tipo de pessoa e mantém o hábito de aprender, irá muito longe no setor.
fonte
Auto-ensino é muito importante. Você não pode contar com uma educação formal para ensinar tudo o que você precisa saber sobre o seu campo. No entanto, dito isso, uma educação formal também é muito importante se você quiser entrar nesse campo de carreira bem preparado e bem equipado.
Estou no caminho da faculdade e passei os últimos quatro anos me ensinando desenvolvimento de software, como resultado, agora trabalho para uma empresa grande e bem conhecida que mantém aplicativos corporativos. Não é preciso muito talento, mas muito trabalho e motivação. Acho que literatura e prática são sua melhor aposta quando se trata de aprender. Também é importante escolher um campo específico, pois, embora você possa transportar idiomas e lógica em todos os campos, você só pode realmente se tornar "ótimo", se houver prática e entendimento suficientes em um campo específico.
fonte
Aprender por conta própria é muito importante. Ter a disciplina para pesquisar e reunir o conhecimento necessário para realizar uma tarefa o colocará muito à frente de muitos outros que dependem de treinamento formal para realizar a mesma tarefa. Isso vale para qualquer setor, não apenas para o setor de software.
Não me interpretem mal, é útil obter algum treinamento ou educação formal, mas sua própria motivação para aprimorar suas habilidades o ajudará a se tornar um desenvolvedor de software melhor. Sempre há algo a ser aprendido: novas plataformas ou linguagens de programação para experimentar, metodologias de desenvolvimento a serem implementadas, ferramentas e algoritmos a serem usados, a lista continua. Nem tudo será apresentado a você por meio de treinamento formal e, portanto, cabe a você aprender sobre outros tópicos e idéias nas quais possa estar interessado, que o ajudarão durante toda a sua carreira em programação.
fonte
Na programação, o autodidata é o que você fará todos os dias. Você terá que aprender muitas coisas, não apenas linguagens de computador e ferramentas que continuam mudando. Você terá que aprender o código que outras pessoas escreveram e também precisará corrigi-lo com o mínimo de instruções e supervisão. É raro em algumas organizações obter treinamento real mais de uma vez por ano (se é que alguma vez!). Certifique-se de que você pode fazer (e aproveitar) isso, caso contrário, considere uma carreira diferente enquanto ainda é jovem.
fonte
A auto-instrução é uma habilidade indispensável para um programador. Muitos não. Se você for bom, usará essa habilidade pelo resto de sua carreira.
fonte
O auto-estudo é muito importante, porque você nem sempre terá oportunidades de treinamento formal. Quando você começar a procurar um projeto, estágio ou emprego, encontre aqueles que tenham sólidos desenvolvedores seniores que possam realmente ensinar alguma coisa. Estar em um ambiente que faz as coisas certas pode ser a rota expressa para um código de qualidade.
fonte
Posso dizer-lhe que houve vários lugares em que trabalhei onde eles nem consideravam alguém que não tinha seus próprios projetos fora do trabalho. Ele mostra amor pela programação, além de apenas mostrar um emprego e receber um cheque. Vou falar mal aqui e dizer o seguinte: Todos os programadores que não gostam de programar são péssimos em seu trabalho. Pior ainda, eles não têm nada a acrescentar a nenhuma equipe em que possam se juntar.
Eu pegaria um desenvolvedor júnior inexperiente que ama tanto o que ele faz que ele brinca com código em seu tempo livre em três desenvolvedores de nível intermediário que estão apenas passando pelas propostas: Esse desenvolvedor júnior será ótimo algum dia, e os outros irão nunca será melhor do que eles são.
Se você não está aprendendo coisas novas, está apenas sentado esquecendo o que sabe.
fonte
O talento é superestimado.
São necessários pelo menos 10 anos de prática para que alguém possa se tornar ótimo em qualquer área. Portanto, é importante começar cedo.
O fato de você começar numa fase inicial de sua vida fazendo algo que parece gostar já o coloca à frente do grupo. Portanto, a menos que você tenha dúvidas sobre a área em que estará trabalhando, não pare ... nunca pare!
Considero o auto-aprendizado uma das melhores habilidades de qualquer desenvolvedor e o segundo é um diploma universitário. Um bom diploma universitário é importante apenas porque agrega tanta qualidade ao seu conhecimento que você provavelmente não seria capaz de reunir sozinho. Certamente há exceções a essa regra, mas é tudo o que são; exceções.
Além disso, quanto mais experiência você acumular mais cedo, melhor desfrutará da faculdade e melhor absorverá os novos conceitos apresentados a você. No começo, você achará tudo tão fácil e inútil, mas muito rapidamente se sentirá desafiado e ansioso por aprender mais.
Depois de sair da faculdade, nunca pare de aprender, pois será uma das suas melhores características. Eu recomendo ler 'O talento é superestimado'. Você pode dar uma olhada neste artigo rápido sobre esse livro:
http://www.devlounge.net/strategy/the-talent-myth
fonte
Em comparação com quase qualquer outro campo que eu posso pensar, a programação é basicamente tudo sobre a auto-educação. A educação formal em ciência da computação / engenharia de software é útil, mas não é exatamente onde você aprende a codificar.
O que você realmente deve fazer é começar a trabalhar em projetos: crie algo que você deseja que exista. E então junte-se a um projeto de código aberto para trabalhar em algo que você deseja que seja ainda melhor. O aprendizado vem de graça, então ...
fonte
Você precisa aprender coisas novas - vá aonde sua curiosidade o levar.
Obtenha também uma educação formal - 90% do que você recebe em uma educação formal não será usado no local de trabalho. Mas os 10% usados serão algo estranho e obscuro que você pensou que na época nunca seria de nenhuma utilidade.
Sem a educação formal, você sofre do problema melhor descrito como "você não sabe o que não sabe". A educação formal oferece uma ampla e ampla cobertura de muitas coisas, com o pleno conhecimento de que ninguém jamais sairá e usará tudo. Como o que você usará é algo que você não saberá até precisar, é tudo uma questão de estar preparado para que você saiba para onde procurar.
A coisa do auto-aprendizado / curiosidade é o que faz de você uma pessoa muito mais experiente e bem-formada. Sem mencionar mais valioso para um empregador.
Nota: passei toda a minha carreira, desde que comecei a programar com cerca de 15 anos (sheesh, mais de 25 anos ... quase 30 anos) descobrindo que, além da minha educação universitária, a maioria dos cursos de treinamento (você sabe ... aprende BLAH em 3 dias em tempo integral) são bastante inúteis. Geralmente, são superficiais e, no que diz respeito ao mantra de "manter suas habilidades", não é muito útil para quem precisa entrar em detalhes técnicos profundos. Comprar livros, usar a internet, investigar matemática / física / arquitetura / o que quer que seja que me tornou útil e valiosa. Em um estágio, eu era uma das cerca de 10 pessoas no mundo com conhecimentos específicos sobre um determinado assunto - todo esse conhecimento foi adquirido com o autodidata e o aprendizado no trabalho.
O único momento para parar de aprender é quando você tem um metro e meio de profundidade em uma caixa de pinheiro.
fonte
Há uma boa parábola sobre isso:
Portanto, você deve estudar o tempo todo para manter seu machado afiado .
fonte
É crucial, caso contrário você ficará para trás
Eu aprendo todos os dias, no trabalho, aqui, lendo livros, fazendo e respondendo perguntas. Quanto mais aprendo, mais entendo o pouco que sei.
fonte
O autodidata é muito importante por duas razões:
Como a manutenção do código legado é essencial, você também precisará escrever o código de manutenção, e isso raramente é ensinado com lições formais (consulte Como melhorar o treinamento dos alunos em relação à manutenção?) Se você não pratica o autodidata e lê muito durante seus estudos, é improvável que você adquira as habilidades necessárias que o tornarão um desenvolvedor melhor do que a média.
Não tente aprender muitas línguas / tecnologias durante seus estudos, mas aprenda boas práticas e codificação limpa. Por exemplo, é melhor você ler "Código Limpo", de Robert C. Martin, do que "Java The Complete Reference", de Herbert Schildt, durante seus estudos.
fonte
Autodidata é muito importante, pois você internaliza os conceitos do seu próprio jeito e isso realmente ajuda.Escolher um idioma para autodidata é muito importante.Línguas com documentação clara são muito importantes e o que você não quer ser é muito ambicioso em querer aprender muitas linguagens populares muito rápido. Desde que você disse que começou com c ++, eu recomendaria o java para você, ele sempre funciona tão bem para programadores autodidatas.
fonte
Provavelmente aprendi mais de 95% do que sei relacionado à programação, tentando coisas sozinho e aprendendo como funciona. A escola pode ajudar no ensino de um bom estilo de programação e na otimização do código de velocidade, etc., mas você nunca se tornará um "bom" programador apenas lendo um livro. Uma ótima maneira de desenvolver habilidades de programação é encontrar problemas cotidianos que você possa usar um computador para resolver e tentar escrever algum código para fazê-lo. Ficar preso faz parte do aprendizado. Comecei querendo ser um desenvolvedor da Web, para criar sites fictícios com bastante frequência (sem hospedá-los ou qualquer coisa, é claro) para testar coisas novas que queria experimentar. Funcionou muito bem para mim!
fonte
Comecei a programar há 2 anos. Minha escola não sabia ensinar bem os idiomas, e eu tenho que ir on-line e fazer muita pesquisa sobre mim mesmo. Eu sou um aluno mais lento e, por isso, levei dois anos para escrever meu primeiro programa, enquanto todos os meus colegas de escola ainda estão lutando ou se dedicando à programação.
Isso mostra que é melhor para um programador ser autodidata, em vez de depender da escola. A escola sempre esconderá as informações, pois elas acham que não estamos prontos para isso.
fonte
Como sempre em matemática e ciência da computação - existem 2 pontos de vista: 1. Necessário e 2. Contenções suficientes
fonte