skysight-inc/HackerNews huggingface dataset:
Hypothetical example... but what nefarious things can one do knowing that some anonymous user happens to e.g. refresh pages a lot (or even, how can that data be sold)? OTOH it does let the developers know whether removing the refresh button would affect a lot of users. Or whether moving it elsewhere is sensible (e.g. to the toolbar if used a lot, or into a deeper menu if rarely used).

Sure, this example is contrived. But in some cases features make app development more complicated (ALSA support in desktop firefox might be a better example, but I'm not super familiar with that case). Knowing that a feature isn't used makes it easy to accurately remove crufty/complicated features without negatively impacting a lot of users. And makes it possible to justify retaining complex features that happen to be useful to many users.

Same story with crash reports (typically users have to explicitly confirm sending crash reports in many applications, no idea what kind of system Focus uses though). You need to know which issues are actually important, developers don't have infinite time (as much as we wish we did).

(I used to be sceptical too... but you're sailing blind without this kind of data, and ultimately hurting both yourself and your users.)
I'm eagerly awaiting that backlash. I complain but I'm probably 95% in agreement with the status quo. But I still want the push back.

There's a line I like "Hegemony means never having to admit you have an agenda."
FWIW, I didn't notice the misspelling.
Seeing that they are mere algorithms, yes. Being X implies intention. At best they can accidentally put out something sexist as a result of their input.
Focus uses Adjust, Adjust uses com.google.android.gms:play-services-analytics.

Ergo, Focus uses com.google.android.gms:play-services-analytics.

Ergo, Focus talks to certain Google Services.

If you recursively import a proprietary binary, it still ends up in the resulting apk. I’ve checked the APK, the Google Analytics libary ends up in it, and it is not in any way sandboxed from the rest of the browser.
An even better point than mine! Yes, developers (us) have enabled this situation, as well.

Drives home the point of why I need to move on and be careful where I put effort.
In social interactions maybe ? Japan seemed to be a very repressive/elitist society. You had to be polite in everything, and sexuality is often the opposite of that (you could probably have sex through polite chat beforehand, but I'm sure it requires maturity that most people don't have)
My feeling is that the success of ICOs is a side effect of the meteoric rise in value of Bitcoin and Ethereum.

There are many people who have become virtual currency millionaires. At that point anyone would be looking to diversify. Purchasing traditional assets would mean paying taxes on the coins. Purchasing ICOs just diversifies your coin holdings into an even more speculative asset class.
That is totally true and it expands the programming possibilities...

But... it make debugging harder without even more tooling. And debugging is most of the time spent in software... which probably explain the origin of the problem.

Especially when you need to reverse engineer code provided by a vendor.
I tried to buy a google pixel from the verizon store to do some VR programming and they wouldn't sell it to me without a contract. I'm standing there trying to hand them $800 for a product they have on the shelves and they refused. It was a very strange moment.
Right and left folds in Python and Haskell
They would simply sue a particular company for employing infringing technology. They wouldn't have to nor want to make any broader claim than necessary to achieve their goals in the case at hand.

It would likely be a company suing FB for infringing a patent who happens to also use Preact in a site. FB presumably wouldn't have access to the site source code (pre-suit), but would be looking at the compiled, minified public site. I don't know how Preact and React look when compiled compared to each other, but given their similar structures it might be hard to tell them apart. FB would identify the offending bits of code or code structure. They wouldn't need to even use the word "Preact" (or "React") in the suit.

If the underlying suit was a patent troll suing FB, FB's use of React patent clause might actually be celebrated in a enemy-of-my-enemy kind of way by the broader developer community.

It would require FB to finally disclose the patent numbers applicable to React. I've spent a few hours attempted to review FB's patents to find anything related to React technology, but it's a needle in a haystack challenge and I failed. There are tens of thousands of patents and impossible to know what keywords to search for. (If someone else has done this work, would be great!)
It seems to me that you define socialism as whatever it fails and capitalism as whatever it works.

Pure capitalism has never existed neither, so we have a spectrum of possibilities. I would argue that the better system is the one that improve the lives or the people and, that should be the measure.

Even if capitalism was the definitive answer, that doesn't mean that we should stop criticizing it.

If you have a system where, in the middle of the most advanced age of humanity, most of the people have not even the most basic needs covered, like was (and it's) the case of Venezuela, some criticism is needed.

I'm not going to argue that socialism is a good system, I agree with you that we have not good examples, but that doesn't automatically, leave us with a system where all resources have to be allocated by the market. In fact, if something has been proved for now, is that is a very bad idea.

So, when you criticism socialism, remember that a lot of countries in the world redistribute resources in a not market way very successfully. Call that whatever you want.
Google doesn't invest heavily in Go. It almost certainly invests more in JS, Python, Java, and C++. I think the difference is philosophical--Go doesn't pretend that every obscure edge case deserves equal support to the main case, and so its tooling is much simpler.
This is great stuff! If anybody's looking further up the stack and executing functions via HTTP / etc. via a gateway, we've developed a formal specification called FaaSlang [1] that includes type-safety mechanisms and standardized error reporting.

This can be connected above your FaaS provisioning system; whether it's in front of cloud-native offerings like Lambda or Azure Functions, or you're running a system like OpenFaaS yourself. FaaSlang defines execution semantics, it is not opinionated about where functions are stored or how they're run.

[1] https://github.com/faaslang/faaslang
Code quality was the main issue driving a lot of folks to React. Like lambs to the slaughter...
Same for Yarn...
Good point about Chromium, I'll change that - it wasn't deliberately excluded. But disagree about the messaging, in this case it was more important to the client that the feature worked as smoothly as possible than that everyone could see it. In some cases I'd disagree, but given the narrow target demographic (and their browser choices) here, I think it was a reasonable choice.
> It's worth noting, however, that the fact it is illegal is specified in the state code rather than being decided by this court case.

Ah, you're right (I didn't read the whole document). In case you're interested, in other states there is a different criminal code (called the Crimes Act (1990) in NSW)[1]. The section on "child abuse material" (15A) is quite vague on what limits there are for something being "material depicting child abuse" and there is also a catch-all statement saying that something is also considered child abuse material based on " the standards of morality, decency and propriety generally accepted by reasonable adults".

In general I would be surprised if it was legal in any state. I also checked, and it's considered "objectionable material" in New Zeland[2].

[1]: https://www.legislation.nsw.gov.au/inforce/a0a6239c-5e99-6ad...
[2]: http://www.legislation.govt.nz/act/public/1993/0094/latest/w...
coin offerings are great, it keeps increasing the value of my bitcoin, so keep it up please.
I'm not conflating anything. I'm saying that applying American sexual standards to Japanese culture is problematic. If it's not uncommon for ~14 year old women to earn spending money as sex workers, why wouldn't pictures of naked ~14 year old women be likewise common?

One could, of course, argue that Japanese culture is backward and unenlightened. Indeed, I'm sure that many Japanese are convinced of that.
My previous summary of ICOs: https://davidgerard.co.uk/blockchain/icos-magic-beans-and-bu...

Truly the least substantial asset I have ever seen. I hope the SEC goes feral on them, and soon.
1) I think you missed my point entirely here, I probably didn't do a good job of explaining it. I was trying to say that you run Puppet once at build time to bootstrap the configuration for the image, that's it. You could even uninstall it at the last build step if you want to reduce final image size. The primary distinction here is declarative vs imperative configuration management.

2) The one process-per-container dogma isn't necessarily the only way to run a successful docker stack. For example, I don't see anything wrong with using supervisor to manage whatever process you're running in your container.
Ask HN: When you are drunk and take a self-driving car home, can you get a DUI?
So, my wife and I were talking about this. The discussion started out about us drinking at a bar and taking a taxi home. Using the app to tell the self-driving car to drive itself home. Then I thought, well, heck, have the car drive us home. Then, suppose the car is pulled over or has a traffic checkpoint. Would you get a DUI?
It doesn't make sense to me. I thought BTC was supposed to decentralize currency. One currency to rule them all. Having dozens of different ones that fluctuate like this seem counter-intuitive.

Sure, it's still decentralized. But now in order to buy things, we'll have to realize some sort of standardization. Of course, there are things like the Pot Coin, which obviously has only been deployed for a certain purpose.

So maybe everything is relative to BTC anyways, just specialized for different markets.

Apologies for the stream-of-consciousness format.
It may end up in the APK but that does not mean it is actually used. This is the unfortunate side effect of pulling in dependencies with dependencies.

I can assure you that Adjust does not talk to google analytics behind our backs. It may have that option, but we did not configure it to use that functionality. What would it talk to, we did not configure an API key.

I will find out if we can remove this dependency to avoid confusion.

Filed https://github.com/mozilla-mobile/focus-android/issues/1174

(And for completeness, Adjust source code at https://github.com/adjust/android_sdk)
> We can identify noobs from a distance.

I'm assuming you were being a bit sarcastic here, but these kinds of comments do come across as judging people just because they're trying to learn a new hobby with certain equipment. It can be construed as a type of shaming.
Another option that is interesting right now is Polymer 2.x if you haven't tried it recently, give it a shot.

https://vuejs.org/v2/guide/comparison.html#Polymer
There are some similarities shared between polymer and react/vue (personally only used react and angular 1.x before).

I've built applications with it using polyfills and things worked just fine with legacy applications on IE10 + jquery interacting with web components.

Performance is nice, there is more and more adoption from giant enterprises like Netflix, IBM, GE, Gannett, Electronics Arts, CocaCola, ING, BBVA.

Webcomponents.org has over 1k components to choose from and is growing.

Now with `lit-html` arriving soon we might see alternative to JSX if someone wants that, polymer-redux or polymer-uniflow is available as an option too.

https://hnpwa.com/ - one of fastest Hacker News implementations is based on Polymer - and that is even without SSR.

SvelteJS also seems nice, although it seems one-man project for now :( On Polymer end I hope that on the summit next week they will announce proper NPM support finally and I miss that.
I don't care what we call it, it's still confusing as hell.
My impression is that ICOs are motivated solely by greed. There isn't a whole lot here other than an insatiable thirst to make money.
After having coded tens of thousands of lines in Golang for 4 years, there are a list of probably hundreds of grievances I have about the language itself. The problem is that they're generally outweighed by the simplicity, consistency, and clarity of the language. Is the error system terrible? Obviously. Lack of abstract data types? Awful. Is Rust one thousand fold safer and more syntactically powerful by comparison? Sure.

But the fact is, in a world where we as developers often are learning and working in a new language every year or two, time-to-productivity and proficiency in a given language is one of the most important, if not the most important, metrics for a language. And Golang knocks this out of the park with its obvious syntax and great tooling. You can bring in a new junior programmer onto your Golang stack and have then turning out useful pull requests in a week or two, which I can't say for languages like Rust.

I _hate_ much of Golang's engineering, but for collaborative programming I think anyone would agree that it's a highly productive language.
This is because naive can-do-it-all allocations in C/C++ can be expensive, not because allocations are inherently expensive. In C/C++, you have:

1. A call of a library function that typically cannot be inline.

2. Analysis of the object size in order to pick the right pool or a more general allocator to allocate from.

3. A traditional malloc() implementation needs to also use a global lock; thread-local allocators are comparatively rare.

4. For large objects, a complex first-fit/best-fit algorithm with potentially high complexity has to be used.

Modern GCs typically use a bump allocator, which is an arena allocator in all but name. In OCaml or on the JVM, an allocation is a pointer increment and comparison.

Even without bump allocators, it's easy for a GC implementation to automatically turn most allocations into pool allocations that can be inlined.

Also: much as people love to talk about video games, video games with such strict performance requirements are not only just a part of the video game industry, they are a tiny part of the software industry.
Likewise, the fact that I've been you makes it even more so.

I believe in experience; and our ability and responsibility to draw conclusions from that experience and speak the truth that we see, especially when it's inconvenient.

I believe in the ability and need to have different, peacefully coexisting views and explanations; to stand up for who we are, and accept others for who they are.

I don't believe in blindly trusting authorities while ignoring experience and shaming others into silence to protect the insanity.
The founder is also a legend at the Bay Area Street Hockey league, playing at the James Lick school in Noe Valley. He was probably the best player for the better part of a decade, having played hockey at some Ivy League school, IIRC. Another startup connection is one of the founding or very early members of Zynga used to play in that league as well.
Is this a positive or negative example?
I think dependent types is next big step, and it also blurs the line between compilation and runtime. This will enable applications to do domain specific optimizations since types become so much more expressive. Purity allows for automatic parallelization. What Edward Kmett does in C++ here: https://www.youtube.com/watch?v=KzqNQMpRbac could be the default for all computation. On a modern computer, data parallelism is free, since SIMD instructions take just as long as any other instruction.
It's not really "fighting corruption". It's elbowing in to the trough.
The Success and Failure of Design Inc
After looking through the Contents of both:

CASI looks very cutting edge, but also covers the origins of the use of computers for statistical methods. So this covers how computers can and have been used to do statistics.

FoDS looks like a very thorough data science book. Less of a "then VS now" book and more of a collection of what you need as a data scientist.

In CASI, I like the chapter on FDR, a very important topic not found in FoDS (?!). FDR is critical for correcting for multiple testing, seems essential for data science but maybe the authors consider it cutting edge and not foundational. However, the wavelet chapter in FoDS makes me happy, a very useful topic for series data.

Both great books, thanks for the links!
Interesting. For me the strange part is that it's written like a eulogy.
Patent applications are secret, not to mention that software patents can be very difficult to interpret and search for. RMS gave a fairly long talk about the various problems with software patents[1], and the difficulty in being able to find all software patents that may be related to a project is one of them.

[1]: https://www.youtube.com/watch?v=aiKRt3-FbM0
I cannot comment on the nutritional quality, but the way the ingredients are written down irritated me, e.g. "parsleydried" instead of "dried parsley". It makes it seem more like crafting instructions for Minecraft than a real-world recipe.
The point about layer complexity is a great one I didn't even consider. Your "config" step is no longer a mish mash of dozens COPY/RUN/etc directives (resulting in N new intermediate image layers), it just results in a single atomic layer where you run the Puppet bootstrap.

Obviously you could accomplish this with shell scripts as well to constrain your config step into one docker RUN directive, but I prefer the declarative state approach to the imperative one in this case.
An argument about socialism requires all parties to understand the actual definition of socialism. That is further than most peoples understanding of government.
Also keep in mind the growth of Cryptocurrency as a whole. New wealth is being created and reinvested.

For example, I participated in a token offering 18 months ago which has produced a sizable value. I then took 20% of the gain and spread it across new token offerings.

At scale, think of everyone whom invested in Bitcoin early and Ethereum at the ICO. Their gains are used to reinvest into the crypto ecosystem at the earliest stages, thus, keeping their fortunes regenerating and growing.
Facebook is in a difficult position, but I would bet that free speech laws (which they don't necessarily have to abide by, but would still want to be mindful of) and general public perception of nudity in US had a lot to do with that contrast.

Germany is a particularly sensitive case with respect to Nazis, but from experience and those of others, European countries in general also tend to be far more accepting of nudity.
Sorry but that's not true. We have a pretty heavy VueJS application in production with like 500 components and it's a pleasure to work with, and is still quite performant.
I would appreciate if Facebook would actually explain their license.

Especially: Is BSD+Patent strictly more permissive than BSD or not? There are two major camps as far as I can see:

Camp 1: BSD license does not give you a patent grant. You can always be sued by Facebook if you infringe (potential) React patents. On top of this, Facebook grants you use of (potential) React patents - but only as long as you don't enforce patents against them. If you do, you are back to the BSD license alone.

Camp 2: This camp believes a) that the BSD license implies an unconditional patent grant (for React) and b) that the conditional patent grant ('PATENTS') is not optional, but inseparable from 'LICENSE'. If this is true, BSD+Patent grant is strictly less permissive than BSD alone. If you enforce patents against Facebook, you stand worse than with BSD alone.

The only way this could be cleared up (beyond doubt) is by a court, or very easily with a few lines from Facebook.
I'm not very familiar with React, but Vue does have lifecycle hooks that work well: https://vuejs.org/v2/guide/instance.html#Instance-Lifecycle-...
> Purchasing traditional assets would mean paying taxes on the coins

Purchasing ICOs would be a taxable event.
May I suggest a thought experiment? Imagine you cannot use a smartphone for a period of 12 months; certainly, you would expend a not insignificant effort in finding a very capable flip-phone, or other mobile option, combined with perhaps two or three other devices (GPS, MP3 player) which would adequately replicate these smartphone features.

Now apply that mental effort to seeking a suitably differentiated mobile phone and I am sure you will find success.
And most of investments are motivated by what? Altruism ? Maybe 0.1% of all private investments are motivated by something else than "thirst to make money".
I don’t want a vendor directory in the first place, how do I avoid that? I want it to just automatically do its stuff just like maven/gradle/sbt work, and not deal with any damn dependencies. I want it to automatically set the dependency path, and handle incremental compiles.

If people claim it has so much better tooling than Java, then I expect at least it to work as well as Java’s tooling.
You're pointing at a real issue, but I doubt this post a good exempel of that issue.

I'd venture a guess that OP is not a prude at heart, just cautious enough to hedge heavily against being perceived to condone Lolicon.
> He seemed to indicate that it took him a week to figure out routing in React. I have never had that much trouble.

When you haven't had "that much trouble", it sounds like you're calling them stupid or a liar, and it sounds like you didn't consider the possibility that you're working on a very different problem or have a different definition of "figure out routing".

I store all of my user state in the URL. This way users can copy URLs to each other containing their state, I can press reload to debug things, Other people can embed portions of my application into iframes, and other good benefits.

However I don't want to sprinkle url changes and parsers all over my code, so I'd like to hook into the router system and glue it into the property system. I've probably been through a few versions of this idea with react and certainly spent at least a week in total trying to get it working well with all the different browsers and widgets, only to have react-router 4 come out and break it.

I then probably spent at least a day or two looking for similar-shaped hooks and couldn't find them. Maybe I should have spent more, maybe I should've been smarter.

However I note that the author of React-router took four very different approaches towards figuring out routing and produced incompatible APIs, which is a strong sign that they weren't able to figure out how routing should work either.
Looks really promising!
Do you think Backpack solved that problem for Haskell?
I disagree on your first example: I've historically found the extra whitespace a huge PITA for years. It causes extra "unpredictable" spacing in your design which is usually unwanted. It's only an issue for multi-line prose. React is opinionated here but I've found it's the most useful option.

On the 2nd point, you are partially correct. In general it's a code smell - strongly consider making it a component (in part for optimization). But definition lists are specifically strange: Unlike other repeating elements in HTML they don't have a container element like tr, li, fieldset, etc.
There are some good counter points at http://facultyoflanguage.blogspot.ca/?m=1 it is an interesting discussion and not as damning as the Economist article wants to imply.