skysight-inc/HackerNews huggingface dataset:
I absolutely agree with you about the importance of first-class functions and closures for async programming.

However, I disagree with your number (1). First, you shouldn't have to use "var self = this;" very often, unless this is your preferred style. Many JS libraries will let you pass in the context as the final argument in a function call. And if you can't do this, you should look to `bind` and `apply`, they're very handy for handling contexts [1].

I do strongly agree with your (2). But if I'm not mistaken, the latest versions of many browsers do support block scope already. I know Chrome does, and Firefox and Edge may as well.

1. http://javascriptissexy.com/javascript-apply-call-and-bind-m...
>A breakthrough occurred when I slipped the doctor a piece of paper containing the URL to this website. This gave him a really good idea of who I actually was, and was a very useful tool in helping him diagnose me.

Is it expecting too much of our health care professionals to assume that they should be I don't know, spending five minutes on google looking for this information themselves? What about interviewing family and friends? How do you expect to treat a mental health patient without a baseline in the first place? This tidbit did not instill any confidence in me whatsoever.
What a clever customer acquisition hack from Stripe by basic document workflow automation: customers pay themselves to get in and become clients(hence, CAC is really small if any), and later pay for every single transaction to Stripe. Brilliant.
Drinking Coffee Could Protect the Liver from Alcohol Damage
someone please train a character based RNN to generate these
I've been waiting for the same thing. I'd also like to have N virtual monitors that I could either switch through or see all at once (like a big wall of screens).
Neat, but I probably won't use it without vim keybindings.
AT&T is challenging the municipal ordinance. That ordinance allows a new attacher (Google) to "relocate or alter the attachments or facilities of any Pre-Existing Third Party User as may be necessary to accommodate Attacher's Attachment[.]" The new attacher must only provide 30-days notice if it determines that the work will cause or reasonably be expected to cause an outage.

The existing process is prescribed by federal law. 47 C.F.R. 1.1420. Under that process, when an attachment is requested by a new attacher, the utility pole owner (usually the power company), must give everyone else using the pole notice of the new attachment and specify a date for competing the necessary make-ready work that is within 60 days of the notice. That gives the existing attacher the opportunity to modify its attachment to accommodate the new one so that the utility or the new attacher does not need to move its equipment.

Under the federal regulations, for the poles AT&T doesn't own, they don't even need to consent. They're just given the opportunity to move their equipment before someone else handles it.
Counter-anecdote: I own a first-gen compute stick, and cannot understand why every online review is so negative. My device works wonderfully, i don't have performance issues at all. But for some reason the industry has decided to tar a perfectly serviceable computer.
No, most businesses could run their datasets off normal databases. This becomes more true every year as stock hardware gets bigger ram and disks.

There are plenty of businesses running of single-node SQL databases. Not Google's scale, fine, but the same scale as the bottom 99% of businesses.

For the record, StackOverflow (your example) is run off a single MS-SQL cluster. It's not even that heavily loaded apparently:

http://highscalability.com/blog/2014/7/21/stackoverflow-upda...
Although I know you meant that jokingly, presumably the op's statement is only true within the parameters of a world where "there is no such thing as absolute truth", therefore, the statement isn't absolutely true, it's just true within the confines of his own (subjective) world view. The actual world, may, in fact, have absolute truth.
I've often thought that RSS would fit this role well, if only there was a way to display and reply to comments on the content as well. RSS readers are great for consuming content without all the BS, but I just miss being able to interact with the reactions other people have about the story so I find myself clicking through to the 'real' article about half the time anyway.
I suspect that this is an area where Rust shines in a way I haven't seen described for other functional languages, so I don't know if it's as relevant to people working in those other languages, but I haven't really written anything performance sensitive and functionally-styled except in Rust.

Anecdotally, I have found a couple of times that I needed to manually implement a beautifully simple map/filter/fold call sequence in Rust because it was in a hot loop and just wasn't performing as well as a dynamic programming version that I wrote in the course of benchmarking. I've also found that plenty of times the functional style beat my hand-rolled code, which is an absolutely fantastic result, but I don't think that the compiler is yet sufficiently intelligent to replace all of my hand-rolled loops :).
GRRM's favorite word processor.
How are datacenters not "the real world"? They're the largest users of data storage devices!
I found the wide interjected bits of content (quotes, images, graphs) really jarring; anyone have thoughts on this design approach? somewhat strange that these were also supplemented by things on the side.
That was the first one I tried actually. It was a complete nightmare to get to work on windows and its performance on windows was dismal, as in hundreds of writes per second instead of millions. It was a colossal waste of time.
Monads aren't "hard to work with". The .NET core libraries contain a number of them which are some of the most commonly-used types in C# (and F#). To name a few:

* IEnumerable<T>

* IObservable<T>

* IQueryable<T>

* Lazy<T>

* Task<T>

You'll rarely hear the term monad in the MSDN documentation though. Maybe it's opaque terminology that scares people away from monads rather than monads themselves.
So you think youtube should be required to host all content that isn't illegal? I am not saying you can't be mad or boycott youtube for removing fair use content, I am just saying it is well within their rights to decide to so so.
This is a pretty amazing and compelling idea, it feels odd that no one has thought of it before - the article mentions some previous models, what were they?
I think it's very informative, and over time we'll see if this is representative of the normal world. Maybe temperature changes are not that important, maybe they are.

At the same time, they have Chrome OS. Most of those laptops have an SSD. All are connected to the cloud. How do they perform? When they have a problem, is it recorded by Google? I'm not 100% clear if I would want that, but it doesn't seem such a bad idea for a computer that is already 100% in the cloud.
People need a home before any kind of treatment would be effective. Unfortunately, treatments for both mental illness and drug and alcohol abuse require a long time to work, and relapses are extremely common. Further, these treatments aren't usually effective unless the recipient feels that any needed lifestyle changes are made of their own volition; if they feel "forced" into it, treatment won't work long-term.

This "housing first" approach, when implemented properly, has proven effective in many areas. https://en.wikipedia.org/wiki/Housing_First
If you're going to offer tiers, you should differentiate them somehow. What do I get at diamond that I don't at silver?
What is it about fonts/typography that engenders such wankery? I say this with love.
Agreed. Note though that this has been true for years. There has never been a president who understands technology, or even any congressmen on committees that decide such things. This is why we must find some and vote them in.
You misunderstand. I'm definitely not suggesting using Angular or React for a page or small app. Quite the opposite. I'm suggesting using just Javascript, with no libraries.

As other posters have written here, you can easily now do just about everything on "Vanilla JS" as you can using jQuery. In my experience, the possible exception to this are animations which require significant boilerplate. However, most common animations are now extremely trivial to accomplish using CSS.

I haven't used jQuery for new project in 2 years, unless I have to support less than IE9 (and even then, I make sure I really need it first).
> I wonder what their reaction would have been to today's jokes

They'd get on reddit, see a couple of mundane image macros memes of the lines of "WENT TO THE BATHROOM — DIDN'T PEE", and conclude that humanity has gone downhill horribly humor-wise.
I wonder how long it will be before Amazon starts truly transitioning towards becoming the end to end supplier/seller. It seems to me that they have strategically used third party sellers to bankroll the needed infrastructure and provide vast amounts of data to mine. Third party sellers can't stay on Amazon forever unless they have margin, and it's a near-certainty that Amazon could capitalize on that margin better than a third party reseller can.
Though the effect you describe is partly because React isn't trying to be an all-things-to-all-people framework. It's a library, with a specific role and much tighter scope, and it's a small fraction of the size and complexity of something like Angular.
Nah, OOP concepts like polymorphism, inheritance, and encapsulation were crazy difficult to understand when they first came out. There were a lot of Car & BankAccount examples that didn't really reflect how people actually use OOP in the real world.

The thing is, all the lucrative software engineering positions created in the late 90s required knowledge of OOP. Which meant that all the wannabe software engineers put in the time and effort to learn it, because that was how they could get a high-paying job. And so now you have a critical mass of people for whom OOP is second-nature, who can explain things to junior developers when they ask questions.

Follow the money. FP isn't popular because outside of certain niche domains (eg. high-assurance software), it doesn't provide a competitive advantage large enough to build billion-dollar industries off of. If knowledge of FP suddenly started becoming necessary to get a six-figure software engineering job, you'd see many more people putting in the effort to learn about FP concepts. (This may already be happening with React in web development, with Hadoop/Spark/MapReduce in big-data, and with Swift in iOS development, but it's a new trend that'll take years to mature.)
My question was "what if we realize that life isn't special?" -- not "what if we realize that humans aren't special?". The fact that three commenters misinterpreted the former for the latter is only a proof of our anthropic bias.

We are not at all post-Copernican, strictly speaking. We value living things like we never did before. You occasionally hear discussion about granting rights to non-human animals: dolphins, apes, etc. That almost never happened in human history (save for a few cultures where certain animals are held to be holy). You are talking about moving away from anthropocentrism, while the scenario I'm describing is a bleak world where all life as such isn't valued. In that world, there isn't even any point of talking about "saving the planet," because "for whom are you saving it for? For polar bears? How are they any better than lifeless rocks: both products of geology?"
Unless you're using the unversioned ("latest") jQuery version on your CDN, the browser cache hit rate will be way less than 95%. I've seen some estimates at less than 20% (can't find the link at the moment).

And for various reasons, it's not a terribly good reason to use the "latest" jQuery version with no version, unless you're prepared to deal with sudden code breakage.
It’s easy to imagine the funnel you describe, if we imagine we are building a factory for cakes. Naturally, the ingredients arrive on various conveyor belts or in pipes, are mixed, and cakes emerge from the other end.
The only way we will have a chance at making change on this issue is by electing representatives who understand technology. One way we can elect them is of the public understands technology. And, one way to educate the public is via making this an election issue and by repeatedly suggesting that if we outlaw encryption, then only two parties will have it- government and criminals. Civilians will be the ones who suffer most.
> Another issue is that the problems FP solves are problems that I think many developers genuinely don't have.

Here's the one billion dollar question. Which is harder?

1) Correct code

2) Fast code
Thanks for your feedback, and I partly agree with you.

> It's like saying JS should have stayed on the browser

What I meant was, we don't need to re-implement the application logic in browser. Take an example of translation strings. You store them in your back-office and download the key-values to your browser and store them again so that you can parse it with Angular.

I am not against JavaScript, in fact I love that we can use it on server level, build mobile applications and etc. Maybe I could be more accurate on the title.
I started learning OCaml a few days ago. It doesn't seem that bad. I put my notes into Github earlier today:

https://github.com/melling/ComputerLanguages/blob/master/oca...

I've been collecting my notes for a while on Haskell and OCaml. After reading this article, it seemed like OCaml was a good FP choice to start with:

http://roscidus.com/blog/blog/2014/06/06/python-to-ocaml-ret...
Wow if I could use this for coding at work, instead of the using the bad monitors they have. That would be amazing !

Does anyone know more about this tech?
"Should an accident of birth(place) be the most import decider?"

There is a school of though that it shouldn't. Many countries confer citizenship jus sanguinis (by descent). Is that system easier for you to understand?

Citizenship conferred jus soli (by place of birth) arose at a time when people were less mobile and less likely to acquire citizenship by "accident of birthplace" and when there were few practical benefits to citizenship in any case. It seems entirely outdated.

Modern nations belong to their citizens who are free to vote for representatives that write laws to benefit citizens and their children.

I doubt you'll have any luck convincing the people of the United States to give away their kingdom or taking it by force.
The software that we build tends to gain layers. In theory, each layer adds new functionality that couldn't be done on a lower layer. The problem comes when someone unnecessarily implements lower functionality in an upper layer (like reading local files through a web server). It happens because systems are too complex now for a specific dev to know every layer, and new hardware is fast enough that it doesn't matter that you're taking an order of magnitude more resources than you actually need to do the task.
This is great news, at least better than proposing a giant vent system.
The biggest difference between Random Company #461 on the marketplace and fulfilled by Amazon though is this

> Amazon also handles customer service and product returns for Fulfilled by Amazon items [0]

[0] https://www.amazon.co.uk/gp/help/customer/display.html?nodeI...
I no longer develop application code. Instead I am a professional fighter of JavaScript build systems.

Actually not strictly true. I spend about one day per week writing application code and the rest of my time trying to work out why some npm module that I need to use won't compile.
You need to signup & login but the account is free. Unlike Openzone or others which are not free (in $) for everyone.
> I wonder how other decimal comma countries have been able to stave off the decimal point.

Yes, I looked it up a while ago for some reason, and was surprised the comma was so widely used.

I'm also surprised SA uses the comma, because if there's any kind of pattern it seems to be former British Empire countries, or places where Britain had some historical connection, that use decimal point, and Continental Europe, or former European colonies, using the decimal comma.
I am not hiring from India, my intent to hire was international students. I am with the proponents of H1b reform to prevent companies like Wipro & TCS using them for outsourcing/offshoring. But to say "there is no skills shortage" is at best laughable.
Of course the white house cares. Public safety is a top priority. The DOD is telling them that putting back doors on encrypted devices is the only way to keep the public safe when nothing could be further from the truth. It will make us less safe by making sure criminals always have an avenue to our digital data along with the government.
here's a state machine representing a lock in elm:

type State = Locked | Unlocked
type alias Model = State

lock : Model -> Model
lock model = Locked

unlock : Model -> Model
unlock model = Unlocked

open : Model -> Bool
open model =
if model = Locked then True else False

and here it is in erlang:

lock(_Lock) -> locked.

unlock(_Lock) -> unlocked.

open(locked) -> false;
open(unlocked) -> true.

i think working with state machines in imperative languages is messy, mistake prone and hard to reason about. functional languages are just better for managing state
INTELECTUAL SOPHISTICATION MORE IMPORTANT THAN IQ
OOP concepts may be simpler, but their application are about as complex as the application of the concepts from category theory.

You can learn what is a monad or an functor by reading/writing code with them. Pure Math is incredibly hard to learn without context.
The author says that when they imagine what they want to tell the computer, they imagine an imperative sequence of commands and side-effects. Lo and behold, an imperative language is a closer match to what they are thinking than a functional language.

No. Shit. Sherlock.

I’d say the same thing about human languages. Can you imagine me criticizing Japanese because when I try to translate the English in my head to Japanese on a word-for-word basis, it’s a lot of hard work and the result is terrible?

The point of learning a different language is not to learn how to translate what is in your head into whatever the language demands, it is to change what is in your head. Alan Perlis put it best:

> A language that doesn't affect the way you think about programming, is not
> worth knowing.

What I would say, is that if you know language X and want to compare it to language Y, you need to keep working at Y until it affects the way you think about programming. If it doesn’t, you can then say that it failed to improve you as a programmer. If it does, you can then give a thorough review of how your new perspective has improved you, and whether it is worth the effort.

I’m not saying FP is better or worse, but I am saying that “It’s terrible for writing the imperative programs in my head” is not a good argument.
I recall reading too that iOS effectively screenshots the app as you exit it and displays the screenshot while it kicks it back into memory on re-open. It looks like it's loaded instantly but isn't actually interactive until it fully comes back

I don't believe this is where I originally read it but does mention it http://www.geek.com/apple/how-ios-tricks-you-into-thinking-i...
I find their Tumblr of latest additions more pleasant to read http://victorianhumour.tumblr.com/ -- possibly because the jokes are handpicked and correctly transcribed. It's still not very funny (but non-funny in an interesting way), but at least it's often understandable.
Imagine a replica of client data on mobile devices, one shard per client.
beg your pardon?
you said "react cool" and "lazy eval bad" in the same sentence... what's react but lazy eval of the dom?
A few comments:

* It is often recommended to use cpanminus[1] instead of the CPAN.pm module. But it is up to the distribution you try to install to declare it's dependencies correctly. Not doing that is a bug.

* If you use cpanminus you can use the --notest flag to skip tests. But tests are a feature.

* Software have bugs. Reporting them when they are found is how software get less bugs.

* Cpan distributions should not[2] use external binaries (and exceptions should be clearly documented and motivated).

* The ease of use of regexes in Perl is not an argument for not documenting them (and in this case) the document format they are meant to parse.

* There are several different data dumpers. No assumption on the user's preference is made.

* If you use a newer Perl (5.12+) you get strict enabled automatically[3], and also (depending on which version your code requires) some new features. Due to backwards compatibility it is not possible for newer Perls to enable strict or warnings implicitly.

The Perl of today is also vastly improved since the 1990s, hopefully you will come across some modern perl too.

[1] https://metacpan.org/pod/App::cpanminus

[2] https://www.ietf.org/rfc/rfc2119.txt

[3] https://metacpan.org/pod/release/JESSE/perl-5.12.0/pod/perl5...
i get that, and i'm probably oversensitive. there is some semi-açcurate analogy to be made w/ the use of racial epithets w/in and outside of racial groups here. playfulness can be fine (to a point) in polite company, but it's helpful to be a little more guarded w/ language in open forums.

idk, i just recently had an experience with overhearing a conversation that used not just "crazy" but specifically "bipolar" in a way that made me feel uncomfortable/marginalized. that's on me for being oversensitive, but it's totally on other ppl/society for not recognizing that "mentally ill" ppl do a lot of useful and producive things, that w/ proper care it's possible to do just a/b anything someone w/o a (diagnosed) condition can do, and for lumping an actually variegated an nonhomogeneous group of ppl together under a few easy labels.

uuugh, enough hn for a while, one way or another.
It does not dictate how you should architect your app.

This is a little optimistic in practice, because while React is often described as being just the V in MVC, it also has significant scaling issues out of the box. Useful strategies for keeping the performance acceptable can have profound implications for the wider architecture of your application.

For example, it seems many in the React community are moving towards using immutable data for the underlying model and pure render components with React. That means you can write efficient shouldComponentUpdate checks. However, it also means you have to design your version of whatever the "M" and "C" become similar to how you'd structure a functional program, which is not at all natural or idiomatic in JS.