Começando do zero e tentado vislumbrar uma carreira

Tenho 23 anos e até muito pouco tempo atrás me dediquei a outras áreas do conhecimento (começando no curso de sociologia e passando por empreendedorismo). Não satisfeito com o futuro das minhas escolhas, decidi finalmente por programar, levando em conta inúmeros fatores como carreira, receita, usabilidade, afinidade e etc. Mas como podem imaginar, fatores como afinidade passaram longe, visto que não tive atividades relacionadas, ficando a afinidade apenas na esfera da admiração.

Sem medo de ser feliz cheguei ao Alura, enquanto espero pelo SISU 2.0 (plataforma de ingresso nas faculdades públicas) para a tentativa de cadeira em algum curso da área (talvez SI ou Eng Telecom que são as que tenho nota para passar; ciência da computação veio bem alta na minha faculdade de escolha UFF, que foi por onde passei pelos cursos citados). Concluí meu primeiro curso do Alura hoje, após 2 dias de estudos, o Lógica de Programação I, e muitas perguntas pairam na minha cabeça agora. Desculpa ser tão prolixo, mas é realmente extensa a minha dúvida (ou lista de dúvidas) e então igualmente extensa a preparação do terreno.

Na posse dessas dúvidas, quero começar perguntando a quem se dispor a ler esse tanto e responder, qual a expectativa em relação ao conhecimento do programador desde as etapas inicias? Por que pergunto isso? Primeiro porque me ajudaria muito saber o que esperar e saber o que esperam de um aluno em variadas etapas e depois por causa do próprio curso que acabei de terminar. Me explico: o Alura não foi a minha primeira tentativa de começar esse entendimento sobre programação, primeiro procurei por cursos gratuitos como o cursera (inglês não é um problema; sem fluência mas tudo ok, apesar de mais lento que em português, apenas), e tomando um curso de lógica(não exatamente de programação, mas lógica geral, incluindo circuitos) por lá, me deparei com um oferecido pela Universidade de Stanford. Óbvio, eu, garoto, fui me perguntar o que Stanford tinha para oferecer. Comecei o curso, e é bem tranquila a primeira lição mas depois a coisa começa a tomar rumos mais matemáticos e bem pouco práticos, totalmente diferente do curso ministrado aqui no Alura (que eu diria, nem de perto como desmerecimento, ‘‘for dummies’’, que entendo que deva ser uma preocupação com o alcance da informação). E aí vem o complemento à questão: sabendo dessa comparação, é esperado que um aluno comece a entender a lógica de programação dessa forma simples e prática, sem a teoria matemática da aplicação? ou seja: aprendendo fazendo, entendendo a ferramenta em uso e somando esses conhecimentos? Por que a preocupação? A preocupação vem em saber de que forma o conhecimento de programação faz o bom programador; se pelo conhecimento profundo da lógica ou pelo conhecimento massivo e diferenciado das ferramentas das linguagens e etc.

Bom, daí me vem outro terreno a ser explorado. Veja bem, me desculpe se ainda estou escrevendo, mas como disse no título, pra mim vem sendo como começar do zero, acredite. O terreno em questão é o networking e a própria comunidade de desenvolvedores e todos os profissionais de TI (e conhecimentos envolvidos). Que que tem? Bom, não sou nenhum hiper-noob, mexo no computador desde criança mas nunca muito a fundo, apenas não sou aquele tipo que precisa de ajuda pra instalar um programa ou o que seja, sou safo em me virar nas funções mais cotidianas. Perdi (ou ‘‘não participei’’) o timing de quando se é mais jovem e junta a sede de entender os computadores com os amigos nerds e cria essa rede natural de interação e paixão por TI(usando o termo para generalizar a área de conhecimento). Então me falta agora essa estrutura que me permitiria comparar que tipo de conhecimento gera o que, e por aí vai. Então sobre esse terreno de dúvida, gostaria de saber de quem teve saco de ler até aqui, o que fazer quando se começa a programar estando fora desse mundo? E como depois da pergunta sempre faço um adendo: faço essa pergunta na intenção de entender não só onde posso achar pessoas falando sobre programação, afinal aqui estão vocês e tem o GUJ e outros foruns e tal, mas o problema é que é muita informação muito variada e de linguajar muito específico (e pode acreditar, nem sou tão desinformado, mas são anos conhecendo muito pouco a mais sobre a área do que o público geral conhece).

E por agora é só isso, senão ninguém vai ler e quem se der ao trabalho vai querer me matar hahahaha Grato desde já!

ps: quem puder dar indicações de com o que treinar desde o início, seja fazendo o que for, fico grato pela ajuda e aceito desafios.

ps2: o texto foi escrito pra outra galera (do Alura), talvez eu não tenha editado tudo das vezes que me referi a eles, etc.

Na minha opinião você já começou certo, já conhece o Coursera e Alura, e também parece ter o perfil certo pra ser programador (aquele perfil “safo” que sabe pesquisar e correr atrás das coisas, sem fazer pergunta pra tudo no fórum).

Tua questão é pertinente e te digo uma coisa: você está no caminho certo. Sobre a diferença da Alura pro Coursera, de fato o Coursera tem uma exigência um pouco maior na questão matemática, mas nada de outro mundo. Pelo menos, no Alura a galera manja muito e eles têm uma didática foda pra explicar, coisa que o Coursera não tem, embora o nível de coisas que se aprende no Coursera é muito bom e já está mais avançado que muita universidade que temos no Brasil. Fazendo os dois você estará bem servido.

Você já respondeu: conhecimento profundo da lógica. Teu foco deve ser nisso.
A matemática vai ser necessária em várias tarefas do teu dia-dia, mas não em todas. Em boa parte do tempo, a maioria dos programadores não precisa aplicar conhecimentos intermediários e avançados de matemática.

Acho que na maior parte dos casos onde você irá precisar aplicar matemática, vai te exigir conhecimento de aritmética, mas acho que isso todos temos ou deveríamos ter, ou revisar. Alguns problemas terão que ser resolvidos com teoria de conjuntos, ou teoria de números, analise combinatoria, outros com álgebra linear, enfim. Se eu fosse você me preocupava em aprender mesmo lógica de programação, algoritmos e estruturas de dados. Deixa a matemática pra você ir revisando paralelamente.

Se você gosta de programar e resolver problemas, pode praticar em sites como Hacker Rank, Exercism e Project Euler (neste último, dá pra treinar e também te obriga a revisar bastante matemática, vale a pena, caso tenha interesse).

2 curtidas

Lógica de programação. E, se não for isso, for linguagem x, linguagem y, metodologia z, esqueça, procure outra empresa. Ferramenta é ferramenta e nem sempre você terá só pregos à sua frente para usar apenas martelo.

Ainda acho que lógica deveria ser uma disciplina trabalhada desde que se iniciam os estudos, até a graduação.

Sim, a lógica é uma ciência muito mais matemática que social ou linguista. Vários conceitos lógicos são entendidos de maneira mais clara e adequada quando deixamos a verbalização e trabalhamos com exatidão matemática. Aliás, lógica, em português, é um desafio imenso, vide a variedade de interpretações que uma mesma sentença (frase) pode tomar.

Aqui temos dois pontos: o primeiro é o que uma empresa entende como júnior/estagiário (não sei se é teu caso, mas, enfim). O segundo é a expectativa da empresa/contratante.
No primeiro caso, o entendimento de um profissional júnior/estagiário é de que ele saiba resolver problemas simples, seja capaz de buscar soluções, mas sempre precise de auxílio/orientação de plenos/sêniores.
O segundo caso é o mesmo que querer um motorista com essas qualificações
Percebe a diferença?

Que mundo? Só por que você não assistiu e nao decorou tudo de Star Wars, Star trek ou todos os quadrinhos do Pantera Negra, acha mesmo que está fora do “universo nerd”?
Eu desenvolvo em java, profissionalmente, desde 2010, quando tinha 27 anos e nunca tive problemas com isso.

Existem diversos cursos por aí, especialmente no youtube, para lógica de programação. Não posto links pois aqui o yt é bloqueado.
Depois, procure alguma coisa que te chame a atenção, seja python, ruby, java, php, nodejs, react, angular, vue ou o que seja. Tem material para tudo na internet.

1 curtida

Isso sim que seria bom. Em UK já existe tal prática:

UK is very first world. Brasil is the worst of the third world.
Cara, eu vi uma reportagem no fantástico acerca da melhor escola do mundo. Os alunos aprendem, a partir dos 11, 12 anos, coisas que aqui jamais se ensina: retórica, por exemplo.

Então, Luis, não foi dessa forma de nerdice a que me referi, aliás, usei o termo nerds para me referir aos chegados porque fui um jovem nerd (não do tipo de starwars, mais do tipo de história e coisas como a retórica que você mesmo citou depois,algo fascinante mesmo, mas que deve ter seu uso feito com muito cuidado. Na retórica há muito de sofismo) e o que me preocupa não é o ‘‘mundo nerd’’ mas o entorno da convivência com tecnologia e os amigos que também se interessam e sabem tão pouco quanto você, no início (geralmente na adolescência).

Obrigado pelas respostas, tem sido bem revelador.

Mas eu usei esta frase somente para ilustrar que, independente de você ter sido um star wars fan boy ou não, você pode ter amigos que foram ou sejam.
Não importa se você vivenciou isso ou aquilo, se você quiser estar ali, basta ir.