Next.js - Futuro ou Furada?

Olá pessoal! Meu nome é Enzo, esse é meu primeiro post aqui, então talvez eu erre em formatações ou padrões de escritas, mas enfim...

Meu primeiro uso do Next.js foi com a última NLW da Rocketseat, de primeira, achei muito interessante a pegada do desenvolvimento, algo simples, fácil. Desde então venho estudando Next.js, com foco no desenvolvimento full-stack (Faço o back em node e o front com o next).

Alguns dias atrás, comecei a me questionar sobre o Next.js, vendo as "novas" (já não tão novas hoje em dia) features do Next 13. Percebi que o software facilita e muito tudo, você tem o trabalho de saber a sintaxe, e fácil assim você faz o que quer, pois o framework toma conta do trabalho mais complexo.

Tendo isso em mente, me pergunto se o Next.js realmente é algo que tem futuro para nós, devs, ou é simplesmente uma estratégia da Vercel para nos prender a eles, fazendo com que nós fiquemos dependentes do jeito fácil deles, nos tornando devs Vercel.

Talvez eu tenha entendido tudo errado, mas estou em grande dúvida desde que comecei a pensar dessa maneira. Gostaria de ouvir mais opiniões e conselhos também, estou aberto a quaisquer comentários 😁. Obrigado galera, tamo junto!

ou é simplesmente uma estratégia da Vercel para nos prender a eles, fazendo com que nós fiquemos dependentes do jeito fácil deles, nos tornando devs Vercel

Você pode trocar "Vercel" por qualquer outro mantenedor de framework. Dev NextJS, Dev React, Dev Spring Boot, Dev Django, Dev Laravel...

"Futuro ou Furada?" Em primeiro lugar, não é futuro, é presente. Está sendo usado hoje para desenvolver aplicações diversas em produção.

Em segundo lugar, faz diferença se for furada? Faz diferença: se você se tornar um desenvolvedor de framework. Não sabe CSS de verdade. Sabe apenas consegue estilizar componentes com Tailwind, Bootstrap e companhia. Não sabe JS de verdade. Sabe apenas chamar funções que fazem CRUD's e rodar um .map de um array transformado dados em html pra renderizar na tela. Não sabe HTML de verdade. Sabe apenas copiar e colar código de bibliotecas de componentes como MaterialUI, Antd e companhia.

Não faz diferença: se você sabe a base. Não é refém de framework. Apenas se aproveita deles para ser mais produtivo. Sabe como aprender coisas novas. Assim, se Next.JS deixar de ser utilizado pq surgiu um framework "melhor" que está sendo mais adotado nas empresas, você apenas aprende o novo e segue a vida.

Em 10 anos eu passei por:

  • Java com JSP
  • Java com JSF
  • Java com Spring Boot
  • Node com ExpressJS
  • Web com Angular
  • Web com React
  • Node com KoaJS E hoje a stack com a qual estou trabalhando é NestJS + NextJS Se eu for me aposentar aos 65, até lá serão 43 anos de carreira. Quantos frameworks vou aprender e dps abandonar para aprender outro? Pouco importa. Eu sei a base, sei desenvolver software e sei aprender coisas novas. Não estou preocupado com isso.

Faça o mesmo, meu amigo. Aprenda a base, não seja programador de Framework. Aprenda a aprender. E gaste suas energias com algo mais valioso do que ter esse tipo de preocupação.

Abraço

Cara, que comentário ótimo! Nunca tinha parado pra pensar desse jeito que você disse, e faz muito sentido. Sabendo a base, pouco importa. Muito obrigado por essa visão e esse concelho amigo! E também, parabéns por essa carreira digna de alguém que sabe se adaptar!!!
Ótima reaposta, nunca sejá refem da sua ferramenta, senão a ferramenta é você.
Escolher utilizar ou não o Next.js não deve ser uma decisão pautada apenas na sua familiaridade com as tecnologias. Para começar essa conversa ao meu ver só cabe à gestores e empresários. Você provavelmente é apenas um funcionário e por isso pensa dessa forma. A argumentação que você trouxe à tona poderia se encaixar para qualquer outro framework. As ferramentas como Next.js, React, entre outras, são adotadas primariamente com a intenção de otimizar o tempo de desenvolvimento, permitir uma melhor componentização e possibilitar a escrita de um código mais eficiente. Em relação ao Next.js, o principal ponto de atenção é a condição "imposta" pela Vercel para utilização de sua plataforma de hospedagem de tentar lhe amarrar aos recursos de sua hospedagem. Entretanto, é importante ressaltar que já existem iniciativas que buscam replicar a infraestrutura do Next.js na AWS. Ao optar por um determinado framework, a decisão não deve ser baseada no quão profundo é o seu conhecimento sobre o mesmo. Essas escolhas precisam ser embasadas em critérios como o custo, a eficácia e a lucratividade que a ferramenta pode trazer para o seu projeto. O seu texto sugere que você enxerga a situação pela perspectiva de um empregado. Contudo, os rumos da tecnologia são comumente guiados por empresários e gestores. No meu ponto de vista, eu prefiro utilizar o Next.js, principalmente devido à qualidade que esta ferramenta confere ao produto final e à produtividade que ela proporciona. Sobre o aspecto financeiro, eu considero que a hospedagem na Vercel tende a ser mais econômica que na AWS dependendo do tamanho da equipe. Adicionalmente, se houver a necessidade de expandir a equipe, há opções disponíveis que mistigar a infraestrutura da Vercel. Particularmente hoje para a minha empresa vale muito a pena entregar softwares usando a vercel. A hospedagem é excelente, as featuares também e tem me dado muito lucro. Para mim hoje só pelo suporte e qualidade do serviço já está compensando.
Fala Guilherme, blz? Acho que não ficou claro para você o que eu quis dizer. Em nenhum momento falei sobre decisão sobre escolher uma tecnologia. Talvez esse trecho te vez pensar isso >Você pode trocar "Vercel" por qualquer outro mantenedor de framework. Dev NextJS, Dev React, Dev Spring Boot, Dev Django, Dev Laravel... Mas aqui eu estava me referindo a frase do autor do post: >ou é simplesmente uma estratégia da Vercel para nos prender a eles, fazendo com que nós fiquemos dependentes do jeito fácil deles, nos tornando devs Vercel Eu quis dizer que esse questionamento dele é verdade pra qualquer framework mantido por alguma empresa. Ou seja, pode trocar "Vercel" por qualquer outra empresa e "NextJS" pelo framework correspondente. --------------- Mas já que entrou nesse assunto... >Escolher utilizar ou não o Next.js não deve ser uma decisão pautada apenas na sua familiaridade com as tecnologias. Você está certo aqui, a menos que os requisitos de um produto torne igualmente viável escolher tecnologia X, Y, ou Z. Aí faz sentido vc escolher a que o **TIME** tem mais proficiência, ou que seja mais fácil encontrar mão de obra. ------------ >Para começar essa conversa ao meu ver só cabe à gestores e empresários. Você provavelmente é apenas um funcionário e por isso pensa dessa forma. Já aqui, eu discordo. Idealmente, essa decisão cabe a quem detém o conhecimento técnico, que pode ser um Arquiteto ou Tech Lead por exemplo que também são "apenas funcionários". Pode caber também a um empresário ou gestor se eles tiverem o conhecimento ténico. --------------- >Entretanto, é importante ressaltar que já existem iniciativas que buscam replicar a infraestrutura do Next.js na AWS. Não entendi essa parte. Faz anos que rodo NextJS na AWS (num cluster de Kubernetes, ECS ou até mesmo num EC2) Nunca ouvi sobre limitação de só poder rodar na infra da Vercel. E garanto que não é real. ------------ Quanto ao resto do seu texto, não entendi nada rsrs. Em nenhum momento entrei no tema "escolha de tecnologia para um produto". Eu sei e concordo com quase tudo o que vc falou sobre, mas eu não entrei nesse assunto, então não entendi essas frases e o resto: > Você provavelmente é apenas um funcionário e por isso pensa dessa forma. > A argumentação que você trouxe à tona poderia se encaixar para qualquer outro framework. > O seu texto sugere que você enxerga a situação pela perspectiva de um empregado.
Emocionado kkkkkkkk, não interpretou direito kkkkk, concordo com você foca na base, ferramenta a gente aprende, e se tiver que jogar fora agente joga e vai para a próxima.

Eu já tentei usar o next em outra hospedagem (netlify) e não funcionou como deveria. E isso é preocupante...

Eu vi uns relatos desse, essas coisas que me preocupam também, ser dependente da Vercel, por exemplo. É algo importante de se analisar antes de desenvolver uma aplicação inteira em Next.
Fiquei curioso sobre esses casos. Se vc consegue rodar na sua máquina, deveria conseguir rodar em qualquer lugar. Eu já rodei aplicação NestJS em docker, Kubernetes e agora rodo num ECS Eu aposto que o problema não está no framework, mas em falta de habilidade de quem tentou configurar o deploy.
Pois é, pensei exatamente isso. Rodando na sua máquina, conectando com outros serviços e tudo vai bem. Qual a necessidade da Vercel? Ou será que o computador em casa é tão bom quanto a Vercel?
A diferença é que o NestJS e outros frameworks foram pensados para ser agnósticos, já o NextJS é pensado para vender a nuvem da Vercel. Grande parte do que o NextJS faz, você consegue sem muitos problemas colocar para funcionar em um Docker com Kubernetes em um ECS ou no combo API Gateway + Lambda. Porém alguns recursos, como o ISR, por exemplo, são bem chatos de replicar e manter, especialmente considernado multi regionalidade.
Opa, eu quis dizer NextJS na verdade, não NestJS rsrs.
Exatamente, já rodei até em apache e funciona lindo! A galera fica muito preso em tutoriais de youtube "ensinando" a fazer deploy somente apertando botões em soluções que estão em hype.
Oxi, já rodei até num apache basicão mano, a questão é que você tem que aprender a fazer deploy de forma decente, não só aprender a apertar botão nas plataformas.

Como o camarada falou frameworks vem e vão.Sou desenvolver web, só entrei no React quando consolidei meus conhecimentos HTML,Js e Css. Do React passei para Next,e no futuro passarei a usar outro tanto por questão de trabalho tanto por surgimento outra tecnologia melhor de se usar.O que importa é uma base forte

Eu tenho encontrado no NextJs uma forma firme de criar Apps juntando com o capacitorJs, minha aplicação facilmente é transformada em app para ios ou Android. Pra mim da pra fazer um dinheiro rápido com o NextJs

futuro? como assim? hahaha muitas empresas usam NextJs em produção tem uns 3 anos! inclusive aqui no Brasil

Next.js é um framework que facilita muito a vida de um desenvolvedor front-end te entrega várias coisas prontas, mas se não souber o que roda por trás disso ou até mesmo se não souber fazer um projeto sem Next.js aí sim diria ser uma "furada", pois ficar preso a um framework e não saber da linguagem ou outras forams de resolver o problema é perda de tempo aprender sobre o framework.

Desenvolvimento é solo? Se sim, qualquer tecnologia que vc escolher, resolvendo o problema tá feito. Tem gosto pra tudo, mas o que realmente importa é o resultado. Deu resultado esperado, pode ser react, angular, next, vanilla ou até Delphi. Chegou lá, blz! Resolvido.

Agora, vc tem empresa, é um time? Vai escalar? MVP que pode virar produto SaaS? Não envolve apenas decisão técnica e gosto por x ou y, tem de pensar no mercado, mão-de-obra, cloud x preço para tecnologia adotada, tipo de aplicação, público, dispositivos enfim, tem uma série de coisas a serem pensadas que vai impactar no custo do seu produto.

Não dá pra dizer que é moda ou futuro, só o tempo e adoção dirá. Temos muita gente na comunidade adotando diveras tecnologias, linguagens e frameworks, mas no final das contas, a sobrevincia dessas tecnologias são ditadas pelas corporações. Quando grande corporações adotam tecnologia x ou y, ela se torna o padrão do mercado, devido a alta demanda por profissionais dessas tecnologias. Não necessariamente são as melhores, mas são as que dominam o mercado, pq foram escolhidas com base em custo, em suporte, em escalabilidade e outras itens que geralmente são ligados a custo x beneficio e não envolve gosto ou paixão por algo.

Cara, se é o futuro não sei, mas é o presente...

Faz sentido, o importante é o agora, tecnologias mudam muito e muito rápido.