skysight-inc/HackerNews huggingface dataset:
With Ceph, and I imagine other similar solutions, you can skip RAID altogether and manage redundancy at higher level over plain disks. RAID makes sense if you specifically want to have conventional filesystem on top of it, but for object storage its not necessary.
Nix is gonna save your sanity in the long run however, compared to the ansible mess you eventually end up with.
Perhaps the process was an initial c. 1PB then sampled down to the TBs.

Text is extremely lightweight, so I suppose everything ever written is at most 1-10PB.

This is one of the illusions of text-generative NNs: a 0.5TB weight set is basically enough to store every book. Making claims to "out-sample generalisation" extremely suspicious, and indeed, fairly obviously false.

eg., Ask ChatGPT to write tic-tak-toe in javascript and you get a working game; as it to write duck-hunt and you dont.
Every newer Java application I've seen is just as dog slow as those older ones. Keycloak itself being a prime example — it was rewritten on top of Quarkus recently, and it didn't help much. You're still expected to build a second image (and maintain it — it wouldn't be a problem if you only had to it once), and it still takes 2-3 minutes to become responsive.

You may have have seen those magical Java applications that both implement a decent amount of functionality (so not just a toy), and start in a couple of seconds, but the rest of us will believe it when we see it.

I wonder how they're developed, it feels like a throwback to the punch-card era.

While I don't have much love for Microsoft, you should take a look at dotnet. Applications written on top of dotnet (even using massive frameworks like ASP.NET + EF) actually do start in a few seconds, which is at least an order of magnitude faster than anything similar in Java.
In my experience it doesn't work like that. It's like if you take an idiot and spend a bunch of time training them, they'll still perform much worse than a moderately intelligent person with much less training. And smaller models can be pretty idiotic.
Yeah it's very generous and amazing. ... although, like Andreas I have some things to figure out in terms of how to liquidate the asset.

Swedish banks really don't like crypto, to the point where I've had trouble charging for API access because I couldn't prove the money wasn't from crypto :-/

I have some old friends who are deep into that world, gonna have to see what advice they have. Still, as far as problems go, it's a nice problem to have I guess.
I am still waiting for a tool that compiles to a binary and that is run on the servers that I would like to manage.
Quite a useful change at first glance, equivalent to go’s `defer`?

If you use react, it can get a lot more interesting[0]

[0] https://twitter.com/JLarky/status/1669741878324113408
> I’m more into story driven games

I have yet to see a story as good as the Blackwell series. Perhaps you have made up your mind that indie games do not have good story lines, so you are not looking for them. I don't know.
Oh my god that hurts my eyes! That was really bright. MBP M2 16".
The article mentions that this proposal is in stage 3 for Javascript, so will probably be refined a bit more https://tc39.es/process-document/
s/rd/urse/g
This might be harsh, and may be a crash isn't needed, but clearly if there's oversaturation, it is just natural that making "indie" games shouldn't make money. It is depressing perhaps for people who want to make games which clearly is a lot of people, but you're just upset at the economics of reality.
The article seems to build on several foundations, but one is critical: That the AIs need enormous amount of data, and that that data has to be from a pool that people can now poison with AI-generated data. If that doesn't hold, nothing in the article holds.

And it doesn't seem clear to me. It may be true, but far from obvious.

For example, DALL-E, which was better than its predecessors. Was it better because of mode input data, that is, was more input data a necessary condition for its improvement? Or even the biggest reason? Reading the OpenAI blog makes it sound as if they had new kinds of AI models, new ideas about models, and that the use of data from a web crawler was little more than a cost optimisation. If that's true, then then it should be possible to build another generation of image AI by combining more new insights with, say, the picture archives of Reuters and other companies with archives of known provenance.

Maybe I'm an elitist snob, but the idea that you can generate amazing pictures using the Reuters archive sounds more plausible than that you could do the same using a picture archive from all the world's SEOspam pages. SEOspam just doesn't look intelligent or amazing.
I mean, even if the developers did everything right, that's no guarantee for success; there's a ton of competition, and a lot of indie hits are more by chance than design.
I don't know the content of that specific video, but the boundaries of what is considered "hateful" have moved way too much and are generally just up to a certain class of people to define. No matter the specifics of this case, my point stands, that the goal of these types of articles is to:

> Drive any person or company into financial ruin if they disagree with leftist views.

In the sense that it's not about this exact video, but about Elon's views and Twitter's stance on speech in general.
typescript is introducing it in a polyfill, which is going to be how a lot of people will first get to use the feature
My standard reaction to this is Batman’s city-wide sonar machine. (Not that I know anything about it)
Microcode≠micro-ops
Ask HN: How do I talk to my boss about technical decisions?
Hi everyone,

as a short background: I'm the only backend engineer at my company and mostly building out the foundation for the backend architecture and infrastructure to support future growth. My boss has great technical vision but is a subpar programmer - he works he's not too great at programming but he still does quite a bit of coding in the backend/frontend along his usual work to try to speed up development. The business is bootstrapped and there currently is no money for an additional developer.

However, the underlying architecture that he envisions and partially built out himself is very brittle and I think extremely overdone. He wants to build microservices because of scaling and throws out any data consistency and timing concerns. Almost every type of business record will get its own CRUD microservice and its own database and fetching nested records will require calling other services.

I don't think this software is ever going to go above 1k concurrent users because it is very niche and will mostly be used internally by consultants and only some external access. I want to convince him to turn this into a monolith, strip out most of the abstractions (there is a lot of abstraction on top of abstraction) because I believe we'll get a working piece of software out of the door much quicker than trying to finish connecting all the loose ends that are floating around.

My question is: How can I approach this? This thing is his baby and he thinks he'll have the need for microservices like scaling in the future. He says he doesn't want to change too many things because it's so much work re-writing some stuff and we're almost there. I think we're not almost there and building a simpler architecture out of what we have will take much less than finishing what is there.

I want to try to convince him without but I think just sending notes and bullet points might make him get defensive and less likely to listen. What is a style of writing/talking I can use to make sure he'll understand me and that it will reach him without me invalidating the amount of work he did?
If you have OSX, it's much more reliable and better option than homebrew, so there it would pay off immediately
I've found that that's mostly a fig leaf. It was the primary reason I left places. When I asked how to get the promotion and got that response, I got the promotion by moving to another company.

And of course I performed well in the new role, because it never was about performance. It was about people not expecting juniors to grow so quickly to medior, or about not having a free "promotion slot" this year, or it's just not a priority, or other organizational stuff.
Rimworld (and I'm sure Stardew will also be mentioned) came out years ago though; sure, the indie market was hopping back then too, but it's gotten worse since then.
Why is the legend on the graphs in a different order than the actual results? Why does the order change between graphs?

At best this is a mess, at worst this is an attempt to obfuscate the actual results
Great, so pay the jellyfin devs. The "free" means freedom not price and you are very much encouraged to pay for free software.

https://www.gnu.org/philosophy/selling.html
As long as we don't have to do the dipose dance (isDisposed/isDispoing booleans).
Disagree, it only applies to your walking/cyclist example.

I suspect getting hit by a bus will hurt a lot more than getting hit by a car.
That isn't even vaguely logical. It's just a sunk cost fallacy with disconnected wishful thinking as some sort of qualifier for future decisions. People are sad because they voluntarily devoted too much time in somebody's else private garden and the owner changed some rules. They wish they can sue, wish that lawsuit does not get dismissed, wish that this may provide some financial leverage, and then wish that leverage may return things to the prior status quo.

In economics you cannot regain costs that occurred in the past. Attempts to do so only incur further expense. https://en.wikipedia.org/wiki/Sunk_cost
How can we stay tuned if we can't do tuning? :P
> that ignored the studio sensibilities

I mean, it's strongly 'inspired' by dwarf fortress, so any heterodox design credit mostly belongs there
It's neat, but if I understand it correctly, if you forget to write the "using" keyword the code will still work just fine but the dispose will never be called, resulting in a memory leak. I don't suppose there is a way to mark a function as being un-callable unless you do so with "using"?
I get you, but it's both a TypeScript and JavaScript feature, and more importantly TypeScript is including it in its next official release whereas it is still not part of ECMAScript (though close, at stage 3).

So speaking specifically of a new TypeScript feature is justified here.
The article doesn't hide that, and there is something TS-specific: the information that it (that JavaScript version) will come in v5.2.

I think it's fair enough if you're coming from a TS perspective, writing TS (specifically) or blogging about it. Obviously there's overlap.
> python dependencies do not really work well

Yes, that is exactly correct.
It'll recover fast too I think.

I still don't see how it was worth it. They're not profitable, so forcing people off Apollo and onto their own app isn't a massive win financially. Marginal contribution towards fixed cost I guess. Apollo is dead so they're not giving any money regardless of API rates.

...and that's what you got for key parts of your user base thinking you're evil AF and a ton of negative PR ahead of an IPO?

Seems like attrocious deal to me.
Best? How does it compare to temporal, it looks inferior.
The problem comes from the emotional pressure to finish tickets quickly - this can be external pressure but it can also be internal.

In that case the temptation to close the ticket and skip the refactoring step can be too great.

If you're begging for time to refactor from the PM youre doing it wrong.
This article has long been debunked: http://web.archive.org/web/20210728130935/https://serpentsec...
I thought so too but it also reads like perhaps English is not the first language of the developer.

Nuances of how perfect can mean "a really nice experience" vs. "our implementation has no flaws" might not be so obvious.
I have some reservations about the specification - it looks like there are a lot of caveats to how it can be used. For example, it's allowed in for and for-of loops, but not in for-in loops. Also looks like destructuring will not be allowed.

using res = getResource();
const { x, y } = res; // ok

using { x, y } = getResource(); // error
Of course there are some successful indie games! But the only relevant thing is the probability that any one game will be successful. That chance is very small.
Discord: https://discord.com/invite/qc3RekjtuY
My point is that they don't have a mathematical meaning. They have a training-time impact, but that's more relevant when creating than using.

You'd need to know how many parameters were independently covarying for any given class of predictions. It certainly isnt all of them.

You could cite the "average dropout percent to random-level accuracy on a given class of problems" (my guess is that this would show 5-20% of parameters could be dropped).

My point, I suppose, is that users of NNs arent interested in the architecture characteristics which affect training -- they're interested in how capable any given model will be.

For this we really want to know how large the training data was, and how compressed it has been. If it's 1PB -> 1MB then we can easily say that's much less useful (but much faster to use) than 1PB -> 0.5TB.

Likewise we can say, if it's a video generator, that 1PB is far too small to be generally useful -- so at best it'll be domain-speicifc.
How is this possible? I thought deep learning models struggle with approximating periodic functions like sin.
Which is almost never wrapping at a power of two, unless you scale your coordinate system to optimise it.
well maybe you want to explicitly free it later...
Is It Possible to Use Cryptocurrencies to Buy a House?
Related: As an operator/mod/admin it's fairly straight-forward to bridge a Discord channel to Matrix (and, if one so desires, from there to IRC), allowing users not on Discord to participate. Conservative mods concerned about spam can start with an allowlist for which servers can join.

https://github.com/matrix-org/matrix-appservice-discord
This looks very useful, as it's already useful in other languages.

I found the syntax a bit confusing though. `await` comes before a promise, except in this case. I wonder what the reasoning behind the syntax was.
Some Solutions to Climate Change: Planting Trees
Whilst that is true, in neither case will it extract the full kcal, since that was calculated by completely burning the food (in a calorimeter). If you burn more than 100kcal you will not gain weight no matter what. You might still get fatter, but your total mass cannot increase if you burn more calories than you consume unless you violate conservation of energy.
> I’d be interested to know what you find terrible about the PLEX UX

1) Adding new users is harder than it should be (the sharing tab takes me to ‘camera roll’ and ‘synced content’ on my phone. ‘Manage library access’ is the correct section to go to.

2) Getting new users to watch default res (not transcode) is not easy.

3) Deleting the pinned crap that gets added every so often is frustrating.

4) Finding a particular setting when you want it is way too hard - settings are too spread out.

5) Splitting out content is irritating (eg mine versus a library shared with me).

6) The server can end up chewing up an absolute mass of storage with its logs, and app data. This is hard (impossible?) to manage from the UI.

7) Probably not a UI bug, but Plex loses the sound/video sync sometimes. Making the show transcode is the only reliable fix I’ve found. I wish I could chose to advance or regard the audio in settings while watching. Or even better, just not break.
Okay, now it is official, JS/TS becomes a C# clone ;)

no surprise considering the TS people
The Never Ending Now – Consumption
Really happy that this feature is finally seeing the light of day. When I switched my code from callbacks to promises in node 10 years ago, it seemed like the most natural thing to add that would finally resolve all the resource management fears that node has had with exceptions and error handling.

We implemented a solution in bluebird at the time that used closures (it started with a simple sketch https://promise-nuggets.github.io/21-context-managers-transa... and ended up much more elaborate http://bluebirdjs.com/docs/api/promise.using.html) but this variant is so much cleaner without all the nesting and I'm glad its finally making its way into the standard.
JavaScript is a garbage collected language, so no memory leak is possible.
Which extreme do you consider to have “won the meme spreading battle”?

Genuine question: I purposely don’t spend any time on social media or any other blog/forum that makes use of Internet “memes” so I’m blissfully unaware of what kind of content is circulated. Also, as (another) European, I try to not let myself be overly distracted by American political drama. I need to have some awareness of what’s going on in the US as it influences the political discourse in the rest of the Anglosphere (Hacker News posts like this one suffice for that level of awareness).
Non-indie games too; think Daikatana, Anthem, Babylon's Fall, Duke Nukem Forever, Shenmue, etc; all high budget, high marketing budget titles but ultimately flops.
How does it find out if the username is existing when it does not seem to send any request at all to the server?
My goto for this kind of task is moleculer: https://moleculer.services/

Fast, battle tested, vue2-like approach, great documentation, good community. The automatic indipendent-scalability as an option is usually the main selling point of these solutions, but honestly I think the real pro is the "composition" approach, which is essential if you want to keep a clean and well-organized codebase. On this regard, I found moleculer pretty great even for large teams.
Valheim is not an indie game, it is published by coffee stain studios. Now it is a small dev team, and they defiantly take the slow burn approach to development. Both common traits to independent developers. And good for coffee stain publishing to let them develop this way. But... I don't think I am being too pedantic in saying indie means independently published, and if you have a company publishing your title... you are not indie.
I wonder how does it work with destructuring? The last example extracts `connection` from the returned object:

await using { connection } = getConnection();

If you are used to Rust semantics, you'd expect that the whole thing is disposed, apart from still living objects. Reading this line I am immediately afraid that the whole object is disposed immediately (or right on the next line), the callback is called and your `connection` a couple of lines later will be closed already.
That's kind of like hitting a tree with a chainsaw, and complain it's a bad axe.
They come back eventually. I’ve deleted the crap dozens of times.
It's not really the same as defer. If you're working with a file, you have to "open" and "defer close" separately. The point of "using" is to combine those into one statement -- it's more like RAII.
Will await using actually perform the await at release, i.e. at the end of the scope? Could add an unexpected event loop tick around a curly brace (so if you schedule something after the await but before the end of the scope, it will look like the scheduled thing will always happen after dispose, but it could happen before.)
> You can unselect them. You can also remove them from your Library list later on.

They respawn.
> design guidelines that was produced, and they expected native apps to follow.

It almost sounds old-fashioned in 2023 to talk about usability, affordance, and user-experience.

Part of being a native application was/is for the application to look and behave like the rest of the user interface. Standards are important because learning how to use a tool is important. Users are important.

Software has become a way to make users miserable. Oh, and while confusing them, throw some advertising at them too. ^_^
Yeah, which makes that sentence from the article even more idiotic
Well yes, it depends on your threat level.

If you are a dissident in Iran, you really should not trust some random VPN. Tor is probably safe enough, but there is also no guarantee, that the chinese are not sharing with them, because as far as I know (but last time I checked has been some years), many nodes are china based. So they might know.

But if all you do is pirating some videos, then this is not something to worry about.
Interesting product.

This would be useful for more systems than just graphical user interfaces and frontend development.

Backend systems, distributed systems, stateful protocols and microservices are complicated and hard to think about. Raft for example.

I am working on a state machine formulation that is text based and I have an idea which I think would prevent entire classes of bugs.

The idea is that we can see the state machine as a graph and check reachability of states between state machines. If the code literally never fires the event that would cause the reachability of the next state, that's a bug.

The number of times I've been writing some code that uses threads or distributed systems and there is absence of behaviour, it's tricky to debug absence of behaviour.

I've always wanted to "see the future" from my IDE to see what state my code puts everything in.

One of my ideas is the idea of value flow tracing to detect steady state systems, systems that always make forward progress.
This awkward dance is due to destructors/finalizers calling `Dispose()`. Since JS doesn't have those, this shouldn't be an issue.
> Which widely used, existing software tools is it analogous to?

It's kinda like Docker, but without the images/containers.

Docker solves two problems: distributing the same program everywhere, and running those programs using containers.

Nix solves the former problem. But, since it doesn't use containers, you can run the Nix packages without needing to worry about mounting into VMs or containers.
Garbage collection doesn't prevent memory leaks. Nothing stops you from filling up a Map and never emptying it
Fine-tuning is coming up in the next release!

You can actually try it out on the main branch :P
Once upon a time I only manually blocked really annoying ads by blackholing them in my `hosts` file. I wanted to give the ad-supported sites I used a fair shake. I protected my privacy by setting the browser to delete new cookies on exit.

But over time my `hosts` file ended up covering every ad network and was gigantic because every major site was doing something abusive, so I just switched to an adblocker.

And since I started using an adblocker things have gotten even worse! When I see someone browsing without one the Web looks totally unusable.
> it seems obvious that what you put into your body will either have a positive or detrimental effect on your body

It's obvious in general - e.g. clearly poisonous things are clearly poisonous. Less so in specifics, as the body is good at extracting what it needs from ingested food, and discarding the rest; it works out as long as you provide the full range of the things the body needs. However, that wasn't my point.

My point is, recommending change in diet and exercise regime as a solution to problems is about as effective as telling one the solution to money problems is to study nuclear physics and then join a bank as a quant. Yes, technically it works, but people who could do this are already doing this; for everyone else, it's a near-impossible task, given the constraints of their current adult life. Getting on what's currently considered healthy diet and good exercise regime, means trying to endure self-inflicted psychological torture and having non-productive but tiring activities cut into the amount of time you have in a day/week - for indefinite time period, but at least couple months, and uncertain gains. Not many adults can pull that off. Which is why they don't, which is why "diet and exercise" is what I call "fuck-off advice". For most who try, it's bound to fail, mostly for structural reasons, and will bring plenty of pain and guilt in the process.