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 | more goodoldneon's commentsregister

Because I get rewards when I use it. I always pay at the end of the month so I never pay interest


Exactly, I have 3 cards and choose the one that offers the highest rewards for each transaction. Then pay it off at the end of the month.


I use Cursor and I get a lot of benefit from its autocomplete suggestions, but its composer is horrible so I never use it. The dream of telling AI to make changes on its own hasn’t arrived


I always make sure recover is used in all goroutines I start. I don’t want a panic in a random goroutine to crash my whole server


Looks like you're being downvoted but you're right. A tiny fraction of high school students would actually care about these classes -- high school me wouldn't


I didn't care about English or Geometry either, but I still wish somebody had taught me about quarterly tax estimates for independent contractors.

Baking cookies and learning to sew was at least a nice break from studying books.


IIRC, the lifecycle hook only prevents destruction of the resource if it needs to be replaced (e.g. change an immutable field). If you outright delete the resource declaration in code then it’s destroyed. I may be misremembering though


I find this statement to be technically correct, but practically untrue. Having worked in large terraform deployments using TFE, it's very easy for a resource to get deleted by mistake.

Terraform's provider model is fundamentally broken. You cannot spin up a k8s server and then subsequently use the k8s modules to configure the server in the same workspace. You need a different workspace to import the outputs. The net result was we had like 5 workspaces which really should have been one or two.

A seemingly inconsequential change in one of the predecessor workspaces could absolutely wreck the later resources in the latter workspaces.

It's very easy in such a scenario to trigger a delete and replace, and for larger changes, you have to inspect the plan very, very carefully. The other pain point was I found most of my colleagues going "IDK, this is what worked in non-prod" whilst plans were actively destroying and recreating things, as long as the plan looked like it would execute and create whatever little thing they were working on, the downstream consequences didn't matter (I realize this is not a shortcoming of the tool itself).


This sounds like an operational issue and/or a lack of expertise with terraform. I use terraform (self hosted, I guess you’d call it?) and manage not only kubernetes clusters but helm deployments with it just fine and without the issues you are describing. Honestly, this is just my honest feedback, I see things and complaints a lot like this in consulting, where they expect terraform to magically solve their terrible infrastructure and automation decisions. It can’t, but it absolutely provides you the tooling to avoid what I think you are describing.

It’s fair to complain that terraform requires weird areas of expertise that aren’t that intuitive and take a little bit of a learning curve, but it’s not really fair to complain that it should prevent bad practices and inexperience from causing the issues they typically do.


Terraform explicitly recommends in the Kubernetes provider documentation that the the cluster creation itself and everything else related to Kubernetes should live in different states.

https://registry.terraform.io/providers/hashicorp/kubernetes...

> The most reliable way to configure the Kubernetes provider is to ensure that the cluster itself and the Kubernetes provider resources can be managed with separate apply operations. Data-sources can be used to convey values between the two stages as needed.


I agree with you (this is something that OpenTofu is trying to fix), but the way I do k8s provisioning in Terraform is to have one module that brings up a cluster, another to print the cluster's Kubeconfig, then, finally, another to use the Kubeconfig to provision Kubernetes resources. It's not perfect but it gets the job done most of the time.


this is best practice. I couldnt imagine doing it any other way and would flatly refuse.

There are shortcomings in the kubernetes provider as well that make wanting to maintain that in one state file a nonstarter for me.


The Google Cloud Terraform provider includes, on Cloud SQL instances, an argument "deletion_protection" that defaults to true. It will make the provider fail to apply any change that would destroy that instance without first applying a change to set that argument to false.

That's what I expected lifecycle.prevent_destroy to do when I first saw it, but indeed it does not.


I'm pretty sure you are. I've had it protect me from `terraform destroy`.


I think the previous post is saying a resource removed from a configuration file rather than an invocation explicitly deleting the resource in a command line. Of course if it’s removed from the config file, presumably the lifecycle configuration was as well!


Yeah, that's a legit challenge that it would be great if there was a better built-in solution for (I'm fairly sure you can protect against it with policy as code via Sentinel or OPA, but now you're having to maintain a list of protected resources too).

That said the failure mode is also a bit more than "a badly reviewed PR". It's:

* reviewing and approving a PR that is removing a resource * approving a run that explicitly states how many resources are going to be destroyed, and lists them * (or having your runs auto approve)

I've long theorised the actual problem here is that in 99% of cases everything is fine, and so people develop a form of review fatigue and muscle memory for approving things without actually reviewing them critically.


This is not a terraform problem. This is your problem. Theoretically, you should be able to recreate the resource back with only a downtime or some services affected. You should centralize/separate state and have stronger protections for it.


To be clear, it's running in TypeScript types only -- not JavaScript. Absolutely insane


Do not base your company’s tech decisions on FAANG companies unless your company is a FAANG company. Your challenges are likely very different from theirs


Everyone using React is basing their work on Facebook’s challenge!


You're missing the point of my comment.

Someone is contesting that "frameworkism isn't delivering" when we have objective data to prove that it is in fact not delivering.

The Amazon store is just a good example because there's a lot of data about it, not because it's FAANG.


What I read from what you said is “Chevy trucks are good? Oh yeah, if trucks are good, why does the post office use non-Chevy, non-truck, fleet cars?”

Please help me understand where I misunderstand


"Trucks are bad for X"

"No, trucks are good for X"

"Look at this use case (Amazon) with tons of objective data that shows that trucks are bad for X"


"Look at this use case (Amazon) with tons of objective data that shows that trucks [do not fit Amazon's use case for X]"


It seems that you're arguing that the performance requirements of Amazon are different from other sites (in e-commerce or not). Is this it?

Are you arguing that web devs should ignore CWV for e-commerce sites?


You just picked Amazon arbitrarily because it supports your argument, but there are many more counter examples where react is used, so what's your point?


And who where it’s faster and more performant? Not Pinterest. Not Airbnb. Not X. Not the Amazon competitors he showed. Not even the flipping creators (Facebook) of the framework. You all keep blaming the specific companies for their sites but can’t ever seem to show us an actual performant and good example of react usage.


I used Amazon because there's a significant amount of data to indicate React is a bad fit for e-commerce (as the OP article points out).


The Oxford comma isn't a panacea. Sometime it makes a list read like a parenthetical phrase


In every example I recall seeing where using an Oxford comma causes a problem it is because some sort of appositive or parenthetical phrase has been set off with commas.

Commas are the most common way to set off such phrases, but they are not the only way. Most grammarians seem to think that em dashes or parenthesis are acceptable, and I've seen styles guides that recommend doing that if there are commas in the sentence.

As far as I can tell if we just stopped using commas to set off such phrases when other commas are in the sentence (or just stopped using commas to set off such phrases all the time) that would get rid of all the cases where including the Oxford comma in a list makes the list ambiguous, without changing the cases where not having an Oxford comma is ambiguous.


Cue the em-dash, semicolon, colon, and parenthetical as secondary clause separators. If you still can't use the (in my opinion mandatory) serial comma without ambiguity then you need to rephrase.


I don't agree. Can you share an example?


They went to Oregon with Betty, a maid, and a cook.

Is Betty a maid or did they go with 3 people?


This could be two people, but would normally be written with a different separator: "Betty, a maid; and a cook" (just removing the comma doesn't help because then Betty could be a maid and a cook). As-is, the implication is that this is three people. If you would like to make that more explicit, you would instead re-structure the sentence†, so it's not highly relevant to the serial-comma-vs-no issue.

†For example:

Betty, one maid, and one cook.

Betty, and a maid and a cook (a little awkward)

A maid, a cook, and Betty (depends on how you want Betty's inclusion to land for the reader)


Right, you can change punctuation to clarify it. However, it doesn't change the fact that the Oxford comma could make the list readable as a parenthetical phrase.

I'm not saying the Oxford comma is bad. I'm just saying that it isn't 100% perfect as many people imply.


Three people; otherwise it should be, "They went to Oregon with a cook, and Betty, a maid."

Or better yet: "They went to Oregon with a cook, and maid named Betty."


If performance is so important for your app that `var` is causing issues then JavaScript is likely the wrong language


If the incentives for creating content decrease then where will AI source from?


AI has millions of users. Some have hundreds of millions. Those people bring data right into the AI mouth. The collective effect of so many chat sessions will surpass what we publish today, and many more people will be in the loop.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search:

HN For You