jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
On the memory perspective, I basically see problems in roughly the following grouping of categories:

40TBs+ -- Storage-only solutions. "External Tape Merge sort algorithm", "Sequential Table Scan", etc. etc. (SSDs or even Hard drives if you go big enough)

4TB to 40TBs -- Multi-socket DDR4 RAM is king (8-way Ice Lake Xeon Scalable Platinum will probably reach 40TBs). Single-node distributed memory with NUMA / UPI to scale.

1TB to 4TB -- Single Socket DDR4 RAM (EPYC, even if at 4x NUMA. Or Single-node Ice Lake).

80GB to 1TB -- DGX / NVlink distributed memory A100 ganging up HBM2 together. GPU-distributed RAM is king.

256MBs to 80GBs -- HBM2 / GDDR6 Graphics RAM is king (80GB A100 2TB/s).

1.5MBs to 256MBs -- L3 cache is king (8x32MBs EPYC L3 cache, or POWER9 110MB+ L3 cache unified)

128kB to 1.5MBs -- L2 cache is king (1.25MB Ice Lake Xeons L2, this article)

1kB to 128kB -- L1 cache is king. (128kB L1 cache on Apple M1). Note: "GPU __Shared__" is a close analog to L1 and competes against it, but is shared between 32 to 256 GPU threads, so its not an apples-to-apples comparison.

1kB and below -- The realm of register-space solutions. (See 64-bit chess engine bitboards and the like). Almost fully CPU-constrained / GPU-constrained programming. 256x 32-bit GPU registers per GPU-thread / SIMD thread. CPUs have fewer nominal registers, but many "out of order" buffers or "reorder buffers" that practically count as register storage in a practical / pragmatic sense. CPUs just use their "real registers" as a mechanism to automatically discover parallelism in otherwise single-thread written code.

------------

As you can see: GPUs win in some categories, but CPUs win in others. And these numbers change every few months as a new CPU and/or GPU comes out. And at the lowest levels: CPUs and GPUs cannot be compared due to fundamental differences in architecture.

For example: GPU __shared__ memory has gather/scatter capabilities (the NVidia PTX instructions / AMD GCN instructions permute vs bpermute), while CPUs traditionally only accelerate gather capabilities (pshufb), and leave vgather/vscatter instructions to the L1 cache instead. GPUs have 32x ports to __shared__, so every one of the 32-threads in a wave-front can read/write every single clock-tick (as long as all 32 they are on different ports/alignment, or you have a special one-to-all broadcast). CPUs only have 2 or 4 ports, so vscatter and vgather operate slowly, as if a single thread were reading/writing each of the memory locations.

But CPU L1 cache has store-forwarding, MESI + cache coherence, and other acceleration features that GPUs don't have.

GPUs are therefore more efficient at sharing data within workgroups of ~256 threads, but CPUs are more efficient at sharing data between cores, or even among out-of-die NUMA solutions, thanks to robust MESI messaging.
> It's just a little on the nose to be making a donation that small.

No good deed goes unpunished [0].

The irony is that if Apple hadn't given them a dime, we wouldn't even be having this conversation. Instead, they did them give them (a little bit of) money and are now being criticised for it!

--

[0]: https://en.wikipedia.org/wiki/No_good_deed_goes_unpunished
I'm not familiar with Rust's rfc / implementation / go stable flow, but I'm curious how f32::clamp took so many years to go stable
[author] Unfortunately yes. It was not the only thing happening at the time. FB had just gone IPO and this put a huge amount of pressure to grow revenue. When I joined the Ads org in 2012, it was about 100 people I think, with just a few products. When I left in 2017 it was well over 1000, and my job had changed to managing relationships with 55 other teams, all of whom depended on my teams product to ship their individual features (think Video ads, Carousel ads, hundreds of others).

So, while doing the rewrite, we had to transition from being a product org, where a few engineers built all features for a bunch of back end teams, to an infra+product team, where we built all sorts of support for all the new teams that seemed to spring up weekly.

If we had done only the technical rewrite, and not enabled all these other teams to ship their products on the UI surface that our customers actually used, FB's revenue would not have gone from $4B when I started to around $30B when I left.

These things are never that simple. I wish....
Yes, it is a side-effect - and does make the code impure; but it's an /exceptional/ flow like OOM, infinite looping, stack overflows which also break equational reasoning.

My argument is that as a programmer you /choose/ the base lemmas which you're comfortable with - with an exception you're saying for a large swathe of your code, it will assume a lemma. When is /does/ break you get to point the finger at it with a stack trace saying here is where the lemma was broken. As an aside there are nicer ways to do this ala contracts, but exceptions aren't a /bad/ way.

The equivalent of try.toOption is try catch everything and discarding. The equivalent of flatMapping without adding surrounding context is equivalent to try catch rethrowing. Both of these are /much/ too common in FP codebases.
So just to be clear you’re suggesting that we should determine access to the vaccine based on how much money you have?

This is ludicrous. The “free market” isn’t for everything.

The US is going to get enough shots in part because the companies are US companies.
I second this. WINE is fast in comparison.
> It is a requirement that businesses operating in the US accept payment in US dollars.

People and businesses in the US have to pay the US government in US dollars, but there's no law requiring that a business accept any particular currency.[1][2]

That said, if you do try to make your own currency, the feds will find some way to shut you down.[3]

1. https://www.federalreserve.gov/faqs/currency_12772.htm

2. https://www.treasury.gov/resource-center/faqs/Currency/Pages...

3. https://www.forbes.com/sites/nathanlewis/2017/04/18/what-is-...
I like the approach, but find the choice of music and the constant speaking of the instructor distressing. Nothing for me in this format.
I am not aware of anyone pursuing any.
A coworker has one of these and the missing caps lock was one of the very first things I noticed, and good riddance indeed.

It's too bad Google didn't go the extra step and put the control key back where it was before IBM did the swap.
you'll have to download and try it :)
This has to be the first real iPhone application that's actually impressed me. Something that can definitely change lives.
I haven't used a Yahoo service since the 90's.
Interesting that it is trying to create jobs in a sector where demand mostly outstrips supply, but specifically looks to exclude the lower growth sectors that often supply the bulk of the jobs that have gone missing in the last few years.
The promo video's gotta be a fake--figuring out the fonts used & fitting in the same space with perfect color, etc.? Nope.

Would like to see what it really does.
No, before that, you don't have a position called "CEO." You just have a "business guy."
An android or SDK version that could be used with a heads up display system would be impressive. If you can do more then Spanish, you should consider talking to the US Military.
Reading this article reminded me of a documentary I saw a few years back about hunters in England attempting to slow the spread of North American grey squirrels. It's an uphill battle, according to the European Squirrel Initiative (1):

The grey squirrel was introduced to England, Scotland and Ireland from North America in the Victorian era. It has colonised 90% of England and Wales and has expanded from its introduction sites in Scotland.

In Britain, it has few natural predators. It has successfully adapted to British lowland conditions. It is omnivorous, breeds strongly and is an aggressive settler equally at home in urban parks and the countryside.

Grey squirrels are vectors of the squirrelpox virus for which no vaccine is presently available and which is deadly to red squirrels but does not seem to affect the host. This research is cited as a "useful example of how diseases carried by invading species can act as biological weapons and speed up their conquest of native species.”

Squirrels are unbelievable pests where I live (near Boston, Mass.) but at least local hawks, eagles, coyotes, and cars, along with acorn famines every few years, help regulate the squirrel population.

1. http://www.europeansquirrelinitiative.org/the_threat.html
Obviously, I don't know what the author personally experienced. But since this is on the suckless mailing list, reading their philosophy[0] is probably a good starting point.

[0] http://suckless.org/philosophy
images included, try the demo, it is exactly what you get offline (except off links)
Location: United States

Remote: Maybe

Willing to relocate: Yes

Technologies:
Adobe: Acrobat, InDesign, and Photoshop

Microsoft: Access, Excel, Outlook, PowerPoint, Project, Publisher, Visio, and Word

Techniques: Business rules, Checksheets, Elicitation, Ishikawa, Kanban, Kaizen, Nominal Group Technique, Pareto, and PDCA

Writing: Audience analysis, Content strategy, Flowcharts, Memos, News releases, RFPs, Sales letters, and Training/Operational Manuals

Other: HelpNDoc, SPSS, some InDesign

Willing to train/certify as needed.

Résumé/CV: Upon discussion

Email: william@thebiggsgroup.com

Energetic, positive, and organized author of quality documentation seeks to author technical documentation for a company of any size in the United States.

I work very efficiently and enjoy collaboration with all team members. I inform the team and manager the status of each project without being asked. Learning software construction, SQL, Python, and R. Always glad to learn and certify as needed.

Inquiries welcome!
This is something that I am really passionate about.

I have a farm in the middle of nowhere in Kentucky, that I've put a glass studio in part of the unfinished side of my pole barn (I use the other side for electronics assembly, testing, and debugging) that I use for casting the blanks for grinding the mirrors.

I use a High Def projector and a 12MP DSLR camera to identify parts of the mirror that need to be ground down more and then ultimately verify that the curvature of the glass is correct.

There's an observatory about 200 miles away near Columbus, Ohio that can mirrorize the glass (it's a 3 day process), and I usually donate my last telescope to the observatory for letting me use their equipment (and I bring my own supplies).

I've attempted to make my own lenses, but, there's just too much room for error in that process.

Once I have the mirrors and lenses correctly, I've been playing around with NEMA-34 stepper motors and kflop/kstep motor controllers to power my polar object tracking -- there are usually two buttons on the telescope that I use -- one for releasing the steppers and the other for energizing and starting to track -- along with encoders so that I can get an approximation of the night sky.

I love living in the middle of nowhere, in Kentucky for the stars, and my ability to do unique farm tech (temperature and water quality sensors using raspberry pi's and mesh networking, GPS and yield sensors on my tractors, solar powered wifi repeaters to my 'city home' for fast internet).
Thank you very much for that helpful link. If you submit it as a new submission to Hacker News, I'm sure I will not be alone in being glad to upvote it to main page visibility.
Most American cities have many neighborhoods that aren't laid out to be accessible by non-automotive means. But that doesn't mean we should have zoning codes that require that to be the case always and forever, and that doesn't mean new neighborhoods should be built in the same way. American population is shifting and expanding, and we will have to significantly rebuild our cities over our lifetimes— we should rebuild them wisely!

The fact that $200,000 houses sit on $800,000+ worth of land in Silicon Valley means that, if policy were changed to allow reasonable density, Silicon Valley would quickly densify to the point that walkable neighborhood retail and mass transit would have a lot of customers. And mass transit needs a lot of customers to run at a reasonable frequency.
And, um, Mac OS X applications.

I know that may not seem like a big deal but many major applications people care about seem to have first appeared on Mac OS / Mac OS X (yes, these are two very different things).

BTW: namespaces?! Not exactly my go to checklist feature for languages.
Couldn't this effectively be "Sublime Text 4," written from scratch using ST3's proven approaches? I honestly have no clue, I just want to believe.
"And don't waste money (as an early startup) on filing for trademark protection - because US trademark law respects common law use (ie, if you used it first, you are protected, even if you didn't file for protection). Registering your trademark does nothing if someone else (with more expensive lawyers) was using it first and can demonstrate that use."

Agree with most of what you are saying.

But with respect to the above paragraph doesn't incorporate the strategy
of why you might want to register a trademark even if protected by common law. Some animals
are more equal than others.

First, the cost. This can be done without a lawyer by just paying
the USPTO fees. So we are talking about $375 (or $325 in the case of certain marks) per category. I've both hired lawyers and I've done this myself as well.

Anyway back to strategy. It gives you a leg to stand on. That's very important
in terms of how the other side views you. You have taken the time to register
and therefore the other attorneys will give that some thought when they
are confering with their client as far as how to proceed. [2] Enough that,
in my opinion, and from my experience [1], it is worth the trademark filing
fees. (There are attorneys that will do this for $1000 all in by the say
if you don't want to diy.)

[1] The leg to stand on principle is something that I have used before
several times. In one case I was able to hold off the NCAA (they have big
lawyers, right?) and in another case a billion dollar defense contractor.
And in lots of small cases. Now this doesn't mean that you will execute
as well as I do when doing this but I'd like to point out that it is certainly
possible. (My expertise is strategy to the point where I can usually get
lawyers that are working for me to agree with my way of doing things that
contradicts even with legal precedent.)

[2] Meaning you could potentially extract a pound of flesh or concessions
(see NCAA in [1]) just from that leg you lean on.
There are companies working on growing omega-3 using algae.
I have done benchmarking on a linux laptop. Once you disable turbo-boost you get quite consistent results for CPU-bound tasks at least.
One thing I am wondering is why there apparently exists no easy to use quasi-standard for a GUI library in Common Lisp. At least none that I am aware of.

And I do not see any technical reason for that - my experience is that Clojure, for example, can easily be used in combination with Java's Swing, and Racket has a quite complete and well-integrated GUI library.

Is there any non-obvious technical difficulty for making fully integrated GUI bindings to GTK or Qt5 toolkits?
Over christmas we had a look at the GCHQ christmas quiz [1]. The idea is that you solve a set of small puzzles, each producing a letter, which then become labels of the nodes of a directed graph, and you have to find a Eulerian path through the graph (visiting some nodes multiple times) which spells out a festive word or phrase.

We solved two or three of the small puzzles, but couldn't get the rest. I wondered if we could solve the overall puzzle without knowing the letters, by exploiting the structure of the graph: perhaps there are simply not many words or phases which could be produced by the graph.

Enumerating the possible paths through the graph was straightforward (there are a few hundred, i think). Matching those paths against individual words, if you have a word list, is easy. But where i was stumped was matching them against phrases containing multiple words. Trying every possible sequence of words, even lazily assembled, felt like it would be a combinatorial explosion that i would never be able to get through.

Using a corpus of phrases from wikipedia is absolute genius.

[1] https://www.gchq.gov.uk/news/christmas-card-2020 - note that the edge with a double arrow is really two edges, one in each direction
The government will continue to amass power against the people under the guise of "public health". Just like every other virus in the history of mankind there will continue to be variants. Every new variant and mutation will create a new public health crisis that the government must attempt to control. America is no longer the "home of the free" as we are daily losing our freedoms in the unattainable goal of "public health and safety".
This is a awesome Project!

Is there a way to backup encrtypted?
This would be a killier feature!
Net positive in economical sense, sure ethically it's wrong that the Dutch are stealing tax money from other countries.
Seems an ideal use case for SVG.
>>[Governments use gold to make] their creditworthiness believable

> this not backing ?

It's the opposite. Originally you said "Gold Market is backed by Governments". This is governments being (partially) backed by gold.

>> look at how little gold China stores

> by metric tones china is on 6th place in world, what do you mean ?

Their economy is the largest in the world. How much smaller are their gold holdings, compared to those in first place?
GPS doesn't have to only be used by cars.

Save your breath for useful activism such as electric cars, cycling and renewables. Shaming people for having a good time is pointless and counterproductive.
People are disagreeing with the author, not because they didn't necessarily read the article, but because they don't agree about how things should be defined.

At the root, this is a disagreement about semantics and philosophy, not about git itself. I'm going to refer to Aristotle here: we think we have knowledge of a thing only when we have grasped its cause, and there are four general 'causes' [1]:

- The material cause: 'What is it made of?'

- The formal cause: 'What is the ideal of this thing?' , e.g. what's its abstract nature?

- The efficient cause: 'How did this thing come to be?'

- The final cause: 'What is its purpose?' How is it actually used? What role does it play in the world?

Here we can see that commits are used (at least in the git internals) as 'snapshots' — they refer to bytes, not changes in bytes. That's pretty close to the formal and efficient causes — the abstraction inside of git is closest to a snapshot, and that comes from the history of what Linus wanted when he wrote it.

But! The underlying storage uses deltas (which are diffs) to save space. That's the material cause.

But also, when we actually use commits, git often creates diffs for us as a convenience (cherry-picking, rebasing), and hides the fact that they're snapshots under the hood (final cause).

So there's an inherent tension between the different ways to answer 'what is a thing?'. For commits, this is especially bad, since there's an even split between 'causes'.

This tension never goes away because the most useful definition really depends on the context.

[1] https://plato.stanford.edu/entries/aristotle-causality/#FouC...
The "memory", or more like "relevant state" is spread across lots of hardware pieces. It's not just RAM. Saving all RAM blocks is indeed easy. Consider the RAM of the graphics card as an example, it can have lots of complicated structures stored by the running programs.
I love your landing page. Accessible, well-balanced... you clearly have garnered a degree of frontend experience to complement the work on the backend
This kind of thing is what eventually kills off Brewer's Yeast. The individual yeast cells keep making sugar into alcohol until the alcohol concentration is so great that they kill each other off.
> There is no operator precedence. A bare a * b + c is an invalid expression. You must explicitly write either (a * b) + c or a * (b + c).

Honestly I've often wished for this in mainstream languages. It seems like operator precedence should go the way of bracketless if and implicit int casts. (Though I wonder if they wind up making exceptions here for chains of method calls? I guess technically those rely on operator precedence sort of?)

Edit: Yeah I see the example code has "args.src.read_u8?()". So it looks like they figured out how to keep the good stuff.
> really well designed distributed system

Since you're an expert in this area, and I am lazy... :)

What makes it well designed? What are the top 2 or 3 things it does to make it a really well designed system?
On the topic of address questions, I went through a form on Fidelity that disallowed post office boxes from being supplied as an address. At the time, I lived on Newport Way, and the "po" in Newport qualified as a PO box.

So, for a while, I lived on Newp0rt Way.
I thought the sessions were under NDA. Only for a week?
You can solve this with decentralization. Mastodon, for example, is a public square, but no owns it. This is "protocols over platforms" as a sibing comment mentions.
Pakistan is also world leader in https://en.wikipedia.org/wiki/Pottery
I agree there should be a right to private capital- to an extent.

But the fact you think a right to obtain billions of dollars and control the labor of 10 of thousands of workers is a fundemental right- when housing for the poor isn't- I think again goes to my point we've evolved to care more about high status rulers than ourselves. (I mean that literally, tribal humans or proto-humans murdered or outcompeted with less tribal humans at the whims of their tribal leaders and we are the result.)

Anyway I am under no illusions that we are going to have a change in policy and stop caring about aristocrat's feeling more than our own well-being (Donald Trump is sad, let's storm some buildings you guys. Jeff Bezos treats warehouse workers bad- but he needs to be able to do that cause it would hurt his feelings if the workers ran the company instead.) So there's no reason to debate it other than intellectual fun.
Why do you think Element is not ready for grandma migration?
I was very tempted to reuse a Maven repository for publishing the handful of small Python utilities we had. It's a standardised format, we already had the server set up, we already had different kinds of artifacts in there and multiple languages, and frankly Python-on-Maven dependency management can't be worse than what standard Python dependency management looks like.
What a patently absurd statement, especially if you consider our national history. We didn't live in a strong two-party existence until relatively recently and we still have (not enough) independent members in congress.

Political parties were quite literally decried by the founders and as we have now almost completely been polarized in a two-party system we have reached this level of disfunction.

This is unacceptable and both parties have been responsible for shutting out third-party candidates.

All people are subject to the rule of law of the land, whether you think it is just or unjust. You have the right to vote for whoever you want but you don't have a right to do whatever you want. Democrats haven't taken over the federal government. They were voted into office, just as several republicans/whigs/federalists/anti-federalists/literally whoever.

This is the process. This is the reality. This is America.

Choosing to reject both the facts and reality doesn't change this.
They had weapons (lethal and non-lethal) and decided not to use them, even though they were well within their right (and probably duty) to do so.
Based on today's event, why would you think that they wanted to stop these rioters? Security was taking selfies with them.