Uncategorized

5 Coisas Que Programadores Experientes Já Sabem Que Programadores Mais Novos Precisam Saber

Se você entrou recentemente no mundo de desenvolvedores profissionais de software, você deve pensar que, graças à sua educação em ciência da computação e programação, você já sabe de tudo. Desenvolvedores que estão por aí já há algum tempo querem que você saiba que há um monte de coisas que você deveria saber sobre o negócio de escrever código para seu próprio sustento que você não aprende num curso universitário ou numa academia de codificação.

  • Conhecer as ferramentas da linha de comando:

Como um desenvolvedor, provavelmente, você vai gastar uma boa parte do tempo de trabalho com um IDE ou um editor de código. No entanto, também saber como fazer as coisas na linha de comando pode, ocasionalmente, tornar sua vida mais fácil. Se você estiver desenvolvendo lógica de negócios ou drivers para sistemas embutidos, usar um IDE pode ser mais complicado. A maioria dos sistemas embutidos tem um amplo suporte de código aberto que, normalmente, baseia-se fortemente em ferramentas de linha de comando. Conhecer ferramentas como find, comm, diff, vi/vim, sed e awk são ótimas para acelerar o seu trabalho.

  • Acostume-se a usar debuggers:

Ferramentas para debugging podem demorar para serem configuradas, mas, assim que estiverem prontas para serem usadas, vão economizar o seu tempo. Com efeito, a existência e a qualidade de um instrumento deste tipo para uma determinada linguagem e plataforma, muitas vezes, podem ser fatores decisivos mesmo que outra linguagem ou plataforma seja mais adequada para a tarefa.

  • Aprenda a escrever testes:

Habituar-se a escrever o código de teste e o código em execução em paralelo é um bom hábito. Usado sabiamente, este método ajuda a definir mais precisamente a intenção do seu código e ter uma arquitetura mais desacoplada. Se você está no meio de uma sessão de desenvolvimento e precisar interromper o seu trabalho, é uma boa ideia escrever um teste de unidade, mesmo que incompleto, sobre o que você quer desenvolver em seguida. Quando voltar ao trabalho, você terá um ponteiro para onde você estava.

  • Pense em estudar novos sistemas:

Todo mundo sabe que a tecnologia muda rapidamente nos dias de hoje. Isso se aplica não só aos nossos amados gadgets, mas também aos sistemas subjacentes, linguagens e ferramentas que programadores usam para fazer seus trabalhos. Bom conhecimento básico sempre será aplicável, mas as ferramentas e tecnologias que você usa cotidianamente serão completamente diferentes a cada 4 anos.

  • Saiba trabalhar em equipe:

Codificar é um esporte de equipe. São poucos os trabalhos em programação que permitem que você trabalhe inteiramente por conta própria e aqueles que o fazem muitas vezes são intelectualmente paralisantes e deixam você um programador pior do que quando você começou. Seu código deve interagir com o código escrito por outros, ou muitas vezes, ser misturado com o código de outros. Não importa o quão talentoso, um programador que não consegue colaborar em projetos com outras pessoas tem produtividade negativa e, rapidamente, se torna um entrave para a organização.

Muitas dessas práticas podem ser vistas nas streams dos programadores mais experientes do Livecoding.tv. Não apenas aprender código em si, nossos livecoders iniciantes e nossos espectadores podem aprender mais sobre as etapas do processo de desenvolvimento e ficar sabendo de práticas para otimizar a produção.

Avatar
About author

I, Dr. Michael J. Garbade is the co-founder of the Education Ecosystem (aka LiveEdu), ex-Amazon, GE, Rebate Networks, Y-combinator. Python, Django, and DevOps Engineer. Serial Entrepreneur. Experienced in raising venture funding. I speak English and German as mother tongues. I have a Masters in Business Administration and Physics, and a Ph.D. in Venture Capital Financing. Currently, I am the Project Lead on the community project -Nationalcoronalvirus Hotline I write subject matter expert technical and business articles in leading blogs like Opensource.com, Dzone.com, Cybrary, Businessinsider, Entrepreneur.com, TechinAsia, Coindesk, and Cointelegraph. I am a frequent speaker and panelist at tech and blockchain conferences around the globe. I serve as a start-up mentor at Axel Springer Accelerator, NY Edtech Accelerator, Seedstars, and Learnlaunch Accelerator. I love hackathons and often serve as a technical judge on hackathon panels.