skysight-inc/HackerNews huggingface dataset:
This is all well and good as long as Ethiopia can buy more food then it could have grown in those coffee fields.

Unfortunately, it also puts it at the mercy of forex rates, collapse of their monoculture, food shortages in other parts of the world causing rising food prices, any disruptions in foreign trade... Any of those things go south, and now you have millions of starving people. Sitting on a pile of coffee beans.

Why do you think the US government pushes billions of dollars into agriculture subsidies? Wouldn't it be so much cheaper if it just imported all of its food from abroad - where farmers get paid ~$1/day, instead of $6/hour.

There's a simple reason - it's because it doesn't want food riots, caused by some factor outside of their control. Nothing brings about regime change faster then the price of bread. [1] No well-ran country wants to be dependent on food, or oil imports.

Ironically, these same agriculture subsidies are what cripples agriculture in other nations - they can't always compete with Uncle Sam's subsidies.

[1] Just ask Mubarak. Or the Romanovs.
> That seems like a rather dangerous philosophy.

Well, it's dangerous to your population once you are attacked, especially by a superior enemy, but it's also a deterrent to attack in the first place. The net cost or benefit depends on a fairly complex balancing of concerns.
FP is not new. OO is not new. They are tools in the toolkit. Take an object with a bunch of instance methods. They are all equivalent to functions with a hidden first parameter. If you make 'this' explicit you've got pure functions. It's not magic.

Intellij even has an automated refactoring for it in kotlin. You can take a function and convert it to an extension method and back again:

fun String.foo(a: Int)

vs

fun foo(self: String, a: Int)

The real fun of FP is building simple functions that operate on a single value and then stringing them together, generalising to lists of values, filtering etc.

MapReduce is functional programming. At epic scale. It's name is literally a portmanteau of two of the most fundamental higher order functions.

FP rocks.
Thank you for sharing this, I really appreciate you participating in this thread and this awesome anecdote!

One related workplace anecdote that a former fellow student told me: He was working on a rule-based medical recommender system, and he recognized that Prolog was an excellent fit for this project. When he first suggested that the team switch to Prolog, they were very skeptical. But someone high up in the chain was a great fan of Prolog and approved this suggestion. A few weeks later, they had completed the implementation, and the Prolog-based solution was running. My colleague told me that, a few months after that, the whole team regarded Prolog as the only viable solution to all further projects from then on!
If your production systems break when some third-party plays battleship on them, you might want to invest in better production systems.
I'd say it's a deterring statement and/or a way to boost confidence in the population, not something they would hold on to if it really came to it.
A big problem with visual debuggers is that they are too blunt of an instrument. Often I wish to examine specific things under specific conditions and thus use conditionals to narrow down what's being explored instead of bajillion breakpoints and/or log records. Debuggers could add conditional expressions, but then they'd be re-inventing WRITE statements anyhow.

As far as the nearby statement that maybe I didn't learn dissection correctly, that may indeed be the case, but was also my original point: perhaps the real problem is that nobody knows how to TEACH functional/logical programming right, and that's why they have not caught on in the mainstream despite being around several decades. I'd love to "get" the benefits, but it just won't click. Sometimes you have to teach programmers how to think, not just what to think.
A New Look Inside Theranos’ Dysfunctional Corporate Culture
Two of history's most arrogant and sanctimonious cultures, meeting together for the first time. What could possibly go wrong?
He presents these in the most tin-foil hat manner possible and doesn't build a bridge to people trying to live ordinary lives.

Destroying your phone, not using a web browser, and eating vegan or whatever isn't something everyone can or should do.

If he wants to be some obscure mountain-top philosopher, that's fine, but being the GNU head at the same time is problematic.
Happy 21st Century
whoah!! 82 years old is still coding? that's very impressive
This example is often used to convince people that the Russians aren’t a scary adversary but this isnt a good example.

In 1940 the Soviet army was in a pretty bad shape, the Russian committed a fairly small number of personnel and equipment during the Winter and Continuation wars in comparison the initial defensive force in operation Barbarossa was 3 million soldiers, the battle of Leningrad seen about 6 million Russian troops in total and out of those Russia lost about 2 million.

While winning is winning Finland faught against an inexperienced, poorly trained, poorly equipped Russian army that at the time was fighting for essentially nothing.

Also that link isn’t the whole story Russia was fighting a trench and guerilla war in Finland until 1944 the Finns were very well equipped, well armed, and heavily supported by the Germans fighting while dug in on their home turf in a region where logistics were a nightmare and more importantly they faught against a very preoccupied enemy for those 3 years as Russia was invaded in 1941.

I also find it pretty amusing that people always mention the Winter war but not what came after I guess the time when Finland sided with the Germans, providing support and logistics including naval and air bases to the Germans and invadded Russia in 1941 which made the seige of Leningrad possible isn’t as foundly remembered.

https://en.m.wikipedia.org/wiki/Continuation_War
> Take an object with a bunch of instance methods. They are all equivalent to functions with a hidden first parameter. If you make 'this' explicit you've got pure functions.

Well, you’ve got normal imperative procedures that maybe return a value.

Pure functions mean something else.
Steven Pinker’s Ideas About Progress Are Fatally Flawed. These Graphs Show Why
Fair point but I think people generally intuitively separate learning ability or speed and willingness to learn. I've met my share of determined idiots and passive geniuses, given mostly when I was in school. To me it seems like, while they're probably related, brain elasticity and openness aren't inextricably linked, such that one is directly responsible for the other
Seems like a strange purchase for Adobe. How does this fit into their market or ecosystem?
Driven to Despair: The Tragic End to a Black Car Driver's Campaign Against Uber
Scientists declare octopi life from another world
If you're admin, you might have to install a driver to scrape all memory. So... one hoop to jump through :)

Caveat: you're still trapped in your hypervisor partition. Enclaves (e.g. SGX) are also protected from admin/root snooping. IIRC, this is the same as on Linux.
Sequel title

"El Chapo: Escape from NY"
Unless the workaround was done to enable Google+ functionality (responding directly to user intent to allow a +1 button click to work instead of failing with some kind of "LOL, your third-party cookies are disabled" error) and the breaking of the third-party disable heuristic as it related to general ad tracking was just an unintended side-effect.
I am a C++ dev and I kind of enjoy it. There is a lot of hate towards C++ and a good part of it is justified. Yet what vindicates the language in my opinion is that some of the most complex and interesting software in the world is written in C++ (browsers, search engines, machine learning engines, database management systems, game engines, you name it). So if you want to work on those you'd better know the difference between a reference and a shared_ptr.

As for the masochism... Well, after some time you stop noticing the warts and just work around them without expending much mental energy. Not a big deal.
The equavilent in the unix world is gnome keyring (or any other Secret Service spec implementation) unlocked by a PAM module on login.
Fortunately I don't do any analytics or advertising. I've already set up the server logs to be deleted after a month. Commenters can't create accounts, but it wouldn't be too hard for me to delete their comments. I should probably make a privacy policy.

WordPress does have some plugins for complying with GDPR, so I'm going to try one of those to see what else needs to change, in those developers' opinion. If only there were such a thing as certification so I could trust anyone was doing more than guessing!

Anyway, thanks for your feedback. I appreciated your article.
When I learned to program (I was ~13 years old) using Small Basic I had no issues whatsoever with the errors the interpreter gave me, even though they weren't even in my native language. It was pretty obvious to me that I had committed a mistake at some point of my code.

For kids younger than that, maybe it's better to learn scratch, but I wouldn't trade Small Basic, it's a great language to learn, the only bad thing is that it's made by Microsoft and only runs on Windows.
Sure, there's nothing beyond the years of experience people have had with the existing system and its regulators, and the statements they've publicly made about how they plan to proceed.

So yes, they can if they choose, and if they can make a convincing case, and you can't make an appeal or a big enough media shitstorm that they back down.

But is it likely?

Are you equally worried that you might die tomorrow because a meteorite crashes into your house?

It could happen, and the consequences would be pretty massive, but it's not generally a serious concern of most people.

Risk is likelihood x harm, and you're seemingly in every thread shouting about the massive potential harm, without ever really considering the likelihoods.

Exactly how likely it is I don't know, but I highly doubt it'll be close to your expectations. And probably not mine, but maybe somewhere in the middle.
Why Amazon pays employees $5,000 to quit
> it does not give vgo the credit for satisfying it with its minimal version selection (and, indeed, for providing a more stable and hence reliable solution than maximum version selection)

I did not argue that because it doesn't do that. In an effort to not spoil things, because Sam Boyer has done a lot of work on this and wants to write about it, I won't say to much.

MVS does use a maximum. It's the major version number in SemVer. It's implicit. You can't override it when dealing with transitive dependencies. For it to always be a safe value people have to always follow SemVer. Unfortunately, they don't. In a perfect world this would work. Unfortunately, people are fallible and we need a system that works in light of that.
Building Technical Wealth
Announcing Gallery – a NFT system to keep digital art unique and uncopyable
1. I agree. I was pointing that out more to show that even with impressive growth rates they still have a long way to go.

2. I agree that TFR declines with wealth, but it is still true that if your population is growing your economy has to grow faster to compensate for it. I am not sure how quickly TFR falls as the economy grows. If it lags significantly this will still have an effect.

3. This one is trickier. There are large differences between the poor African countries and the previously poor Asian countries. The authoritarian governments in South Korea, Taiwan, and China actually helped these countries get out of poverty because they could enforce policies that otherwise would not be popular, like redistribution of land to peasants and protecting infant industries from foreign competition while they developed. Japan was a little different (actually so was China) but had similar policies. These policies are not being implemented in Africa.

The corruption in Asia and the corruption in Africa are also of a different kind. South Korea allowed some corruption as long as the managers of the companies involved where able to produce globally competitive products. In Africa the corruption has largely enriched a small number of well connected people while doing nothing to help the local population. I am not sure how corrupt Ethiopia is.

Either way, I wasn't talking about corruption as much as the difficulty of doing business in Ethiopia, which seems to be difficult if you do not already have money and connections, which suggests that the benefits of economic growth will be more concentrated than they otherwise could be and they have in the Asian countries that successfully emerged from poverty.

Africa has had 50 years to adopt better policies, but instead we see frequent civil wars, endemic corruption, and poor governance. These problems aren't insurmountable, but they are large.
1. You should always fix your versions so things don't automatically upgrade 2. A good test suite will catch when things break so you don't find out in production. 3. Combining the above 2 it becomes easy to occasionally see which packages changed and upgrade to more recent versions. 4. After trying out a ton of dependency management tools (python, ruby, node, go, java) I think Yarn is the nicest solution i've worked with so far.
Nextcloud could be better in some areas, but I don't see how it's bad. I'm very happy with it for personal cloud storage I can trust.
I'm not sure what you mean by "move to a new host" - all the built-in partitioning features are single-host for now, so this does not make much sense. There are plans to support remote (foreign) partitions, but that is in the future.

A more immediate use case is partition-aware algorithms. For example joining equi-partitioned tables can be done at the partition level, and the smaller the partitions the faster the join (likely). Or partition-aware aggregation, when the partition key is included in the GROUP BY keys. And so on. In that case it makes sense to split the largest partitions to make them smaller.
This looks more like Munchkin. Players who are ostensibly on the same "team" actually spend most of their time trying to undermine each other in the name of getting more successes than their peers.
It's somewhat of a downside and an upside with the medication I take -- it's not a "take it when there's a problem" but a "take it all the time" kind of drug. In this case, because mine were so frequent, I'd be taking them regularly anyway so a daily pill as prevention works really well for me.

My body also has a really bad time with anything that messes with serotonin -- I can't take SSRIs (these are sometimes prescribed for Migraine, but usually as a last resort), I can't take triptans (IANAD, but if I understand it correctly, they're mode of operation is to boost serotonin levels[0]). I've had absolutely no issues on Depokote. The one side effect that it has for me was reducing my anxiety. The crazy thing was that I would have never identified as someone with an anxiety problem, but once I the medicine started working, I noticed that my general outlook on life was a lot more 'calm'.

[0] Or the specific triptan I was on did that as a side-effect ... I discovered this difficulty of mine as a result of getting serotonin shock/syndrom. That was fun!
Ok now I feel like designing a scenario which includes a CIA card game mastermind. Now retired and living in an obscure villa...with a safe containing the unreleased beta for game version two, "nanobot edition"...
You'd have to work pretty hard to get a 100,000 euro fine.

Please show me where it says that, and where it defines “pretty hard”.
Michael Pollan: Can Psychedelics Save the World?
My guess is OP's share was diluted to the point it was basically worthless. As in, they went from owning 1% to 0.01% or similar.
Apple could get hit with employer tax in its hometown
You can get a model year 2017 (first year it came standard) Toyota Corolla with adaptive cruise control and lane assist from about $11k and up, according to a quick AutoTrader search.
You get $8300/month from renting spare rooms in your house? That has got to be a big house and you are a /very/ wealthy individual.

I bring this up because it seems like you ride Uber more for the convenience for your lifestyle and less for the cost factor. You could easily buy an old prius and not worry about most maintenance, deprecation, etc. Most ride shares I've been in have been a Prius or similar. As you said, "I've gotten very addicted to the pleasure of not driving the car that I'm riding in." You don't seem to value driving anywhere near being a passenger. Thus, selling the M3. <-- Not sure why you'd ever be buying an M3 if being driven around in a Prius at modest speeds was your thing. Was it just about the image?
As someone living next door. I am curious what Swedes actually think of this? Do you see the current Russia as a credible threat? As your country’s biggest security threat?

Denmark had the strategically well located island of Bornholm occupied by the soviets after the end of the 2nd world. But most Danes today would see the chances of a Russian invasion more remote than ever.

We are a NATO member I suppose that makes a big difference.
I don't know about a long history, but it does happen today. Source: I know someone who is a substance abuse counselor.
In retirement people pick up hobbies, where in the article does it say, she's using the proceeds to pay for rent?
He cites social media as "These things have changed the world" and rubbishes Google Duplex. But back when they started Twitter and the like seemed a bit of a joke but increased in scope. And AI like Duplex will do so too. The fact that AI is a bit rubbish in some ways just now doesn't mean it won't change the world shortly.
I mean I both get it, and don't get it. CouchDB is all about master-master, and pouchdb just brings that to the browser. But at the same time I don't understand why you'd want a 'master' at the edge of the network, or the overhead of multiple revisions when a users browser isn't going to have tones of concurrent connections.

I fully admit I'm not very well-versed on databases or distributed computing, happy to have things clarified.
He said he did this and it happened again.
Not true in Ethiopia's case, it was never a colony for any meaningful amount of time.

It defies the "african countries are poor only due to the oppressive white colonialism" narrative.

EDIT: As for Venezuela, 1 USD was ~6-7 Venezuelan bolívars in 2013.

Last time I checked it was roughly 1,100,000. A staggering 180 000 times drop in only 5 years.

External political climate remained roughly the same in that time span.
When I saw the headline, I knew it sounded familiar. Thanks.
I'm an Adobe employee, but know nothing about the real reasons for the acquisition. We focus on providing great digital experiences for our customers and their customers. Something you may not know is that Adobe is a leader in digital MARKETING. We help people create/monitor/optimize ad campaigns, we help customize website experiences for users, and we help with website creation in general-- Brackets, the IDE, Dreamweaver, all of the other creative products, Adobe Experience Manager, Adobe Analytics-- it all kind of ties together to help create an end-to-end experience for users, now especially in the commerce arena. Adobe is no stranger to web content creation.

Adobe is also focusing on AI, so if they have good talent over there, I'm sure it wouldn't hurt to have their predictive analytics tech over on our side.

Also, I'm sure Adobe wouldn't mind the large ecosystem of Magento plugin developers writing plugins for https://www.adobe.io.

I can imagine this would be a great way to identify people who could benefit from switching from Google Analytics to Adobe Analytics, as well.
Government is an employer. With the exception of the military employees have a right to unionize subject to certain constraints. Why distinguish between public vs. private? Why shouldn’t a union be political? Don’t workers have a right to gather in a group and be political? Government workers should be excluded from this activity?

Janus is not really about free speech. It’s an attempt to destroy unions by letting people benefit from collective bargaining without paying for it. It’s called the free rider problem.
I'm using flutter [1] which uses the dart programming language.
I'm loving the static typing of dart, hot reload of flutter, very good debugging tools.
Also the fact that layout/ui and logic are all laid out in code and not in a separate markup lang

1. https://flutter.io
Gerrit (the code review tool) uses Prolog internally

* https://gerrit.googlesource.com/prolog-cafe/
Sure, but outside of South Africa I believe what the OP is saying is true. In any case, better to correct him than downvote him without an explanation.

I expect you would find that the biggest companies in most of Africa are either state owned mining and oil companies or western companies operating in Africa. I don't think they have many important publicly traded companies because their financial systems aren't well developed.
No idea why you think functional programming can't do printf debugging. Even pure languages like Haskell have `unsafePerformIO` (or wrappers like https://hackage.haskell.org/package/base-4.11.1.0/docs/Debug... ).

Also functional programming heavily encourages splitting up code into digestible chunks (they're called functions ;) )
Hi Martin! I respect your effort, and welcome it, because I'm a lover, and collector of maps, actually. You certainly made a lot of work. However (and please don't take it personally) if it's not just a decoration, and you claim it has an educational value, then, sorry, it falls short of even most relaxed standards of accuracy. Let's imagine there was a native settlement in place of modern Washington D.C. Do you really believe it would be correct then to have Washington on a map, which depicts pre-Columbian America? There was no Arkhangelsk, there was no Sarai. There's quite an established (and supported by chronicles) understanding that the former was founded by wish of czar Ivan The Terrible, and latter by order of khan Batu. Both possibly were predated by earlier smaller settlements (although there's no sound evidence for this in relation to Sarai), but, at first, they weren't major trading centers (and that's why you don't know their names), and second, you cannot freely use names from the future without making your map a historic mess, having essentially anti-educational effect. So, it's a noble attempt, but as you said it's a mammoth work, and one have to chew a whole library of historical literature, and look at numerous historical atlases to make it good. Maybe, it's just a chunk too big to digest quickly. Maybe, it would be better to try to start from a smaller part of the world. Btw, crowdsourcing doesn't work in such cases well, because you would still need to verify suggestions, and chose between them. Also because maps are by their nature very politically loaded. Even a question of proper spelling can ignite serious conflicts, and offend a lot of people. I would like to encourage you to continue map making, but I suggest to start from a less ambitious project, and extend it gradually.

And thank you for your calm response!
https://news.ycombinator.com/item?id=17110874
And a pretty common consensus among technologists seems to be, "That's their fault. They should have gone into STEM. Losers."

stacked against people, this narrative goes. Even being on the wrong end of the structurally inherent information asymmetry between seller and buyer is the buyer's fault, somehow.
Simple script to run secure CockroachDB docker cluster without orchestration
Proportionate, which is not defined in the GDPR, is in the eye of the beholder. A country can easily say “we’ll only fine you 200,000 EUR - just 1% of the maximum - because this was a minor violation”. That fine would still destroy most small businesses.