Entendo muito, mano. Estou com essa mesma dúvida já faz alguns meses, só que comigo é um pouco diferente.

Quero muito me tornar um programador, mas não tinha decidido se ia ser web ou mobile. Depois de fazer vários projetos web e freelas, acabei vendo que já trilhei um caminho legal mesmo sendo iniciante e que gostava de web.

Agora, o maior problema: qual linguagem e framework escolher para o fullstack web?

FRONTEND: A primeira coisa que concluí foi que não tinha como escapar do JavaScript no front-end. Eu tinha que fazer parte dessa bolha gigante e comunidade fragmentada, que a todo dia cria novas tecnologias para resolver as mesmas coisas, e que a cada mil vagas tem 2 mil iniciantes se inscrevendo, assim desvalorizando os salários.

BACKEND: Os projetos que eu fiz até hoje foram em Node.js no backend. Mas, como falei, quero de alguma forma me prevenir desse mundo JS. Eu gosto muito dessa linguagem, mas esses problemas me perturbam. Então, agora estou nesse mesmo dilema: "Qual linguagem no backend?" Estou tentando escolher entre Java ou Ruby para o backend, mas ainda não consegui me decidir. Se alguém quiser dar suas opiniões sobre essas duas linguagens, ficaria muito grato.

Aqui estão os vídeos que me fizeram refletir bastante sobre esses assuntos. Observação: não foi por causa desses dois vídeos que comecei a duvidar da minha carreira. Há meses já estava incomodado com isso, eles só conseguiram expressar o que eu sentia.

https://youtu.be/Vvk08ZGdnuY

https://youtu.be/Qu6HkyoX2Wo

Cara, na sua situação. Vendo que você gosta de web, eu iria para Ruby. Por quê?…

Não tenho muita referência de sites utilizando java no backend, com certeza utilizo isso 24h por dia sem saber, mas as referências de sites “empresariais” que imagino ter java são bem lentos e feios... Mas com toda certeza estou errado aqui, então pense bem neste ponto. Por que estou falando disso? Não devemos escolher uma linguagem pela estética se é feia ou bonita, é apenas uma linguagem, uma ferramenta. No entanto, ter uma inspiração é essencial para aqueles dias que estamos desmotivados e sim, todos passamos por esses dias. Então eu me baseio muito em inspirações.

Estou fortemente indo para o java por conta da sua capacidade de estar na web e em sistemas embarcados. Sem falar que estou de olho em kotlin também, mesmo não vendo muita vaga por aí. Tenho a vontade de sair do país, vejo que a maioria das pessoas que sai é programando em java e o país que as pessoas mais vão é Holanda… Não sei inglês e isso me dificulta um pouco, tenho 27 anos então sei que não entro em uma bigTech da vida, mas analisando os obstáculos, na melhor hipótese, se eu conseguir estudar inglês e conseguir uma vaga java, acredito que consiga uma melhora de vida considerável.

Então é esses os motivos pelo qual estou escolhendo java.

Não tenho muita opinião sobre ruby, mas caso esses pontos de java que citei não fossem relevantes para mim eu iria de ruby, visto que tem vagas para ruby da mesma forma que tem para php.

Minha maior motivação hoje em relação à java é ter a oportunidade de morar fora do país, poder migrar para o kotlin com maior facilidade (mesmo sabendo que seria melhor já focar nele desde o começo).

Ótimas dicas, mt obgdo! acho que me falta mais experiência e estudo para entender melhor os fundamentos de cada linguagem, oq ela pode entrgar melhor e etc, assim como no seu exemplo de java sobre sistemas embarcados. Espero que com o tempo isso se torne algo mais natural e uma escolha mais lógica e não aquelas fases onde vc precisa escolher uma classe em um jogo e depois de estar nivel alto, se arrepende kkkkk
Exato! Mas olha, uma coisa que vejo ouvindo de muitas pessoas, inclusive aqui mesmo já ouvi algumas pessoas dizerem é: Qual o problema de aprender uma e no futuro trocar… Na minha cabeça vale muito mais focar em uma só e caso surja a oportunidade no futuro troco de linguagem, do que estudar uma linguagem para entrar no mercado e sempre tendo na cabeça: “agora quero mudar”, entende? Porque vou estudar algo que sei que no futuro largarei para ir para outra linguagem, sendo que é mais fácil eu começar a estudar essa linguagem e me aprofundar. O tempo que levo estudando uma coisa posso estar me aprofundando em outra..... Olha eu estava desempregado e buscando muitas vagas. Em 1 mês entreguei mais de 500 currículos em todas as plataformas de vaga que você imaginar. Se somar tudo acho que foram uns 800. Consegui uma vaga de estágio e embora não seja muito, ganho 1200 reais por mês. Isso me traz mais segurança (não muita, pois sou estagiário) mas ainda, sim, mais segurança do que estando desempregado. E por esse motivo me fez ter dúvida sobre qual linguagem seguir. Se eu estivesse desempregado hoje ainda, com toda certeza seguiria no PHP Mas como tive esse “tempo para respirar” estou considerando focar em algo que talvez me traga mais retorno futuramente do que focar em algo que me traga algo rápido. Então antes de tomar uma decisão baseada em minhas palavras, para e pensa em qual momento da vida você ta hoje. Veja se é viável uma oportunidade de emprego rápida hoje ou se você tem a possibilidade de pensar no futuro. Dependendo do resultado dessa reflexão… Ai você escolhe seu caminho. Espero que essas sejam sabiás palavras e espero que te ajudem meu amigo. Boa sorte para nós!
Ajudou sim, amigo! No momento, estou estudando em uma faculdade pública, então meio que não tenho gastos. Pelo contrário, eu recebo para estudar por causa das bolsas de extensão, e assim por diante. Também faço alguns projetos aqui e ali, mas não é muito e, na maioria das vezes, é mais para o portfólio. No momento, minhas habilidades estão assim: Frontend web: stack padrão web e algumas tecnologias adicionais. Com elas, consigo criar praticamente qualquer layout que não seja muito complexo. Backend web: quase nada, kkkk! Fiz alguns projetos usando Node.js, mas foi com muita dificuldade e ajuda. Então, como pode perceber, ainda não "perdi tempo" aprendendo uma linguagem no backend. Por isso, estou desesperado para escolher "a classe certa" para começar com tudo e sem aquelas dúvidas que nos desmotivam. Acho que o maior dilema das pessoas que não têm nenhum problema em estudar e se esforçar é o medo de estar fazendo algo errado ou perdendo tempo. Nem todo mundo entende esses nossos problemas de querer tantos pontos de vista sobre determinadas coisas ou de querer ter pelo menos uma certeza antes de começar. Sabemos que o esforço é garantido, a única pergunta é: "Vai valer a pena?" Respondendo agora e desculpe pelas redundâncias, acho que vou focar apenas no frontend (não tem jeito, a bolha JS+React não dá para escapar no frontend) e vou flertar com o backend ao mesmo tempo, enquanto já vou me certificando de qual linguagem escolher. Farei muitas horas de pesquisa, haha! Minha meta é, de alguma forma, tentar me prevenir. Vou explicar, se me permite: Como mencionei, no frontend não tem jeito, mas mesmo assim não descarto a possibilidade de me candidatar a vagas de frontend, vai que né... Agora, posso tentar de alguma forma me prevenir com o backend, escolhendo uma linguagem que tenha uma boa quantidade de vagas, um salário bom e menos concorrência em comparação com o JS. Com isso, posso me candidatar a vagas de backend tendo uma certeza maior e, futuramente, me candidatar à minha meta, que é o fullstack. Então, por isso a pesquisa densa, saber qual linguagem de backend combina com o frontend (stack padrão: HTML, CSS, JS, React...) e que tenha pelo menos características próximas dessas: > Tenha uma boa quantidade de vagas, um salário bom e menos concorrência em comparação com JS. E para isso, existem várias opções... Java (Spring Boot), Ruby (Rails), C# (.NET), Python (Django)... É isso, acabei falando demais kkkk! Acho que depois vou postar isso no tabnews como uma publicação. Obrigado pela atenção!