skysight-inc/HackerNews huggingface dataset:
You can check with Clojure and ClojureScript to target JS specifically. You can write your backend in Clojure and the front part in ClojureScript. Having the possibility to use the same language for both is great.

It's a mature functional language with interesting properties, it's practical, data oriented. Libraries quality are top notch, you'll find no big framework but libraries working together to achieve what you want.

Some ClojureScript libraries are awesome, for example if you're on React you have Reagent or Rum that are fantastic libraries to work with React.

OP post could be written like this in Clojure (if you want to be explicit with all the screens):

(defn needs-cancel-button [screen]
(case screen
:screens/loading true
:screens/code-entry true
:screens/success false))

You'll notice that this is not typed but you can use Clojure spec to have some validation (this way being less explicit just returning false for the Success Screen, and true otherwise):

(def screens #{:screens/loading :screens/code-entry :screens/success})
(defn needs-cancel-button
[screen]
{:pre [(s/valid? screens screen)]}
(case screen
:screens/success false
true))

Union types can be mimicked using spec, you'll find how here: https://lambdaisland.com/blog/25-09-2016-union-types

OCaml is also great, IMO you won't lose your time by learning these languages, you'll find some way to improve your current code

Whether you learn Clojure, OCaml, F#, Haskell, Elm or Haskell, you'll end up being a better developer.
There's only one use case for blockchains: creating ecosystems. Solving a customer's problem is typically not something you do on your own, you need to collaborate in ecosystems. Having one company dictating what rules and technologies are in effect in the ecosystem is risky (e.g. ecosystems created by Amazon or Facebook). A blockchain democratises the collaboration, at the cost of efficiency. So at its core it's a governance technology, and a trade-off between efficiency and security of your ecosystem.

Blockchains are just a technology. The point is to look at use cases that are now viable because of the ecosystems we create.
No, you're being fairly accurate.
Exactly, having anyone expand their hacker bubble and see the world in new ways.
Hi, appreciate the followup, apologies for the previous short comment.

I feel like it's clickbait, not worth reading, for these points:

1. Even if the argument is valid, the points made in this article have been expressed, shared, (whined about?) probably 9+ times in my own reading. It's really time to move on.

2. There is nothing inherently wrong with using small/simple modules. Once you start to reuse code in many projects, the value becomes clear. Some are juicy and complex, some are eye-bleeding simple. It's better than copying and pasting code around folders. Use org modules/private modules and the problem is solved.

I absolutely believe that npm is ripe for *potential abuse, although I have yet to have any issues.

No one has time for Breitbart-esque fearmongering, or the regurgitation of stale points while an ample selection of real world problems exist to be solved.

Jeez that reads harsh. Apologies, it's late.
Good read. Thanks.

And I agree: Electron is horrible to deal with as an end-user. I've been using Vim for some time and then decided to use VS Code. The integrations, plugins, and everything else were awesome, but man the 3-4GB of RAM was just crazy. Despite the fact my machine has 16GB of RAM, I'm dealing with quite a few VMs and Docker containers locally, so actually 16GB isn't a lot.
There's some truth there in your comment but also a lot of wrong things.

> 1. Over-reliance on tooling

Everything has tooling, I defy you to find a single language you can use in a medium-size project without any tooling, good luck, I don't know any.

> 2. Any serious JS project is a long term maintenance burden. The prevalence of "single line libraries" makes future-proofing of the code impossible. You don't only have to version-freeze your immediate dependencies, but dependencies of your dependencies

It's the same for any language. Yarn has a yarn.lock for this exact purpose, for other languages you will have [your language package manager].lock, it's the same.

> For practical purposes, JS code is barely as quick as Perl or python.

It's currently 3 times faster than Python and the gap is only widening every year. You picked the wrong languages to compare the speed, at least you could pick Rust, Go or C++.

> 5. Zoo of standards on the front-end, browser APIs changing on a whim.

It's getting better with vendoring nowadays and the core features are there everywhere. You only need vendor-specific APIs if you build something specific.

> 6. Zoo of sublanguages: Coffeescript, LiveScript ClojureScript, MoonScript, AtScript, TypeScript

Only TypeScript is alive nowadays, all the others are kind of dead so this isn't true. Also MoonScript is for Lua so it's not even related to Javascript.

> 4. Readiness to do breaking changes in between major hard versions, and no reservations for backward compatibility.

Most features are not backward compatible, that's why you need to use some tooling. You cannot have no tooling and no breaking changes at the same time.
If the big miners need to self regulate like that, then why bother with proof of work in the first place?
I am not a Penn State grad but I have suspicion that there is simple explanation. The explanation is marketing. As students are less and less independent, the decisions are made my more and more concerned parents. Parents that don't want their "kids" engaging in "risky" activities.

The actual risk has nothing to do with this, only perception of it.

My school organized trips to wilderness and I took part in it when I was 9. There were no phones, no satellites. This was cold war Poland and the bears and wolves were present in the woods. Yet I never heard anything really dangerous happening to anybody unless you ask for problems (like climbing a steep rock face without safeties). You are probably safer in the wilderness than on the city street.
My mortgage in the UK is currently 1.08%. Interest gains are negligible compared to paying off the capital at that rate.
Demystifying generators. Implementing async/await
I skimmed through your devlog post; I think you could make the use case a bit more clear. your service substitutes trust and provides versioning. but trust from whom to whom? I doubt an audit by the government will look in to crypto magic, no?

For an employer a simple log on a somewhat secured server might be enough.

I researched electronic cash registers a bit. here there is also the problem that a gamed system can transmit faked data to which ever system is meaned to provide immutablility.
Means, motive and opportunity.
There is so much money to be made out of privacy infringement that it's safe to assume at least the border of crime will be touched. Either that, or a CEO will be wiped by the shareholders. Ergo, the accusation above is not so baseless at all.
The best part is that is-odd depends on is-even [1]

[1]https://www.npmjs.com/package/is-even
I don’t understand why you are arguing in favour of renting with those numbers.

You pay more in rent than you would do for a mortgage, and you earn less from your shares than you would do from London property price rises... what’s the upside of renting in your case?
Am I misunderstanding something here?

Artificial Intelligence is about statistical analysis.

Such as: Is this picture of a man and his dog, actually a dog? Or is it a cat? Or is it a 4 legged creature? Or is it a turtle?

The AI is supposed to identify that the animal in the picture, is a dog with a 99.8% probability. And since it exceeded the 98% threshold, then it becomes accepted as a dog, until otherwise disproven.

Basically, it is a pattern matching mechanism, on a massive statistical scale.

And from this, then further actions can be taken.

Such as, the owner of the dog, can be mailed advertising and coupons that are related to dogs.

And then, the AI can go even further. What specific kind of dog is it? Is it a German Shepard? Is it a beagle? Is it a poodle?

The AI can determine the specific type of dog, and conclude that it is a German Shepard with a 99.7% probability. This exceeds the threshold, so then the computer system might mail out an advertising to the owner, about deals related to a German Shepard.

For something like this, then this is where social media can really shine. When you upload your pictures to Facebook, or Gmail, or Instagram, then Facebook or Google, can use an AI to analyze your picture. As well as reading your caption on it. And they can determine the context of your picture, such as whether you have a dog in it. Are you holding the dog? Are you walking the dog? Are you smiling in the picture? If the scenarios check out, then the AI can select you as a candidate, and send advertisements related to your dog.

In fact, I think our brain operates the same way, by using statistical analysis.

When we see a dog, in a picture or in real life, our brain is actually using a statistical analysis to determine that it is a dog. Our brain follows a neural network pathway to match that picture of a dog, to a similar variation of a dog that we have in our memory. It is thus statistically true, until otherwise disproven.

This of course, happens in the deep recesses of our brain, so it's currently impossible to know what really is happening there, until we have a better scientific understanding of how our neurons work in our brain.

On the flip side, SQL scripts has no mechanism to view the picture, to determine if the animal in it, is a dog, or a cat, or even if it is a human.
This is should be funny, however in the JS / Web dev world nothing suprises me anyone.

The whole ecosystem is an insane mess.
Shouldn't the main concern highlighted here already be taken care of with package-lock.json and yarn.lock? They record the dependency trees, so a rogue package update should not really affect you.
The problem is that your language choice is very limited. You can choose C++, no thanks, or Python which is very slow. There are no good options for languages or VMs on Qt in the Java/C#/VM/Jit range of the language performance spectrum.
OP was right, you were wrong.
How to cure asthma without medicine
A mortgage payment is a lot lower than current market rent, however. (I bought a 4 bedroom house in London and we pay about £1200 per month mortgage on that, although we actually overpay to decrease the principal faster).

Part of the reason I was able to buy, of course, was that I had saved a bunch of money, some of it invested in shares. Most people renting probably don't save as much as I habitually do, mind.
My annoyance with Electron surfaces when it's being used for tools that you need to use a lot and that potentially are started often, with a lot of instances. Slack clients for instance, but editors and terminals as well. These are precisely the kinds of applications where you want low memory usage and milliseconds worth of startup time.

Additionally, this annoyance probably has more to do with the fact that Electron is used by developers for other developers. If it would be used to replace Excel the rage would probably be less pronounced. I'm still wondering what would happen though, because of all the subtle ways in which the UI experience would be broken for someone who's used to Excel.
Seriously. I sometimes thing if these articles are doing for Elon Musk.

So Mr Musk is attempting something, let us call this X. If he simply do it, no one else notices, and the future potential investors might fail to notice...Same if he fails.

So he has to make sure that they notice when he succeeds. What better way than to make a bunch of articles that says what he is trying to do is impossible. Then if he succeeds, then the (artificial) voices that were saying what he is doing is impossible, ends up amplifying his success 100 fold. If he fails, then not much of his current reputation is changed.

So if you are handling PR for Elon Musk. Why wouldn't you make these articles happen?
Feedback on concept website that connects Runners across platforms
I found that certain Lem books are best read at a certain age :) So I'm re-reading through the whole canon to see if I've reached the right age for books that didn't interest me at a younger age. (I'm reading the (East-) German translations which are mostly excellent).

The Invincible was my favourite Lem book as a teenager (next to the Star Diaries of course), Piece On Earth is a good book for 20-something, and Fiasco for the 30's. Now I'm feeling like I'm getting ready for Lem's more gloomy philosophical books, and maybe as an old man I will start to enjoy his silly works...
16 bits per second - the bandwidth of consciousness:

https://news.ycombinator.com/item?id=4828313
>The expiration of these packets were measured in days or maybe a week, not weeks.

That isn't a particular hurdle. There are plenty of products in my local supermarket that have an expiration date measured in hours after purchase (usually about 3 or 4 days in total, the sticker is printed on-location, this especially concerns some raw meat products).

>Also, as I mentioned above in another comment, there could be particular product recalls like the current romaine lettuce recall.

That might require an internet connection but not permanent either. The juicer could simply have a blacklist of product IDs. Supermarkets also already implement this at the checkout. The cashier will be unable to add the item to the bill, even if a supervisor gets out their admin keys and tries it manually (the computer will even block same-price manual entries after a blocked item is scanned during checkout).
The whole article is a statistical fallacy. You should never compare "average" growth rates but extreme outcomes. What is the best possible outcome and the worst one in case of renting and in case of mortgage?

P.S. Read Nassim Taleb (and Daniel Kahneman) for the sake of reason.
From what I gather the idea is that the first country to have a real general AI running it will be so efficient that they will leave the others in the dust. Thus, everybody races to be the first.
Response.status_code is an int

No, it acts like an int; whether it is one (should be) irrelevant :)

class StatusCode(int):
@property
def ok(self):
return 200 <= self < 300
The strictly financial part of the calculation is important, but personal cost of volatility may be even more important for those in a position to choose to rent or buy. I suggest it should also give pause to those who plan to build extensive social capital somewhere long term, but continue to rent.

I view real estate ownership as a personal hedge. As we've seen in San Francisco from displacement of those in less lucrative sectors, rent that floats exposes you directly to the prosperity -- and inflation -- of all sectors in a region: in the future, that sector may not be your own. Property taxes expose you to this effect, but it is attenuated in magnitude (doubly so by California's Prop 13). The inflation of rents rendering your employment in a sector in a place obsolete is not so important if you can pick up and move, but it can prove socially expensive (and not priced in) if you have roots, are a contributor to civil society and/or have children. I feel badly for lifetime-renters-by-necessity those whose social capital is wiped out by these fluctuations without any compensation.

As I see it, buying reduces the cross section of your outgoing flows to more radical local fluctuations, binding it to fixed or more moderate internationally-floating indicators (like ten-year treasuries, or LIBOR).

Notably, no major family outgoing flow is so volatile: groceries have similar costs nationwide. Many other goods are globalized, have substitute options, and little friction: housing stands out as the big exception.

I also suggest that marriage-house-children is not mere tradition, though it is that too. It is also a recognition of the increases in cost of volatility to the family unit: finding mutual job opportunities, and then the complexity of transplanting a child.
Simpler MCUs have real hardwired SRAM access registers.

On more complex systems, even SRAM access goes through some stateful scheduling circuitry. So, interrupt latency on mainstream MCUs can't be reduced much.

If you want XIP with adequate latency, there is no alternative to spending money on Everspin MRAM. You will have accommodate the latency of SPI access, but that was never an issue in my practice.
This sounds like zones are bad idea but those problems are related only to process.nextTick and setTimeout, if you're using promises (which I do for 99.9% things) you're fine.
Actually it makes a lot of sense. For an electron based browser the vast bulk of it is in the HTML/CSS/JS engine just like normal, but instead of doing the higher level code and UI chrome in C++, you just use the same language and facilities which the engine itself already provides.
> If you can invent a reliable alternative to proof-of-work distributed consensus there is a multi-billion dollar opportunity there.

Trust.

Just use any authentication/authorization solution, contracts, the rule of law, reputation, everything we've always used to deal with varying degrees of trust.

Utter lack of trust is not a problem people have.

If you want to apply blockchain technology to anything real world (as opposed to coins that only exist _in_ the blockchain), then you need trust anyway whenever there is interaction (e.g. when someone inputs data, you need to trust its true anyway).

It's really only useful for coins, that are themselves less useful than existing money.

It was an interesting mathematical puzzle to solve, shouldn't have been made reality.
Yes: the author of the package uses it himself in some of his other packages, which are popular and used in popular projects, e.g. [1]. So it isn't that millions of people think isodd is a sensible package: just at least one person does, and he made it.

[1]: https://www.npmjs.com/package/nanomatch
Oh and as for the title on that article, Bunch of people took offence and no one got it but it's a reference to when Balmer called GPL/LGPL cancer and hippie culture.
One answer, and it is solved: on iTunes, under Podcasts, search for a Stanford course called "Programming Paradigms." The first few lectures by Jerry Cain cover C and he is great at getting down to the detail and really clarifying the fundamentals such as pointers.

From a CS perspective, it's a basic introductory class, but the level of detail means that following this course will get you very clear on C as well as what you need to understand before C like memory layout.
I'd have to use bad old C++ with it, so how about no.
This could've been a valid criticism of people that use ML where it's not appropriate, but it ended up being a bit of an irrational rant, and a dishonest one too:

> I mean, why send a letter with breast pumps to a man that just bought a pair of sneakers? It doesn't even make sense. Typical open rate for most marketing emails is anywhere between 7 - 10%. But when we do our work well, we saw close to 25 - 30%.

How do you know what items are compatible to each other? Why only recommend sneakers to somebody with sneakers, instead of also recommending sport clothing?

Oh, I guess you could build some type of topology of all your shopping items. But what about recommending soccer balls to people that bought soccer shoes? You could also add that to your database, but now you also need a heuristic to score item similarity: `category_matches * 10 + subcategory_matches * 5 + color_matches * 2 + ...`

This is the whole point of ML. People have been building rule-based systems built on "domain expertise" for ages, only to find that they are limited and cannot compete with simple algorithms fed with enough data.
I have the same problem about typing in transaction and here's my advice: don't.

Just do one transaction for "misc expenses" once a month or week and be done with it. Usually I do this by comparing the current and last balance and book the difference. If you feel like some transaction (rent, utilities, fuel for the car) did stand out you can still split out a separate transaction for it, but you don't have to.
Mr Gates said: "These chickens are multiplying on an ongoing basis so there's no investment that has a return percentage anything like being able to breed chickens." http://www.bbc.com/news/world-africa-36487536
I think you are getting down votes because you are answering 'why electron?' instead of the 'why base it on Canvas?' the GP meant. (The release notes say this version switched to Canvas rendering from DOM.) I would like to know too.
Because it's pretty. Because you get state of the art Unicode decoding and support. Because you can get a terminal on Linux in a first class GUI system that's normalized across all major operating systems backed by billions of investment.
Same experience here. On average 40 tabs open, Privacy Badger installed. No problems anywhere (except for the dark patterns). Runs like a Swiss clock :)
> then please go back to 2010 and tell me a better way to donate money to Wikileaks

Regular SWIFT wire transfer always worked. The blockade applied to VISA/MasterCard/PayPal/Western Union.
> If you can invent a reliable alternative to proof-of-work distributed consensus there is a multi-billion dollar opportunity there.

But Bitcoin only does 7 transactions per second. You can't say it's an alternative to something extremely larger.
The difference between Reason's and PureScript's output is easily explained if you take into account the differing goals of the two projects. PureScript has an emphasis on [JS interop](https://leanpub.com/purescript/read#leanpub-auto-polyglot-we...) going both ways. Being able to add some PureScript code to a JS codebase, or even to intentionally layer a JS frontend on top of a PureScript core, is an explicit design goal.

You can actually create instances of PureScript types in JS and pass them into functions defined in PureScript. That explains why there's a JS class for each data constructor. Similarly, the generated PureScript code can't actually "know[] the match is exhaustive", since it could be called from anywhere.

The article was interesting, but I think the comparison would benefit from providing an example of the code generated for calling the function as well as its definition.
Odd, all of those are working fine for me. I went to MSDN just now and it seemed to load slow, but I don't regularly use it so I don't know if anything changed.
Indeed. It's quite hard to make a profit from selling your own home in Belgium unless you have lived there for a long time. However, it appears that these extra costs are what prevents the Belgian housing market from inflating the way it does in the UK or US, eventually resulting in lower costs for both renters and buyers. A three bedroom house in a desirable suburb of Brussels costs less than a 50 sq m one-bedroom flat in an undesirable area of London.
I'd be interested to see a similar statistic where there were more than 1 founder, i.e. the average age of ALL founders. I am wondering whether the spread of ages is also a factor - in terms of familiarity with pop culture/current trends vs experience/skill etc.
Surgeons don't do diagnostics, as a general rule.

Internists, paths, triage, GP, trauma do.
Other way around, is-even depends on is-odd. But wait, there's more. Is even depends on is-number, so in the node.js world '515' is odd.

It doesn't matter how good javascript compilers get when you throw this level of slop in.
Brave is actually really good from my perspective. I use it as my main mobile browser. They're looking to add support for the p2p `dat://` protocol this year as well!
Well, the metro population is ~40 million.

But even then, most of the "sprawl" is still very dense by American standards, a lot of the suburban areas have comparable population density to Boston or SF.