skysight-inc/HackerNews huggingface dataset:
I too enjoy C# a lot and find Typescript close to perfect (obviously it is constrained by its relation to Javascript past, present and future).

That said, a bit more about why the I feel the I convention is unneeded and even a problem:

- If one doesn't use a powerful IDE when using either C#, Java or even Typescript there is a fair chance one is doing something wrong. (I allow for exceptions for people who are so insanely smart that they need the lack of support as a brake for their brains ;-) Powerful IDEs can tell you just fine what is a class and what is an interface.

- In what I think of as well written Java projects (and C# many projects for that matter) you'll often feel what is an interface and what is a list just by the name anyway: Javas List that you mention is a perfect example: List is the general concept of a List in Java. ArrayList, LinkedList etc are implementations of that. Once you get used to this convention it is hard to even recognize it until you sit down and try to explain it to someone.)

- Contrary, prefixing with I (typical .Net style) or suffixing with Interface (something I've seen in older Java projects) these days[1] encourages lazy naming and unnecessary duplication: If there is only one interface, just write a class and let the interface be implicit. Especially in Java, but also in C# and Typescript refactoring is so trivial (unless you are changing an external API that other people already depend on) that you can just create an interface with the same name and rename the class later if you need it; there's no reason to worry about it up front.

[1]: "these days" added as a qualifier since it used to be that certain older systems required you to write one or more interfaces for each class.
Huh. I recently built a language parser in TypeScript and it was a very positive experience. As just one example, discriminated unions for AST nodes worked great.

Always tempted to experiment again for a day or two.

Maybe that's it. I've never felt bad about settling for 95% of the benefits of static typing and slapping any/unknown on the edge cases.
They did have the one of the best keyboards next to the Sidekick 2.
Ask HN: What was Andy Jassy's college major?
Every news source just says he has a bachelors degree from Harvard with out any specifics.
The profit motive spurs innovation.
I'm confident in predicting that by the time software is clever enough to do that, TV shows will be as laughably outdated as a form of entertainment as court jesters.
Our elites mislead all the time without repercussions. We are almost at the anniversary of " 2 weeks to flatten the curve". They lied and children have suffered. No school, no human contact. And it was all proven to be a failure.
I recall reading a thread by healthcare professionals, expert in viral diseases during the onset, not sure where exactly. They were basically saying that the virus can only linger on surfaces for max 3 days. Knowing that fact stopped some of my paranoia about packages.

Articles that I read indicated that a simple cloth reduced transmission by infected person by about 50%. Humble fiber dense cotton cleaning cloth, by 70%. Multiple layers were even more effective.

My research indicated that salt would disintegrate the virus. I made my own masks and spread very fine salt made in coffee grinder on them and my gloves to improve the effectiveness.

So far so good.
- Indoor environment

- No/limited air circulation

- Mask-less

All 3 combined, put a COVID-19 carrier there, trouble.
I'll play devil's advocate here and say it's not objectively "bad". Looking at the analytics of our most trafficked sites the "tween" widths (where 960px falls) are such a small fraction of overall traffic that convincing a client to pay for queries targeting that dead zone would essentially be a non-starter.

Ideally, would every website deliver aggressively optimized experiences across all viewport widths - sure. But at the end of the day someone is paying the bills.
Speakers have gotten a lot better but at some point you’re fighting physics. If you want to move a lot of air, you need mass and volume. Most of our modern systems using a fairly similar formula to speakers from the 1960s, but we have better materials and amplifiers. For example, you can use a neodymium magnet but this isn’t really a revolution in speaker technology, it just means you can make a smaller/lighter speaker.

That said, speakers have gotten a lot better since the Dynaco A-25 came out. They cost $160 for a pair in 1969, or about $1,100 in 2020 by the CPI. You can buy a pretty damn good system for $1,100.
This is a good example of how fucked up React can be when you religiously follow 'UI is a function of state' principle.

A dialog should return a promise. Then you can mix confirmation dialog, fetch calls and so on like this:

private async doTheThing(): Promise {
try {
await Confirm("Really do it?); // Promise rejects if user presses No
const options = await OptionsDialog();
await makeFetchCall(options);
await showSuccessDialog();
}
catch (ex) {
showError(ex);
}
}

Yes, that's imperative code, which violates React principles. But it is insanely simple compared to typical React code.
The House That Bitcoin Built
"How to write cuneiform", a 100 word article that ends with " want to learn how to write cuneiform? Click here."
What's the difference between failing a type assertion vs failing a type guard? Both fail at runtime, right? So I don't understand how one would be better than another. Type assertions seem pretty explicit to me (saying you want this result to be as a certain type).
The prior history of the word is irrelevant to the point that was made about its recent usage.
I have a Titan set up with all my accounts for when My Key2 finally goes. It's beefier, but more modern.

I'm really hoping Onward doesn't botch the release of their new BlackBerry PKB. Because if that's half good, that Titan will just sit in the drawer :P
> Forgive me if I am reading too much into this, but the tagline for this article feels weird to me. It feels weird because it implies that the "worlds" of Wells, Huxley, and Orwell were without flaw.

Quite. Orwell was shot trying to save free Spain from a fascist dictatorship tacitly supported by the Western powers, lived through WW II, and before the rise of the modern welfare state experienced the poverty of being a waiter in Paris, and a tramp in England.
It's like writing

fn square(numberToBeSquared : number): number {
return numberToBeSquared * numberToBeSquared;
}

The one letter variable version of the function is perfectly readable. Most generics aren't used in a significantly complicated way. Sure, maybe if you're doing something like Haskell's lenses, then you should use descriptive names might be better, but how often are you writing

type Lens s t a b = forall f. Functor f => (a -> f b) -> s -> f t

and is

type Lens source dest gettable settable =
forall structure. Functor structure =>
(gettable -> structure settable)
-> source
-> structure dest

really any easier to read?
Here's a post 6 months ago about the distribution. https://www.reddit.com/r/nanocurrency/comments/h7fmge/the_na...

BTC isn't a tech for the commoner either. Institutional investors are swooping in and driving the price up. The mining isn't done by a bunch of people but data centers. China has a lot of influence in the network. I don't think that's a good thing.
This search will give you a list of videos:

3d nand manufacturing steps

It's a pretty clever arrangement, in this layman's opinion.
AWS has 100G in some instance types.
I think it's important to remember that TypeScripts types are there to deal with the insanity of the JavaScript ecosystem, and are not there to be Haskell.
But that is a very simple-minded take. You just have to read "Down and out in Paris and London" to notice people suffered and suffer a lot in the "perfect" western world, so Orwell didnt have to "imagine" material to describe a dystopia, London, Paris or Moscow would have worked just the same, although for different reasons. Sometimes a soviet writer had a way better life than a worker in the west. Zamyatin was part of the soviet intelligentsia, and wrote "We" as a 36 year old writer in 1920 when the USSR was barely 3 years old. And yes he did it against what he perceived was an alarmingly increase in the totalitarianism of the new regime, but it is not like he had passed 10 years in the Gulag by then.

People in the west dont know how to calibrate the experience of people in other societies, for the man in the street what really sucked was the economy, not the totalitarianism, because an argument for the same lack of control of ACTUAL political and economical power can be made for the citizens in western countries.

By the way, Zamyatin also wrote "Islanders" where he satirized, and criticized all the hypocrisy, frivolities and arrogance of the English middle classes which he apparently detested, but you rarely see that work lionized in The Guardian or here, I wonder why.
The failures so far relate to the pressurization of the header tanks and the engine performance on re-light (hard problems). I imagine these will be well solved after 100 flights.

The assumption that shifting payload is going to boggle the flight computers leading to loss of craft sounds unlikely. Both because the payload will be secured and the flight computers are more dynamic than that.

Finally, the forces on the cargo shift from 1G towards the belly during the belly flop to a mix of gravity and pressure from the engines during the flip. While the view from the window would be "interesting" - the actual forces on the payload will remain a summed ~2G from these two axes (mostly from "down") during landing. This is similar to how the lift vector while rolling in an aircraft keeps you safely stuck to the floor (and not the walls) during jet flight.

Anyone flying an aircraft or space vehicle who doesn't secure their loads is going to experience some shifting of cargo. Of course that's why you have a small cargo compartment which physically restricts the movement of potential cargo. See how 747s secure cargo in large bins within a dedicated cargo hold for reference.
while there are exceptions, most companies sell products and therefore mostly grow by selling products. That is, they grow because people think there is value to the product and fork over there hard earned money.

As such, it's pretty clear that Amazon is providing tremendous value to society.
I've always loved Ignition![0] for the perspective it gives on working with the chemistry of this stuff.

[0] https://www.amazon.com/Ignition-Informal-Propellants-Univers...
The reputation of an authority is not a rebuttal to an argument. It's simply a lazy way of of avoiding the argument by substituting the burden of proof to the identity of the authority.
Is `IThing` substantially worse than `ThingImpl`? ;-)
> We have the data now

Yeah, we have the data that 447,000 Americans have been killed by Covid. That is data.
A successful 100 Gb/s fiber broadband trial for Nokia and Vodafone
Here is my favorite footage so far, by Cosmic Perspective: https://www.youtube.com/watch?v=Ep8XJanoFgw

This is 4k slow motion and it is gorgeous. The giant sheets of stainless steel floating down at the end are noteworthy, among other details.

Michael Bay has nothing on Cosmic Perspective + SpaceX.
I had a flat CAT 6 cable and could only get 5GbE - upgraded to a normal cat 7 cable and got the 10GbE.
Ask HN: What technically allows the M1 to perform better?
I'm flabbergasted that Intel and AMD have failed so utterly and completely in every respect. These are huge companies with half a century of lead time and they're now years behind Apple's M1.

There's a lot of speculation about why the M1 is faster. What's the actual answer? It can't just be the ISA, the M1 performs superbly when running x86-64 code too. What does the M1 do chip-design-wise that Intel and AMD failed to do for their chips?
It kinda seems like your example says more about the specific behavior of the MacGPG installer than about the general reliability of macOS's package database.
The last time I checked (about a year ago) Firefox consumed less RAM than Chrome did yet was notably slower than Chrome. So I would say RAM efficiency is not the most important thing to define actual performance.
I keep hearing this, but personally fine that in the rare case I try !g for better results I don't get anything better.
Neat, seems pretty much any mistake results in a fireball.

Scott Manley and daughter have a fun song about other failures, "You will not go to space today",
https://www.youtube.com/watch?v=Ayu0GsrvKQA

I'm guessing the title is probably an allusion to this https://xkcd.com/1133/.
>The comparisons between GCP and AWS are sobering. AWS booked $13.5 billion operating income on $45.4 billion revenue and is growing at 30% YoY.

yep, AWS spent 30B and got 45B, Google spent 18B and got 13B, that is 2X+ difference in bang-for-buck. And that is without full effect of Graviton2,3, etc. which provides like 1.5x leap in perf/price and perf/energy. With Google loosing that much money one can wonder whether the bean counters there would even risk investment in their own ARM platform and without it the GCP would lose to AWS completely.

It is pretty rare for a company to successfully move down the stack as the margins are typically lower there. The GCP numbers illustrate the case very well.
I’m confused by what you are trying to prove. The issue isn’t whether people believe what you are arguing. As far as I can tell, most experts seem to believe something along these lines is most likely.

The question is whether or not they have verified it in this context.
Intel leak: 20GB of source code, chipset design and Intel Management Engine (ME)
hard to believe the police released them AND handed back their passports after all these horrible things
No one cares about the technical users. They are, by and large, irrelevant.
This discussion isn't about screenreaders or accessibility - and there is nothing to suggest that being delivered a mobile version of a site would make it less accessible by default. In fact, speaking as someone with a blind family member who has done extensive reviews of highly trafficked sites - the mobile version is often vastly more accessible than the desktop version of many top ranking sites.

All of that aside, I think you're being disingenuous in trying to strongarm this as some sort of rebuttal to parents comment.
Both are bad:

If you have Thing as the Interface and ThingImpl as the class you should probably delete the interface and rename ThingImpl to just Thing.

If you really really know multiple implementations are coming down the road you can name the class DescriptionClass (like ArrayList and LinkedList), but generally these days I'll just cross that bridge when I get there. (Always be careful when working on external interfaces though.)

Historical note: In ancient (in a web perspective) Java enterprise edition (not to be confused with modern Java EE) this style was encouraged and even enforced. Today it is widely considered an antipattern. Last time I remember a project where this was how it was supposed to be done was probably back in 2008 in a Spring/JSF project. Both Spring and JSF have changed a lot since then.
If you're building a tool used in B2B, data curation, or internal tooling uses, I highly recommend creating or finding an interface for confirmation dialogs whose invocation is as simple as `await confirm("...")`. You can even have a hook that lets you memoize and wrap a callback with this, perhaps even making it easy to condition on having unsaved changes. Have it mount in a place that makes sense in your own setup (you can use context, or it can just mount outside your main React mount if you want to cheat), with styling that matches your design system.

You want to make the friction for colleagues to use this as low as possible, so that it will be used by default for dangerous actions, without cluttering your business logic!

(Of course, in implementing such a thing, a state machine is a great choice, and OP's article covers much of the complexity you'll need, though possibly using a library vs. a reducer is overkill!)
Yea, that one felt like my college professors getting caught up on single letter variables as loop controls.

When I see a lower case single letter, I assume either a loop control or an enumerator var.

When I see an upper case single letter, it's a generic.
Laptops and desktops can have touchscreens too. When having a small viewport less stuff fits on screen and thus a different design is required, we may associate this with our smartphones but they also work for mouse/keyboard input.
welcome to the monkey house. the community behind unix has always been my favorite aspect.

many, many years ago i met dennis ritchie at the computer literacy bookstore in san jose. in the Q&A he commented that when he realized a circuit board was essentially a small network, the entire design of unix came to him in a flash. unix is an i/o multiplexer with light security.
Does anyone know of a good Kindle version?

This one [1] purports to be the Clarence Brown translation. But it bears no semblance to Brown's translation published in paperback by Penguin [2], and looks in fact to be the old version by Zilboorg.

From what I can tell, the Brown version is much better. But it's not available on Kindle?

There's a whole bunch of Kindle versions that all have terrible typography (even worse than most Kindle books, I mean).

[1] https://www.amazon.com/gp/product/B08CKCHMV6

[2] https://www.amazon.com/We-Yevgeny-Zamyatin/dp/0140185852
Yes, and that's why you're misinformed because you just observed the last few days of their denials, but why are you spreading this if you didn't observe the whole past two weeks or did some research to back up your claims?

Jan 21st, 12 days ago GME started really being pumped. Then 6 days ago they just started simultaneously piling onto silver pumping threads, along with GME. When the GME outrage started due to the buying halts on Jan. 28th, there was a huge flood of activity, and people piled back entirely onto GME that day, but at the same time reporters were combing through the previous threads, that were pumping silver, and started writing articles assuming silver was the next pump. They weren't making anything up, they're just some hours behind the top threads of WSB because of how chaotic the activity is.
Great, I'll follow up!
Doesn’t Bezos have degrees in EE and CS?
I've still got a Z22 that I charge once in a while, and it blows me away with how responsive and useful it is.

I'd probably still use it if calendar and notes sync were working. I should investigate...
> It used to be like this: You spend A LOT of money for really nice headphones and use them (potentially) your lifetime. Or hand it down to your kids as your hearing gets worse.

I have never, ever, ever known this to have happened. I’ve never once seen a 20+ year old set of headphones, let alone one that has been handed down through generations. That just silly talk.

Not to mention the fact that even if this had happened in a handful of times, the headphones would have outlived multiple cabinet sized sets of audio equipment, and several hundred pounds worth of record, 8 track, tape, and CD players - all of which wound up in a landfill somewhere. So you’ve reused the smallest component of all of that for what?
It's only normal in China because if you speak against it you and your family are disappeared. So, not really normal. The CCP can admit to a lot of bad things under these oppressive conditions.
Wikipedia reports that Han and Uighur are mutual friends socially in their home region (around 70% and 80% reported some relationships), and also notes some historical issues, but nothing contemporary. Why does China govt hate them so much, uncut version?
It seems like China ought to face economic consequences for this at least, assuming it's true (which I don't have any reason to doubt).

Hopefully Biden does something substantive, and ignores any consideration of the optics of being "tough on China" when that was Trump's thing. This and how he deals with the Myanmar coup are going to be big early tests of what his foreign policy is going to be like.

Social media companies probably have some influence one way or the other over how this plays out, but I don't have much confidence in them to consistently make good decisions absent significant social pressure. The Chinese market is big, and if access to that market depends on assisting government censorship, then they may see that as the cost of doing business.

What can individual people do? The obvious answers are to lobby their elected representatives, donate to good causes, and buy products preferentially from companies that are speaking out and not from companies that are complicit. Is there any other kind of non-obvious activism that can work?
I think that this should not be the solution. Rather, the solution should be to promote protocols which are simple, open, and decentralized (or decentralizable).

The problem is not that Twitter has terms of service, but rather, that they try to force everyone to use Twitter.
Yes of course. Please email your resume to abhay <at> homekasa <dot> io
Apple gets ~$12 billion a year for making Google the default search engine on Safari. Apple's revenues in 2020 were $274.5 billion, so this counts to something like 8% of Apple revenues. 8% is either big enough not to discount in the final revenue calculation, or small enough that they can choose to hit Google with its revocation.
I think that's certainly a valid approach, and comes with a ton of benefits. But I don't think that has to be the _only_ viable approach to use a state machine in React without having to worry about subtle synchronization bugs.

Especially since even if our endgame is to go all-in on the state machine as our only source of truth for state, we could still benefit from a smooth transition path to get there.

Using state machines deliberately for complex flows while delegating simpler state management tasks to simple useState hooks should ideally be just as robust and well supported as modeling our entire UI as a giant state machine.

At the end of the day, the state machine definition in both of these libraries is just a bunch of data, to be interpreted by some runtime that's responsible for maintaining internal state and reacting to events. Currently that runtime is a generic stateful "service" implementation provided by these libraries, but there's no reason why that runtime couldn't be some stateful service implementation built on top of React, or any other view layer with its own opinions on state management.
I don't understand how so many countries would not ban together to stand up to China. Why won't they do it? This literally seems like a modern day concentration camp without the death.
My mentor worked with drone projects in the early 80s. They flew S100 bus computers. The drone craft were at least half the size of an ultralight manned airplane.
This was genuinely horrifying to read.

Donation link for the Uigher Human Rights Project (mentioned in the article):

https://uhrp.org/support
IMO, the last 3 should really just be "be explicit when it matters".

I see more room for error with being explicit as a default than generalizing as a default.
OpenPLi – Open-Source Set-Top Box Software