Como escolher uma linguagem de programação para aprender hoje e obter um ótimo trabalho em 2 anos

Codificação não é fácil- ou, pelo menos, aprender a código não é, sobretudo quando se inicia a partir do zero. Pode levar anos de trabalho dedicado para se tornar um verdadeiramente bom programmer- assim há uma maneira de escolher a linguagem certa para começar a partir de hoje, a fim de ser contratado em um par de anos?

Para descobrir isso, eu levei essa questão para o nosso painel de especialistas residentes: Enquanto todos nós escrever, muitos de nós também tem experiência codificação. O que se seguiu foi uma discussão interessante que você gostaria de ler antes de embarcar em sua jornada para se tornar um programador profissional.

Um método para a loucura?

louco

Esta não é a primeira vez que discutem escolhendo uma linguagem de programação: Back em 2011, nós discutimos qual linguagem de programação você deve aprender para desenvolvimento de software?, bem como qual delas você deve Saiba para a programação Web.Que linguagem de programação você deve aprender para desenvolvimento de software?Que linguagem de programação você deve aprender para desenvolvimento de software?Ao iniciar no caminho da programação, é importante que você investir seu tempo com sabedoria na escolha de aprender algo que ambos irão beneficiá-lo no futuro imediato com resultados visíveis na sua plataforma de ...consulte Mais informação

Mas não se trata de um conselho (como “ir com javascript”), mas uma metodologia - algo que as pessoas podem usar em dois anos a partir de hoje, teoricamente. Como realmente descobrir quais idiomas estão em ascensão? Quais métricas popularidade código para confiar e que a desconfiança (e porquê)? Quais são os melhores sites de projeção salário? GitHub é uma indicação ou não?

Por exemplo, você vai encontrar ninguém que jorra sobre PHP estes dias - mas muitos, muitos desenvolvedores estão fazendo uma boa vida de codificação PHP, e ainda é a maior parte do que está sendo executado no Web. Então é aprender PHP agora uma má idéia? (Provavelmente…)

Não há ninguém Idioma

escolhas

Este é o lugar onde James, nosso desenvolvedor da Web residente e tecnologia cara, interveio para dizer o seguinte:

Os programadores geralmente não aprender uma única língua de qualquer maneira. Quem vai a rota CompSci clássica vai acabar com um monte de Java, um pouco de Haskell, alguns Prolog se fazer um curso de AI, alguns Node se fazer um curso de engenharia de start-up, alguns PHP se eles aprendem tradicional CMSes, alguns .NET se estagiário em algum escritório corporativo sem valor, alguns javascript se eles fazem web design, alguns C ++, se eles fazem design de jogo e, finalmente, alguns rubi se eles gostariam de desperdiçar sua vida afastado com línguas obscuras que ninguém realmente usa.

Não há ?? “metodologia”, e você não escolher um idioma para aprender: ele escolhe você!

Aprender um uma língua é como comer apenas digestivos por um ano, quando há todo um corredor de cookies. E sério, que escolhe os trabalhos de acordo com o salário projectado?

Mas e se você não aprende CompSci?

I respondeu a James, dizendo:

Aqui está a coisa: Isto não é para alguém tomar a rota CompSci clássica. A julgar pela explosão MOOC eo número de cursos de programação on-line, muitas pessoas estão pegando codificação apenas a partir do zero. E quando você começa assim, você precisa de um idioma para começar. Talvez você vai afastar-se dela mais tarde, mas que a primeira língua vai ser um investimento importante de tempo e esforço - então é melhor que seja a pena.

O que ressoou mais comigo é que passado pouco ele disse - que escolhe os trabalhos de acordo com o salário projectado. Eu acho que algumas pessoas fazem, mas eu também acho que não é uma ótima maneira de ir sobre ele.

Quando se trata baixo para ele, pessoas estamos tentando descobrir qual a linguagem para começar, eo uso que a língua fica no mundo real tem peso nessa decisão (e não apenas como é fácil de aprender - Pascal ...).

Escolha um projeto primeiro, depois um idioma

trending-projectos

James voltou com isto:

Tudo bem, talvez um dos pontos dessa metodologia deve ser: não tem uma metodologia. Quando eu me deparei com PHP, foi através WordPress. Eu tive um fundo CompSci na programação e alguma experiência de web design, mas eu nunca tinha visto PHP antes. Eu aprendi isso porque WordPress parecia fácil, e eu queria mexer com WordPress. Não porque eu tinha olhou para a lista de trending tecnologias, ou estava considerando uma mudança de carreira, mas porque algo legal que eu queria saber sobre o usou.

Se alguém estava olhando para aprender a programação puramente para fins de emprego, que seria um fracasso. Se eles estavam procurando apenas porque gostam do som de aprender a programar alguma coisa, não importa a língua que escolheu, desde que ele poderia provocar a sua paixão.

Outra razão para escolher um primeiro projeto

Isso é quando Simon entrou em cena com alguns conselhos pragmática:

Em primeiro lugar, isso depende se você quer desenvolver para o Web ou software “padrão”.

Para este último, Java é muito bom:

  • OO simples
  • Multi-plataforma (Linux, Windows, Mac, Android)
  • sintaxe semelhante a um monte de outras linguagens de programação (JS, C #).

Não posso dizer muito sobre o desenvolvimento Web, embora HTML / JS / CSS / PHP / MySQL parece funcionar para muitas pessoas. píton, também.

Mas sim, o bit “para que você obtenha um grande trabalho em 2 anos” me irrita muito. Salienta o aspecto errado de aprender a programar. Uma vez que você pode programar, é muito fácil de pegar o jeito de outra língua.



Ser contratado por saber um idioma específico é semelhante ao ser contratado como um PA para saber como lidar com o MS Excel. Se for esse o principal qualificação, é provavelmente vai ser um mau trabalho.

Não aprender uma língua: Saiba Software Design

Design de software

Um consenso foi começando a se formar. Bruce Epper, de Respostas MakeUseOf fama, tinha que dizer isto:

A linguagem em si não importa realmente. Quando se trata de trabalhos de programação dos aspectos mais importantes tendem a ser o entendimento de design de software básico e arquitetura, o processo de codificação em geral, saber sobre padrões de projeto, saber quando usá-los, e como aplicar um padrão específico para a tarefa em mãos - todos os quais são independentes do idioma. Uma vez que um programador sabe estes, pegando uma nova língua é uma brisa.

Há mesmo gerenciamento de projetos, documentação e habilidades de escrita que são mais importantes para um programador do que saber qualquer linguagem específica.

A base sobre a qual você está Matters construção: Inglês ou latino?

Foi quando Cara interveio para lembrar-nos todos que a linguagem faz importa, até certo ponto:

latino

A linguagem em si não é a coisa mais importante na obtenção de um emprego, eu concordo. No entanto, a base sobre a qual você está construindo faz. Desde que fiz ambas as rotas, eu estou indo para comparar as linguagens de programação para as línguas humanas.

píton parece ser o Inglês de hoje. Mais e mais, eu estou vendo Intro CompSci e cursos de programação começam-te com Python em vez de Java, que parecia ser o mais popular para cerca de 10 anos. Você pode fazer um monte do que você quer fazer com Python.

C ++ é o Latin do mundo da programação. Se você aprende, você pode aprender os princípios subjacentes de uma multidão de línguas e aprendê-las mais facilmente. Python seria uma moleza se você está bem fundada em C ++.

O que é um “trabalho de programação,” de qualquer maneira?

isso foi Mateus Passemos agora, para lembrar-nos todos que ser um programador pode significar coisas muito diferentes para pessoas diferentes:

terno

Uma coisa que não tem sido falado em qualquer grande comprimento é de que tipo de trabalho de programação que você gostaria.

Você não é muito exigente sobre as vantagens lançadas contra funcionários de inicialização? Quer estabilidade e um pacote de remuneração decente, mas nenhum capital? Você gosta vestindo formalwear negócio? Saiba C #, Java ou COBOL. COBOL também tem a vantagem de ter cada aplicação bancária jamais concebida (hipérbole, mas você começa a idéia) tendo sido escrito nele. Com a maioria dos desenvolvedores COBOL, quer aposentados ou mortos, há muita demanda para os desenvolvedores COBOL com algum ganhando seis salários figura! No entanto, você estará trabalhando em grandes bases de código, mal-escritos criados ao longo de várias décadas. Isso não é divertido.

Mas e se a segurança no emprego não é sua coisa? Quer trabalhar em produtos interessantes, mas você está disposto a chance de estar fora de um emprego quando o modelo de negócio não der certo? Descobri que acontecendo (Hacker News) é uma maneira infalível para descobrir as línguas sendo usados ​​por startups. Quando eu internado em um trabalho mais cedo, foi utilizada uma mistura de Go, píton e CoffeeScript. Outros startups usar Rails e Groovy e todos os tipos de frameworks e linguagens obscuras. Basta escolher um e você vai encontrar um trabalho interessante em algum lugar.

Novo Código, ou Velho?

Escrevendo novo código é uma experiência muito diferente de manter um aplicativo existente, como Bruce acrescentou:

Video: Melhor linguagem de programação - Parte 2 - eXcript

Com seus comentários sobre COBOL, você tipo de bater em uma outra consideração: você quer trabalhar em um novo código ou manter o código de outra pessoa? Isso pode ser um item de grande ao decidir que direção para mover. Para projetos menores, mantendo uma base de código escrito por outra pessoa pode não ser tão ruim, mas eu vi algumas seções do código onde você tem várias pessoas olhando para ele por horas perguntando: “O que era esse cara pensando?”, Ou onde o original programador estava se aproveitando de uma característica específica ou erro no compilador (que podem ter sido corrigido no compilador atual) para realizar algo.

Video: SOTAQUES

E se você não tem uma escolha?

Guy voltou para nos lembrar a todos que nem todo mundo tem um vasto leque de escolhas:

escolha

Matthew levanta uma boa pergunta com “,Que tipo de trabalho de programação que você quer?

Estranhamente, eu nunca pensei que eu teria muita escolha no assunto. Eu sabia que queria para fazer o desenvolvimento web, quando eu comecei, depois de ter feito outra programação recreativa. Mas eu percebi que eu melhor estar preparado para tomar qualquer trabalho que eu poderia conseguir, e estar disposto a aprender como eu fui. Agora eu sou um pau para toda obra, proficiente em várias tecnologias - mestre de ninguém.

Como para descobrir onde você quer trabalhar, determinar o tipo de vida que você quer é importante. Então olha para postagens das empresas que aparecem para atender seus critérios e ver o que eles estão procurando em geral. Juntando uma carteira de coisas semelhantes ao que eles fazem pode ser muito útil, especialmente se você não tem treinamento formal em tecnologias que eles usam. Talvez você aprendeu Java na escola, mas eles usam C #. Então você ensinar-se C # e fazer alguns programas com ela como prova de que você sabe o que está fazendo e que você tem a inteligência fluida.

Há uma resposta simples

Se há algo que esta discussão mostra, é que perguntas simples nem sempre têm respostas simples. E, no entanto, depois de ler as opiniões de todos, eu me senti muito mais informados - eles mudaram minha mente.

Eu tenho certeza que nós não capturar todos os pontos de vista possíveis aqui - isso é o que a seção de comentários é para. Eu estaria muito interessado em ouvir a sua opinião sobre esta questão, se você é um programador profissional ou não. Como você escolher uma linguagem de programação para conseguir um bom emprego em dois anos? É que mesmo uma boa maneira de escolher uma língua? Compartilhe seus pensamentos abaixo.


Artigos relacionados