For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | kugelblitz's commentsregister

I use bunny.net for CDN and DNS.

I don't like free offerings, because what if they decide to charge someday? What if someone decides "free is not feasible, we start charging $20 per instance now".

I'd rather have a low fee now, a change from $2 to $3 is more likely and that's fine for me. But from free to not free is risky for me.

I also like smaller, independent-ish ompanies that actually care about developers. That's why I use bunny.net, transistor.fm, Plausible Analytics.


>I don't like free offerings, because what if they decide to charge someday? What if someone decides "free is not feasible, we start charging $20 per instance now".

You can just move to another provider at that point. At least when it comes to CDN and DNS there’s literally no vendor lock-in.

You can grab your dns records export them to csv and import somewhere else easily and a CDN is just a file server so you can just give your files to someone else easily.


> At least when it comes to CDN and DNS there’s literally no vendor lock-in.

ehhhh, really depends on which CDN features you're using, and at what volume. Using ESI? VCL? Signed URLs or auth? Any other custom functionality? Are you depending on your provider's bot management features which are "CONTACT FOR PRICE" with other providers? Does your CDN provider have a special egress deal with your cloud provider?

It's possible to picture this being easy in the same way that being multi-cloud or multi-region is easy.


>Using ESI? VCL? Signed URLs or auth? Any other custom functionality? Are you depending on your provider's bot management features which are "CONTACT FOR PRICE" with other providers?

I have no idea what two of those acronyms mean. None of this is part of what a CDN offers.

Yes if you use DDoS protection, or cloudfare’s ZeroTrust or embrace $X proprietary features then what I said no longer applies.

I strictly said DNS and CDN.


ESI = Edge Side Includes think Server Side Includes on a CDN technology as supported by Akamai and used by sites like Ikea to deliver a fast maintainable experience

VCL = Varnish Configuration Language i.e. how you configure your Fastly services

If you're just using a CDN as a proxy then there's no lock in but plenty of sites are using CDNs for much more than that


Can anyone say why this is being downvoted? Seems like it makes sense to me, but this isn't my area of expertise.

Predictability matters. The whole point of paying someone else to handle a problem for you is that you don't have to worry about it. If you go all in on a provider and then suddenly find out that you've been switched to a paid plan in the middle of your vacation, that's not a place anyone wants to be. Saying there's no lock-in is nice, but that overlooks the fact that there most definitely is friction. What if there's no mass export? No mass import? Or you need to reset 2FA? Or etc, there's a thousand things that can shoot you in the foot, especially if you have a lot of services you need to migrate.

It's impossible to generalize over free vs paid in regard to predictability. E.g. a provider I paid for simply disappeared once when I was quite busy while my old free gmail still works. Realistically CF's free tier is more predictable than many paid options on market.

My threat model here focuses on what the provider gets out of the free tier. Cloudflare gets a broad view into activity on the internet for building the models they use for their paid offerings. Free Gmail puts people on a path in to Google's ecosystem with basically zero marginal cost.

Or your provider randomly decides you need to be on an enterprise plan: https://robindev.substack.com/p/cloudflare-took-down-our-web...

>What if there's no mass export? No mass import? Or you need to reset 2FA?

1. For DNS we have standardized AXFR requests which the DNS provider needs to support as they are part of the DNS standard. There is not an option of not having that unless you have a really shitty provider that you should change anyway.

2. Same for Mass Import because again DNS already defines these things at the protocol level.

And resetting 2FA or whatever is just the cost of using any service

Personally I have used CF for ~10 years so I have saved $240 and I simultaneously use GitHub Pages and CF Pages for CDN because again I just need to give them a bunch of static files. Adding a third CDN provider would literally be a single command at the end of my build pipeline.


For personal projects, I'd rather just pay $2/month and not think about it than get hit with a random bill and scramble to migrate before the next month's bill. Bunny is perfect for this use case where you have a handful of projects that aren't all actively maintained. It just works without hand-holding, and since you're paying for the service, there's no rugpull looming.

Don't you still have to worry about big bills since bunny bills based on usage?

The biggest bill I've gotten from Bunny was like $10 when my app (https://atlasof.space) briefly went viral and got 100k+ views in a month. Bunny CDN is so reasonably priced and the realistic visitor ceiling for my projects is low enough that it's still negligible. The free->paid cliff is typically a lot steeper than this in my experience.

https://support.bunny.net/hc/en-us/articles/360000235911-How...

> Minimum Account Balance

> In order to keep your service online, you are required to keep a positive account credit balance. If your account balance drops low, our system will automatically send multiple warning emails. If despite that, you still fail to recharge your account, the system will automatically suspend your account and all your pull zones. Any data in your storage zones will also be deleted after a few days without a backup. Therefore, always make sure to keep your account in good standing.

You proactively replenish your balance, so in the worst case, you can just let the account go.


I used to handwave cloud portability. Turns out when you're shipping things and need extra services and you have deadlines, you build against the platform. I think the GP comment was probably expressing wariness of the free cloudflare tier that entices you to build against their APIs and their product shape in a way that inevitably locks you in. Sure, you could migrate, but that's expensive.

Yeah, good point. For a little hobbyist site of no importance, I'm not too worried about vendor lock-in, but that calculus changes as it gets more important.

That's the catch though. By time you're scaling, there's tension between roadway and revenue and headcount and it's the worst worst possible time to need to reachitect.

I didn't downvote it, but I don't think migrating away from Cloudflare workers, R2, D1, etc., isn't going to be that easy. Basically, the build these things from the ground up to work optimally for their infra - even the mental model that you have to use is different. If you only narrowly use one part of it, maybe.

>Cloudflare workers, R2, D1, etc., isn't going to be that easy.

And how is that related to me? My comment said (and the parent I replied to) mentioned DNS and CDN.

Now we add compute services, data storage, whatever D1 is and the other comment mentioned auth/authz

Are people not aware what CDN and DNS are?


Logically, the only thing CloudFlare would do is lower or eliminate the free usage tier. For instance, if X million operations are currently free, they make X/2 operations free. I don't think they would do that, but if they did, it couldn't possibly be existential to any viable company.

Practically, any metered supplier can put you out of business. It usually doesn't happen because destruction is mutually assured.

+1 for using smaller, more independent companies in any case!


Except for those cases where CF sales have threatened to kick businesses off the platform unless they join an five or six figure enterprise plan because they've passed some unpublished threshold.

Pushing 10TB of data on the free plan is the moral equivalent of taking 100 packets of free ketchup from a restaurant. Both will rightly get you kicked out.

> I don't like free offerings, because what if they decide to charge someday? What if someone decides "free is not feasible, we start charging $20 per instance now". > I'd rather have a low fee now, a change from $2 to $3 is more likely and that's fine for me. But from free to not free is risky for me.

With free offerings, you’re always helping the supplier in some way. Then you become the product. Which makes it difficult to understand the value exchange; it’s much easier to do so when you’re just paying a fair sum of money.


>What if someone decides "free is not feasible, we start charging $20 per instance now".

This logic doesn't hold much water, however. Abrupt changes in pricing or other conditions happen with paid tiers as well


Yes, but combine that with a small-ish provider, this will also hurt them (e.g. see Google Maps price hike). Either way, if I use a service 20x a month and it costs $15, I can handle a hike to $20, that's fine, somewhat predictable. They also relied on those customers, they can't just get rid of all $15 customers.

But if a free offering suddenly says "We are getting rid of free, only starting $899 a month baseline, because we noticed our free users aren't converting and we only want to support enterprise from now on". Well, then I have to move everything.

Still a big price hike can come, but +20% monthly is easier to stomach than if I can't be sure what will happen to the free offering.


If the rest of the market moved to $20, why would economics of another vendor moving from $2 to $3 at the same time be plausible?

While this will probably happen over time, free* offerings are an anomaly you can‘t build a business on. But even 1€/months minimum is probably too low to cover costs.

> free is not feasible, we start charging $20 per instance now

Same thing can be applied to low fees services. Look at bitwarden as a recent example, they doubled their prices overnight and hid the announcement in some useless blog post that no one reads, users found out later they are expected to pay doubles in any plan.. why? Because “that low price isn’t feasible we start charging $23 plus tax for premium now”

And the same things you will do to migrate to another when free -> paid you will do when paid_low -> paid_high if the pricing isn’t up to your expectations.

There’s no protection against this, it’s up to the business model change, investors, greed (aka scale up!), you name it, so regardless whether you are paying now or not, always have other options ready for when you need to abandon the ship.


Well said. I use bunny.net for many of the same reasons, and to support diversity of solutions in the internet ecosystem.

A change from $2 to $3 is as likely as change from $2 to "call us for quote"

If you have the money it’s good

I usually go full Symfony with my projects until I need to spread it out. But even for interactivity, I first go for htmx and Alpine.js instead of full React or so, where I then need to setup API on backend and frontend.

I think once you're deep into a project, you of course know the features needed and the constraints and you'll be more efficient the next time around.

I think the challenge is to keep working on your old legacy projects.

Plus Symfony is quite flexible on how you want to organize your code. Modular monolith, monolith, DDD, microservices, "junior developer just setting up controllers and entities".


I totally agree. At my first job, they instantly jumped towards Symfony and AngularJS. Sounds good, but they could've totally gone for something more lightweight. They DID NOT NEED the complexity AngularJS (and Angular2) brought them. When I left I tried my best to update to at least an LTS version, but I did not succeed and they did not care. I believe they're now migrated to Angular2 but are already stuck in hell


> I have a hard time believing you are a recruiter for any FAANG company.

You just said you don't believe this person, now you are criticizing them for apparently being braggy about it (which they weren't).

They want to offer services for free and you are saying "No, no one wants that here.". Who are you to talk for others? If you don't like the free offer, just move on.

There was nothing bad about the original post.


No I never said he hadn’t worked for a FAANG. I’m saying that the idea that he is a recruiter for one is not believable. They don’t use outside recruiters for full time employee roles. They may for contractors.


As German ex-football (soccer) coach Sepp Herberger would say "Nach dem Spiel ist vor dem Spiel" (After the game is before the game).


Had the same problem while trying to decide which Roborock device to get. There's the S series, Saros series, Q Series and the Qrevo. And from the Qrevo, there's Qrevo Curv, Edge, Slim, Master, MaxV, Plus, Pro, S and without anything. The S Series had S8, S8+, S8 Pro Ultra, S8 Max Ultra, S8 MaxV Ultra. It was so confusing.


I ordered the wrong xbox on amazon once. Wanted the series X, got the one X instead


Which one did you pick?


Solo Dev on my own PHP project since 14 years.

I wait 1-3 months, but then update. It used to take way longer, because Amazon's Elastic Beanstalk platform would take longer to update, but I've now changed to Platform.sh and the transition should be easier.

It has been very backward-compatible (i.e. stuff that works in 8.n also works in 8.n+1; and unless you use exotic functions or are relying on special functionality, it should work for you, too).

Once I'm at 8.4, I would slowly update the code / syntax with rector and the assistance of phpstan.

For framework updates I wait 1-2 patch versions before updating, because of composer dependency problems and sometimes bugs do still find themselves into new releases (e.g. I would wait at least until Symfony 7.2.1 before upgrading from Symfony 7.1.x).


I use Symfony (PHP based framework) and it works fine. I've been able to get into Django (Python), Laravel (PHP), Java (Spring) and even Grails (Groovy) because they either had similar concepts or even similar syntax (I mostly do web development, so this is a very biased take).

Being a freelancer, I need to focus on what's marketable. Sure, Elixir will get me into a niche, but I will have way less projects to choose from. And when I start a project for a company, if I start with Elixir, I will also have a smaller pool of devs to recruit from. It's a chicken-and-egg problem.

Nowadays, if I start a project, I would try to build on monolith and full framework with a PaaS.

Unfortunately, most projects want to start out "the right way", which means separate backend (e.g. Java), separate frontend (React), rented server (e.g. Hetzner server) and custom deployment (some pipeline an outside agency built when they first started the project).

I'd rather spend 400 USD on tools each month, but then only need 1-2 full stack devs instead of 6-8 people (1 sys admin, 1-2 deployment, 2 backend, 2 frontend) and with all the overhead that comes with it.


Do you really find Java backends to be that great?

I don't think they're intrinsically bad, and Kotlin or Groovy can be nice, but I've always found the community and lack of open source tools to be wanting.

I've found myself to be much more productive in JavaScript/TypeScript or Python, in part because of the languages, but also because the open source libraries have been way better


I have another, different oddity. Whenever my colleague and I stand up (or also sit down?) on the desk, his Dell monitor would turn black for a few seconds. I don't remember the specifics, but I think it was mostly just the two of us, when other people say down if was fine.

Even if he's sitting on a different table, the moment I sit down his screen would blank for a few seconds then continue to work normally.

I also get electrocuted easily when I use the escalator. It almost doesn't matter what I wear, so it might have to do with my skin or it's conductivity? But that's just a wild theory that would need to be checked.

Edit: Some research seems to point to the static electricity from the chairs.


If they use a docking station, there’s a known issue with DisplayLink video output from gas spring chairs causing EMI spikes that disrupt the video signal momentarily when you sit down or stand up.

> “Surprisingly, we have also seen this issue connected to gas lift office chairs. When people stand or sit on gas lift chairs, they can generate an EMI spike which is picked up on the video cables, causing a loss of sync”

The linked support doc also links to a white paper analyzing the issue. https://support.displaylink.com/knowledgebase/articles/73861...


> I also get electrocuted easily when I use the escalator.

You get shocked easily when you use the escalator.You wouldn't be electrocuted more than once.


That's true :D, thanks for the correction!

I think I was still in German mode, it's called "electric punch" (Stromschlag) if translated literally, my brain went the easy route and tried to find the closest match.


Well, one can exist on HN.


I once did that for a client of mine.

I took the WordPress-based / WooCommerce system and split it into 1) the Shopify system for admin stuff and also the whole payment system and 2) the "frontend" i.e. the consumer facing part BEFORE the payment (I used Symfony, similar to Laravel, but more modular and I was more familiar with it). Theoretically you could fetch all the product data via the Shopify API and then sync it automagically. But in the first iteration, we just copied some of the basic product data into a simple Symfony Admin backend and made a simple javascript-based checkout slide-out, and only when they were ready to pay, they would be forwarded to Shopify.

This way we would have full control of the user experience up to the point of purchase, and then Shopify would take over. I thought this was the best way I can deliver a performant website, while also being able to sleep well, because all the money stuff and all the customer data is handled by Shopify.

I was able to increase search engine traffic by 30% this way, reduce page size and increase page speeds and revenue increased significantly.

After 3 years, he decided he wanted to make it more "professional", so he fired me, I got none of the credit ("the search engine traffic must be because of better branding - and the page isn't up to my standards of aesthetics... yes, the designers who were supposed to deliver the designs kept stalling and delivered NOTHING and you had to just create something on the fly before the main selling season, and yes we had huge sales gains on the website and more traffic, but this was not because of the website"... they didn't change any of the marketing or any of their strategies, by the way.) So they hired an agency team with a project manager, designer, developer, marketing person; who then asked me to give them the source code from git so they can upload the code to their FTP server (!).

And they pretty much didn't change anything for a few years, everything looked the same. After like 4-5 years, they adjusted the design a bit, but still looked VERY similar.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

HN For You