Fora do Desenvolvimento Web é tudo tão... solto?!
bem, faz um tempo que decidi mudar meu rumo na programação. parar de seguir a modinha que é a programação web.
mas bem que agora eu não sei o que fazer, literalmente. é tanta coisa mas ao mesmo tempo nada. eu não sei o que estudar.
tá, tenho que ter um objetivo mas eu "não tenho" um bem claro ainda, eu sei o que eu não quero por agora, programação web. desenvolver sistemas operacionais, mexer no mobile (não com apps, quero mexer no sistema do Android mesmo), talvez seja um bom passo.
algo que poderia ajudar a fazer essa jornada mais divertida, seria aprender a programar fazendo jogos, mas, sla, tá tudo tão confuso.
vim pro C, dai não sei se aprendo sobre memória, ponteiros. mas, pra quê tudo isso serve? não vem uma ideia na minha cabeça na qual me mostre no que eu posso aplicar essas coisas, porque o que eu vejo é sempre a mesma coisa: "fazer um calculadora".
venho assistindo uns vídeos do Akita, mas eles só me fazem me sentir mais burro e me deixar desanimado, mas, como eu sou teimoso, eu continuo, continuo mesmo sem saber o que fazer agora, continuo mesmo sem fazer nada.
esse deve ser o meu 4° ou 5° post buscando ajudar de estranhos na internet, com uma minúscula esperança de que alguma resposta possa ser a luz para a minha carreira como programador ou na minha vida mesmo. até agora eu não acrescentei nada para essa comunidade, seja com tutoriais, seja tirando a dúvidas de outras pessoas ou até mesmo ajudar pessoas assim como eu.
às vezes penso em parar pra descansar, mas nem eu sei do que eu tô descansando ou fugindo, mas ok, descanso e, não resolve nada.
meu objetivo é, não importa em que área de atuação seja a minha, ajudar as pessoas. mas como?
Mano, vi num comentario seu aqui, que tu tem 16 anos... Antes de ler isso, achava que voce tinha uns 25~30.
Eu acompanho o Akita tambem e tento me segurar pra nao dar conselhos mas um eu preciso te dar um. CALMA!!! Voce tem 16 anos mano!!! DEZESSEIS!!!
Voce se sente burro ao assistir os videos do Akita? Ele tem um post no linkedin, (que acho que nem vale a pena voce criar um pois vc tem 16 anos!!! - sim eu vou repetir isso bastante kkkk), falando para as pessoas nao se sentirem "burras" assistindo os videos dele pois aquilo ele sabe por ter mais 30 anos de carreira. Repito, TRINTA ANOS!! O dobro que voce tem de vida ele tem de carreira profissional!!! Esse post dele foi uma responsta a um comentario de uma pessoa que, igual voce, estava falando que se sentia burra. A diferenca entre voces e que essa pessoa disse que tinha 10 anos de carreira!!!!!!
Entao calma cara! Eu nao sei sua condicao financeira ou de vida para estar tao preocupado dessa forma mas, se voce precisa arrumar trabalho o mais rapido possivel, o caminho e o web mesmo.
Agora se arrumar trabalho o mais rapido possivel nao for a questao, vai "brincar" de programar! Aproveita a liberdade qie voce tem hoje e vai brincar. Relaxe, descanse, va fazer outras coisas e deixe a imaginacao fluir. Naturalmente vao aparecer ideias e ai voce "brinca" implementando essas ideias. Dando certo ou nao.
Por fim, se for possivel, procure um psicologo para cuidar da ansiedade. Isso me ajudou muito!!!!
De novo, calma cara, relaxaa!!
Obs: Um curso em C que recomendo e o cs50 de harvard. Gratuito, mas em ingles.harvardcs50
Obs2: Desculpe erros ortograficos e falta de acentos. Estou pelo celular
Olha, é uma boa observação. Web pegou tanto que tem muita gente trabalhando para oferecer cosias mais fáceis e prontas. E isso faz ele "pegar" mais ainda. Se botassem menos de 10% desse esforço em desktop, talvez 1 ou 2%, Desktop já entregaria melhor resultado para 100% dos casos (de aplicação, não inclui websites). Falta muito pouco, mas todo mundo abandonou. Parte da culpa é até da Microsoft.
Veja quanto esforço estão fazendo, quanta tecnologia criam, uma para consertar a outra, e ainda tá ruim. Porque web nasceu ruim. Ou não, porque ela nasceu para websites, para aplicação é gambiarra. Dá até para fazer aplicação rodar no browser hoje em dia e não ser ruim, mas abandona tudo o que fazem hoje, tem que criar tecnologia nova (há uns 5 anos nem era possível fazer isso).
Acho que seu problema é tentar aprender sem algo estruturado. E também pode ser algo pessoal interno. Vejo muito as novas gerações reclamando de se sentir burro. Eu não via isso acontecendo tanto no passado. E não acho que as pessoas são necessariamente mais burras hoje. Talevz tenha um pouco disso porque a escola falha mesmo. Mas percebo as pessoas com problemas consigo mesmas. Não sei o caso individual, não faço diagnóstivos, mas um profissional competente pode fazer e ajudar. Quanto antes começa melhor pode ser o resultado. Se é resiliente (não teimoso) ajuda bem.
O Akita joga tudo espalhado e sem nivelação, é problema seu discernir como consumir aquilo. Eu farei algo começando este ano, que será assim na primeira passada, farei o que eu acho que tem que fazer. Na segunda, anos depois eu vou organizar para facilitar para as pessoas. Tem alguém que faz tudo organizadinho já? Eu desconheço, tem entregador de receita de bolo.
Em web tem, porque quem faz essas coisas, especialmente quem bende curso sabe que as pessoas não querem aprender, querem a receita de bolo, então fica mais fácil, mas torna a pessoa mais fraca profissionalmente.
Pode ser que o seu caso seja de não ter aprendido a aprender. Isso é muito comum hoje em dia. Então precisa de alguém pegar na maõ e dar tudo mastigado. QUem ssabe aprender pega qualquer conteúdo e se vira, organiza. Isso faz uma enorme diferença na evolução. Pode ser que precise ver isso. Sâo só dicas genéricas, não te conheço.
Estranhos não vão conseguir ajudar muito.
Descansar é bom. Fugir não é, precisa ter bem consciência disso, mas parece estar acima da média já :)
Depois ajude as pessoas. Agora se ajude. Eu ajudo agora, antes eu não conseguia. Eu atrapalhava.
Procure se forçar sempre. É assim que evolui. Você só é burro se desitir fácil, ou insistir em algo que não serve para você, depois disso ser uma certeza e não apenas um sentimento. Dificuldades são normais. Tem gente que é bem perto de burro e se dá bem porque a atitude é boa. Pense nisso. Eu vejo um burro fácil, quando não percebo isso se ela não for inteligente, disfarça bem. O burro não dá nem vontade de ajudar.
Observou? Faz sentido para você?
Espero ter ajudado. Em geral estou à disposição na plataforma (sem abusos :D)
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).
Confesso que no momento nao penso em dicas melhores que o pessoal ja deu aqui, principalmente o @maniero. Aceite que voce nunca vai comecar as coisas de modo perfeito ou da maneira mais eficiente, a gente comeca burro, em tudo. Basta aceitar isso e se manter resiliente e nao desistir.
Independente do "segmento" que voce escolher, aceite que voce nao vai comecar programando ou desenvolvendo a coisa mais foda ou a coisa que mais se assemelhe com o que voce busca. exemplo, o colega aqui em cima mencionou sistemas embarcados, setor automotivo, bordo etc. Definitivamente seus primeiros anos nao serao aprendendo coisas completamente direcionadas a estes temas, mas sim o basico.
Compreendo sua perspectiva sobre o desenvolvimento web e concordo que explorar outras áreas, como a programação de sistemas embarcados em C, pode ser fascinante. Além dos tópicos que mencionou, aqui estão algumas sugestões adicionais para expandir os conhecimentos em C: programação concorrente e paralela, segurança em C, embarcados, otimização de código. recomendo dar uma olhando sobre otimização usando instruções vetoriais e um assunto muito interessante para que gosta de programação de baixo nível, um professor meu tem alguns artigos publicados na área de doutorado dele que é criptografia em que ele faz implementação eficiente de algoritmos criptográfico para arquitetura x86 usando instruções vetoriais. Acho válido destacar que assuntos como embarcados e programação de baixo nivel são BEM COMPLICADOS a princípio, principalmente quando se trata de otimização e você tem que entender muito bem sobre tópico como arquitetura de computados e sistemas operacionais, é difícil, tanto aprender quanto achar vagas, mas não é impossível e eu mesmo quero ir para o mercado de trabalho nesse rumo. Se for iniciante recomendo começar implementando estruturas de dados usando C, coisas como Listas Ligadas, Hash Tables(vou deixar uma implementacão minha de hash table para tipos de dados genéricos feita em C nos links), Árvores B e B+ para entender como as estruturas funcionam e como outras linguagens implementam as estruturas delas e como linguagens como python por exemplo usam ponteiros para fazer arrays que aceitam diversos tipos por exemplo. vou deixar alguns links que você pode se interessar.
https://github.com/hscHeric/hsc_hash_separate-chaining
https://www.ime.usp.br/~pf/algoritmos/
https://www.ic.unicamp.br/~rdahab/cursos/mo850/Welcome.html
https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html#ig_expand=6,483
Embora a maioria das oportunidades envolva a web, o software está em toda parte. Mas como você é jovem, recomendo que ainda não se preocupe em focar em uma área ou tecnologia específica. Apenas continue aprendendo coisas novas.
Bons programadores são bons em decompor problemas, tem clareza de pensamento, e tem capacidade de se aprofundar em conceitos complexos. Essas características são mais importantes do que o conhecimento de uma área específica. Aprender coisas novas proporcionará oportunidades para desenvolver essas habilidades.
Bom dia,
Entendo tua frustração, acho que todo mundo passa por um sentimento como esse em algum momento da carreira...
Não sei qual é o teu nível atual, ou a quanto tempo estás na área, mas no geral, em inicio de carreira as coisas serão assim mesmo, o popular feijão com arroz. Infelizmente a vida do dev não é como nos filmes, que dia sim dia não você salva o mundo de um ataque cibernético que poderia acabar com Wall Street...
Atualmente, no meu ponto de vista, a maior necessidade de devs é justamente para a área web, e no geral não haverá nada de muito estraordinário nisso.
Se queres uma dica de uma área que poderá ter um impacto maior na vida das pessoas, além do hype de IA atual, eu diria para focar na parte de sistemas embarcados, visando o setor automotivo, desenvolvendo os sistemas de bordo, segurança e prevenção de acidentes, ou também a área de industria, para automatização, ou de saúde, para os equipamentos de imagem e robotica. Porém, esse último, acredito que seja bastante nichado e difícil de entrar (não conheço ninguém que tenha conhecido, ao contrario dos setores de automoveis e industria)
Entretanto, considero que, caso esteja no inicio de carreira, foque na base, e então procure ter um conhecimento maior na área de negócios, de forma que você consiga participar e influenciar nas tomadas de decisão, com o tempo irá se identificar mais com uma área ou outra, e poderá tentar fazer uma migração para o que for de teu agrado, com significativa facilidade caso tenha uma boa base...
Por enquanto, esquece o "ajudar as pessoas". Como pretendes salvar alguém que está se afogando se não sabes nadar?
Podes começar pela calculadora. Vai aprendendo e talvez surjam novas ideia no caminho. O que interessas é se movimentar e não ficar deprimido em um canto.
Certamente o Akita tem mais experiência que tu. O objetivo não é se sentir burro mas chegar lá. Um professor meu dizia que os burros tendem a se cercar de pessoas tão ou mais burras para se sentirem inteligentes. Os inteligentes procuram sempre pessoas mais inteligentes para se espelhar.
Finalmente, vais aprendendo alfo e podes postar aqui o que aprendeu.
Não tenho mais ideias do que escrever. :D
Sobre aprendizado, o que aprender, muitos tem respostas melhores que a minha, mas gostaria de falar um pouco mais sobre C, ja que eu a alguns meses tive a mesma confusão.
Sim, ponteiros e alocamento de memoria é importante para não desperdiçar memoria, exemplo besta: Ao inves de passar uma variavel como argumento em uma funçao você pode passar apenas a referencia.
Alocação de memoria, trabalhando com strings ou arrays dinamicos(arrays que aumentam de tamanho conforme a execução), voce VAI usar alocação de memoria, realocar quando precisar mais.
Estive muito confuso igual a você sobre o que fazer com C, ja que todos os tutoriais online praticamente so apresentam a sintax, para procurar coisas mais afundas em C você precisa procurar topicos especificos, por exemplo, faça seu mini shell usando esse tutorial.
Você pode ter interesse por compiladores por causa do video Linguagem Compilada vs Interpretada | Qual é melhor? então procure tutoriais sobre como fazer um analisador lexico em C como por exemplo Lexical Analyser in C
Ou você leu o livro So por prazer, Linux(meu deus isso esta 150 reais a mais do que eu paguei 4 meses atras) e então resolveu procurar sobre e encontrou o OSDev Wiki e o subreddit r/osdev e encontrou conteudo sobre como fazer "hello world" em sistemas operacionais usando C e um pouco de assembly.
Caso não tenha ficado claro, isso foi basicamente minha historia com C nos ultimos meses, se bem que o livro eu tinha lido a mais tempo, mas só consegui encontrar bom conteudo agora.
Emfim, pense no C como uma ferramenta para desenvolver esse tipo de coisa, com uma otima performance, se estiver interessado em falar mais comigo sobre, pode responder esse comentario ou vir falar comigo no privado do discord, meu nome de usuario é "kalanguin", me mande uma mensagem no privado, eu tive duvidas muito parecidas que as suas e eu adoraria responde-las se tiver mais.
Eu atualmente sou estudante de Engenharia da Computação e estou passando por um processo similar ao seu, porém não tanto perdido como você está se sentindo agora. Eu poderia falar várias coisas aqui eu podem lhe dar algum norte, mas vendo o quão perdido você está, eu acho que não bastaria apenas citar tópicos e sem discorrer o porquê da necessidade de olhar eles, pois ao fazê-lo, provavelmente só iria gerar mais confusão.
Eu vi em outro comentário que você só tem 16 anos e genuninamente fico feliz que, mesmo tão novo, esteja procurando algo na computação, já há 2 anos, com tanto afinco. Se serve de alguma coisa, eu diria para procurar aprender estruturas de dados e algoritmos profundamente, pois é algo que não vi você falando que já domina nos outros comentários e nem no post em si, e só aí partir para essas áreas. Digo isso pois, ao contrário de web que existem 1 milhão de abstrações para usar, precisando saber o mínimo que está acontecendo por baixo do panos (já que tudo "simplesmente funciona"), o mundo fora disso exige que você domine muito mais com o que está lidando, além de, dependendo do que você quiser, ter que entender de várias coisas além de computação em si, o que torna a barreira de entrada extremamente maior.
Por fim, eu vou deixar aqui meu Discord e você pode me adicionar lá se quiser: frangomolhado
. Se você não gostar de lá, não tem conta ou algum outro motivo, manda um email para mim em o.lohan.yrvine@gmail.com
. Meu intuito é que a gente possa fazer uma call para eu entender melhor a situção, e discuti-la sem o incoveniente de uma comunicação assíncrona escrita.
Aprenda C e Unix de verdade. Eles são a base de tudo, inclusive da web.