16 pointsby jhuleatt5 hours ago8 comments
  • zoulan hour ago
    One of the things I liked about Next is that it presented a “unified platform” instead of the fragmented sea of hacks that is web development. Eg. I was initially taken aback by having to use a special component for images but then it made sense when I realized the platform handles image optimization and stuff like that for me.

    But over time I lost the ability to reason about my Next code almost completely. Sometimes it’s the caching, sometimes it’s some little arcane code differences that turn my route into an unexpected type. There is some logic behind it, I can respect that, but I no longer have a coherent mental model of what the framework / the platform does.

    It feels like the reality that the abstractions are trying to cover is too wild not to break through at places. Which, I guess, is just web. But it’s a pity, it felt good to have a saner, simpler platform to develop for in older versions of Next.

    • JimDabell6 minutes ago
      There are some people who see the web as a platform, and some people who see a web browser as a window for zero-install applications to draw into. There have always been people in the latter group who try to abstract everything away, but it does tend to discard pretty much everything that makes the web great.
    • eknkc26 minutes ago
      I have used next in a pretty large application. Also built decently large things with base react (vite), vue (nuxt). Also small stuff using other platforms.

      Next is by far the worst thing ever. Everything is broken in a weird way and the deeper you dig into it deeper it starts biting back. It was the only thing I dreaded maintaining.

      Now that LLMs write code, it probably is not be as big of an issue though.

      Still would not wish next upon any of my enemies.

    • pjmlp23 minutes ago
      Similar experience, started in the page router days.

      Nowadays no idea what they are trying to do with it, I rather be dropped into a random Spring or ASP.NET project, or even C, than Next.js.

      Sadly it is the new darling of SaaS cloud products as extension SDK and deployment partner, and thus the only way to some consulting gigs.

    • afiorian hour ago
      I feel like solid-js is in a good place to be a platform
    • 22 minutes ago
      undefined
    • prodigycorp22 minutes ago
      Hard to call it a "unified platform" when a good portion of the developer base is using pages router despite app router being out for a few years now
  • swe_dima4 minutes ago
    I still much, much prefer the page router. The caching model is much simpler. Shame that they hired all the open source react maintainers and now nothing other than Tan stack gets developed.
  • samtheprogram7 minutes ago
    'use cache' works at the function level as well and is very handy to reduce scaling bottlenecks in a pinch.
  • pjmlp31 minutes ago
    Wishing for the day it stops being the darlings extension framework for SaaS vendors in the MACH ecosystem [0].

    At least the whole headless, DXP hype cycle seems to be wanning down, so maybe we get proper SDKs back.

    And while we're at it, what about porting Next.js into Next.rs, and remove all that "use nonsense"?

    [0] https://macharchitecture.com/

  • chaostheory42 minutes ago
    Svelte and its kit are a much better dev experience
  • cpursleyan hour ago
    It’s a shame that the LLMs default to Next when vibe coding instead of something serious like Phoenix. Then again, maybe it’s a good thing - all of the sloppy copies of my saas are complete dumpster fires and only going to slow them down.
    • desireco42an hour ago
      Shame but also opportunity... These apps will not be good, they will look good and appear to work, but then... they will need to be rewritten.

      I am often posting that if you pick Gleam for UI, Rails or Phoenix, which will make your codebase easier to follow and more stable, I will give you discounts.

      • Imustaskforhelp24 minutes ago
        Gleam as a language is genuinely underrated for porting.

        I had made a Golang htmx + templ codebase and just out of curiosity I ported it onto gleam using an open weights model (glm 5.3)

        Although it struggled a little bit first because of learning some parts of gleam but overall after it searched for documentation and learnt some things on its own, it was able to completely rewrite it in just 1/2 very small prompts which is crazy.

        I think phoenix can be great as well and I am doing an experiment to try to port it to many functional languages and just testing which language is the best for it but so far I am impressed by gleam!

    • sergiotapiaan hour ago
      Have faith, you can be the change you want to see.

      At my new job we needed a robust platform for executives and ops people to vibe code in. I created the project using latest Phoenix and everything works flawlessly. We get so much for free, hosting is peanuts, and iterating is easy for the AIs.

      I even have tons of really strong deterministic guardrails for people vibecoding:

          Before you commit, run mix precommit and make sure it's green.
      
      And mix precommit is:

          precommit: [
            "compile --warnings-as-errors",
            "deps.unlock --unused",
            "format",
            "credo --strict",
            "ex_dna",
            "reach.check --arch",
            "dialyzer",
            "test"
          ]
      
      Credo has https://github.com/elixir-vibe/ex_slop added to it.

      It's really great, try it out.

      • cpursley20 minutes ago
        Yeah, I’ve got a “mix quality” task that includes that one and the dup one and skill that points at it, keeps the codebase cleaner that I could manually even before llm era. I’ve thought about building something that can detect if helper functions in a module are generic enough to consider refactoring out to an app-wide helper module, that continues to be an annoyance.
    • an hour ago
      undefined
    • yipinwong5 minutes ago
      [flagged]
  • soltanovan hour ago
    [flagged]
  • an hour ago
    undefined