skysight-inc/HackerNews huggingface dataset:
As a gamer, I haven't really dived into Itch even though I see it recommended all the time. This is despite being a Linux gamer, a fan of indie games, a supporter of open source and a believer in multiple marketplaces (although I feel like we need better aggregators and agnostic sync/update tools).

I think the problem may be that I have absolutely no idea where to start. With Steam I started with games that came with Steam that I wanted anyway (Portal, Left 4 Dead). With Humble I started with Overgrowth and their original bundles. GOG was a great place to get games that I had already played or wanted to play and now is a good place to get DLC free stuff.

So with Itch I think what is missing is a 'killer app'. Not a 'killer feature' (it has plenty of those), but more a draw that will give me enough drive and interest to overcome the initial cognitive energy barrier to entry.

Taking recommendations!
GDPR makes it easier to get your data, but doesn’t mean you’ll understand it
Recently I've been trying out fermentation with sourdough, ginger beer, kefir and anything else I can find to try out. It has many upsides, preservation, it's healthy and it's fun. In my opinion this article goes a bit too far, it's not a religion. It's just a diet that more people should know about and practice these days.
>That is a lot different than the government itself getting into the misinformation business itself.

At most, it means someone quits working for a government agency and joins a private party to do their misinformation campaign, see "White House Plumbers," though often it is just the government involved.
One trick you could use is to add a setTimeout or asnyc/await somewhere during the recursion. By forcing a step to be asynchronous, the stack count will be reset.
These remind me of Chell's boots in Portal (in reverse?). For that matter, there's a little bit of Cave Johnson in this story too.

But throughout the article, while I was delighted by the concept, fascinated by the execution and impressed by his dedication, I still couldn't think of where his market for these lies.
When I was in India I had this thing called “idli”. It tastes amazing dipped in a soup called “sambar”. And dipped in a few pickles which they call “chutney”. Upon inqurring I came to know th at It’s made from mixing fermented rice and fermented dals. Not just the taste but it also feels light on the stomach and it feels ( I am not sure if it actually is) healthy. They also have something called the “dosa” that is like a crepe made from fermenting rice and dals. I strongly suggest trying it. Not all places in the US serve good idli and dosa though. I tried making it in my apartment but the fermentation failed a few times so I gave up.
Could your perception of depth have just changed over time?
So you're thinking the best way to defeat (for some notion of "defeat") a centralizing AI is a myriad of user-controlled AIs (even if they are hosted e.g. on AWS)?

I had never thought of this, but it seems to make sense.
Why may allopregnanolone help alleviate loneliness? (2015)
They are the only ones that can know when it's best to turn it off an on.
On the UI front, I'd be interested to see what's possible. For instance, <input type="date"/> creates a native date input. Why not the same for navigation components etc? After all, the vast majority of native apps don't need the processing power of native, they just need the UI.
G found in 31 non-Western nations: Strong evidence g is a universal phenomenon
I'd like to see a real, useful implementation of weak references, for use in value caches, or a way to manually take over garbage collection for some objects.

Basically if I want to keep a cache of expensive objects that will grow monotonically, I need to do a lot of work to make sure I'm not leaking memory right now, but if I could instead store in a Map<string, weakref>, it'd be much easier, things could go out of ref and I could deal with that.
Context: "Scientists are working on a pill for loneliness" https://www.theguardian.com/us-news/2019/jan/26/pill-for-lon...
I recognize this and am sympathetic. Ultimately changes need to come from management.

But parking in the bike lane is not necessary a large fraction of the time. I always point out a convenient alternative parking spot when talking to drivers parked in the bike lane. It's not uncommon that the alternative spot is really no worse than the bike lane for the delivery driver. The problem seems to be that many drivers don't consider more than the most obvious parking spot, and that often ends up being the bike lane.

Also, don't underestimate the number of delivery drivers who hate cyclists and intentionally block the bike lane. Having talked to dozens of delivery drivers I can say some of them seem to genuinely hate cyclists.
Leafo wrote a blog post[1] a while back about how Lapis/OpenResty uses coroutines to implement seemless asynchronous functions that I always thought was interesting. I've been meaning to play around with Lapis to see how easy it is to work with...

[1]: http://leafo.net/posts/itchio-and-coroutines.html
Re religious sacrifices, they were certainly eaten. Again and again, there is prohibition of sacrifices and the very Isaac story was a religious edict that permitted substitution of goat/sheep(?) to human child.

Indian lores of dacoits and thugeee seeking infants was likely because they were to be consumed before they got sick or had infections. Babies get a slew of infections as to develop immunity. A ‘blemishless’ baby was important.

In India, we pierce babies ears when they are mewling infants. It makes them imperfect sacrifices. In some rural parts, they dab the baby’s face with charcoal paste and it’s supposed to ward off the ‘evil eye’. But now that I think about it, it likely served to make a child look pockmarked or just ‘not perfect’ and hence less risk of being kidnapped for cooking.

In more organized religions with a priest(pre Colombian), the priest always ‘tasted’ the prized organs(heart for instance ..of a warrior because he was brave) and distributed the rest of the body.

If you see how African tribes hunt and eat..they have one hunting trip and they eat well and the rest of the time, they just subsist on fish or foraged greens and root vegetables.

Meat was never eaten in quantities like we do now. It was unheard of...so for any tribe or community, it’s a lot of food. Likely an addition with ceremonial significance to their kill.

This isn’t about the original query re humans eating other dead humans (and if I can reword it: “self synthesizing human food from humans”)...but wrt the side discussion re children and human sacrifice and cannibalism.
The New Language of Climate Change
How to write code in modern Fortran (2011) [pdf]
Starting a Company Outside Silicon Valley Just Saved Me $1.1 Million

https://blog.getcrossbeam.com/vc-arbitrage
The solutions for mazes of size 50-200 look quite like a river on a map; which is pleasant to me.
So which one would you go for if you did it again, battery or iboost?
@fasterthanlime was in the same uni I was, he basically lead a project for students in first year when he was in second year, a really impressive coder.
I would like a null conditional operator and null coalescing operator.

return data?.error?.message ?? "no error";

Also pattern matching would be a big win.
There was nothing easy to read about the callback hell that resulted in the asynchronous nature of JavaScript.

Promises made it better but that was still verbose. Then async/await was added that made code read more linearly.

There was also the unintuitiveness of how var declarations were always function scoped compared to how most developers would think that variables should be blocked scoped using let and const.

Also I understand how prototypical inheritance works and I know that the class syntax is just syntactic sugar, but it is a lot more readable.
Many people see drama at work, and commiseration is a classic way to bond with strangers.
Define bilimi ve define işaretleri
Best thing I read today. Thanks for posting. I would have been hard pressed to read it aloud.
> it would seem Waymo programmed its autonomous vehicles to treat turn signals as an indicator that the car is about to execute a turn or merge, not an indicator that it is looking for the opportunity to do so.

Well, here's one, if not the issue... I do not know the precise wording of trafic Laws in each state, but in many if not all, turn signals should _not_ be used as "an indicator of opportunity".

Now, it is already difficult to build a law abiding autonomous car; expecting the car to also break the law in day-to-day cases (not just an emergency) will be downright impossible -- and I'm not even considering the media storm that would be created by a company saying "we program our cars to break the law all the time"...
I don't think frequency stabilization would require that. Unless there is some complex approach I simply can't imagine.
No, if you read what he wrote, he said during the time he isn’t writing he would be constantly working and think about it in his mind. So practically, he works on it like a few hours a day. The writing just takes ten minutes, the design takes the rest.
Companies do bad things too (often very bad things) yet nobody thinks it's reasonable to just remove companies from society. Same for shares and shareholder culture, international franchise, etc.

Yet with unions, so many people think "Unions sometimes do bad, therefore it's just better not to have unions, and all the downsides of not having unions we'll just have to live with".
Roughly speaking, one less place where we need to use lodash.

"or will it just obfuscate bugs in the long run?"

Probably. :shrug emojii:

But more stable in the sense of turning hard crashes into UI quirks.
> Yes it makes the toolchain more complicated and it makes debugging slightly harder.

Are there ways we can help with this? Improvements we could be making to sourcemaps? Maybe we should be looking into adding new descriptors that are designed specifically to help generated code get read by debuggers? Maybe some kind of support for marking regions of code so you can run multiple transpilers on the same codebase?

I dislike transpilation in its current form, but I can think of things off the top of my head that would make it easier.

> On top of that having as a standard means you can go anywhere and just use it without worrying about which transpiler they are using.

Fair enough, there are definitely advantages to having a large set of core features. But if you look at languages like modern C++, it seems that there are also disadvantages that come along with that.

Given that the web is far more permanent than most other languages (we can never remove a JS feature), are the advantages of having one code style worth the disadvantages of not being able to test new syntax in the wild before we standardize?

There's a balance here -- I like lodash, a lot. But I don't want lodash to be part of the core language. Maybe some syntax fits into that category as well?
"Loneliness: Clinical Import and Interventions" https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4391342/ (2015)
> Isn't it far better to split these jobs out to different threads?

Not necessarily. For games one of the things you're trying to minimize is time from user input to response on screen - that has to go through your input system, your animation system, possibly your physics system, and then all the way through the renderer. You need strict control of ordering and buffering. To allow stuff to be offloaded to another thread adds latency and can make things messy to control.

For simpler games, threads here don't help. They just hurt. Extra complexity, and likely extra latency (if only through mistakes and synchronization).

For more complex games, you can often get away with just going "wide" within the game loop. You have threads, but it's not about splitting off "animation" and "physics" jobs, but instead going wide when updating animation or updating physics. It's more granular and the high level coordination still happens in a traditional game loop.

If you want to get really fancy, your game loop starts updating a graph of systems of system jobs instead of a hardcoded list of system updates. If you strictly specify all inputs, modifications, outputs, etc. you can start making it automatically parallel by walking the graph and dispatching jobs that don't conflict with running jobs.

Even then you still have a game loop, you've just offloaded most of it's work to a fancy job system. Not all - you'll probably still have some API calls that only work on the main thread hardcoded into the game loop (e.g. for pumping OS UI messages using system provided APIs that aren't thread safe).
> you have to state a reason for downvoting.

Yep, you do. I find the quality of discussions there to be worlds above HN. Downvote brigades are basically nonexistent. I don't know if it's because you have to go through an extra step to downvote someone and commentors don't want to be publicly labeled as 'troll' or 'spam', but they are doing seems to be working.
This is the equivalent without a do expression.

const func = (() => {
let result; // cache
return () => {
if (result === undefined) {
result = someComputation();
}
return result;
}
})();

You could write it without the immediately invoked arrow funciton or a do expression if `result` is in the same scope as `func`

let result;
const func = () => {
if (result === undefined) {
result = someComputation();
}
return result;
}

Result is in the same scope as func, inviting anyone to read from or write to it.

In all three examples `func` is assigned a zero argument function. That function returns the result of calling `someComputation`, but it stores the value in `result`. If `result` is not undefined `func` returns `result`. `func` is a cached, memoized, or lazy-loaded version of someComputation.

A do expression will return the last evaluated expression in it's scope, in this example that expression is `() => {...}`, not `return` because the inner anonymous function wasn't called.

---

I think a clearer demonstration of do expressions is an assigning switch or ifelse

const value = do {
switch (someString) {
case 'Monday':
0;
break;
case 'Tuesday':
1;
break;
...
}
}

const other = do {
if (isPrime(n)) {
'prime'
} else if (isOdd(n)) {
'odd'
} else {
'even'
}
}
You're aware of WeakMap and WeakSet, right? You can't key by strings, but I'm not sure you'd want to.
https://appsync.biz/dafont/ https://192168ll.onl/ https://appsync.biz/filehippo/
The digital drug: Internet addiction spawns U.S. treatment programs
Or even worse, we still a lot of the really crappy jobs. Where people have no education and very little security. Basically anything that requires some sort of community seems to be diminishing. Which is really the multiplier for human activity. Seemingly even nurses, teacher and policemen are struggling now and it is hard to deny that those professions are pretty crucial to society.
This is quite an amazing story, love the persistence and passion.

One note. Just because the patents are expiring, doesn't mean this can't still succeed. Inventors and scientists sometimes think that legal defensibility is what allows you to monetize an invention (it echoes some of the debates I've had with my father, a scientist).

Instead, well after a Chinese knockoff is in market, I could see a niche product succeed when seeding it with the right early adopter community, using just Instagram/YouTube, and having great branding.

A product category is not "done" when there's a manufacturer in the market.
What an unusual arrangement. Are you allowed to connect other things to that power source?
I understand that push notifications are being abused by many sites who just try to spam users but a good number of potential PWA's will become possible of push notifications become available. On the other hand I see Apple being worries about losing control over their walled garden if they give too much freedom to the browser.
https://tgw.onl/digitalocean/ https://tgw.onl/siteground/ https://tgw.onl/ipage/
Really? Still no way to specify argument types?
Beginner Git Cheatsheet
Types :) I tend to use underscore for just _.get or _.set these days as I have most everything else I want so having some built in way to do that would be nice but the elephant in the room here is the toolchains being built quietly behind the scenes that support web assembly from strongly typed languages with much better load times and performance. The WALT one and the oCaml React one is pretty cool but would be nice if there was an official strong-typed JavaScript version for this scenario being built as a spec.
How is operation overloading a core feature and not more syntax?
I like the infix proposal better. Operation overloading has a larger degree of obfuscation.
> Don't make the mistake of thinking one is better, or more free.

This is incredibly misguided and idiotic if original thought.

I doubt it's originality. False equivalency not just error of thinking. It's the main propaganda message of several anti-liberal democratic movements.
This year's 7-day roguelike challenge had all the entrants put their games on itch.io [0]. In the episode of Roguelike Radio [1] that covered the 7drl, they lauded itch for requiring a working download, since entrants are allowed to use any platform at all (some write in c with raw escape codes written to the terminal, some write PICO-8 games, etc), and in years pay the hardest part of judging has been getting some of the games to run at all.

It turns out people who like making roguelikes in a 7 day sprint don't tend to prioritize little things like making sure their work can actually be played.

[0] https://itch.io/jam/7drl-challenge-2018
[1] http://www.roguelikeradio.com/2012/03/episode-26-how-to-make...
quite an assumption about that bird
I know it will never happen, but something like LINQ in C#. Not just functions that iterate over collections, but the whole idea of language integrated queries where code is turned into expression trees that can be parsed and translated by providers.

For instance in C# you can take the same LINQ expressions and they can be translated to sql by EF or MongoQuery by the Mongo driver at runtime.
That sounds like a truly ridiculous patent! Optional chaining is just another syntax for the Maybe-monad, surely?

Which has been around since 1998 at least (When Haskell 1.3 added monads)
In the uk I was taught that indicators were to signal intent, not action. Signaling that you intend to merge, even if you can’t merge currently, would be the thing to do.

I guess the rationale being something to do with giving other road users an idea that you car might do something so they can be prepared if you do.
Here's the recipe I use:

https://www.byacb4you.com/gaufres-au-levain.html

Yeah, it's in French.

Thanks for the kraut advice!
Misinformation and Disinformation in Online Games
Totally agree. My complaint for this article would be that given how much time the author spent on the cultural story of pushing the working hours up it'd be good to first do the basics: 1) what is "work" precisely, 2) what are the current and historical measurements of "work" per week, 3) how's the situation when you sensibly break it down, for example by profession or salary or geography.

Don't think it is so hard that we have to just throw hands in the air and only focus on the story part.
Ay, I meant the general you, and the snark was directed to VCSes that lack an index and rebase.

You wrote this:

> > > When I worked with VCS that couldn't rebase, my strategy was simply to not commit until everything was perfect. I had a local branch. It was just not version controlled.

if I were to do that (and I have) with anything other than Git, I'd have a hard time splitting up the commits in the end. Mercurial has `hg record`, which is akin to an atomic `git add -p && git commit`. I don't think Fossil has anything even like Mercurial's `hg record`, and it famously lacks an index/staging area.

(So Mercurial has an index! but as always with Git features belatedly adopted by Mercurial, it's a pain to use in Mercurial. If you want to stop in the middle your choices are: say 'N' and commit what hunks you've accepted so far, or quit and abandon the hunk selection work you've done so far. And you don't get to edit hunks.)

> > > When I later started using git, my workflows simply became safer and easier.

Mine too.
As elegant a solution as https://en.wikipedia.org/wiki/Windcatcher towers. Millennia of agricultural refinements...
I'm Norwegian and I realised half way through that I could just read it in the original language.
By being careful? It's their fucking job!
There's also a correlation/causality question -- perhaps mortality causes retirement -- people work until they can't work, and they can live bit longer because living is a bit easier than working.
I had a large electrics/computer supplier tell me they would no longer sell my company TV's due to the fact that so many that were shipped in the southeast US arrived damaged and had to be returned. This is one of those think outside the box things that don't scale.
I'm quite aware of the definitions of both. What did you mean to say?
That is too inefficient and the problem of hydrogen embrittlement has not been solved.
There's two round trips if the read is foreign as it needs to be done twice.

But my point was supposed to be positive. Doing something like 2PC or something like it only when it's needed is a huge improvement in the "pay for what you use" vein.
Short answer: light moving backwards in time.

Long answer: Take a light detector (such as a CCD camera) and place it in front of a light source. The light source emits a "pulse" of light. What you detect on the detector is that initially there is no light falling on it, then some light, then maybe a bit more, a bit less, then eventually no light anymore once you switch off the source. A pulse of light in the time-domain is just some varying level of light that can be measured by a detector. the pulse is of finite temporal length in the real world i.e. it has a definite start and a definite end.

You don't have to do the math in the time-domain. You can take the function that describes the pulse in the time domain and take the Fourier transform of it to take it to the frequency domain. In the frequency domain, the pulse is described by a function that can extend from negative to positive infinity. Each point on this function can be interpreted to be a sinusoidal wave of that frequency, which when take to the time-domain extends from negative to positive infinity time. Obviously, its not possible for light from a source to start from negative infinity time, so this is just an nonphysical interpretation of the math. For positive frequencies, the corresponding time-domain sinusoidal wave is moving forward in time, and for negative frequencies, the sinusoidal wave is moving backwards in time.

In the real world, you can't create light pulses that are exclusively negative frequencies, but you can create pulses that have both positive and negative frequency components and then exploit those separately in clever ways.
There are lots of 40 hours a week jobs. Most of them don't pay enough to put the people that work in them in the top 15% of individual income. Nor are they, by and large, relatively low pay, but high prestige jobs like being a journalist.
I would buy a pair of these things. Assuming they don't do something pathological to your bones or your joints, these sound like a mountain of fun. But he should take heart, the inventor(s) of inline skates suffered a similar fate with respect to the patent on them.

https://en.wikipedia.org/wiki/Inline_skates
Women in Cloud Summit rallies crowd to turn the tide in tech
Sure, that makes sense in theory, but of the computer engineers I've known, they prefer one end or the other and aren't as good at either as someone dedicated to just one.

However, this is a pretty small sample size (I helped interview at a small company), so I'm not sure if it's a trend.
yeah, with proper supports in the right places, none of these shenanigans/hacks would be needed.
well, it’s no longer necessary.