Há muito tempo (em 1983), parei em frente a esta enorme impressora de linha (mostrada abaixo) do lado de fora da porta fechada no final de um corredor da minha escola. Era o Dia da Carreira e selecionei Processamento de Dados (Programação de Computadores) como uma carreira sobre a qual queria saber mais.
Antes de ficarmos em frente àquela impressora no final do corredor, todos nós sentamos em uma sala de aula e ouvimos um professor explicar o que era Processamento de Dados. Enquanto o professor tagarelava e acenava com as mãos, ficou completamente óbvio para todos nós que ele não tinha ideia do que era processamento de dados.
A única coisa em que o professor estava preso, porém, era a conexão entre matemática e computadores.
“Você tem que ser muito bom em matemática para fazer carreira em Processamento de Dados”, disse o professor. “Se você não é bom em matemática, não tem chance com computadores.”
Afundei na minha cadeira. Eu já sabia que era péssimo em matemática. “Eles” me contaram.
No final da palestra de 30 minutos, o professor nos acompanhou até a sala de processamento de dados do colégio. Finalmente, eu via pessoas sentadas em frente aos computadores e realmente programando. Eu daria uma olhada nos monitores de seus computadores e veria o que um programador realmente faz. Não.
Enquanto estávamos na frente da enorme impressora, o professor disse: “Os programadores colocaram esta impressora aqui para que não tenham que ouvi-la o dia todo. É alto."
Alguém do grupo apontou para a porta fechada e perguntou: “Bem, podemos entrar e ver o que eles fazem?”
O professor balançou a cabeça e disse: “Bem, não podemos incomodar o Departamento de Informática, então não podemos entrar. Eles precisam de muito silêncio para fazer seu trabalho. Mas aqui está a impressora que eles usam.”
Então foi isso. Olhei para a impressora gigante por mais um momento e franzi a testa.
Enquanto olhava para o monstro gigante e silencioso (nem estava sendo impresso na época, tão chato), pensei: “Ugh! Bem, isso mata a ideia de Programação de Computadores para mim. Eu sou ruim em matemática e o processamento de dados parece totalmente chato.”
Aqui em 2023, trabalho em TI (Tecnologia da Informação) há 32 anos (ainda trabalhando) e sou Desenvolvedor de Software desde 1999 (mais de 23 anos). Eu permaneci empregado continuamente em TI desde 1991. É uma grande coisa porque consegui sustentar minha família com algo que o professor do ensino médio me garantiu que nunca seria capaz de ter sucesso.
Aquele professor há tanto tempo estava errado sobre a matemática ser tão importante. A matemática pode ser útil para se tornar um programador. Mas, não é absolutamente necessário. Pena que ele não sabia o que uma pessoa realmente precisa para ser um bom (ou ótimo Desenvolvedor de Software).
Desisti da ideia de me tornar um programador de computador, mas comecei a brincar com computadores.
Coleco Adam
Meu primeiro computador foi um Coleco Adam (wikipedia) que ganhei em 1984. O Coleco Adam foi construído pela mesma empresa que criou o sistema de jogos Colecovision (usava os mesmos cartuchos para jogos). O Adam tinha um processador de texto integrado e uma linguagem de programação BASIC que você podia carregar de um cassete de alta velocidade.
Imagem por Andrew Lih .
Tentei Programação BÁSICA
Eu digitava fielmente os programas das listagens da revista Family Computing, mas invariavelmente digitava algo errado ou havia algo impresso errado na revista e os programas nunca funcionavam.
Isso parecia confirmar o que o professor havia me dito: “Você nunca será um programador de computador porque não sabe matemática”.
Surpreendentemente, um dos programas originais que tentei digitar foi realmente arquivado pelo Archive.org no link a seguir (esta é a revista Family Computing real que li em 1984 ).
Aqui está um instantâneo do código que eu realmente tentei digitar:
TRS-80 - Tandy Radio Shack modelo 80
Então, no ano seguinte (1985), fiz um curso de programação no último ano do ensino médio e aprendi um pouco de BASIC no TRS-80. Lembro-me de copiar o código de alguns outros alunos para o projeto final, então não tenho certeza se aprendi ou entendi muito.
1986 Comodoro 128
Finalmente, em 1986, comprei um Commodore 128 em uma loja de departamentos local e comecei a jogar nele. Eu tive que aprender a carregar jogos e naquela época você tinha que ler manuais para aprender as coisas.
Mas ao longo do caminho, o que aconteceu foi que percebi que comecei a ter uma memória muito boa para todos os comandos que estava usando. Eu estava apenas me divertindo e jogando, então não pensei muito nisso.
Conforme continuei a brincar com computadores, comecei a entender muito melhor e a me sentir confortável com eles. Eu não estava pensando no que o professor havia dito e não estava preocupado com minha falta de habilidades matemáticas. Eu estava aprendendo, mas nem sabia direito.
Então, por volta de 1989, depois de tentar vários cursos universitários e não ter sucesso real, finalmente fiz algumas aulas de informática e percebi que as coisas que estava aprendendo faziam sentido.
Mas eu também precisava ganhar algum dinheiro, então arranjei um emprego no Laboratório de Informática do Community College e comecei a ajudar pessoas que não sabiam como iniciar um processador de texto ou como salvar seus arquivos em um disquete.
Dois anos de Community College foram suficientes
Fiz duas aulas de COBOL (Common Business Oriented Language) e foi meh! Muito chato. Eu estava prestes a me formar como Associado em Sistemas de Informação de Computadores de Ciência Aplicada, mas estava esgotado, então parei antes de terminar apenas três aulas.
Ainda não terminei as três aulas:
Fui trabalhar para uma loja de informática local. Construímos e vendemos PCs compatíveis com IBM (os processadores Intel 386s e 468 foram lançados e eles estavam executando o Windows 3.0).
Em 1992, arranjei um emprego de suporte técnico para um pacote de software específico em uma grande corporação. Esse foi o verdadeiro começo da minha carreira porque algo aconteceu. Percebi que todas as minhas habilidades se juntaram. Também comecei a me concentrar em escrever pequenos programas que rodariam no Windows. Comecei a aprender Programação C++.
Parou de pensar em requisitos de matemática, começou a escrever software
Então, em vez de me preocupar com o que aquele professor havia dito no passado, comecei a me concentrar em produzir algo. Trabalhei em coisas que gostava e novamente foi como “brincar”.
Meu trabalho exigia que eu entendesse como configurar as pessoas no DOS ( configurando himem.sys no arquivo config.sys), então eu estava aprendendo como os PCs funcionavam ao longo do caminho.
Claro, ao longo do caminho, havia porteiros. Quando comecei a escrever programas, os desenvolvedores com quem trabalhei muitas vezes zombavam de minha falta de conhecimento e cutucavam os programas que eu escrevia, lembrando-me de que eu tinha muito a aprender e que seria improvável que algum dia eu fosse um programador. .
Pode parecer que estou reclamando ou opinando sobre uma vida triste e difícil, mas não estou.
Ou pode parecer que estou me gabando do que fiz. Realmente não é isso. Na verdade, estou surpreso que, embora não tivesse nenhuma habilidade, consegui construir uma carreira em Computação.
Estou tentando revelar três coisas no artigo:
No entanto, notei que há algumas coisas que o ajudarão a ter sucesso ao longo do caminho.
O primeiro não pode ser dado a você por qualquer pessoa ou Universidade. Mas isso não significa que você não o tenha.
Felizmente, enquanto rastejava para dentro (e através) do mundo da TI, me deparei com coisas que mais me ajudaram.
Se você está começando e se sentindo desanimado
Talvez eu possa revelar algumas dessas coisas e elas o ajudarão a continuar em seu caminho se você estiver começando e se sentir desanimado.
O que aprendi sobre desenvolvimento e aprendizado de software
Ao longo dos anos, descobri algumas coisas que me ajudaram a permanecer no mundo da TI (sem esgotar). Essas coisas me ajudaram a seguir em frente, embora eu tenha muito pouco treinamento formal (sem diploma universitário).
A primeira coisa que você precisa saber é:
Aprender qualquer coisa é difícil e aprender uma linguagem de programação ou tecnologia pode ser extremamente difícil. Aprender novas tecnologias e idiomas pode fazer você se sentir sobrecarregado e impotente no final de cada dia. Você pode sentir que nunca teve sucesso enquanto luta para fazer um programa ou funcionalidade funcionar. Mas, o importante a se perguntar é: “Eu realmente gosto de fazer isso? Eu realmente gosto do desafio de descobrir as coisas?”
Se você honestamente fizer isso, mesmo que esteja preso e sinta que nunca vai entender, então você vai passar.
Por favor, entenda que não estou dizendo que você tem que se apaixonar perdidamente por tudo o que faz. Existem linguagens de programação que tive que usar no passado que detesto (PERL, odeio!). Existem maneiras de passar pelas partes que você não gosta.
Às vezes, quando ficamos impressionados com a tecnologia (ou qualquer coisa que não entendemos), é porque a tecnologia nos faz sentir estúpidos.
Pessoas normais não dizem o que acabei de dizer em voz alta, então deixe-me dizer de novo.
A tecnologia muitas vezes nos faz sentir estúpidos. Começamos a questionar a nós mesmos, nosso conhecimento e até mesmo nossas vidas. "O que há de errado comigo? Por que não consigo entender isso? Devo ser estúpido.
Eu vivi a maior parte da minha vida em TI me sentindo estúpido
A indústria de TI está mudando constantemente e, às vezes, todos nós somos jogados em situações em que não temos conhecimento das coisas com as quais estamos trabalhando. Isso é falta de conhecimento.
A falta de conhecimento parece uma fraqueza
Isso parece uma fraqueza. Estamos trabalhando em um lugar desconhecido em uma tecnologia desconhecida e é difícil nos controlar. A indústria de TI muda com tanta frequência e rapidez que muitas vezes trabalhamos a partir de um ponto fraco.
Entenda que muitas pessoas se sentem assim (mas não expressam isso)
Muitas pessoas na indústria de TI se sentem assim, mas não o dizem em voz alta, porque acham que expor essa aparente fraqueza pode fazer com que percam sua reputação ou até mesmo seu emprego.
Você tem que se dar a liberdade de não saber das coisas enquanto ainda se sente uma pessoa válida. Você não precisa saber tudo e saber tudo é impossível de qualquer maneira.
Todo esse aprendizado pode se tornar extremamente opressor e nos levar a nos sentir terrivelmente fracos. A fraqueza muitas vezes se transforma em mal-estar quando você fica entediado com o assunto. Seu cérebro se rebela e diz: “Não precisamos aprender esse lixo. Eu nem gosto de aprender essas coisas.
Tudo o que você precisa fazer nesse momento é:
Se você se concentrar em construir o que deseja, obterá um pouco de energia e isso o ajudará nas partes difíceis.
Se você não consegue construir o que deseja, encontre um exemplo que faça algo parecido e faça-o funcionar e concentre-se em transformar esse exemplo no que você deseja.
Você tem que fazer suas próprias coisas para se sentir fortalecido por controlar seu próprio destino.
Em vez de se concentrar apenas no que está aprendendo (o que geralmente é muito chato), mude sua concentração para como usará a tecnologia para obter o que deseja. Isso o energizará e você sairá do Tutorial Malaise.
Se você está se sentindo sobrecarregado e com vontade de desistir:
Eu libero todos os meus softwares para Open Source e você pode conferir todos os meus projetos no meu GitHub .
Você pode verificar a fonte, baixá-la e fazer alterações.
Link para o aplicativo => https://cyapass.com/js/cya.htm
Link para o código fonte (ElectronJS roda nativamente em (Linux, Mac, Windows) => https://github.com/raddevus/CYaPass-Electron
Veja o aplicativo na Windows Store : https://apps.microsoft.com/store/detail/cyapass/9PFD82D1Z7RW?hl=en-us&gl=us
Veja o aplicativo na loja Snap IO (para distribuições Linux): https://snapcraft.io/cyapass
Leia o artigo detalhado sobre como funciona no linkedIn ( Destroy All Passwords: Never Memorize A Password Again )