skysight-inc/HackerNews huggingface dataset:
Continuations are different than concurrency. A continuation is useful for modelling a process that operates independently. You may or may not want the continuations to be running concurrently. One of the earliest uses of continuations in programming languages was in simulation and modelling.

Imagine that you want to model a quarry. You have a pile of rocks, a rock crusher, a pile of gravel and a whole bunch of trucks. A truck takes a rock from the rock pile. it gives it to the crusher. The crusher works on the rock for a while and outputs some gravel. A truck takes the gravel to the gravel pile. You want to simulate different ways of scheduling the trucks so as to be optimal.

You could write your simulation so that you update every object in your system at every time stamp, but that's really complicated and it also makes it really difficult to collect statistics about processes. Another way is to create a kind of "process" for each action in the system and a "resource" for each thing that could be used in the system. You then write the code for each process as a continuation and you request resources, blocking when they aren't available. Your overall simulation loop is very simple: it runs a single continuation until it requests a resource, and then it blocks. It then runs the next continuation until it requests a resource. Then it blocks. You just keep doing this, unblocking continuations when the resources become available (and all other continuations' simulation clocks are passed its current clock).

The nice thing about this is that you need no concurrency at all -- or you can have a concurrent thread of execution for each continuation. The latter will obviously run faster, but that's not necessarily the point. The point is that the code was dramatically easier to write.

For some kinds of simulation, a million continuations is not unreasonable at all. In fact, for a lot of applications it would be great if you could have a lot more.
If an article was posted by $random_internet_person about a car that exploded with "some details changed", where necessary context is missing (e.g. what the car company did in the aftermath to ensure it doesn't happen again), then yes, we should withhold the name of the company until a fuller picture is available. It's not ethical to go about blaming and shaming unless you know for a fact what happened and the context surrounding the incident. And unless you're Rachel, you don't.
I did 8 months contracting for $large_uk_enterprise and it was exactly like that. I tolerated it for so long because the money was good and I thought I might be able to learn some useful lessons.

I got told off more than once for showing initiative and pushing something forward that wasn't on the approved list for the sprint even though I had time and there wasn't anything left to pick up.

Yes, mobbing fans, I know, I could have jumped in on a story that already had people working on it. This is what management there said to me as well.

Nevertheless I'm rather old fashioned so I have two comments to make:

1) Too many cooks... etc.

2) Adding more people to a project/story that's not going to deliver on time will only make it later. (Here I'm obviously paraphrasing Fred Brooks.) And if it's going to deliver on time then why add more people instead of enabling those people to work on something else that's useful?

In the end I gave notice without any plan about what to do next but had three opportunities lined up before I'd worked my notice period and have been much happier since.
At what price will Bitcoin make Satoshi Nakamoto the world's richest?
You can always avoid that with a private server though.
You can easily have millions of coroutines on the JVM with Kotlin coroutines:
https://kotlinlang.org/docs/reference/coroutines/coroutines-...
I don't know that I am going to trust google's consumer product offerings anymore. Inbox became central to my life, now this. I am now going to operate under the presupposition that a google product is not a reliable product.
Urbanization and Sexuality
I don't know if it's fair to call that "the Haskell approach", per-se. That destructors are not guaranteed to run, or run predictably, is generally a property of all fast garbage collectors. If you want a GC that can run quickly, which in a language like haskell where you're going to get lots of small allocations in contexts it would be difficult-to-impossible to efficiently determine the exact moment scopes die, or get the programmer to, you absolutely do, then one of the costs of that is you can't afford to run code for every destroyed object.

The linked post is interesting, because I didn't realise "RAII is a much better way of managing resources than destructors" was controversial. It absolutely is, RAII is fast, predictable, and flexible. It's also one of the tradeoffs some languages make to achieve more flexibility in their design by enabling performant automatic garbage collection that doesn't require perfect escape analysis.
I've got a separate google account for pretty much each google service I use. Which isn't much, the only one of value is my android-account that manage my app-store purchases.

Unfortunately, yes, it is trivial for google to link the accounts together. But I truly doubt they would do that, and they can not be certain that just because they are used on the same device that they have the same owner.

But the trick is to not store anything sensitive on any of them. If google started require a phone number linked to the accounts I'd quickly investigate the option of generating dummy (but not one-time use) numbers. And if that fails I'd just stop using those services.
The 1:1 mapping is just an implementation detail of of current JVMs. Originally green threads (with an M:N scheduler) were used instead. IIRC they weren't even guaranteed to be preemptively scheduled, I don't know if this has changed since.

Technically os threads are also simply continuations.
Some would argue that it still is.

https://blog.erratasec.com/2015/03/x86-is-high-level-languag...
Lot of us are estranged from our partners. I would say only this: Even if things are very bad, a thought of them dying will make you wish that you could have done something different while both of you were still breathing. There are no arguments with death.

This is a beautifully written piece.
I just watched a nice documentary in German television about it.

The Salmon industry in Norway is a huge billion dollar industry, labor costs there are high so it's dependent on technology.

It's profitable, but also very competitive and every small edge increases it. The ingenuity of optimising every step is inspiring.

It's also in the bigger picture pretty ethical, it satisfies the demand for fish without destroying the natural ecosystems.
The job where I lasted the longest (4 and a half years) is where I learned the most, but it also screwed me wages wise as I was promised promotions that never happened. Job hopping is a pain in the arse but does tend to improve your wages faster than sticking it out ion one place.
If I ever get dementia, put me on a steady diet of psilocybin.
I'm probably being picky, but I would also include that the CLI be a self-contained binary. I'm tired of managing Python / Ruby / Node versions.
I wonder, what is it that you do? From an interdisciplinary standpoint.
My dad also doesn't really distinguish between blue and green. It's mostly green to him. And he grew up in Italy...
The higher level the language the more code is actually generated by the language for the purpose of implementing services provided by the language and the more the underlying system is abstracted.

There is therefore a trade off and obviously the lower level the code the less suited high level languages are.
I agree with your point in general, but in this case all we have to go on is Rachel's account of what happened, which was posted to illustrate a particular point and is probably missing important context. I'm not saying the company isn't deserving of a public shaming, I'm just saying we don't know if it is deserving of a public shaming because all we have to go on is one person's humorous/scary anecdote with "some details changed". Posting the company's name at this point seems premature.
> The thing is that, in Haskell, even when you attach a function to run during destruction, the runtime doesn't guarantee that the function will be called promptly, or even at all.

There's also no guarantee for Rust/C++ destructors to be called. It's certainly less of an issue then depending on the GC to being called, but if you need absolute correctness, then you shouldn't rely on the destructors.
AFAIK when a goroutine "calls write" (on a channel or on a socket, stream, mutex etc).. and the write "is blocked" it yields the execution and the scheduler can activate something else.. which can be a reader goroutine (after all the writers are blocked for example). So there's no deadlock as long as you have at least one reader for any writer.
Sure, the tech boom in SF didn't help, but this wasn't just all kind of tech Yuppies moving into the neighbourhood; it's also a lack of community care for the homeless, as well as a tacit acceptance of the misbehaviour of the homeless people which allowed to the problem to progress to the point where it is now.
yes I tried to sneak in °C via °K :)
I believe this is why recently Twitter reverted the change and now allows you to browse in chronological order.
Ask HN: how much does it cost to crawl 1M sites?
What is the cheapest api or other solution ?
How much more does it cost to crawl sites with javascript ?

thx
What every front-end developer should know about change detection
>say, intimate private sharing, or the antithesis of the narcissist fest) and build up a loyal core of rabidly passionate users

Kind of describes Google Wave in a sense - private collaboration and passionate users. But it couldn't expand out of that niche set of users/use-cases.
Use one channel per neighbor and have a wait all primitive that wakes the coroutine when all its inputs are ready. I don't know if go has such a primitive and if its implementation is optimized in such a way or simply waits for each channel in sequence.
No, they left it to rott. No innovations, no new strategy, no new leadership, no new bold moves. Nothing. If G+ was startup outside Google we would have ripped it off for not even pretending to compete.

Social is absolutely the most important space for Google, even more so than cloud. FB is eating up large chunk of their ad money and putting biggest chunk of content out of their reach. For a company out to organize world's information, this is unthinkable. And this is a company with $100B in bank, accumulation of largest talent pool, ability to attract the best. And it's not that FB is perfect and strongest at this point.

There is no "cutting losses" in tech when product category is this important. It takes years of struggle, experimentation, patience and competition to win. They gave up within an year after G+ release, left it on "maintenance mode" and now finally kissing good bye.

To me, Google has lost its charm as company that makes big bets and goes all-in until they win. Now they are company which does half-assed product and if they don't see traction right away, they cut off the oxygen and then just kill it. There is little or no reflections, learning and applying it to do course corrections.

After Larry Page arrived at the scene and flew out to his Caribbean island on extra-extended vacations, the company has failed to produce any big new product category. Eric Schmidt was able to start new product category virtually every year and become undisputed leader in it. That wasn't coincidence or luck but sheer drive to win. For example, in maps they had to invest huge amount of money with multi-year milestones and constant innovations to displace existing players.
Well, this is more... important reason to shut down G+, than because of non-popularity and lack of users.
True! You can do so many things with mind maps and few people know about it;)
> If the commit is ancient, no need to pull the whole history of a project.

Can you query the server logs somehow? Just because you don't want a complete local copy you would of course still want to be able to query the log and request diffs from any commit.
yeah, i guess we should throw all those watches away.
Filter out routes by type of blackhole in FRRouting
Multipliers are on earnings, not revenue. A “modest 5x multiplier” on Walmart’s revenue would give them a valuation of $2.5 trillion.
Wouldn’t Virginia be a better location for an HQ in that case?
Daniel Radcliffe and the Art of the Fact-Check
You are 100% correct. I know that I have the troll gene (that is troll as in fishing for reactiong, not troll = evil hater) so I need to check myself regularly that my reaction to trolls isn't to try out-troll them. I fight I know I can't win but mainly I respect that it shouldn't be fought here.
There are countries right now failing after seizing wealth from their citizens

All of those countries failed for different reasons and never solely because of "seizing wealth from their citizens", although that was always a component.
Don't know how it works in regular info browser; in Emacs's info browser, incremental search can cover the entire manual (or even all info pages) if it fails to find a phrase on the page you're currently viewing.
Indoor Navigation in Augmented Reality
Scott Galloway also believes it will be in Washington, and was always intended to be: https://www.youtube.com/watch?v=_HyiY_m_YxI&t=542

I recommend watching the actual talk, but there are a few sections of it summarized (including a bit about Amazon HQ2) in this article: https://www.recode.net/2018/9/19/17878766/scott-galloway-pre...
Rainfall is similar around the Bay Area, with the North Bay getting generally more rain than the South Bay, but everywhere in the Bay area is below average rainfall for non-desert areas.

Also, only SF proper could be considered particularly "cool".
Unless you already know your users will want man pages, I wouldn’t bother also outputting them as they just aren’t used often enough anymore.

I don't know where this is coming from, me and my colleagues are reading man pages every day. I would be interested how much others read them.
In this way you could be profitable after only 1 month or 10 years, if 1 month that's interesting.
How I failed to implement CSP
> We understand people want to see the UI, but it's not the key selling point.

I'm extremely confused as to what on earth the product is then.

If the UI is not important here, who are the key users you're expecting?

From your site:

> Alan is a low code platform, enabling efficient and low cost development of tailor-made software applications.

So I can quickly make a software application, ok.

And it should have great UX baked in:

> Furthermore, applications would be easier to use, because they would be generated with excellent UX baked in, and implementations cannot introduce magical or unintended behavior. People would also never need training for new applications: they would already know how to use them.

And it has generated and custom UI and dashboards:

> It includes both fully generated and custom built graphical user interfaces and dashboards, running on desktops, touch terminals, hand-held devices etc.

And you have a headline:

> See it with your own eyes

You want me to see it with my own eyes, and give me a tutorial and the code that would allow me to do so. But you don't want me to see it before then?

So there's a UI that it makes. This UI is the final actual output of the code I am writing. And it's not the key selling point?

I'm not trying to be an arse but I want to really convey just how strongly I feel that your page should show me some actual examples. Screenshots are fine, but demos would be the main thing I'd aim for. You have an animation in your tutorial, which is good, but then it seems that it only shows launching an app then stops!
Hey guys, so after i saw this on the front page, and visited the site, there rates were surprisingly really low, I actually decided to try out the service.

TL:DR Its not as rosy or great as some people here suggested, and their response on contacting them came off as a little harsh to me.

Here is what truly happened, I registered, entered my personal details, confirmed my email, entered my card details, they then deducted about USD 0.010 from my card, which is okay, many cloud services do that to test the card validity or something like that.

So the next step is you have to submit a copy of your ID or passport, the reasons they give for this made perfect sense, so i sent in a photo of my ID, then in the morning, about 7 hours later, I got an email saying my account was rejected.

Easy, so I try to call their support team, to find out what i had submitted incorrectly, or what i had missed. The answer is not what you would expect given the praise their customer reps had on this thread, I was told the rejection is a management decision and i had to reapply with another email. note that even if i had wanted to reapply, now i couldn't because i wanted to know what data i had not included or submitted incorrectly.

I call in again and I am told the same thing. So i try to login and my account is deactivated, thats expected.

So that's my experience.

Sidenote: Do not start with a greeting like "good morning" when you call their support team, both of the people i called did not answer to that and waited for me to speak again, before they said anything, which i felt was quite embarrassing, like as though saying I should know better and go straight to the point when i call in.

Maybe someone else who got through has a different narrative, but if you also failed then your story is similar to mine. but If you want to have a great week, don't try them b'se they will steal your happiness for a day. Stay with AWS or GCP or Digital Ocean or whatever
Why is this good? (I'm not American)
Data Science Weekly Issue No. 254
This is really moving stuff. In a similar vein, I found Joan Didion's "The Year of Magical Thinking" to be a deeply personal and illuminating exploration of grief and loss.
If a variable has block scope in C++ (i.e. it is a local variable in a function) then its destructor is guaranteed to be called when the block is finished, regardless of whether that is due to a `return` statement or an exception being thrown (or a `break` or `continue`). In what sense do you disagree?

If you allocate an object on the heap with `new` then its destructor isn't called automatically unless you make it so through some other mechanism, but GP comment clearly want claiming that.

There are some situations where objects with block scope do not have their destructor called e.g. `_exit()` called, segfault, power cable pulled out. But in that sense nothing is guaranteed.
I may be wrong, but I think up to GDPR compliance, you'd only get a meager HTML file that was not machine-readable, and some (but not all) of the images?
I don't understand what is so moral about not selling stuff to the army, as if google are not enjoying the protection this army provides them. I would say it is even less moral, you let other people do the dirty work for you. They should give a discount to the army as a thank you for the sacrifice the people in the army are sacrificing for a fraction of the salary someone in google is earning. I mean, I know googlers still have PTSD from the Damore thingy and that they are still recovering from the trauma in a safe space designed for that, but still, fighting in a remote country for half an year is at least as hard?
Is that supposed to be funny?
It's a key note here that the listed economic inputs and outputs neglect to major external dependencies:

1. Externally developed, researched, and applied healthcare.

2. Externally generated and supplied electricity, through what I presume is externally-supplied infrastructure.

They're not fully bootstrapping off of merely what they have present, though I won't fault them for it by any means. It's just something to keep in mind.
Depends on which sites. Some of my websites have 200K pages. Some have just three.
If the user id can be joined with other data to give a name or similar then it is considered personally identifying in terms of GDPR.

I am not a lawyer. You should hire an appropriately qualified lawyer to review your data hygiene practices.
> I tried for EB-1 Green Card twice and got rejected both times. You need 3 out of 10 criteria for Green Card. Over 2 petitions and an appeal - separate USCIS officials gave me 4 criteria. But none of them gave me 3, and their responses were very hostile.

I don't really understand. Do you mean to say that the USCIS officer wanted you to meet 4 criteria while the rules specify 3? Did you take them to court over it?

If you already were on O-1 visa, it should've been easy to qualify for EB-1 GC. The criteria is pretty similar for both. Did you try a different law firm? What criteria specifically did you not meet?
It seems to me that Green threads exist primarily for convenience.

They are definitely not more performant than native threads with a work-stealing approach (producer - consumer pattern) that is tuned to the number of cores available. How could they be more performant? Even the simplest switching adds some cost, from a performance perspective it would never make sense to run thousands of threads on 8 cores, whether they are scheduled by the OS or by the language implementation.

So to answer your 3rd question: short lived I/O tasks.
If I can't roughly explain what something is in 2-3 sentences I don't think I understood it well enough.

Your description didn't really help me either. Lenses and prisms are just glass objects to me.

Just from thinking about lenses, I guess It could be something that bundles and unbundles function calls... But no idea.
This just happened to me. I wanted to run a goroutine and then not exit the program, so I ran an empty for loop and it didn’t work. Would a for{ continue } have work?
If you have a Mac and want to play with Oberon Workstation, you can find it in the Mac App Store: https://itunes.apple.com/us/app/oberon-workstation/id1057155...
FlowCommand is hiring ML engineers to analyze fluid behavior using ultrasonics
Google to require chargeable security assessment for apps using GMail APIs
It depends on which country you're in, and whether they have any tax agreements with the US. In some countries like Switzerland you get double taxed.
Googlers will and have on multiple occassions revolted. Many have resigned when their personal red lines were crossed, usually over things the external world would not have noticed. Various top-down decisions have been reverted due to this, up to walking back an announcement that already went public.

Big part of the reason is that finding the next job after Google is nowhere near a hard problem. Chances are you might even get paid more by the next place.

Source: I'm a Googler that has signed some of these petitions, never got his red lines crossed and is still happy to work here.
The same way that memory leaks are possible in Java: rather than a technical bug (you forgot to `free` some buffer), instead you have a semantical bug (you're holding on to a pointer to the data after you're done with it, and that keeps the data alive).

Granted, the ownership/borrowing semantics of rust make this a lot harder, but anything that uses Rc/Arc can easily fall prey to it — you can use those to create a reference cycle.
Autonomous cooperative driving with miniature cars
Probably the most secure channel, if you trust it.
I have a big project and a small one.

The small project involves getting rid of reducers in react redux, by creating a modified version of JSON.

The big project is a new social network. A selling point is recovering the idea of Google + circles, but using groups instead (like in Whatsapp). Think about merging WhatsApp and Facebook together, you should be able to publish things in the same way you do messaging through WhatsApp.
A 500-year-old map used by Columbus reveals its secrets