Quando ouço "Caramba! É coisa demais para aprender."
Sim! Muita! E novas coisas a cada ano (para não dizer "a cada dia").
Quando ouço reclamações quanto a isso — e são tão comuns que eu também me pego reclamando — lembro de como foi meu aprendizado no início (lá no milênio passado) e de como tudo se transformou.
Foi doloroso, mas também valioso.
Na minha primeira década de trabalho, eu utilizava principalmente Pascal e Clipper, desenvolvendo, sobretudo, sistemas para rodar no DOS.
Naquela época, eu dominava algo bem próximo de 100% dos recursos das linguagens, do sistema operacional e das bibliotecas e ferramentas que utilizava.
Bem antes do ano 2000, experimentei algumas tecnologias para desenvolver para Windows. Escolhi o Delphi.
Quando entrei em um primeiro projeto utilizando Delphi e outras ferramentas novas para mim, levei a primeira bordoada da realidade — que me ensinou a me virar sem saber 100% de coisa alguma.
Entrei meio que em crise. Não estava mais seguro. Achava que tinha emburrecido.
Mas não.
Era a vida me ensinando que isso é o normal.
Aprendi a andar com o que eu tinha de conhecimento e, a cada dia, a aprender algo novo.
E abri mão do meu ideal de acumular tudo o que aprendia.
Não dava mais. Era coisa demais.
Então, ao estudar algo novo, aprendi a não focar tanto em memorizar 100% dos detalhes, mas sim em absorver o conceito, a lógica — mas, principalmente, a possibilidade.
Minha caixa de ferramentas mentais passou a guardar conceitos, ideias de abordagem, raciocínios lógicos, possibilidades...
Eu não sabia mais que o quinto argumento da função X da biblioteca Y aceitava os valores A, B ou C.
Sempre que precisava desse detalhe, eu pesquisava, estudava.
E olha que não havia a facilidade de hoje em dia: fazer um "find" no PDF do manual, pesquisar no Google, Stack Overflow, chat de IA...
Mais ou menos nessa época, passei a utilizar muito o Linux, a desenvolver para web e a usar bastante bancos relacionais. Pouco depois, muitas outras coisas.
Qual era a chance de eu dominar tudo aquilo?
0% (ZERO por cento!)
Então, para os que estão em momento de dúvida quanto à própria capacidade, fiquem tranquilos.
Não há problema em não saber coisas.
Você tem o (super)poder de aprender.
Lembre-se disso!
E calma! Não é para decorar "de cor e salteado" como fazer as coisas. Mas esforce-se, sim, para ter uma boa base de conceitos, de lógica e de contextos de uso.
Dando um exemplo BEM leve.
Ao precisar, você pode pesquisar e aprender que, no Python, o
print("Oi!", end="")
não quebra linha depois de escrever "Oi!" na tela. Você não precisa decorar o nome do parâmetro "end", nem o valor que deve atribuir a ele, "".
Você precisa saber que o Python pode escrever na tela sem quebrar a linha no final. Que é possível fazer um segundo print escrever à direita da impressão anterior.
E que, se o Python faz, qualquer linguagem tem como fazer isso.
Quando precisar, é só procurar como fazer.
Indo um pouco além, é bom você entender o que está acontecendo:
- Por que, quando informo que "end" é "" (nada), não quebra linha?
- Se não informo isso, o que acontece?
Então, você aprende que, se não informar nada, automaticamente o "end" recebe o valor "\n", que significa "nova linha".
Aí você pode ir ainda um pouco mais além na curiosidade:
- Nesse caso, por que não aparece na tela "Oi!\n"?
Com isso, você pode começar a descobrir, por exemplo, o que é a tabela ASCII e seus caracteres de controle. E pode entender melhor que "porcaria é essa tal de UTF".
Ainda nesse caminho, você esbarra em problemas ao desenvolver software para várias plataformas. Afinal, esse tal de "fim de linha" ou "quebra de linha" é diferente no Linux e no Windows (e, antigamente, também era diferente no sistema da Apple).
Veja como o exemplo mais leve que pude imaginar foi suficiente para trazer muitos desdobramentos e conhecimentos.
Isso pode parecer aterrorizante:
- Nunca vou saber isso tudo!
Você não vai.
Eu não vou.
Ninguém vai!
Fique tranquilo!
Bem-vindo ao insanamente dinâmico mundo da TI.
Finque os pés no chão. Tenha base. E divirta-se!
Publicado originalmente em https://www.oxigenai.com