skysight-inc/HackerNews huggingface dataset:
It's certainly worth knowing that Christianity, like most religious beliefs or philosophies, does not have a monopoly on empathy, kindness, or service, nor is its profession a guarantee that someone makes those things a studied part of their practice.

But the commentor's claims seem limited to Christianity as a motivator for their behavior, which is hardly objectionable and a very different thing from your challenge-reading of their words.
What's cheaper nowadays?
They say this in the first paragraph:
> follow the automaker's recommended service intervals.

If I had a Prius I might change my oil every year. I instead follow the manufacturer (Ford) provided service schedule for my car. I have a feeling the 15 year old station wagon I commented regarding at the beginning of this thread is closer to my car than a Prius.

Using a Prius maintenance schedule to be representative of the last 30 years of ICE cars doesn't make sense, you might as well compare with a lawn mower at that point.
I think making Mono and the existing .NET Core runtime 'runtime options' simplifies the confusion a lot. Unifying the standard library was already a good idea, and had been partially done anyway. The existing Mono version of the stdlib was a good effort that historically hasn't stacked up when you try to port stuff (and incrementally had been replaced with chunks of the 'you can look at it i guess and it's sort of like desktop netframework' reference sources).

I'm personally happy to see more of the .NET Core stuff end up in Mono since it usually is battle tested and has better compatibility, and I'm also happy to see more stuff approximating the existing .NET Framework and Mono workflows since .NET Core has historically been unable to do important things that netframework and mono can do.

bias disclosure: I work on Mono
Another difference is that the request/response pattern is much better suited for slow/unreliable connections and chaching.
I made a prototype of a replacement for Node.js' fs.read/write using io_uring in hopes of it ultimately replacing libuv's current threadpool implementation. Definitely promising! Many props to Jens for his hard work on this and for his helpful discussions on the API.

Benchmarks at [0] and prototype repo at [1]

[0] https://github.com/libuv/libuv/issues/1947#issuecomment-4852...
[1] https://github.com/zbjornson/node-io-uring
> I keep reading about people predicting SSDs are going to hit the same price/capacity as spinning disks, but I just don't see it with the large >10TB volumes any time soon.

To elaborate on this: $/TB varies widely depending on total drive capacity. The fixed costs of hard drive spindle motors, actuators, etc. are higher than the costs of an SSD controller and PCB. Adding a platter to a hard drive is cheaper on a per-GB basis than adding more NAND flash to an SSD, but there's a crossover point below which SSDs have cheaper price per GB and small hard drives are no longer economical to manufacture. That crossover point has now risen to encompass the majority of consumer use cases, but it is nowhere near 10TB and won't be anytime soon. That crossover point also seems to be moving upward much faster than typical consumer storage needs, so we can expect this segment of the hard drive market to continue to wither.
> My view on this narrow slice of policy is that it's better that private employers bear the full cost of supporting an employee at a reasonable standard of living

But employers just pass that cost onto the consumer. This results in, in effect, a regressive tax, because these higher prices are paid by the rich and the poor alike.

In contrast, using welfare to ensure that these workers don't go hungry ensures that the workers essentially end up with the same amount of money as they would have with the wage floor, but having the rich pay for it disproportionately (via progressive income/capital gains taxes).
You usually need to figure out what particularly is causing the strain. For instance for some strain types mechanical switches are basically out.

Meanwhile ergo split key keyboards don’t help me as my wrist strain is caused by laziness in my posture. Both standing desks and very resistant keyboards help.

All said I use a code keyboard and don’t have wrist issues. I do have shoulder nerve issues at times (especially when my lifting routine is lax).
> From a national security point of view it seems a few well placed bombs in about 10 data centers will take out most of the US computing power.

AWS has 13 US-based availability zones, each of which has, as I understand, multiple DCs.

GCP has a similar architecture with 16 US-based zones and 3 more standing up imminently.

Azure has a similar architecture, but separate AZs within regions are newer for Azure, and I can't find detailed information as readily, but they look to have 8 US regions,at least four of which are multi-AZ, so at least 12 zones, each with one or more DCs.

And that's 41 zones, many of which have multiple DCs, with just three big public cloud providers; I don't think 10 DCs gets you most of the computing power.
A minimal HTTP 1.1 client is rather straight forward. It's not asynchronous, doesn't use any non-printable characters, not fixed width, US-ASCII, etc. Adding encryption and compression complicates things, but that is true of all protocols.
Making Monkeys Out of the Sohn Investing Gurus
Probably a hold over from Trolltech's original license for Qt. Also, GPL is a non-starter for a LOT of companies.
When I'm explaining KV to a junior dev, I do it something like this:

Memcached got big during a confluence of two problems that have both been solved now. First, we had a bunch of big, semi-stateful web applications built in programming languages with GC, and server memory got bigger than you could reliably collect without long pauses. Pushing some of your data into a separate memory space raises the ceiling considerably.

Secondly, during this ten year window, ethernet cards were half an order of magnitude faster than hard drives. Putting stuff on another machine could be faster than sending it to swap, a memory mapped file, or some more sophisticated data store (like a database).

We don't have to struggle with these now, and half the time we avoid the first one altogether. They still have lots of places they are used, but you are way better off working to cache inbound requests instead of outbound requests. That lets you move a bunch of caching to the edge of your network, or to the user agent.
I hope this startup does well and can get this tech widespread across developed and developing countries. It’ll mean we can be carbon efficient with our existing ICE cars.
Well, even at present there's no guarantee the end user has the version of .net framework and libraries you need. You might need 4.8.x stuff and they only have 4.7.x. Maybe they're on win8 and not 10, or they're behind on updates, etc.

Typically the solution for this is to either sense what's installed (and use an installer) or just ship it and let the error messages help them figure out what to do.
Lockheed Martin X-33
What does "tunneled" mean in this context?
The MacBook keyboard alone is causing me to rethink 20 years of Mac preference. Fucking sick and tired of spending $4,400 for a computer with a shitty keyboard and dealing with snotty “Genius Bar” people who act like it’s my fault that the keyboard is a fucking disaster.
Which can be read also as: HTTP allows to embed arbitrary semantics with close to no friction. Which sounds like a really good point together with the tooling and ubiquity
AFAICT those Epic-acquired games will still be available on Steam if you purchased them there – though they might not get updates, fixes, etc.
Just in case, you can plot datasets larger than 5000. A quick fix is using "alt.data_transformers.enable('json')"
Amstel Gold was pretty amazing, but unless you heard differently, that was just tactics rather than any kind of 'deal'. Fuglsang played that one right - to win you have to risk losing.
How much does a USB3 tape drive + tape cost? Blu-ray disc is 50GB. 10TB hard disks cost about $180 on sale, which would take 200 Blu-ray discs.
got a source?
Only about 10 years ago, the entire banking system was on the brink or collapse and had to be bailed out - This was followed by a decade of cutting interest rates and quantitative easing which served to pump free money into the economy; most of this money ended up directly in the hands of corporations and tech startups (and the Consumer Price Index was only kept artificially low due to increased centralization of wealth).

The economy that we have today is the result of a decade of artificial manipulation by government entities - There is little real value behind the growth. All the numbers look bigger but they're more brittle than ever.
WSL2 now uses VM technology, so the performance is now a lot better.
Chapel: Parallel Programming Language from Cray
About: Capital Expenditure at Tesla

Hmm, why is it always the finance guys who proselytize about "but tech innovations will save us, don't worry", and never the scientists and engineers who will deliver those innovations? I can promise you, we don't share your optimism, and I can fairly confidently say that any "Law" based on a brief survey of social/financial science is uniquely made to be broken.
Yes, we have thought about having an "air bar" at events. Downside is we'd have to make sure it was pure ethanol. Gasoline is easier, because it can be a mix of many things that burn. Engines are much less picky than our livers.
Well, if you can get a C-compatible pointer to those functions you're already ready to go, and the inverse is true if those languages can consume C-compatible function pointers.

So from python you could probably flex to use ctypes, and from java, JNI. Naturally this is a bit awkward but I expect the mono binding tools would help smooth it over for Java (I have no idea about Python there.)
Device Agnostic Conversation Transcription Service
What do you want for lunch?

Interviews are effectively worthless for engineers. Figuring out where to eat isn’t.
I’ve done this for small projects using AWS and Scaleway.

The setup is simple and it just works, but the maintenance and security aspects were more worrying. One time I found out that one of my nodes failed to automatically apply security patches from my distro. I couldn’t detect it sooner because my monitoring was lacking. The overhead escalates fast.

If I start an effort like this again today, I would make sure to get monitoring right from day 1. Possibly a combination of Prometheus with Grafana, or something along the lines of ElasticSearch APM.
Introducing Windows Terminal
I have been using openebs (https://www.openebs.io/) at my work and its been pretty stable thus far.
Tldr "So, should you stop using sunscreen? Absolutely not, experts say"
Machine Learning and Data Science Notebooks for Different Industries
They seem to indicate that both Mono and CoreCLR runtimes will be maintained and available with different focal use cases as part of .NET 5.
> I'm pretty sceptical re claims of knowledge about complex systems, and human ecology is about as complex as systems get. So I think your statement is way overconfident.

Complex behaviour of systems often arises out of simple rules. Game theory is not always well applicable, but here it provides some simple models that explain this problem very well: multiple people forgoing individual gains in order to cooperate at getting bigger gains is a very unstable state that can be quickly destroyed by free-riders, who defect in order to reap both individual and group gains. The very awareness of this dynamic, which is something we all have as intuition even if we can't put it in "mathy" words, is enough to severely curtail the ability to cooperate. Looking through this lens, you can discover that of cultural customs and social pressures around individual behavior are really mechanisms that deter and punish defection and strive to establish an environment in which cooperation is easier.

Scott Alexander explored this topic far better than I ever could: https://slatestarcodex.com/2014/07/30/meditations-on-moloch/.
Reverse polish notation is a term used in mathematical notation for an a alternative operator syntax to the more common "infix" notation.

The article describes affixing the word "await" to methods in a programming language as a "postfix" and explicitly contrasts it with a "prefix", which is a linguistic term for affixing words, commonly contrasted with the term "suffix".
(I don't know the answer to this question) wouldn't that just mean that .netframework's last supported version of netstandard is 2, and then you have a netstandard 5 that's supported by .NET 5? I don't feel like that's especially confusing.
Continuations are a powerful thing to know, but, for promoting DSLs, I hope no one thinks they have to wrangle continuations to implement DSLs.

One way, if you're using Racket (or another Scheme or descendant), is to translate your DSL to normal syntax in Racket much like you'd write manually (and you can use imperative or only pure-functional features, your choice).

For example, were I implementing the language used by the first example in the article, I might say each assignment establishes a lexical scope, and simply translate the source syntax to nested `let` form syntax:

(let ((a (/ 1 (+ 1 7))))
(let ((b (* 2 (+ a (sqrt a)))))
(let ((c (/ (atan b) (+ 1 c))))
(+ c (* 2 d)))))

Or (since there wasn't any non-assignment code in between the assignments), how you might normally write it manually in Racket:

(let* ((a (/ 1 (+ 1 7)))
(b (* 2 (+ a (sqrt a))))
(c (/ (atan b) (+ 1 c))))
(+ c (* 2 d)))

To get to that target syntax, I might have my parser produce intermediate syntax as a kind of abstract syntax tree, such as:

(block
(assignment a (/ 1 (+ 1 7)))
(assignment b (* 2 (+ a (sqrt a))))
(assignment c (/ (atan b) (+ 1 c)))
(return (+ c (* 2 d))))

Which, in this case, is a simple translation of syntax objects to the nested `let`s or `let*` examples above.

Of course, for a real-world DSL, you might have very different semantics than in the simple example, but the above translation method still likely applies.

You might start your language implementation by typing examples in your language, then the equivalents in Racket, then the intermediate parse trees of your examples... and then Racket `syntax-parse` or `syntax-case` generalizations your parse tree syntax to the Racket syntax.

The examples you made might then be test cases for your translation.

And if your DSL is embeddable in Racket code, you probably don't need the parser at all -- you might just need a `define-syntax`, with `syntax-parse`, `syntax-case`, or arbitrary code to do the translation.
I tried to lean pretty hard into "this syntax is just like threads" in that internals.r-l.org post, when I wrote it, proposing almost exactly what you describe here. Unfortunately problem #1 is not a result of confusion or unnecessary conflation, but a fundamental question of lifetimes- the exact same problem already exists with normal OS threads just as it would with lightweight threads.

That is, a function is always allowed to hold onto its arguments until it returns. If its execution is deferred (e.g. `|| the_function(and, its, arguments)`) for whatever reason (e.g. spawning a lightweight thread or async task), the borrow checker has to consider that those arguments may stick around indefinitely.

Of course, it is 100% doable to force people to work around this just by giving future-building functions a different type. But as I described, this means callers have to add or remove an extra `.run()`/`.await()`/etc. if the API ever switches between the two. This is accepted in the world of threads, but not in the world of futures, because we already have a solution which is "just switch to a future-building function, everyone's already awaiting it."

(Personally, while I certainly see it as a real problem, I would rather we just live with it. It's not hard to work around, and we already do it in the world of threads when necessary, which is rarely.)
The first gen i5 was dual-core. Also, all the mobile i5 CPUs were only dual-core until the 6th gen.

https://en.wikipedia.org/wiki/List_of_Intel_Core_i5_micropro...
The Netflix example is a poor one. They have a friggin fleet of CDN-boxes around the world that are as locally close as possible to eye-balls. To say they are "100%" on AWS is disingenuous - they still have their own hardware deployed all around the world - just closer to the edge.

AWS is used for control-plane / management-plane tasking - but the bits are pushed from locally-peered CDN boxes at all kinds of ISPs.
This project resides in GovCloud, which is just `us-gov-west-1` right now, I believe.
"Hey guys I'm all for saving the world and stuff but I have to beat my squat PR so it doesn't apply to me because chewing beans is annoying compared to eating chicken"

This is exactly why we're doomed. Everybody wants to "save the world", everybody knows what to do, nobody does it because it's incompatible with our current self destructing life style.

No you don't >need< 140g of prot a day, you can hit all the macro/micro nutrients your body needs easily even with very low amount of meat. Who cares about gym performances, we're talking about the future of an entire planet/eco system.

> At the heart of capitalism is a vast and scarcely examined assumption: you are entitled to as great a share of the world’s resources as your money can buy. You can purchase as much land, as much atmospheric space, as many minerals, as much meat and fish as you can afford, regardless of who might be deprived. If you can pay for them, you can own entire mountain ranges and fertile plains. You can burn as much fuel as you like. Every pound or dollar secures a certain right over the world’s natural wealth.

https://www.google.com/amp/s/amp.theguardian.com/commentisfr...
Most of my competitors (who provide client-side-only libs) were doing perpetual licensing, so I followed suit. However, there IS a recurring aspect: the customer gets email support and version upgrades for only a year. Then they must renew. It's opt-in, but I nudge them with email reminders.

I've seen a number of client-side-only products that ARE subscription (like Sencha), but they seem more general-purpose, like a framework. Something developers at a company would use everyday for everything. FullCalendar felt like more of a plug-n-play widget, not as pervasive.

Maybe your product is somewhere in between. It's pretty arbitrary nonetheless.
Isnt there a ggplot2 like library out there. I remember coming accross one at some point.
It's possible to do a deep vacuum distillation (and some people do this for moonshine, etc) to get a useable fuel out. Farmers have made their own fuel from time to time doing this. The economics aren't good enough to compete with fossil gasoline though.
"Unlike conventional plastics, the monomers of PDK plastic could be recovered and freed from any compounded additives simply by dunking the material in a highly acidic solution. The acid helps to break the bonds between the monomers and separate them from the chemical additives that give plastic its look and feel."

Anyone know if any acid will work or if the solution is somehow special? Sounds like a big downside to lose acid resistance.
Looks like I am incorrect, us-gov-east exists as well. My project only has access to west right now. https://aws.amazon.com/blogs/aws/aws-govcloud-us-east-now-op...
This is a hoax.
>About 3 years ago I realized it could do this job, but it wasn’t clear that a startup could raise money for such an ambitious effort, especially one linked to a political issue (unfortunately) like climate change.

That is probably true, but unfortunate. FWIW I’m a major skeptic as to the harms of climate change, but I still find your startup very exciting. Whether or not climate change is an issue, having a renewable cost effective way to convert energy into hydrocarbons would be amazing!

I’m curious whether you’re sticking to just focusing on the energy use case or continuing to develop other use cases such as the earlier desalination. There are likely lots of areas in industry where such membrane technology would provide a useful tool in the arsenal of methods to separate chemicals.
io_uring sounds promising.

It'll be interesting to see how long it takes for Tokio to add support for it in the Rust community, and how long it takes for Go to transparently support this instead of a pool of file I/O workers.
It's not Kindle vs ... (I've tried Kobo, and seen a good range in stores). The point is that e-ink has a effective monopoly and even all the Carta (the newest ones) displays are the same color when they are trying to be 'white'. Apparently the black tends to show through a bit from the back of the cell, so I think this is a hard physical problem.

But trying to make it white again by shining a light on it is a hack, and not one that is really in keeping with the promise of the tech.

In the absence of competition, and the fact that this isn't really a very dynamic area (apparently a lot of other people are happy to read on their phones or not read at all), I'm not optimistic this problem will be fixed.
>Just imagine something like cannabis lounge where you could take mushrooms in safe setting and if you feel overwhelmed you could talk to a trained staff member. Not necessarily a psychologist, just someone who can guide you through the experience. I really believe it could unleash incredible well-being for the society.

I like idea of this, but I don't think I'd like to do mushrooms in a place like that. I tend to alternate between getting strong urges to wander and urges to just sit and do nothing and i'm not a big fan having people around not also on mushrooms. I couldn't hand sitting in a cafe like that for the duration of a trip. That would probably make it worse for me.
>It literally takes 5 seconds to understand the idiom

I understand how ternary operators work. It's still hard to read if you inline multiple ternary operators the way OP suggested is easy. It adds cognitive complexity, and hides bugs because your brain will fill the details on what it assumes it does, versus the subtleties of what it actually does.

In fact, it is obviously so confusing that to make it work someone suggested the introduction of white-space and multiple lines, as follows:

return
(a < b) ? -1 : // a smaller
(a > b) ? 1 : // a greater
0; // equal

And they still got it subtly wrong, because the semantics of their 'fix' makes it seem like it is the equivalent of:

if(a < b)
return -1;
else if(a > b)
return 1;
else
return 0;

which isn't quite true. It's actually:

if(a < b)
return -1;
else
if(a > b)
return 1;
else
return 0;

Will this make a difference in this case? No - but there is a subtle semantic difference that you have to stop to consider when you're scanning this code.
Sorry for my ignorance but how is .NET 5 different from Standard (2.0)?
I tried reading the article, but the paragraphs of npr style fluff got to me.

But from the comments it's less cheating (breaking the rules) as it was craven betrayal and fraud.
I don't know. Magic the Gathering, while flawed, is a real game that can be played with skill. These online "games" have barely any game in them at all; it's very telling that in many of them you essentially spend money to bypass the tedious parts, which is actually all there is (as well as buying trinkets, skins, etc).

If there's anything to compare these kind of "games" with, maybe it's precisely with online gambling. They are thinly disguised online gambling, which makes them worse in my book.
Even in the long term, it seems like you'd want to grab CO2 from point-sources. Sure you might need to also grab CO2 from open-air if you reach such a scale, but even at that point open-air would just be a supplement rather than the sole source (unless there's a reason to favor open-air exclusively?).

So why start with open-air capture? Just seems weird to burn cash on a more expensive way of accomplishing the same goal.