skysight-inc/HackerNews huggingface dataset:
> Only by social convention. Not enforced by the language's semantics

Many FP languages do not enforce purity (OCaml, F#, Clojure). Even in Haskell, one could use IO and IORefs everywhere, the semantics fully permit writing "Java code" in Haskell. We need a culture and an understanding of what it means to write idiomatic Haskell.

EDIT: responding to your edit:

> The problem here is the inability to do functional programming. The reasons for this are technical, not cultural.

Yes. But it's not just problems with semantics, it's also the syntax, defaults and available libraries. Culture feeds into all of this, especially as the language and ecosystem evolves. I'm arguing that it does matter.
That anxiety is good, it means you still care and are not jaded. That anxiety goes away when you do little things to move forward, even if it's inch-by-inch.

Start with baby steps to get used to good habits. If you do no exercise, start doing 2 pushups or 2 squats.

Clean your room. Organize your house a bit. Make a very easy to follow, unambitious schedule. Once you get comfortable, refine it very slowly.

If you are going to use social networks to stay in contact with friends, keep a countdown. 20 minutes a day total works for me. Same for TV/Netflix/reddit. Meet up with your folks more often, listen more and don't be a drag. Try to stay positive in spite of a bad situation. There's light at the end of the tunnel.

Go to bed early and listen to interesting audiobooks. You either fall asleep early or you advance your reading, win-win. Start decreasing the amount of processed foods and replace all drinks to water or tea.

The key is you gradually change as you need to retrain your brain to good habits. Same with your gut microbiome and your fitness.

You don't know your full potential.

(Many bits taken from JP)
So, you're saying 'it works and that's why we shouldn't use it'?

One company isn't a particularly solid sample.

For some contrast: I've looked at 9 companies since the beginning of the year and all of them took the GDPR serious enough that it made them re-evaluate their privacy, security and data life cycles. The interesting bit is that they would have never done any of that if not for the GDPR, and that no matter what level of use the data privacy tools will see it doesn't matter because before they didn't have those tools and now they do.

Besides that the GDPR has much wider scope than just allowing people access to their own data. Also, you should expect that as people become more aware of these things - and consumers will be more aware - that such tools will see more use.
I designed an API first forum written in Go, front-end in Python, that feels in the same ball park fast even for image heavy pages: https://www.lfgss.com/

Aside from making pages with few database queries, it's about removing all 3rd party dependencies and going same-origin to speed up the front-end too.

The 2 biggest things that slow me down are auth and analytics, but on the latter I trust you use an adblocker, and for auth I have a plan.
And can be gamed by detecting Google and serving different content to users that if slower.
[1] and [2] – [3] === 9? Looking into assembly code of coercion
Yes, for those companies we have the 20% of worldwide gross revenues.
Without wanting to plug my own software too much too soon, I've been building a self-hosted static publishing CMS (that sits on top of a git repository rather than a database). Not ready for prime time just yet, but getting there

https://www.graphia.co.uk
Check the "logo attribution" option and the $0 plan becomes the $39 plan.
Inside iCloud Drive: Pushed updates, that syncing feeling
Funny to read this today. Over the past few days I've been building a personal project related to this.

Just a way to easily update some small tidbits in a static site without a CMS.

Something between a static site and a full-blown CMS. A way add some editing capabilities to static sites.

http://inflater.io
I thought that the more languages one learns the easier it becomes?
As it should fail in any validating resolver. The CNAME signature recently expired: http://dnsviz.net/d/www.immigration.govt.nz/dnssec/
https://github.com/dflemstr/rq/blob/master/README.md
They were purchased by NYT — wouldn’t they fall under their higher journalistic standards now?
I used to worry about this, but I've got enough furniture and accumulated stuff that the size of my car is irrelevant for moving house. My bed frame alone is too big. Hiring a transit van for a couple of days is about $50 and gives you over 2m of room inside.

Pretty much as soon as you buy a bed, your car is too small. And if you're at the level of self sufficiency where you own a bed, you probably own other things like chairs, tables and chests of drawers.
That's the weird thing about meaning it is completely subjective to that person.Having better connections with people especially one's immediate family and friends ,doing something that helps something larger you (like your pwd manager),etc has a good chance but does not gurantee meaning in one's life.

Overcoming a challenge which is hard (but within your limits a hard) is an incredible thing to experience.

As we humans are social creatures something emotional(mostly +ve) might also sustain your involvement in that activity and thus lead to eventual higher reward from that activity.

But at the end for most people who are present here I think I can safely say that doing something which involves less screen time and more "physical interaction" with the world would be beneficial.
Unity at GDC – C# to Machine Code (HPC#)
Tell that to the residents of Japan.
You might not realise how much AMP you come across every day.

Your web browsing isn't it at all.

If you are on an Android phone go install NetGuard and take a look at the logs.

There are a few domains that come up for almost every app:

1. graph.facebook.com

2. graph.accountkit.com

3. .crashlytics.com

4. .ampproject.net

5. .segment.io

AMP Project is up there. The majority of the apps on my phone now do their content via WebView + AMP.

In this AMP have found their niche.
I have written a similar tool called catj [1]. I mostly use it when I need to construct JSON expressions when working with jq.

[1] https://github.com/soheilpro/catj
Teslas made since October 2014 have a radar.

https://www.tesla.com/blog/upgrading-autopilot-seeing-world-...
There's no pay to win in Fortnite. Please correct me if I'm wrong.
The price one pays for the flexibility Spring offers is in terms of performance. Spring uses a lot of reflection. It makes it very slow. The startup time of Spring applications tends to be around 20-30 secs. If you add Hibernate to the mix the situation becomes even worse.

Yes, Spring offers a lot of flexibility in terms of IoC and testability. I generally avoid Spring for B2C apps. (For B2C apps, I tend to favor Jersey + MyBatis) But for B2B apps and in-house enterprise apps, Spring is a very good candidate.
I didn't downvote you because I find your assertion about throwing money at a problem to the point. Others have downvoted you perhaps because your other assertion that there's no working fusion reactor might be unfounded, in other words, we might have already working fusion reactors but they are just not yet profitable. (I am not an expert.)
I think the golden question is if browser vendors are going to follow along community wishes and eventually turn the browser into a general purpose VM, or just put a wall and state "this is all you will ever get".
>15 years

Stopped reading.
Villagers come to rescue passengers of stuck train in parisal, india
From the article:

> In it, they are trained to keep hands hovering near the wheel at all times so that they can quickly take control when the car does not safely respond to dangerous road conditions or “noncompliant actors,” such as people walking in the roadway
I highly recommend reading the book You Don't Know JS [0]

It has a Gitbook version too [1]

But it is very big but really good that you will understand the depths of JavaScript. So to begin with learn Vanilla JavaScript. Vanilla JavaScript means JavaScript only without any framework.

Then try learning ES6(ES2015)/ES7(ES2016) or in generally ESM (EcmaScript Modules). You can learn it by checking the resources below on my personal Github repo.

So to summarise, learn Vanilla JS first, then EcmaScript Modules & then choose any framework. If you don't know what to choose, or are confused then I recommend choosing either one of React or Vue, due to both are very easy to start code with.

I also made a list of my favourite reads. Remember I read a lot of books & put my favourite on there [2]

[0]: https://github.com/getify/You-Dont-Know-JS

[1]: https://www.gitbook.com/book/maximdenisov/you-don-t-know-js

[2]: https://github.com/deadcoder0904/awesome-javascript-reads
Seems like Wirecutter's response didn't respond to things they didn't want to talk about. Looking at their standing desk guide now, they still haven't reviewed any of the newer xdesks. Kinda surprised Wirecutter got away with the better end of this.
In my experience Spring Boot apps tend to start in around 5-7 seconds.

It all depends on what your init logic is I guess.
Suck it, Jin Yang!
Do you mean to imply he was saying this particular bridge will collapse, or that bridges in general do collapse?
I saw a bit of it in Orange County which has some of the best schools in CA. It was usually a two-fold scheme. You build a business hosting foreign students in a residential home and providing some ancillary services. They attend local public high school and struggle with English because of the language barrier.
Along those lines, Tumblr for pornography.
One difference is that while your safety around knife or tool depends only on you, your safety on social media can easily be ended by other people.

You don't have full control over social media you do have around cleaning and knives.
Oops, I remember checking this out quite awhile ago. Seems it has gotten awesome. What an excellent way for less technical people to build their own website!
Logged in to my AliCloud account and saw a bill for 18.021 USD. Almost got a heart attack...
Just the other day I was looking over my notes from (horror of horrors) 3 years ago on core problems to avoid when designing a language, and this article came up. Still just as good a read as I remembered, made all the more pertinent by the intervening time in which I have repeatedly cursed python's implementation for the massive friction burns it has caused me. Probably needs a (2015) on it for context, but I consider it timeless!
Spring as a whole is pretty great, but due to its long history there's a lot of out of date information on the web out there, from the likes of mkyong and so on.

Not a problem with the framework per se, but it does add an extra layer of frustration when trying to search for an answer to your specific problem
> The actual point of FP, as I see it, is that it decouples a function from the context it is executed into.

I 100% agree with this. To me, a rough measure of code simplicity is the amount of additional context you need to be able to reason about any specific function or object. Pure, statically-typed functions are close to ideal - all the context you need is encapsulated within the function definition itself.

Functions in dynamically-typed languages are trickier - in addition to the function definition, you also need to know how the function was called, since there's no guarantees about the arguments that were passed in. Impure functions are the worse - if the function interacts with global state, then you'll need to be aware of every callsite that interacts with global state. Practically speaking, that means you can't reason about anything in isolation - you always need to hold the entire program in your head. Hence the whole "globals are evil" mantra.

Thinking in terms of functional purity gives a convenient way to write clean code. I definitely recommend every programmer at least be familiar with the concept.
Interesting piece but perspective matters.

> don't wait to do things that matter, and savor the time you have. That's what you do when life is short.

It depends on your situation. If you cashed out and don't have to worry about paying rent and feeding your family (like Paul) then it's easy to spend more time with your family.

If not: You are constantly torn between spending time with your family and getting your startup/career/job right to be able to finance the next vacation/school/flat. It's actually even worse. Every minute you spend with your family you face opportunity costs losing money you could invest into your family. If you work only your kids won't remember you.

Try to cash out before you hit 25, not later than 30.
This kind of tools borderline the very interesting threshold where writing your own tool can be less of a mental effort than discovering, learning and keeping track of these small utilities separately.

I've written a similar tool in Python, both for JSON and XML. Especially the JSON version was dead simple, probably fits on a single screen and took 15 minutes to test and write. Surely it didn't have any "features" but it does the job of letting me grep json.

Gron is probably 10x more versatile and actually comes with useful features but I'd really have to have pressing needs to do transformations of JSON on a regular basis to switch over.

The same applies to libraries in programming languages. There is a very vague threshold, depending on the expressiveness of the language and operating environment as well as the hardness of the problem itself, where it either makes sense to write your own library or reuse an existing one.
Async web servers are more complex than thread per connection ones.

I think that's the big thing the author is communicating.

It's true.

And most types of development don't need async io. It's worth talking about.

The author makes the mistake of calling this a language problem and not a web server problem.

With python, Java, c#, and hell, even js, you can have a thread per connection web server if you choose to. This will avoid many async woes.

It's just not trendy.
Earth’s Moon in Greek is actually “Feggari”, from the verb “feggo” which means to radiate light. Moon in general in Greek is “Selini”, a natural satellite orbiting a planet.
Im lazy, don't actually know what I'm doing, and the whole thing seems like a lot of trouble to setup (don't have a decent way to move the wood, or convenient/immediate access to tooling, etc).

I'll beat the price at the cost of time and effort (and probably some favors), and I'm not sure carpentry interests me enough for the learning to have much value. So its a last resort, if I can find nothing decent, and decently priced.
This article has already been posted 3 times on HN, and have been extensively discussed the first time here: https://news.ycombinator.com/item?id=8984648
Allright.

https://stackoverflow.com/questions/49607801/perl6-vs-perl5-...
The Wirecutter was bought by the NYT in 2016: https://www.bloomberg.com/news/articles/2017-09-13/new-york-...
Right and the point of this is to have an interim period during which negotiations can begin. The EU is aware of this.

“Only reasonable that EU seems to be omitted from
tariffs based on national security grounds given that
EU and US are close allies,” Danish Prime Minister Lars
Loekke Rasmussen wrote on Twitter. “Rather than
threatening to raise tariffs against one another EU and
US should work together to solve the real problem of
overcapacity.” [1]

There's no point in doing tariffs and just permanently exempting half of the world's supply of steel, aluminum, etc. The tariffs are definitely pointed at specific countries and to also put pressure on other countries to act alongside the U.S.

1.) https://www.usatoday.com/story/money/economy/2018/03/14/euro...
Right. I think you could say that the unusual design contributed to the failure, if only because the on-site changes were made using assumptions that would have worked on a more conventional design.

It's kind of like batteries. It used to be that you'd want to discharge battery cells completely before recharging them. This was true for Ni-Cad cells. With newer Li-ion cells, doing this is actually dangerous. It's not necessarily the chemistry's fault when an over-discharged cell starts a fire later on, but if you substitute a new design, you'd better cover the new rules with the implementation people.
I was actually just pointing out the "There are employees there who probably buy the idea that it's motivated by speed" :)

If the project was motivated by speed, it:

- wouldn't be implemented in a way that breaks Google's own speed guidelines

- would be implemented in a way that favours speed, not placing in search and inside Google's ecosystem

- would be open to input from the web community, not in through an entirely opaque process inside Google
I think we'll start seeing the standard configuration of 1.1.1.1,8.8.8.8 everywhere.

Google/Cloudflare tackled the UX of free DNS spectacularly with these gold IP addresses. It's the primary reason I use them instead of OpenDNS, which was an earlier player in this space.
Factor of safety isn’t really uesd any more, it’s really a combination of load factors and resistance factors. However, the ‘factor of safety’ would have generally been in the range of 2, not 5-7.

Now, there’s dead load, live load, wind, etc, and they’ve all got different uncertainty factors. Resistance factors are assigned based on the variability of the material, concrete more than steel, and fracture critical higher than redundant.
Why Do We Think Serial Killers All Wear the Same Glasses?
MooseFS have a highly optimized service to load all the metadata into memory (similar to Redis).
Works so much better than other software quacks I had the misfortune of working with.
I've always been happy with their recommendations, but they were not higher-end electronics and more thesweethome stuff.
I think however the other way round does work. That is computers do stay alert and are able to take over with very short notice.

This is essentially human augmentation. The regular collision detection in many cars now is a good example. It's a relatively simple system that should stop a distracted driver from crashing.

Musk said something similar for the Tesla trucks, the auto-pilot can take over if the driver falls asleep or becomes unwell. Again this is augmentation.

The only way to keep the driver alert is to have them driving all the time.
I am not from silicon valley, is cashing out before 25 that usual? How much money are you talking about?
Yes, 3rd gen blockchains aren't blockchains anymore. :)
South Koreans will soon be able to use cryptocurrency as payment in 6,000 stores
Yes that's why they hybrid.
Stopped using AMP.

Created a site in pure AMP. All competitors didn't use AMP then (1 yr ago). My site was the fastest, didn't have any ads, was the lightest, the most beautiful, had the best UX flow.

SEO-wise my site still doesn't list on the keywords which are in H1 and the page title but all the crappy, non-AMP, megabytes big slow-loading, ads-heavy competitor sites are still in the top ten SERP.

Guess that even Google stopped giving AMP sites any special rank power except they are news sites (then you will see them probably in the carousel but only if they are accepted with Google News).
This song is going viral everywhere
I agree with the article but not with the editorialization in the title.

In the last 2 years I've mostly used Elixir and JavaScript. In Elixir, generally all functions are synchronous. In JavaScript, there's the typical two-color functions that the author describes: synchronous and asynchronous.

Elixir is nicer by far for a lot of parallel programming. Our backend can handle large loads on a single VM simply because of this.

However, the world is asynchronous. It's very nice that Elixir abstracts it away, but sometimes that's not what you want and then Elixir makes things significantly harder than JavaScript.

For example, imagine that my backend gets many parallel requests for mildly different resources. Each resource needs to query some other system (some 3rd party API, a DB, whatever), but it turns out that many of them will do exactly the same request to that other system even though the user requests they're handling are all pretty much unique. A simple solution is to cache the requests every second/minute/whatever and combine them all. This is nontrivial because I want to cache the running requests, not the responses. If there's one request running, I don't want to launch an identical request.

In Elixir, I have to carefully design a GenServer to make this work properly. Or maybe use a library such as the fantastic `memoize`[0] which is great for this, and can even do it without spawning any additional processes at all. But in any way, I have to add complexity - either complexity that I write or complexity that I import. `memoize`'s core caching code is amazing, but not trivial[1].

In JavaScript, I can just cache a bunch of promises in a Map or an object. If the promise exists and hasn't expired, don't do a new request. Else, do the request and cache the promise. Then, in either case, await the promise and use the result. It's 10 lines of boring code.

I still like Elixir better for backends and I'm happy that our backend isn't Node. But I'm writing this to underline that explicit support for asynchronicity can be a feature too.

[0] https://github.com/melpon/memoize
[1] https://github.com/melpon/memoize/blob/master/lib/memoize/ca...
This seems like a good faith comment. I'm not really sure why it's getting downvoted. Someone care to shed some light?
Themes: A Small Change to Product Roadmaps with Large Effects
> Why do mattress manufacturers obfuscate the model numbers so that "every one of the stores gets a slightly different mattress" making it impossible for consumers to compare? TVs aren't like that.

I can't speak for the US, but in Germany all kinds of electronic appliances (TVs, washing machines, toaster ovens) are regularly advertised in the two big electronics stores' brochures and newsletters, and the model numbers are very often nothing the manufacturer's website knows about.
You're making the assumption that crypto will fail 100%, which is arguably not a smart thing to say, because no one
knows for sure.

Furthermore, Smart contracts are a business content.
Funny, I see it the other way around; the tech is so flexible and untied that it's hard to classify any use as outside of what was intended.

Smartphones, 3D printers, VR goggles, Quadcopters, IPFS - all of them are designed without a single use in mind, but as platforms for the users. A certain use case (e.g. 3D printed heads as urns) may be unexpected, but it's not an hack, it's just the tech being used as intended.
Except I remember my times as sysadmin, putting out fires on Tomcats brought to their knees by 1 poorly performing query and a few impatient users hitting F5.

Yes, async is indeed more complex but it is a measurable improvement over previous - thread based - designs, and it is trivial to hit scenarios where it will make a difference.

Just like anything though, it must be applied sensibly: not every single call must be decomposed into a choreography of async collaborators (yes, listen that, it’s “architecture talk”, it’s like that dark language used in Mordor that even Gandalf is scared to pronounce. Ever worked on a DDD/CQRS/ES project? ;)
Overview of FDA Regulations for Medical Devices
DeepMemory – MemGEN: Memory Is All You Need