Desenvolvimento de Software - Muito além do código.


Esta imagem não é meramente ilustrativa

Introdução

Hoje eu vi esta imagem e o que tem de mais nela? 🤔

O fato é que ela ilustra um assunto já falo há anos para os meus alunos e leitores aqui na página:

Ser programador(a) vai muito além de escrever códigos.

A verdade é que qualquer pessoa é capaz de escrever códigos, é a parte mais fácil (para alguns até a mais divertida) do processo. Qualquer pessoa é capaz de no seu tempo começar a entender os mistérios entre "If's" e "else's", whiles, for, for each, functions, =>, |>, etc.

É só lembrar que não foi tão difícil assim transformar esse bloco de código:

> hello.py

print("hello world");

Em uma linha de raciocínio clara que envolve saber o que ele significa:

  1. É um código Python
  2. Representa a tradição de escrever"Olá mundo" como primeiro código de uma linguagem
  3. Possui uma função print() que é capaz de "cuspir" um texto para o usuário
Entender e escrever códigos representa um importante marco no início da carreira de qualquer programador(a), mas o mais importante está em ir além desse círculo.

Não quero chocar ninguém com o que vou falar, mas a verdade é que… 

Nem todo mundo é capaz de sair desse círculo. 

 - Mas pera Igor como assim? - você diz - O vendedor de curso falou que qualquer um pode aprender a programar, você falou que qualquer um pode aprender a programar e agora vem com essa?

É necessário me fazer claro aqui, qualquer um é capaz de escrever códigos, mas existe uma diferença entre programar e escrever códigos.

Quando você vai lá no ChatGPT e pede para ele escrever um código xpto com funcionalidade "assim, assim, assado"... em no máximo 20 segundos, ele cospe para você um código prontinho (e muitas vezes maluco).

O ChatGPT esta programando? Não!

Ele está escrevendo códigos, em resumo. baseando se em uma rede de códigos armazenados em memória, na verdade, ele está fazendo o que qualquer ser humano é capaz de fazer (inclusive com as mesmas alucinações).

Dito isso...

Todo mundo pode entender e escrever códigos, mas nem todo mundo pode programar.

 

Mas afinal, o que é programar?

A resposta-curta-que-cabe-em-um-tweet:
Programar é dar ordens para que os computadores façam o que você quer que eles façam.

 Mas que sirva de lição ao neófito das ciências ocultas da computação, na nossa área, a resposta mais curta esta sempre mais próxima do erro.

De fato, programar é dar ordens para os computadores, etc. etc. mas vai muito, além disso.

Programar envolve estratégia, planejamento, lógica, organização...

  • Estratégia para saber qual arquitetura ou Pattern usar, qual banco de dados e como se comunicar com ele, etc.
  • Planejamento para saber minimamente quando e como começar e terminar.
  • Lógica para transformar aquele aglomerado de código em uma solução leve e inteligente.
  • e por aí vai...
E não para por aí, é preciso escalar tudo isso que falei para sair desses círculos mais internos, não existe outra forma de adentrar o "Santo dos santos" se não através de muito esforço intelectual.

O círculo do Desenvolvedor(a) de software (ou dev para os íntimos)!

É o círculo que todos querem estar, muitos até acham que estão lá, mas não fazem a menor ideia da diferença entre um(a) dev e um(a) scripteiro(a) (no meu tempo chamávamos de 'Script Kiddies' ¹).

Ser dev é com certeza a parte mais trabalhosa (talvez a mais chata) do processo, mas sem dúvida é a única que entrega o valor que seus clientes mais exigentes esperam e a que vai colocar dinheiro na sua conta.

Ela envolve tudo que falei + aquilo que você viu (ou verá) na faculdade (arquitetura, segurança, design thinking, planning, scrum, lógica, integrações, matemática computacional, escalabilidade, nuvem, etc.)

Em resumo: Business.


Conclusão

Eu não disse essas coisas para te desanimar, pelo contrário, é para te desafiar!

Não se contente com o que você já conhece, saiba que existe um mundo além do CRUD.

Siga em frente e se você não desistir a recompensa será proporcional ao seu esforço.

Postar um comentário

0 Comentários