https://twitter.com/ms_nieder/status/1626995266619420675?s=4...
We Need To Talk About Vercel
121–130 of 161 posts
Re: We Need To Talk About Vercel
#122Vercel is deceitful. The Image/img fiasco really pulled the covers off for vercel for me. I have migrated all my work off of the platform. NextJS’ lint strategically dissuades you from using the img tag in favor of the NextJS Image component. If you make the mistake of heeding this advice and migrating to it, you can’t use static site generation—which means you are stuck using their hosting. Here’s one of the most PR…
Lol, silently* replacing the original request with the company response instead of documenting it in the docs is certainly a move. Nice to have all the thumbs-up and heart reactions on the "sorry we don't do it", for sure. Love the " We'd love to hear your feedback " and then locking the discussion too. Not having the feature is one thing, but why not properly document that and the (by now existing) workarounds? * ye…
Deceit is indeed the right word to describe Vercel's behavior.
Re: We Need To Talk About Vercel
#123Feel like this Tweet could use some social support too. https://twitter.com/ms_nieder/status/1626995266619420675?s=4...
Is Vercel a business or a scam masquerading as a tech company?
If a company needs to stoop to this level of billing shenanigans to make money, I have my doubts...
Re: We Need To Talk About Vercel
#124Vercel is deceitful. The Image/img fiasco really pulled the covers off for vercel for me. I have migrated all my work off of the platform. NextJS’ lint strategically dissuades you from using the img tag in favor of the NextJS Image component. If you make the mistake of heeding this advice and migrating to it, you can’t use static site generation—which means you are stuck using their hosting. Here’s one of the most PR…
There should be a warning that it won't work with SSG and is only for SSR, but there are also many features on next.js that are SSR only.
Re: We Need To Talk About Vercel
#125Feel like this Tweet could use some social support too. https://twitter.com/ms_nieder/status/1626995266619420675?s=4...
This is incredible. If I understand the thread, that >$22,000 surprise bill was not forgiven by Vercel and the most they're willing to do is offer a 25% discount. Is Vercel a business or a scam masquerading as a tech company? If a company needs to stoop to this level of billing shenanigans to make money, I have my doubts...
Many stories are emerging where it’s clear that trusting Vercel is a risky strategy.
Re: We Need To Talk About Vercel
#126Earlier quoted context omitted.
I'd say one of the big annoyances I've encountered while building applications with the last few versions of NextJS is the increasingly tight integration with the built-in server. The world of Node servers is pretty well-established, with documented interfaces that the major server platforms all implement and support. Simple stuff like res and req in the context and what those objects contain. With each release NextJ…
Seems like you may appreciate https://vite-plugin-ssr.com/ (I'm its author).
Re: We Need To Talk About Vercel
#127Re: We Need To Talk About Vercel
#128Earlier quoted context omitted.
I wonder if somehow the request got handled by two different edge workers that were desynchronized? I’ve seen it happen in busy areas (NYC, etc.) where a single client will hit many Workers in a session whereas when connecting from a rural area I’ve never observed that. Regardless, I say the solution is fat index files. Is there any tangible benefit to the long held tradition of separating the structure from the func…
I mostly use Vite nowadays, so my bundle is usually automatically split into a vendor.js and an index.js. The vendor bundle for dependencies is large (usually 50-200KB brotli'ed for my popular side projects) and rarely changes. The index.js containing only my code is usually smaller and changes on every build. With a fat index everything has to be downloaded on every change. Most people don't care these days but I tr…
> I try to make the experience nice even for people with really shitty connections
I see this sentiment a lot, though people seem to be able to use it to justify any design at all... the question IMO is what does "shitty" mean?
- In a low bandwidth case, serving only the absolute minimum data to do what the user has specifically requested makes good sense. A solution here is Server Components, which can send the client js event handlers on a per-interaction basis.
- In a high latency case, the total number of round trips should be minimized at all costs, so the Server Components approach is terrible, the client may need to wait for 2+ round trips to do their interaction (one to download the client js, one for that client js to perform the actual action). A solution here leans towards the fat index approach.
- In the case where connections drop often, all the data that the client might need should be transferred over as soon as possible, as there's a good chance they won't be able to access the server at the exact moment when the data is needed. The solution here is the fattest indices possible, with copious caching.
These are all three in conflict with each other to some extent, so the best approach is probably dependent on the specifics of your user-base.
In my experience, a "shitty connection" is one where the bandwidth is low, latency isn't typically a big deal, but the connection will drop frequently, potentially for hours or more. However, in such cases I'll at times have access to the occasional hotspot where the network is perfectly fine. Accordingly, I design my apps to transfer as much data as possible initially (ensuring that the main content can be seen and interacted with even if data for some other module is transferring in the background), and provide the option to store everything in stale-while-revalidate service worker caches so the full experience is available fully offline to the extent possible, even if you didn't fully explore the app while online. In this way, I can download the latest chunks when on the good connection and run fully offline from then on (obviously excepting actions that are legitimately impossible without a server).
Re: We Need To Talk About Vercel
#129https://twitter.com/eigenseries/status/1645515739280064512?s...
Re: We Need To Talk About Vercel
#130Earlier quoted context omitted.
Does the tag work with the docker container? GP's issue is with how vercel was pushing the tag a lot yet it doesn't work when in static site generation mode which is used by a lot of people.
You can disable it to make it behave like an Image tag https://nextjs.org/docs/api-reference/next/image#unoptimized It works, it's just not optimized, that's not the same thing.
1. Serving images over Node.
2. Using Vercel.
I also don't want to eject code that is sitting right there in the repo. And I don't want to maintain a fork of a homebrew reimplementation of it.