skysight-inc/HackerNews huggingface dataset:
If you are using that many refs you built it wrong - from the React documentation (https://reactjs.org/docs/refs-and-the-dom.htmlhttps://reactj...

"There are a few good use cases for refs:

Managing focus, text selection, or media playback.
Triggering imperative animations.
Integrating with third-party DOM libraries.
Avoid using refs for anything that can be done declaratively.

...

Don’t Overuse Refs:

Your first inclination may be to use refs to “make things happen” in your app. If this is the case, take a moment and think more critically about where state should be owned in the component hierarchy. Often, it becomes clear that the proper place to “own” that state is at a higher level in the hierarchy. See the Lifting State Up guide for examples of this."

If you are using refs to talk to your child inputs you've made a mistake. React talks about RAISING THE STATE - for complex forms you need to make all of your inputs controlled, you need to manage the state at the highest level. You need to push those changes down to child components, none of them should have their own state.

React gives you some nice tools to handle most common use cases but you can still make less than optimal decisions.
At the moment, you are free to do so, but everyone else is free to think you're a giant pile of cow dung for doing it, and screwing over the planet in the process. Hopefully, the commons will strike bank by cracking down hard on crypto to effectively wipe out any profits and deter future schemes that emerge faster than regulators can stay on top of them.
This might sound crazy but would it make more sense for me to buy a Mac Studio instead of the new GTX40 series if I just want to dabble in some fun ML like stable diffusion? I don’t plan on training anything crazy on my own, even if I do, it’ll be fine tuning rather than scratch.
I wish there was a more open adoption of CUDA like functionality. I use an astrophography imaging tool called PixInsight and it's very parallel math heavy. It supports CUDA, and you can offload some tasks to the GPU and it makes a world of difference (computing a mask of stars takes seconds instead of 5-15 minutes). It's certainly got me locked into NVIDIA.
Scientists create matter from nothing in groundbreaking experiment
With objectively best I refer to maximizing territory. A much stronger player of course realizes they're in a technically lost position throughout most of the game, but that doesn't make resigning objectively best.
First off, don’t get discouraged by it, it happens to us all. I have 30 years of professional programming experience and I’ve used a dozen languages in depth and I find myself googling language syntax if I’ve been away from a language for a few months. Particularly “for” loops—they vary a lot between languages and it’s hard to remember which syntax any one language uses.

If you have a decent editor it should mark syntax errors as you type which is super helpful. I’ve absent mindedly typed “func” when I meant “fn” or “function” countless times and seeing it not get highlighted correctly or having the next line indented incorrectly usually tips me off before I run/compile it.
Let it fail. As a dev, they don’t have a lot of leverage over me, so deadlines are not my problem.
They will price the 4080 at $1200 to push people over the line for the 4090. After all, the performance difference for "just" $400 is quite significant.
The last thing you want to do is freak out and have a panic attack or worse.

> I've been here since 2012, and I've never felt like I wasn't just about to be fired.

Your job sounds like it sucks, are you being bullied? You sound like an engineer co-worker who was fired and then re-hired for the same position after they couldn't get someone to replace him at the same cost. So after he returned he felt that he could be fired at a moments notice when the opposite was true. And they knew that and kept the pressure on him. That was 4 years ago and he still works harder than anyone yet they still are up his ass. They know he is a quiet person who wont speak up and the manager is a hot headed gym rat who is an imposing bully so it doesn't stop.

I told them years back to fuck off and die and wound up getting a raise and as much time off as I want. Don't let those fucks bully you into feeling like you have to sacrifice yourself when they wont. They wont respect you until you fight back.

If they fire you then they didn't need you to begin with and have been fucking you since 2012. No loss, but you need the paycheck.

> When it was just "me" in the world, I could afford to be cavalier and take chances, but now I feel completely dependent on a group of people that demonstrably DNGASFF about me.

By group I assume you mean work or family? Speaking of family, do you have family near by? The modern thing to do is to split up all over and have kids with zero familial support network. Not saying it can't be done but my friends with kids and ample family support can easily do leisurely things when two sets of grandparents or a sibling can watch the kids for free without worry. Otherwise you have to pay some stranger to do it. If you are not on good terms with your family then it will be difficult.

If your family doesnt give a fuck then oh boy...

> I'm not a fast talker, my resume looks like shit, the only thing I know how to do is program, and we're about to have a baby.

You and a million others pal. Everyone goes through this shit and then some. Your skills pay bills so don't fret, you just need a change in scenery. The longer you sit in shit the harder it becomes to clean up.

> What do I do?

Don't panic. Its easy to freak out while running around waving your hands and screaming while do nothing. Its harder to sit down and buckle up. Time to fix up your resume; have friends/family/trustworthy coworkers review it and then start applying. Nothing will change if you do nothing and accept abuse.

This comment might mean nothing but I sympathize with the panic and workplace bullying.
> There are two kinds of programming languages: The ones people complain about and the ones nobody users

- Bjarne Stroustroup
I overall agree. I use functional style programming a lot but for some reason hooks have always confused me. The component classes generally make sense to me and map onto other paradigms like flutter, vue, etc.

Sure methods like componentDidMount are a mouthful but I found it much more explicit
two of our competitors have poor practice around endpoints that have opened their entire user database. What should we do?
Don’t agree about the flagging/down voting, since normally community agrees it is appropriate; also, how would the user even know that was an issue.

Do agree there appears to be degree of simp like behavior going on, which is interesting.
Counter counter point, chips break down over time even though they’re solid state. The flow of electricity through a chip will slowly degrade the metal traces inside it. At the nanometer scale, it doesn’t take much to ruin a logic gate. This is called electromigration.

You can care for that car (or chip) all you want, but chips aren’t cars. It’s a slow process, and may not happen on the timescale of mining, but it happens.

https://en.wikipedia.org/wiki/Transistor_aging

https://en.wikipedia.org/wiki/Time-dependent_gate_oxide_brea...
> Maybe it's possible to hire c++ dev and make them work on a rust project?

Maybe, but not after proclaiming to the internet "your job is obsolete".
The channels. They kicked you after a few minutes if you were root. And that made it really hard and probably quite funny to ask for help / pointers. Hey, there’s that stubborn kid again.

It’s even (still) in their guidelines [1]!

[1] https://wiki.debian.org/DebianIRCChannelGuidelines
It’s not a proxy war, because US and EU aren’t fighting at all - they are merely providing support. Compare with eg Syria, where US was actually taking part.
Nvidia CEO Unveils Next-Gen RTX GPUs, AI Workflows in the Cloud
Agreed. It's a naive view.
Ask HN: What todo app do you use?
I’m looking to replace my physical notebook daily todo lists (I know there’s something unique about physically checking tasks out on a notebook, but sometimes is not so practical so I want a good digital alternative). Is there an app out there that is really up to the challenge?

My flow is as follows:

For each day I write the date and the tasks I really want to tackle that day.

I also have a “week” box at the side with things I really want to tackle that week but don’t have a fixed day yet.

When on a given day I can’t get to a task I will put a down arrow next to it to signal it should go on the next day, then on the next day I re-write it (this would be nicely automated in an app).

Similar happens with “this week’s” tasks.

I’ve been using Apple notes for a while when my physical notebook is not at hand, is fine for the most part but not ideal.

The features that’d make an app the perfect candidate are:

1. You can with one click start writing the tasks for TODAY
2. Same as the above for the tasks of the week
3. Tasks not done are automatically carried over to the next day/week, with a label showing how many times it’s been delayed
4. Tasks can be dragged and dropped between today and this week
5. Done tasks can be hidden or showed with a label showing when they were marked as done

Let me know if you know of an app that has these features, if you’d be interested in building such an app, or if you’d be interested in using such an app.
Wait until you see some of the new motherboard prices for AMDs AM5 platform. The top end rivals that of the new graphics cards
Election “big lie” fueled a new generation of social media influencers
When you have people who depend on you to provide, how you manage risk changes.

A baby needs everything!

Frankly, you CAN take time to improve your situation, and you will need to do that.

Don't worry about being ready. Almost nobody is and those who attempt to plan it all out, prep up and the like, frequently end up refactoring all that work and planning as life happens!

Do worry about giving this your best. That counts.

Do worry about your health. Others really need you, and they really matter and that is all a beautiful thing!

Regarding your job, work it best you can. They may keep people on edge for a ton of reasons. Just do what it takes to stay in the game, but do avoid letting all that get too far into your head.

Ask for help. The other people you know are worth a lot!

Now to fun stuff. Congratulations! You're going to be a dad!

Having done it, I can tell you there is so much good fun love and beauty and all of this to appreciate. Try to get a hold of that as soon as you can and never let go.

And I would have a talk with your spouse too. You need their support. And I'm sure they're ready to give it, so get all that lined up talk it through.

And then I would lower some expectations. Go take a look at life. What you are doing what you're not, what you need what you don't, what you want, and just minimize all those things make room for having a kid, and once you get settled in and running good, build it back up then, but you can let a lot of that fall away right now and you'll be better for it.
You can’t jump ship without paying for the phone.

They lock phones because carriers are willing to pay off someone’s phone so people jump ship. It’s a pure anticompetitive practice.
The machines reboot a lot for auto tuning. Plenty of thermal cycling that happens in all temperatures. Still didn't see any issues.

PSU's, on the other hand, are mostly hand soldered in China and have all sorts of issues.
there's a few mentioned in my thesis's intro, 2.3 p.21 https://tel.archives-ouvertes.fr/tel-01947309/document but it's by no means an exhaustive reference
What archival tool were you using? I've been looking for a replacement for HTTRACK forever.
For sure, and the bike industry tricks huge numbers of slow people into vastly overspending on their bikes with no real benefit.

They basically never test these aero bike gadgets on a rider.

Aero helmets and clothes are probably the only ones that get tested on riders in a valid way.
Optimism lives on meetup type events.
+1 for Seattle.
Looking forward to this series, gonna replace my old 1060 G1.
> Our strategy is to reduce the sell-in - reduce the sell-in this quarter, next quarter to let channel inventory correct. Obviously, we're off the highs and the macro condition turned sharply worse. And so, our first strategy is to reduce sell-in in the next couple of quarters to correct channel inventory. We've also instituted programs to price position our current products to prepare for next-generation products.

-Jensen Huang, Nvidia Q2 Earnings Call to Investors. Paraphrased here: https://nvidianews.nvidia.com/news/nvidia-announces-prelimin...

JayzTwoCents has a video that speculates on what it means: https://www.youtube.com/watch?v=15FX4pez1dw

Short version though, Jay thinks NVidia's trying to reduce the supply of 3xxx cards on the market so that they can hopefully keep prices high-ish and position the 4xxx cards at a higher price bracket then the 3xxx, selling both at the same time.
(Author here.) My router isn’t a domestic router. It’s a MikroTik running RouterOS, completely unsupported by the ISP. Outgoing connections and DNS is logged. UPnP is only allowed for the Xbox, PS4, and off-most-of-the-time gaming PC. Nothing out of the ordinary in the logs.
If you're willing to handle forex risks....

If I borrow $1M in USD to buy a 11M SEK property in Sweden, and the dollar goes up, I'm drowning underwater. If the dollar goes down, I'm sitting pretty.
> React takes us forward in the sense that most of us don't want to go back to direct DOM manipulation

There was recently a demo of what a Todo MVC app might look like if written in vanilla JS with today's apis. It looks fairly decent; I could see myself going back to something like that:

https://frontendmasters.com/blog/vanilla-javascript-todomvc/
I was a huge React fan myself but when I started to use Vue and its Composition API one year ago I had tears of joy in my eyes. You have a setup function that is executed exactly once. Inside this setup function you setup your life cycle callbacks, reactive state variables and so on. This is how I wish React + Hooks should have been. Nowadays I won't even accept projects that use React anymore, exactly because of all the pain points OP mentioned.

SolidJS is following the same principle like Vue + Composition API. I think Svelte is also in the same boat. This kind of pattern is so much easier to use and reason about. React Hooks become really painful and annoying really fast.
We have had success in migrating away from React, and in fact away from client-side code altogether by building more and more of the UI of our Elixir/Phoenix backed application in Phoenix LiveView. There are still some parts of system that really need to be client-side code powered (a WYSIWYG HTML editor, for example) but now our default choice for new UI is LiveView.
Yes, there is something very weird indeed. Functional components are called every time they're rendered (that's not weird). But they have to maintain state between calls; they can't start over again fresh for each call/render (still not weird). So how do they do this? `const [state, setState] = useState(initialValue)`. You might look at that and think, I see useState being called, so it must be called on each render, so state is still not being preserved between calls.

But here's the weirdness. useState knows whether it's already been called for a given component; this is how it tracks state. The first call returns the state (the initial value) and a setter. Subsequent calls -- occurring after the first render -- do not return these objects anew, but instead reach into a per-functional-component store and return the values that already exist there. Calling the setter doesn't set the state in the body; rather, it updates the value in the store, then triggers a re-render.

If you're wondering just how react knows how to match up calls to useState between renders, it doesn't really. It simply matches them up based on the order they're called in. For that reason, you have to always call exactly the same useState calls on each render -- no putting some in an if statement or a variable length for loop, otherwise they'll be out of sync.

There are a bunch of other "hooks" for use in functional components, but they all work basically the same way: place some data in the functional component's store, then set up re-render (which, again, just means calling the component's function again) to occur when certain data changes.
Even though these GPUs are severely overpriced, you can't compare them with the console sold at the largest loss
You can use the rating computed on a shorter time period
Their lower more efficient tiers of hardware haven't just disappeared because the halo product emphasizes performance over efficiency.
Congrats on the new Amplication v1.0 launch!
I was really excited for the plugins and were looking forward to learn how to build my own to extend the platform. That JWT Auth looks like a great project starter too :-)
Doesn't seem as though I can run the QJS REPL on Windows with this yet. I thought the entire point of these sorts of projects was serving as a cross-platform runtime, but Wasmtime doesn't actually accept key input for the REPL, and Wasmer errors out with an ugly error.

thread 'main' panicked at 'not implemented: VirtualFile::poll is not implemented for non-Unix-like targets yet'

Guess I still just have to wait, but seems weird to call it 1.0.
You can't make this shit up
Carefully cultivated discourse is still abundant on HN, which is why I read this site regularly. They just aren't usually found under threads that touch non-strictly tech things like geopolitics, history, natural sciences, or lifestyle. Although I do agree the moderation needs to be more responsive in some of these situations, I have made peace with the fact that HN doesn't have 100% high quality discussion.
Congratulations! That is difficult but very exciting. I suggest praying for God's help.
> You all have also implied that we are negligent for using C. I don't know about others, but I have not been.

I’m sorry that people have implied that, but I feel most of the time when Rust people say languages like C should be retired or deprecated, are doing so because your skill and attention to detail does not scale.

Maybe you personally have advanced enough to write safe code, and you have the requisite skills and insight to avoid any and all memory bugs, such that your C code is just as safe as what Rust would compile. That’s great.

But there’s always someone starting out and they will not have your skills. They will make the use after free, null pointer deference, buffer overflows, and other issues that the C language not only allow but encourage.

So the question is: how long do we tolerate new programmers making these mistakes in production code, leading to bugs and exploits for all, when other languages are readily available that would have caught those mistakes before reaching production? C was released 50 years ago, and in the intervening time a lot has been learned about how to write programs, and what language features are desirable in enforcing those practices. We also learned that when practiced aren’t enforced, they aren’t followed. So “just write modern c++”, which is espoused throughout this thread, doesn’t work to make c++ code safer, because it’s not enforced. Not taking advantage of those lessons learned seems like folly, irrespective of how bug-free your particular C codebase is.
I believe part of the problem is they went with 24 GB gaming cards a couple years ago and the need for that didn't materialize. Hence, cold feet for launching with 48 GB because there still isn't a need for more than 12 GB and 48 GB impinges on their high margin professional market.
There absolutely are, but in his Philadelphia speech, Biden equated anyone who supports his leading opponent(s) in 2024, with being a domestic terrorist.
All excellent points. Yes, the package ecosystem has been a pain point.

We’ve turned this into a slight positive by pushing the business to allow us to make open source contributions. The developers seem to enjoy this a lot, and hopefully our work helps others in the space.
Some laws are unjust, protect rent-seeking incumbents, etc.
So far that on a CV has always meant "can write neither C nor C++"
I would say it explicitly isn't the bottom type since it doesn't satisfy the Liskov substitution principle for any actual type due to null pointer exceptions unless you unreasonably axiomatize null checks into every single property any type may have.

Basically, you need to think of Java references as the tagged union of Void + the true type. But since nobody wants to discriminate and pattern match on every reference, most java code tries to either follow a convention of non-nullability + Optional, additional type annotations with static checks beside the compiler, or "trust me, I've done this a million times".

Lack of reified generics used to bother me. Than I started passing parameterized interfaces next to instances of that type parameter to access polymorphic "static" methods of the type. This allows for up stack dependency injection into the body of the method where you would want the reified generic type without being forced to extend the parameters of the method for every use case: that is, you get a much more flexible design this way.
Is Hans Niemann cheating? – World renowned expert Ken Regan analyzes
For ML you need a card that supports bfloat16, which rules out 1080Ti, and probably 2080ti.
My iPhone 7 is more than capable. The only caveat is that I won't get the latest and greatest iOS and apparently I'm stuck on iOS 15 now unless I upgrade the phone. This planned obsolescence should be outlawed...it just leaves people vulnerable because they don't have the latest patches.
Can't wait for the Chromium team to land the new permissions GUI so that all that whining around how MV3 is the end of uBlock Origin can stop. Many here will look silly overnight when that happens.

See here: https://bugs.chromium.org/p/chromium/issues/detail?id=113549...

> We have always intended to provide support for this functionality in Manifest V3 (for both user-installed and force-installed extensions), and have been iterating on different possible approaches. Our tentative plan (which is not yet finalized) is that the Manifest V3 version of this capability will require extensions to request a new permission scoped to intercepting authentication requests, but will otherwise allow extensions to handle these requests in a similar manner to how they do in Manifest V2.

> The permission string and end user facing warning string have not been finalized yet. Also, we have not yet finalized how this new permission will interact with other permission grants, but extensions that currently have the webRequest permission and broad host permissions will likely not require an additional grant for this permission.
Been using various web component frameworks in enterprise level projects and have been very happy with them (Polymer, Lit, other custom frameworks as well). The nice thing is that since they are standards based you know that they will be around for the long haul and will have a more measured evolution.
I'd just like to point out that (1) is the same thing as losing wealth since all the wealth is essentially made up anyway. If the majority believe that the economy is strong, it is, and vice-versa.
> competing with the flood of miner cards entering the market.

Remember: don't buy miner cards and let them rot. They artificially generated scarcity thus raising the prices for everybody during the pandemic. And don't believe that a card that has been on 24/7 is safe to use. "but it was undervolted!" means nothing.
Here's a handy list of correct uses for IP addresses:

1. Packet routing

In other words, I wish services like Cloudflare were made illegal.
Talk to your lawyers.