skysight-inc/HackerNews huggingface dataset:
Getting DDoSed is rare but highly destructive when it does happen if you happen to use something like Netlify. GitHub Pages is under fair use and only for personal projects (no commercial uses). For commercial use, something like Cloudflare Pages would be better. Cloudflare can also help with their whole suite of tools with mitigating attacks and they will call you if you do exceed the free tier according to this comment: https://news.ycombinator.com/item?id=39520894.
I cant decide whether I think this is supremely evil or just mad genius. Supremely evil mad genius maybe? :o)
Interesting article.

It will be interesting to see how the 'cloud-native' solutions evolve.

eBPF really is a game-changer across a lot of areas of compute and networking.
I think the screen is cool and all but I am really bugged by the idea of a touch keyboard. That's the one thing I never want in my notebooks. :/
Finally, I could use _actual_ wallpaper as the desktop background ;)

While the display doesn’t have very good obvious advantages in actual use, that would be cool enough to use just because it’s possible :)
The Deeper Problem with Google's Racially Diverse Nazis
wouldn't that be easily solved by prettier?
This beauty dies with the case you have to put on all that unprotected glass.

Jobs would have had a wallop of a joke for this one.
Yes, it's basically a kind of RAII. The FFI needs to add the data as a GC root whilst it's holding a reference to it, and release it when it's done. There are papers discussing this explicitly for the case of Ocaml, though I don't have a formal reference right now.
I feel that compared to the beautiful examples of train station lettering this looks very generic.
If you are interested in ancient Greek "robots" then I can recommend the book Gods and Robots: Myths, Machines, and Ancient Dreams of Technology by Adrienne Mayor.

See also: https://press.princeton.edu/books/hardcover/9780691183510/go...
I don't disagree with either of your points, but when I learned Rust, those points about borrow-checker vs graphs in the cycle were entirely clear after looking at the first few tutorial lessons on the borrow-checker. Maybe day 2 of learning Rust for me.

And coming from C++, Rc is not such a foreign concept compared to smart pointers.

Coming from C it might be a bit more of a foreign concept I'll admit.
I think your last objection is either incorrect or at least an uncharitable/incurious read of GP.

What do we mean by "good investment"? When I use that term, I generally mean something close to "someplace I can put my money and have it grow faster than inflation".

In that sense, something that is a "good investment" will tend to get more expensive over time in real dollars (by definition).

If housing is affordable at some moment in time and is a good investment, it will increase in real price until it becomes unaffordable at some moment in time. This argument is the fundamental reason that it's bad economic policy to try to make housing into an investment, but rather to have policies that tend to make it a poor investment, in order to preserve affordability.
I understand that you need to pay bills, but auto-billing over the bandwidth budget just isn't OK, or at least not unless the user specifically configures that that's OK. I for sure didn't understand your bandwidth tiers that way.

You can avoid this sort of bad press and disgruntled users and your support cost by just giving users the option to shut down the site once the bandwidth budget is up.
I had a couple of orphaned static sites on Netlify. Just deleted them, and won't put anything else on there now.

Now I get that this is their 'product'—selling hosting to high traffic customers, and I don't particularly begrudge them charging whatever margins they think are suitable for their product and let people make their decision.

But no mechanism to cap maximum spend is completely ridiculous. Even if you require a minimum cap of say $5/$10 dollars, as long as it's clear and transparent, I think that would be reasonable.

Anyway, this has scared me into never trusting Netlify with anything any more.
On Linux: https://www.borgbackup.org/
Can you make it so it takes my beautifully arranged imports and mushes them together using brackets and commas? Oh wait..
https://archive.ph/ejx8K
Artificial intelligence needs a scientific method-driven reset
Blender Open Movies. Featuring all the production files, assets, and artwork
And, you can use DAX inside Excel with PowerPivot.
Completely agree about the prep. It's not a modern phenomenon either. Even 1960s mainstream influencers like Julia Child were showing people how to peel and incise the stems, pan fry with butter, salt and olive oil oven roast, serve with various sauces, etc.

What changed is the marketing around home cooking. Now everyone aspires to be their own private chef. It's understandable for people living in the mid-20th century western world to see all this as a bit pretentious.

The goal back then was just to get a decent healthy meal on the table. Any flourishes such as adding bacon, duck fat, or whatever else were likely seen as unhealthy, inaccessible, or just plain weird.
Yes, cloud services have inflated both bandwidth and amortized hardware costs to absurd levels. You pay for not having to know what to do in order to run something online. Until it breaks.
You can't just force a python programmer to start coding in java without mental health support.
> It's currently our policy to not shut down free sites during traffic spikes that doesn't match attack patterns, but instead forgiving any bills from legitimate mistakes after the fact.

That doesn't square with the 5% fee on the original $104k that your company told the OP to then pay.
To be clear, not every entrance has exactly this. It's probably always a white square with a black number, but the font can be different, etc.

I looked it up. Of course we have a law for that: https://gesetze.berlin.de/bsbe/document/jlr-GrNrVBEV3P4

The sign has to be visible at night, coming from both directions and needs to be at least 10cm large... That's basically it.
wait, you're not running a linter on save?
Agreed. The change seems simply clickbaity.
It is. I vouched for his comment here.

If you have showdead enabled you can see the other comments he's made. Won't be visible if you're logged out.
But that's not what's happening: they aren't keeping a full host for you.

Your argument is like saying that a bus traveler costs the gas needed to power the bus, but it's never the case: the bus would be cruising no matter what. And symmetrically the VM host would be up no matter what you did with your instance.
Two additional suggestions:

1. Test your backups. I see no testing procedure described, and although maybe the author's scripts have spot checking beyond what is described in the article, code will only ever catch the cases it was programmed to expect.

Manual testing does not have to be frequent or extensive, but making sure the backups are still recoverable and complete (take five minutes to spot check some old and new files) every six months helps ensure no silent issues are occurring

2. Less importantly: use append-only backups to an independent system. While ransomware for consumers is comparatively rare these days, it would give me peace of mind. The author's deposit box mostly fulfils that purpose, but whether it gets filled with bogus data or wiped by the malware is a matter of luck in timing (with the odds heavily in their favor due to the irregular connection of the drive and the existence of another computer that the malware probably isn't programmed to expect).

Of course, "append only" is a bit of a misnomer because eventually you'd run out of space, but the system should independently delete old data rather than being able to command it remotely (from the potentially infected system) to wipe anything. Restic has docs with considerations for data deletion in an append-only setup (disclose: I helped write them), which are also relevant if you don't use restic because they describe the method more than the specific implementation: https://restic.readthedocs.io/en/latest/060_forget.html#secu...
Show HN: I Built a Sticker Generator
I thought it was absolutely genius but I will never admit it.

But seriously, if anyone is to maintain code like this, this will force the lowest possible cyclomatic complexity.
Without internet we can go back to the bronze age quite fast.
"to inculcate fear" is an essential part of that definition. Using bombers to drop bombs on a sleeping city is terrorism. Dropping bombs onto an undersea cable is not.
That is important feature if you want to use it within Rust code-base.
I don't think React is approachable. It is just the most popular framework and has the biggest ecosystem, that is why it is used. Otherwise it is just not good in my view compares to others.

Also I don't think useMemo or useCallback were a reasonable compromise ever.
If it's not something super critical in my experience the simpler solution is better for longterm or fool-proof backups.

E.g. if I use some special backup software that creates incremental archives or whatever, and then I die... My family would have absolutely no idea how to access that data. While with a normal NTFS partition and data on an external HDD they could just plug it in some PC and look at the family photos.
My setup :

- servers and laptops (laptops : except /home): restic to local minio instance + rclone to B2 storage

- /home of laptops : kopia to b2 storage
Let's say you're trying to control the x,y,z coordinates of a robot arm. It has three pivots. Rotating the third pivot can increase or decrease x depending on the first two.

That's a complex, multidimensional, nonlinear system (albeit with relatively simple dynamics). PID won't do it, since you don't even know which way the PID terms should go. There are approaches which mix PID with other methods, though.

A lot of analog systems too, such as some audio amplifiers, use more complex control techniques simply because they achieve higher performance. If you want low distortion, you need a lot of gain in your feedback loop. Most use rather simple controllers, but some go very fancy.

Some have complex linear dynamics. A system with a right half plane zero means that if you push right, the system goes left than right. That's very difficult to control. An example (called a boost amplifier) works like this, in analogy:

You have a bucket of water. You can either turn on a spigot to fill the bucket at a fixed rate, or one to empty it from a hole in the bottom (so at a rate proportional to how full it is). You'd like water to come out at a given rate. What is the ratio of time between filling and emptying?

- In the short term, if you empty for less time, less water comes out, because duh.

- In the long term, though, ALL the water which goes in must come out. If you empty for less time, you fill for more time, so it gets fuller, water pressure goes up, and more water comes out.

The above is actually completely analogous, mathematically, to how a USB device might take a 5V power rail and make a -12V power rail from it. You connect an inductor to 5V, charge it up with a current, and have it drive the -12V rail down.

If you're controlling more complex systems, you might have a mix of all of the above: nonlinearity AND complex dynamics.

Is your nick accurate? If so, you should already know this.
Can't help but agree. It's very hard, even for experienced developers, to understand what is going on with hooks.

Even knowing why they are needed requires a deep understanding of what is happening.

Definitely feels like complex implementation details leaking upwards and influencing the public API.
I used to work with a fella that wrote code similar to this. To him, code seemed to be a scratchpad, a place to jot down ideas and try them out. Once an idea worked out, he shipped it. Done.

Impossible to maintain, but damn if he couldn't churn out some quality works. Bug laden, sure, but the core ideas were great – at times even brilliant. There was a certain beauty to the chaos.

Prettier wasn't around then, and code for matters weren't much of a thing at all really. Can't help but think if that would've helped or stymied his process. Certainly would've helped the rest of us though!
I don't think it rules out monogamy, but I think our current assumption of it is flawed. Just because modern humans largely practice it, doesn't mean humans always have, or that Neanderthals did. Bonobo monkeys, for instance, are infamous for being very promiscuous. And today, lots of people are experimenting with "open relationships". I think there's a good argument that monogamy was invented mainly after the rise of agricultural and larger human societies (rather than small tribes) as a way of providing social stability. In a village/tribe of 50-100 people where there's no real concept of money, private property, or land ownership (and probably no/rare STDs since the group is isolated), there isn't much need for it if promiscuity is socially accepted: why bother chaining yourself down to one partner permanently if you don't have to? People might temporarily concentrate on one partner for emotional reasons, but this doesn't equate to a lifelong commitment with the threat of becoming a social outcast if you have sex with someone else.
This is what sticks out to me about the situation. I would much rather a site go offline due to service overage triggering at some limit that I set - simply relying on the good faith of a host to subjectively waive fees is not reliable nor does it instill confidence that I won't be financially ruined by malicious third parties (like nearly happened here). I would imagine that the good faith of Netlify in this case would mean very little to a court when there is a contract that stipulates costs for services, and the worst case scenario for a user is that Netlify could take the issue to court with the contract the user agreed to and demand full payment. Even the possibility for this situation to occur without any tools existing to prevent it is terrifying and is a terrible value proposition for a service.
One-time payment or a recurring plan?
And flagged. Honestly wondering why.
Yeah, I agree. I live in an EU country where firing people is normal... It's also the country with lowest unemployment rate in EU.
I rented many different places over the years, as I was moving around in my younger days (and certainly didn't have enough money to buy new furniture, let alone an entire house to shelter in).

It seems odd for people to not consider the highly beneficial aspects to some tenants of a useful/viable rental market existing.
I wonder if his Dark Island Strategy would also work for lan-multiplayer, or maybe even steam-multiplayer (maybe via steamemu?). Maybe it's enough to setup some good firewall rules before starting.
A.K.A job security.
Thank God for social media that the user was able to get attention about this on Reddit which he was then advised there to post this on HN. It must have been stressful to see a six-figure bill and then get told that that, no worries, you’d ‘only’ be charged $5k instead for a static site. It’s just ridiculous to me to be sent a 6-figure bill in the first place.
But it is a terrorism. By cutting cables you literally can decimate the whole international network for a bunch of countries. Basically for example cut the access to any server outside of intranet.
> Easy to say when you've positioned yourself as one of the 100m that gets to
live

"gets to live" is not the correct way to put it. If birth rates keep going lower, everyone gets to live their life just fine.

But over the long haul, population goes down as people die of old age and younger generations are smaller.
Maybe one should use something like energy-based out of distribution detection to prevent LLMs from making bold statements even when the confidence should be low. https://arxiv.org/abs/2010.03759
React was closer to elm during the times of stateless functions and redux. Since then it's getting further apart from elm.

Redux was kinda of a poor man's elm but it got the right principles. However the JS community hates boilerplate code so, new, more complicated abstractions appeared. Also, it was too easy, with redux, to shoot yourself in the foot.

Since then, with hooks, things are just getting harder and more complicated in my opinion.
Same boat here.

the fact that once it arrives to the limits does not display an error page.

At this point I honestly do not care about they changing their policy, they should have thought that a normal person receiving a 100000$ bill on a free tier shall not been at all on the table in any circumstance, even if they forgive the bill, nobody needs to stress out like that.
>Thats incorrect. Greek may not have been their main language, but most of educated and especially noble Romans spoke it

I wrote:"The Eastern provinces yes [did speak Greek]. The emperors however, when Byzantium was established did not"

The official language of the emperors and the state was latin, until Heraclius, 3 centuries after Constatinople was established.

Emperors spoke Latin regardless of whether they knew Greek as part of their cultural education. And some only had a more basic grasp, or were versed in ancient Greek (to read the relevant literature) more than colloquial late antiquity Greek. Constantine for example had a basic command of Greek, but still needed translators for anything official.
> Most games in Unity are pretty small, or unfinished.

By that reasoning, aren't these games the majority of the market and therefore the engine is a good fit for it - starting and working on arguably smaller indie projects and such, as opposed to some hypothetical huge game, of which there are decidedly few? I think that's why Godot is also a pretty good engine, even aside from it being open source, even if the features aren't all that mature - it's easy to iterate in it, even faster than in Unity.

I found some stats: https://steamdb.info/tech/

Unity has 42160 games.
Unreal has 11701 games.
GameMaker has 4498 games.
RPGMaker has 2939 games.
PyGame has 2273 games.
RenPy has 2213 games.
Godot has 1170 games.

All the other engines together have around 6000 games.
Here I was starting to think 2 USB (platter) drives and the occasional rsync -uavPi is too much.

All power to the author, that's a hell of a set up.
There is a common phenomenon that when viewing people belonging to other social groups, people get described using generalized labels. When viewing people belong to ones own social group, they get described as non-generalized individuals.

Is it systemic racism, or individual poor performing police employees who do a bad job? Are there systemic sexism, or individuals in managements that act unprofessional?

Usually it is both. In the wrong culture individual people are allowed to do a bad job, and in many case rewarded for the wrong metrics which only further reinforce the wrong culture.
Terrifying. Just deleted all of my Netlify sites.
The case must absolutely be noted,

but the article itself is another case containing instances of the shocking confusion between "truthfulness" and "pedantry" ("avoiding being faithful to facts is if it were just pedantic").

You certainly can produce objective, fair representations.
> When I talk to younger people now in CS, the enthusiasm seems to be split for 'pure researcher' types and 'entrepreneurial/builder types'

In my view the pure research types who land jobs have always been maybe 1%? UW is research heavy, don’t forget. And at the time I was at Microsoft almost no one had plans to quit and start their own company. Before I started there in 1996 I figured about 80% would—-an early indicator of how distorted my view was from press reports and my own biases. It seems to me that these days the vast majority are happy to be drones. Or am I way off?

In my time most of the employees were very smart students who just kind of fell into programming and were hooked in by Microsoft’s pioneering efforts at sending recruiters to colleges (rare at the time) and especially less-obvious choices such as Waterloo and Harvard.

What kind of shareware did you publish?
cloudflare has a blogpost that kind of explains a bit on cost of bandwidth https://blog.cloudflare.com/the-relative-cost-of-bandwidth-a...

(from 2014, so it might be super outdated)
Exactly, and to me that's the genius part. I feel almost dirty for kinda liking it.
Yes but it's having a goal that makes you metaphorically hungry in this analogy, otherwise we wouldn't be eating dogfood.
Author: describes a simple setup which probably puts him in the top 0.1% of personal users in terms of resilience to data loss.

HN: nitpick about potential problems which are present even in some industry grade data loss solutions.
Thanks! Couldn't find it in the sites metadata.
2. is obviously what should have always been the case, but it's good news to hear you've now gotten there. Every single hobbyist website would always choose downtime over a hundred thousand dollar charge.
Unfortunately things aren't so simple, as when doing JIT compilation, LuaJIT _will_ try to shorten the lifetimes of local variables. Using the latest available version of LuaJIT (https://github.com/LuaJIT/LuaJIT/commit/0d313b243194a0b8d239...), the following reliably fails for me:

local ffi = require"ffi"
local function collect_lots()
for i = 1, 20 do collectgarbage() end
end
local function f(s)
local blob = ffi.new"int[2]"
local interior = blob + 1
interior[0] = 13 -- should become the return value
s:gsub(".", collect_lots)
return interior[0] -- kept alive by blob?
end
for i = 1, 60 do
local str = ("x"):rep(i - 59)
assert(f(str) == 13) -- can fail!!
end
There were rumours that the following year would be the year of Linux on the desktop. It had just taken, and was taking, the server world by storm.

Windows 2000 was really important for MS staying relevant in anything outside consumer. It really set up the next two decades.
Regardless, at the end of the day, budgets still need to be followed whether you're an individual or a business. It's simply insane in the first place that someone on the free tier would want absolutely no downtime regardless of how high the traffic is. For that, it would make sense for such an individual to be already on an Enterprise plan if they do expect it to likely happen and for which many do not.
Even more so if you have houdis drones buzzing around.
React like angular seems to me very much a solution from a bygone time. The time when internet was slow and expensive.

I find very little reason for anyone, except services in the insta scale, to actually use this abomination, since CSS and html deliver the same user experience with plain SSR.
I haven't thought it through completely, but it could start out as basically dall-E but for 3d meshes. Then what would be really useful if it could faithfully represent some specs you give it. Dimensions, shape, etc. Imagine all the specific instructions someone who knows a lot about gears (but nothing about how to use CAD) could give as a prompt. All these specs should be followed faithfully. It should be able to create any arbitrary gear you describe to it. Gears are just one simple example but you get the idea.
>I'm not sure what your point is? The eastern provinces were part of Rome.

My point is those places had centuries of Greek-speaking established, and they spoke Greek.

I literally start with the point: "The Eastern provinces, yes [did speak Greek]", confirming the parent's ascertion that "they were speaking Greek the entirety of their time in the Roman Empire though?".
The newish `useReducer` is basically redux but tied into react like in elm.
What's good for the goose is good for the ganter.

Science needs an open-source reset, cannot read this article proclaiming how science will fix AI problems.