Systemd-resolved does not keep the order of the DNS servers - <AUTHOR> https://github.com/systemd/systemd/issues/5755 <comment><USER4> The behavior these people are asking for is an implementation detail specific to glibc. It's also incorrect: all DNS resolvers listed in resolv.conf are assumed by relevant standards to return the same results as each other. I feel bad for the systemd developers, getting bug reports from people who don't understand their own computers.

<comment><USER5> Can you point out the relevant RFC, please? Didn't know about that.

<comment><USER4> From RFC 1034:

"The strategy is to cycle around all of the addresses for all of the servers with a timeout between each transmission."

Note that it does not specify an order -- the resolver determines that, and RFC 1035 even recommends keeping a weighted list of nameservers prioritized by response time:

"To complete initialization of SLIST, the resolver attaches whatever history information it has to the each address in SLIST. This will usually consist of some sort of weighted averages for the response time of the address, and the batting average of the address (i.e., how often the address responded at all to the request)."

...which is exactly what systemd is doing. The glibc behavior is a naive simplest-implementation approach, and if your infrastructure depends on an implementation detail of a specific libc resolver, you should install proper configurable resolvers and use those instead.

The fact that all nameservers are expected to return identical results is inherent in the design of DNS. It's one namespace, and if you need to split it, the client resolver is the wrong place to do that too.

</comment></comment></comment><comment><USER6> I would have to side with systemd project here. I had never heard of the ordering of the DNS servers being meaningful, and I'm amazed people are relying on that behaviour described in the ticket.

systemd appears to be the only project where getting rid of legacy cruft is seen as a bad thing. Having a DNS setup that works in a different way when stuff fails should be seen as a bug; DNS is supposed to be reliable.

<comment><USER7> > I had never heard of the ordering of the DNS servers being meaningful

Now you have. This is a common configuration in mixed-use situations.

> I'm amazed people are relying on that behaviour described in the ticket

Why? Using each server in order is the expected behavior. From resolv.conf(5)

        nameserver Name server IP address
            Internet address of a name server that the resolver
            should query [...]. If there are multiple servers,
            the resolver library queries them in the order listed.
            [...] (The algorithm used is to try a name server, and
            if the query times out, try the next, until out of
            name servers, then repeat trying all the name servers
            until a maximum number of retries are made.)

> Having a DNS setup that works in a different way when stuff fails should be > seen as a bug;

You can call it a bug in _your_ use cases, but having an imperfect fallback is important in some situations.

> DNS is supposed to be reliable.

Software is _supposed to be_ lots of things, but good engineering understands that sometimes the real world deviates from these ideal.

<comment><USER6> Y'see, I do get all that. And I could have phrased the "never heard of ordering" thing better: of course I have.

What I've never heard of is people relying on that to get DNS results correct. If your first server doesn't work, you _get the wrong results_. I don't understand on what planet that is acceptable sysadmin setup.

Split DNS zones have been a thing for years. This isn't a good substitute.

<comment><USER8> I see it as implementation being perceived as architecture. The instance of the library that is quoted does this, it is not part of the architecture. That library has been used in a lot of places, so people start relying on the side effect (a common one is to stand up a local DNS server, have it 'shadow' or give alternative results to some queries, like ad network host names, and if the host name isn't in it then to fail so that the next DNS server is queried which is more likely a 'legit' server.)

One of the reasons the IETF likes multiple running implementations of an RFC is they often have different side effects and so they call out things which might hang people up.

The "correct" way to shadow, and to achieve user required semantics, is to create a DNS proxy that answers queries that it is supposed to and recursively getting results for ones that it doesn't.

Correct here is in scare quotes because it doesn't mean it is right but instead just insures side effects of the libraries will not be a problem.

</comment></comment></comment></comment><comment><USER9> These people have quite simply configured their DNS wrong--all DNS servers are expected to return the same results, so it can't matter which server the resolver uses. But their misconfiguration happens to work most of the time for their use case. The solution is either to implement a "bug-compatible" priority flag in resolved, or to make that a first-class use case with its own flag ("emergency backup nameserver"?).

It's a classic case...should the software follow the spec, or the real-world usage? And people complain either way.

<comment><USER10> > all DNS servers are expected to return the same result

Really? My local DNS server should return the same results as 22.214.171.124? Should one never use unregistered suffixes?

<comment><USER11> No, one should probably never use unregistered suffixes. But that's not to say that all DNS names should be public, nor that NAT is practically avoidable, so this is beside the point.

What one _should_ do is only choose DNS servers capable of properly resolving all addresses, as it shouldn't be the resolver's responsibility to "shop around" for answers.

Fixing VPN configurations that complicate this should be the responsibility of VPN client software — by providing a forwarding DNS server that falls back to the originally configured servers, say — not the resolver, and similarly for any other cases where standard resolver behavior does not suffice.

Application software, for its part, shouldn't generally rely on implementation-defined resolver behavior, as doing so is obviously not portable, but that's less sinful than a VPN relying on client library-level support to work around the fact that it's exposing a broken network configuration.

Note that I have no axe to grind one way or another in the systemd debate: Linux isn't me primary OS, but I regularly use and abuse both systemd and non- systemd Linux systems, and all the Linux init systems seem to work at least as well as any other system I regularly use (OS X, FreeBSD, Windows) for most practical purposes.

<comment><USER12> Aside: You are using "resolver" to describe the wrong thing. RFC 1034 employs "resolver" to describe the entire subsystem that user programs use to access what it calls "name servers". It theoretically allows, because it isn't intended to be Unix-centric, systems where all of the query resolution mechanism is potentially in some form of shared subsystem that runs inside each applications program.

Strictly speaking, what you are talking about here, in RFC 1034 terminology, is a "stub resolver", the Unix model where there's a fairly dumb DNS client library running in the applications, talking to an external program that actually does the grunt work of query resolution by making back-end transactions and building up the front-end response from them.

A "resolver" actually very much _does_ "shop around for answers", amongst content DNS servers. There's even a (slightly faulty) description of its shopping around algorithm, in RFC 1034 section 5.3.3.

"resolver" is such a confusing term, and so often used contrary to the RFCs in the way that you have here, that years ago I took to explaining the DNS to people using terminology borrowed from HTTP: proxy servers, content servers, and client libraries linked into applications.

* [http://jdebp.eu./FGA/dns-server-roles.html](http://jdebp.eu./FGA/dns-server-roles.html)

</comment></comment></comment></comment><comment><USER13> > The "Switching to fallback DNS server 18.104.22.168." message indicates that you > have no DNS servers configured at all, in which case resolved will use > compiled-in fallback servers because it tries hard to just work also if you > have a locally misconfigured system

It's good to have the knowledge that Google servers are compiled-in to resolved.

<comment><USER14> They're "compiled in" in the sense that they're the upstream default - <USER2> are generally expected to use systemd from a Linux distro, and distributors are expected to patch this to some appropriate default (or patch out the fallback entirely, if your distro would prefer your users get no DNS to Google DNS, which seems like a defensible decision to make). There are no upstream binary releases. 18.104.22.168 is as reasonable as anything else for someone running `make` on the upstream sources and hacking on things; it's probably not a great default for a downstream distributor.

<comment><USER13> The relevant option to change is "dns-servers" at [https://github.com/systemd/systemd/blob/master/meson_options...](https://github.com/systemd/systemd/blob/master/meson_options.txt#L160)

<comment><USER15> Heh. The line above the one you highlight makes dnssec vulnerable to MITM attacks by default. Nice.

(Also, the one below points at more Google infrastructure...)

</comment></comment></comment></comment><comment><USER16> systemd's behavior is completely reasonable. The folks arguing otherwise on the issue would probably be better served by installing dnsmasq locally to do what they want and pointing systemd at that.

It may be worth pointing out that dnsmasq has a similar behavior by default and points out the correct way to override specific hostnames/zones:

 _Q: My company 's nameserver knows about some names which aren't in the public DNS. Even though I put it first in /etc/resolv.conf, it doesn't work: dnsmasq seems not to use the nameservers in the order given. What am I doing wrong?

A: By default, dnsmasq treats all the nameservers it knows about as equal: it picks the one to use using an algorithm designed to avoid nameservers which aren't responding. To make dnsmasq use the servers in order, give it the -o flag. If you want some queries sent to a special server, think about using the -S flag to give the IP address of that server, and telling dnsmasq exactly which domains to use the server for._

</comment><comment><USER17> This is also very likely to cause DNS leaks while using VPN. Which kind of makes whole idea of VPN unreliable and/or dangerous to rely on. Not because VPN design has anything to do with this security hole but systemd tries hard to do stuff it doesn't really understand.

<comment><USER14> Quite the opposite. The system of expecting resolver order to be respected (the glibc behavior) is the one that is likely cause DNS leaks while using a VPN: if your VPN connection _or_ its DNS server is intermittently flaky, glibc will gladly go try your next, public resolver with the internal domain name.

Meanwhile, systemd has actual functionality for scoping your VPN domain names to your VPN's DNS server only: [https://www.freedesktop.org/software/systemd/man/systemd.net...](https://www.freedesktop.org/software/systemd/man/systemd.network.html#Domains=)

<comment><USER17> Regardless of marketing pitch, resolver is no job for systemd. Or any other init/pid 1 process.

Systemd is known to but in into areas that are not / should not be of concern for it. Also known to do stuff half baked or changing things because you can.

So I'd very much love to see systemd fingers completely outside of dns resolver, that way we wouldn't have this conversation at all.

<comment><USER14> > _Regardless of marketing pitch, resolver is no job for systemd. Or any other > init /pid 1 process._

Correct, which is why it's not part of /bin/systemd or any other init/pid 1 process.

<comment><USER17> You know, first thing that raised some flags with systemd for me, couple of years ago, is constant marketing push, like this one.

Having one monolith executable or ten executables that increasingly __demand __each other is the same thing. Oh wait its name also suggests it is part of the package, being named Systemd-resolved.

There is number of reality distortions like this one that systemd people tried to perform, during the several past years.

<comment><USER14> I don't know what you mean by "marketing". I am mentioning technical facts; you are saying things like "systemd tries hard to do stuff it doesn't really understand" and "reality distortions." Can we have a technical conversation?

<comment><USER18> Because being technically correct while strawmanning the other person's position for your comment to even be relevant is the worst, not best, kind of correct. Being technically correct is only the best kind of correct if your technical point is actually relevant.

Having a "technical conversation" would require you engaged with the person you were replying to, not engaging in what can only be described as "technical trolling".

For the record, the vocal "technical trolls" are why I don't like systemd, despite having little opinion on the technical merits.

<comment><USER14> That's a fair objection, thanks. I don't _believe_ I am trolling or taking a strawman interpretation of 'binaryapparatus's arguments, but if I am I'd appreciate correction!

I think it is relevant that the current state of affairs (with glibc) isn't actually better at preventing DNS leakage, and that systemd-networkd has relevant functionality specifically to address the underlying use case in a way that reliably blocks DNS leakage.

I also think it is relevant that the functionality is _not_ in pid 1 and (although I didn't say it, and maybe I should have) there is no particular obligation or desire on the part of systemd's pid 1 binary to use systemd- resolved. They're developed in the same project, and there are some nice things you get by using them together, but you don't have to, and you experience no loss of functionality as compared to the status quo ante systemd if you choose to use systemd as init plus the glibc stub resolver. (In particular, I think that's the standard way most distros configure systemd.)

I was probably rude in my reply about how this functionality is not in pid 1, and for that I apologize, but I don't think I was irrelevant. Maybe I don't understand the objection to having systemd-resolved developed alongside an init system? (Developing everything together and using common routines where possible _is_ the traditional UNIX approach, epitomized by the current BSDs.)

<comment><USER18> > there is no particular obligation or desire on the part of systemd's pid 1 > binary to use systemd-resolved

> there are some nice things you get by using them together

These two statements contradict each other, and you said them one after the other.

The accusation of trolling stems from this behavior: if you're not even being consistent for the span of two sentences, why should I believe you're advancing a thoughtful, genuine argument? The evidence you present (by so flippantly contradicting yourself) is against that.

> I was probably rude in my reply about how this functionality is not in pid > 1, and for that I apologize, but I don't think I was irrelevant.

I believe you misunderstood the objection to the two pieces of software being coupled in your rush to correct a technical point -- it's completely irrelevant if the two processes both run under the same pid as long as it's the case that "there are some nice things you get by using them together".

The concern is that a process which shouldn't be coupled to the process of DNS resolution _at all_ is injecting these "nice things" through coupling, and that systemd is making a whole suite of such software around their init system. Your reply, well, doesn't address that concern, and doesn't seem to even be aware _that_ is the concern.

> Maybe I don't understand the objection to having systemd-resolved developed > alongside an init system? (Developing everything together and using common > routines where possible is the traditional UNIX approach, epitomized by the > current BSDs.)

The concern is inappropriate coupling via these "nice things" that gives systemd inappropriate sway over what non-init portions of the system are, while degrading the overall resilience and versatility of components, and that over time, the process to replace systemd will require replacing substantial portions of the OS, rather than just the init system.

<comment><USER14> > _These two statements contradict each other, and you said them one after the > other._

OK, thanks, I understand the technical disagreement now. I don't believe they contradict. (And I'd appreciate your help in understanding this, since I apparently am causing people to think I'm being disingenuous!)

If you use systemd the pid 1 binary by itself, with the usual glibc stub resolver, you get a pretty good init system.

If you use systemd pid 1 along with systemd-networkd and systemd-resolved, you get some particularly fancy features relating to tying service management to network state (for instance, I think this combination is required to let you reliably implement the feature where VPN DNS queries are sent to the VPN only, by correlating the DNS server config, the VPN interface, and the VPN process).

However, if you _don 't_ want these features, you can totally use systemd pid 1 by itself. And in fact my understanding is Debian/Ubuntu-based distros configure systemd, maybe halfheartedly configure networkd but use ifupdown and /etc/network/interfaces, and don't configure resolved.

Therefore, I said that there is no need (obligation) for systemd, the init system, to use systemd-resolved, nor is there any desire, in the sense that it works better as an init system. It gives you new features _related to DNS resolution_ , but if you're not interested in tying your init to DNS resolution, it doesn't work any worse. (This is different from how, e.g., systemd works slightly worse without libnss-myhostname if your current hostname doesn't resolve, or systemd works I think a good bit worse without udev, or systemd doesn't work at all without cgroups, which is a design decision that I really dislike.)

> _The concern is inappropriate coupling via these "nice things" that gives > systemd inappropriate sway over what non-init portions of the system are_

I am somewhat sympathetic to this argument, in that it seems to be not super straightforward to write an API-compatible drop-in replacement for systemd components, if you happen to like systemd's design but not its implementation (as I do).

However, the alternative is that these "nice things" simply cannot exist at all. I don't think these are inappropriately coupled; if you want to reliably correlate long-running processes and virtual network devices, your service management tool has to keep track of them together. (Admittedly, this tool doesn't need to be pid 1, which is another point of disagreement I currently have, and one I've changed my mind on a few times. It can easily be pid 2.) And given that the nice thing is, in my understanding, the exact thing that was requested at the top of this thread (reliably preventing VPN DNS leakage), it seems like it would be making an incomplete analysis to completely disregard this tradeoff.

(Also, I _think_ that systemd's APIs are actually documented enough that you can write the drop-in replacement if you really wanted to, and that systemd upstream is open to documenting these APIs where they're undocumented.)

Furthermore, while I might be wrong that this is the only way for the "nice things" to exist, I don't think that I am so wrong that this argument is in bad faith / trolling. (Maybe I am, maybe there's something obvious I'm missing?)

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> Putting servers with different views of the DNS in resolv.conf seems unreliable to me, even with glibc's behavior. If the first server "glitches" for any reason, the process will get the response from the second server, which might not be what you wanted. And worse, some processes (like browsers) have their own cache of DNS responses, so the incorrect response might get cached.

That is: it was already broken, systemd-resolvd just made the breakage more visible. (If I understood it correctly, it only switches after the first "glitch", so the only difference is that it doesn't switch back until the second server also "glitches".)

</comment><comment><USER20> I stopped using Linux for personal before this systemd thing was an issue, but I was considering it again now that I might get a new computer and because I've got an app running on a pre-systemd Linux VPN. Since I have very little first hand experience with systemd, I have some questions.

1\. Is it actually that bad for a desktop?

2\. Is it actually that bad for a server?

3\. If yes to either, how suitable are the alternatives (e.g. Gentoo, Slack, or BSD)?

<comment><USER21> My answer may not be satisfying, as I was never much of an init guru - <USER3> bothered much with configuration.

But here are my systemd observations:

\- log files now are binary and accessed by `journalctl` - it's a bit less convenient than looking for text files in `/var/log`

\- unit files are a miracle. For the 7 or so years before systemd, I wrote one unportable init script, and I hated it. Now I churn them out whenver I feel like it - they are standardized and the docs are incredible.

Apart from that, nothing really changed from my POV, and I use systemd on desktop as well as in small servers.

<comment> dylan-m For the log files, one miraculous thing you can do is `sudo journalctl -f -u httpd -u mariadb`, which watches the log for both of those services (and should output messages in the correct order). On a desktop, the way it's designed should make the system log viewer (if you need it) quite a bit faster and cleverer, since the stuff we used to do with grep or with extra tooling is just kind of built in to the format.

<comment><USER22> Another handy set of tools are the time-based queries, like "journalctl --boot" for logs since the last reboot, or "journalctl --since 16:30" to see logs since that time. (Which can also be specified in relative terms, like "-30m" for the last half hour.)

</comment></comment></comment></comment><comment><USER23> dnsmasq does something similar by default.

[http://lists.thekelleys.org.uk/pipermail/dnsmasq- discuss/200...](http://lists.thekelleys.org.uk/pipermail/dnsmasq- discuss/2009q3/003295.html)

<comment><USER24> Right, and (many years ago) they added automatic "failback", as well as the "failover" behaviour that systemd-resolved has.

So this isn't a case of systemd-resolved deciding to arbitrarily do things in a new and broken way; rather it's systemd-resolved still being rather immature (but for some reason already ending up as the default on lots of people's systems).

</comment></comment><comment><USER25> FWIW, the OpenBSD resolve.conf(5) man page says:

>If there are multiple servers, the resolver library queries them in the order listed.

<comment><USER26> That's the same in FreeBSD:

> (The algorithm used is to try a name server, and if the query times out, > trythe next, until out of name servers, then repeat trying allthe name > servers until a maximum number of retries are made).

So it seems there is a _de facto_ standard for the default libraries in some *NIX OSes?

<comment><USER12> No. All that it is is common heritage in the BIND DNS client library whose doco this is. It is a widely used DNS client library that has made it into numerous operating system's C libraries, from Solaris through GNU libc to OS/2\. The manual pages for that library have spread along with it.

* [https://www.isc.org/downloads/libbind/](https://www.isc.org/downloads/libbind/)

* [http://wiki.netbsd.org/individual-software-releases/netresol...](http://wiki.netbsd.org/individual-software-releases/netresolv/)

* [https://sourceware.org/git/?p=glibc.git;a=blob;f=resolv/READ...](https://sourceware.org/git/?p=glibc.git;a=blob;f=resolv/README;hb=4e8286acfa4224ac9ccfb07e90b8fd70fab1467e)

One can even trace its spread from, say, 386BSD through NetBSD to OpenBSD.

* [https://github.com/NetBSD/src/blob/516da8a02fc8bc10555ed9acd...](https://github.com/NetBSD/src/blob/516da8a02fc8bc10555ed9acde277d4ff9dcfd3b/share/man/man5/resolv.conf.5)

* [https://github.com/openbsd/src/blob/df930be708d50e9715f173ca...](https://github.com/openbsd/src/blob/df930be708d50e9715f173caa26ffe1b7599b157/share/man/man5/resolv.conf.5)

Manual pages are not standards, not specifications, but implementation documentation. As Chuck McManis said in this very discussion, to misuse them as standards or specifications is to mistakenly treat implementation as architecture.

The BIND DNS client library is far from the only DNS client library in existence. Other DNS client libraries read /etc/resolv.conf, as part of a BIND DNS client compatibility shim or otherwise. They do not have the same implementation details as the BIND DNS client; they do not all have the same access patterns as the BIND DNS client. Indeed, as I have mentioned elsewhere in this very discussion, even other tools from the same origin, namely nslookup, read /etc/resolv.conf and have different access patterns.

* [https://cr.yp.to/djbdns/blurb/library.html](https://cr.yp.to/djbdns/blurb/library.html)

* [http://www.chiark.greenend.org.uk/~ian/adns/](http://www.chiark.greenend.org.uk/~ian/adns/)

* [http://25thandclement.com/~william/projects/dns.c.html](http://25thandclement.com/~william/projects/dns.c.html)

* [https://groups.google.com/d/msg/comp.protocols.dns.bind/B3tg...](https://groups.google.com/d/msg/comp.protocols.dns.bind/B3tgs8nb4Rg/zLkQhY7O_zkJ)

 _There is not_ a single common conventional, let alone standard, behaviour to rely upon.

<comment><USER25> The complaint isn't that the new behaviour is not compliant with some standard. It is that the change is arbitrary and pointless.

None of your links contain the text "resolve.conf".

Nslookup is an end user diagnostic tool and would not be expected to conform to any standard, even if there was one.

</comment></comment></comment></comment><comment><USER27> I run split horizon DNS and have my local DNS server listed before my ISP's in my DHCP server configuration. The order (to me) is important. I want to hit MY dns server always (which does cache), unless it is unavailable, and then I want to hit my ISPs as a fallback only. Is there a suggested way to do this?

<comment> yjftsjthsd-h Just from this thread, several:

With dnsmasq: [https://news.ycombinator.com/item?id=15231319](https://news.ycombinator.com/item?id=15231319)

With systemd: [https://news.ycombinator.com/item?id=15232027](https://news.ycombinator.com/item?id=15232027)

<comment><USER27> Thanks for the reply, but can you see how the very simple configuration possible on the DHCP server suddenly becomes much much more complicated with the above solutions? You're basically suggesting I run a chef server (or some other central workstation management) in my home to allow talking to machines on my local domain by hostnames.

That's tough to swallow.

<comment><USER28> Is your setup actually likely to run into situations where the DNS server is unavailable but Internet access is otherwise working? Basic home setups usually have DNS running (if at all) on the same device (router) that's also acting as a gateway, so such a selective outage would be unlikely except in the event of misconfiguration - and in that case I'd want my setup to fail hard, personally, so I'd know to fix it, rather than having it silently slow down DNS lookups. Thus I wouldn't intentionally set a public DNS server as an alternative to the primary one on the router. But maybe your setup is more complex, or you have a use case I'm not thinking of...

<comment><USER27> I run DNS on my file server since it's on all the time anyway. It must fail gracefully or the wife approval factor goes down.

</comment></comment></comment></comment></comment><comment><USER5> I really, _really_ like Linus Torvalds idea for the kernel: "no regressions". NO. REGRESSIONS. I have no idea what the problem of Lennart is.

<comment><USER29> The problem is the supposed adult supervision at Red Hat the corporate entity, that is funding all of this

<comment><USER30> Doesn't explain why Debian and derivatives followed suit.

<comment><USER27> They follow freedesktop.

</comment></comment></comment></comment><comment><USER31> Why does an init system do DNS lookup?

And in such a breaking way?

<comment><USER32> > Why does an init system do DNS lookup?

For caching and DNSSEC validation at the system level instead of needing to be handled ad hoc by each individual framework or application.

> And in such a breaking way?

See [https://github.com/systemd/systemd/issues/5755#issuecomment-...](https://github.com/systemd/systemd/issues/5755#issuecomment-315810471)

Systemd designers optimized their new resolver's behavior for one common use case, but apparently never considered that it breaks another (undocumented) use case. That seems like an example of a lack of real user testing for an important feature before cutting a new release.

<comment><USER33> How is it undocumented? The resolv.conf man page on Red Hat says "If there are multiple servers, the resolver library queries them in the order listed."

</comment></comment></comment><comment><USER34> Shipping incompatible software is somehow an issue, but the bigger issue seems to be that canonical shipped the software without testing or ensuring it didnt break compatibility

The job of ensuring compatibility of softwares before replacing them is a distribution's job

</comment><comment><USER35> remove it.

i'm more and more becoming convinced that the systemd ecosystem should be considered a regression.</comment>


The Data Center Reimagined: GPUDirect Enables Petabyte Scale Analytics - <AUTHOR> https://towardsdatascience.com/life-after-hadoop-getting-data-science-to-work-for-your-business-c9ab6605733f <comment><USER2> This is actually going to be pretty sick for us at BlazingSQL. We are freaking frothing at the chance to be able to scale beyond system and gpu memory without having to shove data through pipes that are no longer needed.

RDMA will be a necessary building block for most of us that are working on HPC solutions and the fact that now we can directly access fast persistent storage from a GPU is going to allow us to scale several orders of magnitude bigger than we currently can.</comment>


Creately 3.0 – Online diagramming tool - <AUTHOR> https://creately.com <comment><USER2> Does it have anything over draw.io?

[https://www.makeuseof.com/tag/free-online-flowchart- makers/](https://www.makeuseof.com/tag/free-online-flowchart-makers/) [https://alternativeto.net/software/diagramly/](https://alternativeto.net/software/diagramly/)

<comment><USER3> I think it looks sleeker, but I don't see anything else too different from my first look.</comment></comment>


Cross-platform, hardware accelerated, in-browser graphics plugin- Unity3D - <AUTHOR> http://unity3d.com/gallery/live-demos/tropical-paradise

<comment><AUTHOR> <http://unity3d.com/unity/>

Was working at a Panera Bread here in Redmond and met a startup founder who's working on some seriously cool collaborative filmmaking tools- with hardware accelerated 3D graphics within the browser.

As far as in-browser gaming, clearly this is a paradigm shift. Anything that has to do with high quality video, clearly a big win. A true in-browser photo editing program could also be pretty slick- cloud-based Photoshop and Illustrator competitors are feasible, sans all the slowness that Flash-based editing apps bring forth. Higher quality music visualizations are a no- brainer.

That's off the top of my head, what else comes to mind?</comment>


Facebook and "radical transparency" - <AUTHOR> http://www.zephoria.org/thoughts/archives/2010/05/14/facebook-and-radical-transparency-a-rant.html

<comment><USER2> \+ a bushelful for pointing out that Facebook's UI is deliberately disingenuous: It encourages people to share information while carefully obscuring how widely that information is being shared.

Do people who share their status with "everyone" really understand that their entire history of updates are being scraped and aggregated by "partners," or do they think that it's only being read by people who happen to search for them personally?

As the author puts it, it's a case of a lack of informed consent. And that is unethical.

<comment><USER3> How could they possibly explain all of the implications of "everyone" that people might be worried about? It says _everyone_. If there's something you don't want every single person on the face of the planet to be able to read, don't set things to "everyone".

I don't think the problem is people underestimating friends of friends. It's not knowing when they're sharing with everyone. Instead of having to click a button below the status box to see who you're going to be sharing with, the current setting should be displayed on the button itself so it's always visible.

<comment><USER2> I think the expression "informed consent" is the crux. If a doctor is discussing a procedure with you and they say, "there are certain risks," it is not enough that they tell you, they must make sure you actually understand the implications well enough to make a reasonable decision.

Informed consent is a much higher standard than simple "consent."

The argument here is that while Facebook may technically be telling you everything you need to know, they aren't actually achieving informed consent. If you mistakenly think "everyone" means everyone who uses Facebook personally, you haven't given them informed consent to share your information with a credit bureau.

<comment><USER3> I think the doctor comparison is apt. You're basically asking for Facebook to give the sort of fine print that gets read quickly at the end of pharmaceutical ads. Barely anyone would accept the new default if you said:

 _Possible side effects of this setting include: Getting fired for your political beliefs, inability to get a loan due to a status update that indicated financial irresponsibility, and a speedy end to any political campaign you attempt to start._

This seems like a pretty big double standard. Twitter is public by default, but no one is setting the same bar for informed consent. The issue isn't the change from private to public; I think most people who accept that default understand that their posts are no longer private by default. I don't see why explaining more is necessary.

This privacy change happened in December, by the way. If it weren't for Instant Personalization, this firestorm never would've happened.

<comment><USER2> > I don't see why explaining more is necessary.

perhaps you and I should get clear on the word _necessary_. Here's a thought experiment: Imagine we poll some statistically significant number of users and ask them questions about their own settings like "Can your mother see this? Do you think you could be denied a job if you were to post this?" and so forth.

One possibility is that the vast majority of the people would get the answers right. They understand the implications and are happy with their choices. The other possibility is that some large number of respondents don't get the answers right, indicating that they don't understand the implications.

The standard I feel is appropriate for all companies trafficking in information with such serious potential outcomes is that their customers understand the implications of their choices.

How much explaining is necessary? I say enough to achieve understanding. It's flat-out unethical to conduct a business where a substantial proportion of your 'customers' do not understand the implications of doing business with you.

Of course, the plural of anecdote is not "data." Maybe the OP has it wrong and most Facebook users understand what choices they are making and simply don't value their privacy as much as outraged nerds on a forum.

I'm not saying it's wrong for Facebook to share people's data with "everyone," only pointing out that IMO it would be unethical to do so _if_ a significant proportion of their users did not give their informed consent.

<comment><USER3> I agree wholeheartedly.

</comment></comment></comment></comment></comment></comment><comment><USER4> 2 passages to note:

> Youth are actually much more concerned about exposure than adults these > days. Why? Probably because they get it. And it's why they're using fake > names ....

Well, I'm glad they're concerned. However, there's getting it, and then there's getting it.

I'm definitely on the adult end of things (I'm 44). I tended to use made-up names in net discussions until relatively recently. But I consistently found myself tempted to make comments that I would not want my real identity to be associated with. So, when I got my HN account in early '09, I used an abbreviation of my real name, as a reminder to myself that I shouldn't say anything I would not want to be associated with (and also that there is a good chance that even "anonymous" comments could be traced to the real me someday).

And that seems to me (in my arrogance?) to be a rather deeper level of "getting it" than that attained by many of the above-mentioned youth using fake names.

> Over and over again, I find that people's mental model of who can see what > doesn't match up with reality.

Definitely. And this is not a new phenomenon at all. I remember reading the Usenet group misc.kids back in the 90s, and being shocked at all the personal details of children's lives that some parents were posting, often under apparently real names. The newsgroup was being treated as a neighborhood mothers gossip group, not as something that the whole world could see, and that would be archived forever.

EDIT. And a third passage:

> The battle that is underway is not a battle over the future of privacy and > publicity. It's a battle over choice and informed consent.

An excellent point, and one that needs to be made more often. Despite what the article says, the statement "young people don't care about privacy" might indeed be true, in general. However, even if it is, that does not mean it is okay to make privacy-related decisions for them. And it certainly does not mean it is okay to invade their privacy by means of trickery and deceit.

</comment><comment><USER5> > When people think "friends-of-friends" they don't think about all of the > types of people that their friends might link to; they think of the people > that their friends would bring to a dinner party if they were to host it.

Could the second category be realized as an algorithm/interface-aspect? Because, basically, this is what Facebook comes down to: "I want to share things with people I have determined will be nice to me, and people that those people have also determined _will be nice to me_." Note that the second clause isn't "will be nice to _them_." If A trusts B, and B trusts C, but A hates C _and B knows that_ , then the ideal social network would somehow encode that.

Right now, all I can imagine in an O(n^2) operation where, every time you make a friend, you mark a subset of your friends as their peripheral friends. There's gotta be a better way than that.

</comment><comment><USER6> I have truly enjoyed watching Facebook and Zuck get called out by mainstream media and members of congress. It's not just the geeks who care anymore. T -5 days until my account is deleted.

<http://www.google.com/trends?q=delete+facebook+account>

<comment><USER7> Well...

[http://www.google.com/trends?q=delete+facebook+account,+face...](http://www.google.com/trends?q=delete+facebook+account,+facebook+account&ctab=0&geo=all&date=all&sort=1)

This seems to suggest that _fewer_ people are searching to delete their account, proportional to the number of people using facebook.

</comment></comment><comment><USER8> _You have one identity. The days of you having a different image for your work friends or co-workers and for the other people you know are probably coming to an end pretty quickly. Having two identities for yourself is an example of a lack of integrity. --Zuckerberg, 2009_

Zuckerberg has no business discussing "a lack of integrity" other than his own.

</comment><comment><USER9> > The psychological harm can be great. Just think of how many "heros" have > killed themselves following the high levels of publicity they received.

This comment seem a little over the top to me, but all in all, as someone who has used Facebook for a grand total of an hour over a year ago, I found it to be a very interesting article.

</comment><comment><USER10> I think people try to use his age against him. But too bad. It's his company and let him run it the way he wants.

Particularly if it goes against the old, ingrained ways of thinking I'm all the more for it.

<comment><USER11> I like this comment. When I was younger, I used to think a whole lot more about all the different ways that things could be. As I got older, I very slowly realized just how immovable most of the rest of society is. Gradually, I came to accept the way people are as "reality", which I found necessary to do in order to make a living and have friends. But I think in some ways I had a much larger perspective when I was younger.

</comment></comment><comment><USER12> Read the whole post. Danah Boyd always writes very insightfully about social networks and their real-world users and implications. She delivers again here.

</comment><comment><USER13> I had a facebook account for a good while, was lazy enough to have used it to authenticate to this very site. I was always somewhat troubled by the way the site privacy system morphed overtime, but it served a great utility for me especially in my social event management, so I let sleeping dogs lie.

As I investigated it more (admittedly since social graph announcement and other developments of late ) I decided to remove my account.

My decision was based in part due the fact that I have friends and colleagues who do not enjoy the relative safety both political, and social, that I enjoy as an educated white American citizen of heterosexual persuasion. In a sense I feel that it is irresponsible of me to possibly "out" a friend by accident just because it is a non issue for me.

I find the statements attributed to Zuckerberg profoundly distressing and ignorant of the world we live in, you don't have to go far to find people who maintain different identities so they can merely survive. it is a lack of intellectual integrity on his part.

<comment><USER14> I don't think Zuckerberg--or the idea of transparency--is as naive or ignorant as you point it. It may ultimately be a bad idea but for deeper reasons than "they never thought of people with unusual lifestyles who may be oppressed because of them".

Here's the argument: people keep secrets because people keep secrets. Those of us who have different sexual orientations and make other non-traditional lifestyle choices keep it secret because it's socially taboo, but it's socially taboo only because we continue keeping it secret. We'd be better off if that was broken down, but you don't want to be the _first_ one coming out of the closet. Thanks to game theory we're all worse off. That's why you need to change the game. 20 years ago you'd be shocked to find that your uncle was in a gay polyamorous relationship. The idea is to build a world where you won't care because you'll know two dozen gay people and two dozen polyamorous people.

<comment><USER13> The idea of transparency resonates with me, but to attribute a lack character to people who do not live and have the opportunity the Mr Zuckerberg enjoys is something i find abhorrent.

Transparency starts at home, Facebook is not a transparent organization, if his ideals call for it, he should be the first in line, and his business should tag along. his case would look better if he led by example.

</comment></comment></comment><comment><USER3> _"...Zuckerberg believes that people will be better off if they make themselves transparent. Not only that, society will be better off."_

I happen to agree with this. Most of the thoughts that people share with each other are completely harmless. Allowing those to be visible by everyone helps us to learn more about ourselves and our society. It's a good default as long as people are aware of what they're doing. Even if people realize what their default settings are (which I think most people understood when they were being set but might have forgotten), there should be a visible reminder of who you're sharing with to minimize mistakes.

We currently live in a private-by-default society, and changing that would be a good thing.

<comment><USER15> > We currently live in a private-by-default society, and changing that would > be a good thing.

To what? A public-by-default?

Do you tell your parents about your sex life?

Or share your health updates with your co-workers?

Or something more innocuous - do you tell your friends how much money you make?

Even if you answered yes to these questions, recognize that the decision to share that information belongs to the individual, not anybody else.

<comment><USER14> Privacy is kind of an arbitrary culture-dependent thing, which means (optimistically) that we can and should rationally evaluate what kind of culture we want to live in and work towards it.

Personally I only keep things private for two reasons:

1\. I am ashamed of them. I would like to keep private when I make a mistake or lose emotional control. This is just vanity and it's small of me to want to keep these things private.

2\. For the courtesy of others. People don't want to hear about my sex life so I don't tell them. People don't want to see my naked body so I wear clothes. That's related to privacy but different because the issue is letting people filter the information they consume, not the information they publish, and privacy is more about letting people filter the information they publish.

<comment><USER16> You're confusing privacy with propriety.

Privacy is more than just avoiding embarrassment; it's about control over how our own information is used.

Consider a simple case -- people don't want information about all their movements available to everyone. Stalkers, ex-spouses, business competitors, or paranoid acquaintances. We're not talking here about concealing any shameful acts, just quotidian activities.

Also consider how Facebook allows users to authoritatively link a person to an event, by tagging them in a photo. So whether the subject might want it or not, that leaves a trail for others to follow. If they don't follow their Facebook account closely, they may never even know it's happening.

You may be interested in the excellent paper "'I've Got Nothing To Hide', and Other Misunderstandings of Privacy", by Daniel J. Solove.

<http://papers.ssrn.com/sol3/papers.cfm?abstract_id=998565>

<comment><USER14> That's a nice unexamined assumption: "our own information". Not only do you have the idea that you can own information, but you come to "own" information merely by the fact that the information itself concerns you.

Next, "people don't _want_ information about their movements to be publicly available". The question isn't what people want, but what people are _entitled_ to.

I understand the legitimate use of secrecy (in the short term) to, for instance, hide one's suspicious-but-innocuous (or illegal-but-harmless) activities from the government. But even in the long term, let's imagine that every stoner in the United States has undeniable proof of their ongoing possession and use of marijuana made public. What's more likely to happen-- that the DEA will swoop in to arrest _all_ of them or society will realize that would be silly and hypocritical? Getting from the status quo to that point is just a question of game theory, and whether those with power will be just as exposed as those without power. Hard problems, sure, but the old bargain (we'll keep secrets and let you keep yours) is due for renegotiation.

<comment><USER16> Using "own" doesn't always imply ownership. Consider: "my own barber", "my own mother", "my own congressperson". It just means "the X that pertains to my life".

And you're still making the mistake of thinking that the only reason you would want information to be private is because you're ashamed of it. As the paper I referred you to notes, there are other, non-secret, non-shaming information that we don't want to be easily accessible by others.

Also, wanting control doesn't imply that the person wants to falsify or hide information. Consider how hard it is to get rid of mistakes on one's credit record.</comment></comment></comment></comment></comment></comment>


An Open Letter to Students Waiting for Their College Admissions Decisions - <AUTHOR> http://calnewport.com/blog/2008/04/02/an-open-letter-to-students-waiting-for-their-college-admissions-decisions/

<comment><USER3> Some great advice. If you treat college as another means to an end, you might become exactly what you wanted to be when you were 17. Interesting people I know all agree that their 17-year-old self couldn't know what their 25 or 30 year-old self wanted.

Therefore, the best path is to get good grades, learn about what interests you and otherwise, just concentrate on becoming your older self well. Sometimes the order of those three is not as important.

<comment><USER4> For the record, I'm doing what I hoped to be doing when I was 17. ;)

<comment><USER5> As am I. Are we really that rare?

</comment></comment></comment><comment><USER6> Some good advice there. I went through university (in the UK) with only a medium amount of effort (I failed and had to do resit exams for 2 years) and scraped out a 2:1. But because I had spent time playing around in areas that interested me (aka security) finding a job afterwards was not difficult - <USER2> had character and a feel for the job, my mediocre degree wasnt really a factor.

A coursemate who spent a LOT of time working (and not socialising) got himself a top grade 1st and is still (a year later) struggling to find work.

</comment><comment><USER7> The one thing to take away from this post is "Interesting things happen to interesting people." Therefore make yourself interesting. Most of the rest of it is extremely misleading.

As with most career/life advice, its relevance depends on what you want to accomplish. The kind of broad "pursue a lot of different things" approach advocated here is great for some people, but it definitely can limit your opportunities. For instance, if you want to get into top PhD programs the professors reviewing your application will care that you had a triple major and took the hardest courses in your field. If you don't focus early, you'll miss that opportunity.

The argument here is that college is too early a time to focus on one thing. Even though I didn't, I disagree that this is generally good advice. There are many ways to be interesting.

</comment><comment><USER8> It's definitly amazing and true open letter

<comment><USER7> I wouldn't call it amazing, but there is definitely some useful stuff in there. I would distill the entire thing down to "engage with material that you enjoy learning, and success will follow."</comment></comment>


The History of Sifter (dev going going full-time on startup now) - <AUTHOR> http://nextupdate.com/blog/archives/2009/04/the-history-of-sifter/ <comment><USER2> Wow the site, the blog, the graph - everything just radiates great design. They seem like 37Signals meets Fog Creek.

</comment><comment><USER3> Fantastic post! The timeline offers a lot of insight (and encouragement) to someone like me, who is in the same position he was a year ago.

And I like Garret's simple and honest writing style. It's really refreshing compared to the didactic "here's the secret formula" attitude that certain other well-known software business bloggers seem to take.

</comment><comment><USER4> Congratulations! What a dream outcome....</comment>


Some technical details on Watson - <AUTHOR> http://www.ibm.com/developerworks/industry/library/ind-watson/

<comment><USER2> I'm not sold on the efficacy of clinical decision support systems (like Watson) in healthcare.

Here is a recent study comparing quality of care using EHR/CDSS and without: [http://archinte.ama- assn.org/cgi/content/abstract/archintern...](http://archinte.ama- assn.org/cgi/content/abstract/archinternmed.2010.527v1)

"Our findings indicate no consistent association between EHRs and CDS and better quality. These results raise concerns about the ability of health information technology to fundamentally alter outpatient care quality."

</comment><comment><USER3> Nice to hear about all the open source projects that went into this. I'd hope that the work that IBM did on those projects was contributed back to them and not just squirled away on some mainframe.

<comment><AUTHOR> UIMA (<http://uima.apache.org/>) was donated to Apache by IBM in the first place, and they continue to contribute.

I doubt any core changes would have been need to Lucene for this application.

</comment></comment><comment><USER4> Wow, incredible article. I don't think many people truly understand the potential this has for Healthcare.

<comment><USER5> The application to healthcare is essentially a product of the problem that Watson solves. i.e. an abstraction of a set covering problem, which along with applications in pattern recognition(which is roughly the field that Watson is solving ) the same problem occurs in species identification, medical diagnostics, fault diagnostics and logistical efficiency.</comment></comment>


CodeTyper - now you can type and sound like a hacker in the movies - <AUTHOR> http://codetyper.tk/

<comment><USER2> This is hilarious. The only proper way to use this is go to a coffee shop late at night and type furiously, with a very serious demeanor.

</comment><comment><USER3> <http://news.ycombinator.com/item?id=2480946> <http://news.ycombinator.com/item?id=2485159>

Very funny, but posted multiple times. Those are just the ones that reached the front page.

<comment><AUTHOR> codetyper ≠ hackertyper. This has a bunch of changes / improvements. It's a fork.

</comment></comment><comment><USER4> Shame about the multiple posts, but this is truly hilarious. For bonus points the author should allow people to specific an arbitrary url from Google Code Search, Github, Bitbucket, Linux kernal source, etc. and then wrap it in a simple HTTP GET type API.

Everyone loves a cheeky API.

</comment><comment><USER5> seriously great stuff for showboating ! Anychance I can get an access granted - you now have access to NSA security archives if I enter a particular key combination ?

<comment><AUTHOR> I've heard a rumor that has to do with a finicky enter key. (Or you can view source).</comment></comment>


HTML5 microdata: Creating a semantic breadcrumb for SEO - <AUTHOR> http://coderwall.com/p/p0nvjw?i=5&p=1&q=

<comment><USER2> The microdata for marking up the breadcrumb links and titles doesn't look like it's necessary in schema.org's WebPage schema. (<http://schema.org/WebPage>)</comment>


Suggest HN: Hellbanned with automated comments/upvotes? - <AUTHOR>

The notion of being hell banned is a pretty amusing one.<p>Should HN also maybe randomly comment on hell-banned users (ie something generic, like "I agree", or "good idea!"), and randomly upvoting/downvoting them to give them the appearance that they are not hell banned? <comment><AUTHOR> Ironically, I am creating this thread to test if I'm hell banned. Please respond :)

<comment><USER2> You're not hellbanned.</comment></comment>


2017 Was Bad for Facebook. 2018 Will Be Worse - <AUTHOR> https://www.bloomberg.com/view/articles/2017-12-14/2017-was-bad-for-facebook-2018-will-be-worse <comment><USER2> As a mid-30s guy, I use Facebook primarily to share pictures and updates of my son and things we do together with my friends and family.

Every. Single. Person. that I personally know despises the political crap, occasional venting of some personal problem, and news outrage fishing that comes across on there. I wish there was some way to "categorize" these posts, and to allow me to simply filter out what I don't want to see. As an example, there is a person I am friends with on there who I greatly admire and enjoy being friends with. But every time I see "Drumph" with a big red background, I sigh and scroll on. I don't need that in my life.

Even if that makes me miss the odd post here and there, they are practically valueless anyway and seeing only the categories of updates that I want greatly outweighs that minuscule loss.

<comment><USER3> I'm in the opposite camp: I stopped using FB because all friends were posting pictures of their kids, family, trips, parties, whatever. I really don't understand how people can post such things to FB.

I don't care what their kids ate today or how they fell asleep. I don't care that they bought a new phone and now posting pictures of it. I think all that stuff is personal and shouldn't be exposed to the public.

But I wish I could open FB and read political and tech news (no fakes please).

<comment><USER4> But ... why? You can read political and tech news _anywhere_ why read it on Facebook? The only thing I want to see on Facebook are the things I can't see elsewhere which are: personal updates and local events.

<comment><USER5> >>The only thing I want to see on Facebook are the things I can't see elsewhere which are: personal updates and local events.

You can only get personal updates on Facebook?

What a strange thing to say.

<comment><USER6> I think it's fairly accurate. If you have a couple dozen (or 100) friends scattered around the world, it's a lot easier to see pictures of their kids or new kitchen on a Social Media platform than to try to call them every day.

<comment><USER5> Why do you feel like you need to see pictures of their kids and new kitchen if they are scattered all over the world?

Does it make you feel like you care about them?

<comment><USER7> I can't legitimately care about 20 people living in 20 different parts of the world?

<comment><USER5> That's not what I meant.

Here's what I'm getting at: if you _really_ cared about someone, you wouldn't settle for the bare minimum of passively consuming their uploaded photos and status updates.

I posit that Facebook is popular among people with scattered friends and relatives because it makes them _feel_ like they care. However, in my opinion, truly caring about someone warrants more than just _maintaining an awareness_ of what is going on in their lives by consuming their content on your news feed and occasionally clicking 'Like' or posting a comment.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Facebook offers some good functionality for keeping in touch etc, but it's littered with too much noise and too much influencing (to the point that it's unpleasant to use). If they fix that, they'll be okay. If not, there may be a mass exodus to something else once enough people get sick of it.

<comment><USER9> I have this theory that they've noticed that the platform is being used less and less, and is why we're getting so much ads mixed with our friends' posts. They're milking the cow before it dies.

I feel bad writing that because I like facebook. But I use it less and less in favor of messenger, just because I see less and less about my friends in my news feed.

Now their other acquisitions instagram and whatsapp seem pretty healthy, and VR is the future, so I wouldn't worry about the company as a whole.

<comment><USER10> That always makes me giggle, when i hear people say, "FB sucks, i don't use FB anymore, i'm only on Instagram...."

<comment><USER11> Instagram is also becoming a monotonous and boring platform to use. The more ads and other junk features they cram into it, the less people will want to use it.

<comment><USER12> Instagram used to be my go-to social media, and the millions of images of peoples dinners didn't annoy me, but I find myself using it less and less because of the non-chronological feed. I still don't understand how it can possibly be better than a chronological one.

If anything I wish they would give an option in the settings to make it chronological

<comment><USER13> Generally if they keep a feature it means that the majority of people were more engaged by it, so the algo feed is probably increasing engagement across the board but alienating a few users.

<comment><USER14> This. When companies start looking at features and changes through the lenses of a metric, everything follows that metric. I'm sure that drives more engagement, therefore it's enforced on everybody.

Unfortunately they're not measuring abandonment or annoyance. Metrics like these are the short-term gain investors of today tech, always looking into the today and ruining the tomorrow.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> > "ripping apart the social fabric." ... "literally changes your relationship > with society, with each other ... God only knows what it's doing to our > children's brains."

I'm not saying he's entirely wrong, but a lot of what he's saying sounds very much like how TV was once described.

<comment><USER16> A particular medium is not (necessarily) to blame. Even the proliferation of what can be perceived as low quality examples of a medium isn't purely to blame. A large part of it is in how you interpret it.

Even with books, it's all in how you intepret it. If you just read the story without giving it any thought, it's no better than watching "mindless TV". I just think there is probably a positive correlation between people that are willing to think critically about a topic and those who are willing to put in the additional effort of reading vs watching.

To put it another way, if you knew nothing of painting or any the history behind it, the Mona Lisa would likely be indistinguishable to you from some random photo on someone's Facebook.

I will admit that some forms of media are easier to mindlessly consume than others. I am just sick of seeing the "X is only for stupid/lazy/ignorant people" (where X is TV, internet, videogames, etc.)

tl;dr you can lead a horse to water, but you can't make him drink.

Edit: to get back to the topic of Facebook, I think the _format_ of social media is not the cause of the issue, but I definitely see a problem in people having high exposure to insular opinions. Mostly because there seems to be a large number of people who _only_ use Facebook as their source of information. Like any tool, you can use it for good or bad.

<comment><USER17> > A particular medium is not (necessarily) to blame. Even the proliferation of > what can be perceived as low quality examples of a medium isn't purely to > blame. A large part of it is in how you interpret it.

Suppose we were to say, "Apple pie is in itself neither good nor bad; it is the way it is used that determines its value." Or, "The smallpox virus is in itself neither good nor bad; it is the way it is used that determines their value."

\- Marshall McLuhan

<comment><USER18> I would agree? Apple pie is pretty good for lunch, but if a clown is throwing one at your face it might not be. Smallpox sucks when it's uncontrolled, but the small amount kept for vaccines is probably a good thing.

<comment><USER19> I wouldn't blame apple pie for that.

</comment></comment></comment></comment></comment><comment><USER20> 2017 was bad? My FB stock doesn't seem to think so.

<comment><USER21> Are rising stock prices always a sign of company health?

<comment><USER22> Of course not. But they are a sign that professionals, who literally put their money on the line, think the company is getting more valuable.

<comment><USER23> Facebook may become better at monetizing the remaining users, even as there is an exodus, and overall, it could show increasing profits and revenue. This would "excite investors" but it doesn't mean the company isn't screwed in the long term if things continue the way they are.

The other guy joked about Blackberry, because even as the US and Canadian markets were dumping Blackberry, the company continued to see some nice growth overseas, which also led to record sales, profits and so on. But it was obvious Blackberry was fighting against time with the iPhone destroying its _core markets_.

Most investors didn't see it at the time either, because they were just following the "positive quarterly results," much like Blackberry's leadership was.

<comment><USER24> If you believe that investors don't look at non-revenue metrics like MAU you are sorely mistaken. In fact, it's almost all they care about in this category. Twitter's stock is in the toilet because their user growth has tapered, whereas Facebook continues to grow at a healthy clip.

</comment></comment></comment></comment></comment><comment><USER25> I removed the FB and Messenger apps from my phone about 2 weeks ago, and I've mostly managed to not open it on my desktop until after 6PM, which has drastically reduced my usage. What finally did it for me was trying to turn off notifications for messenger and realizing there is apparently no way to really do this. You can "mute" them for up to 24 hours but in 5 minutes I couldn't find a way to turn them off permanently. Whether it is possible or not is besides the point. It's an obvious feature and should be easily accessible. I decided to start actively avoiding software that doesn't respect my agency. I'm moving to open source where possible and paid products where not. I'm sick of software designed for engagement rather than user experience.

<comment><USER26> You can use Messenger via the website. No need for Messenger.app...

<comment><USER27> Facebook forces you to download the app to use Messenger when on an Android device (possibly others). A third party app is required to avoid that ridiculousness.

</comment></comment></comment><comment><USER28> I deleted my Facebook account a month or two ago and couldn't be happier with that decision. I hope everyone else does the same.

<comment><USER29> Congratulations! I did the same and it's dramatic how much my life improved as a result.

</comment></comment><comment><USER30> > A third line of attack is likely to become important soon, perhaps as soon > as next year. Former Facebook executive (yes, another dissident insider) > Antonio Garcia-Martinez argued earlier this year that Facebook's ad > targeting based on data collected from users is essentially unethical (and > also that Facebook oversells its targeting ability).

That last parenthetical about overselling points to a fourth line of attack: fraud. There's been a lot of rumbling for years that FB (and Google for that matter) are not doing enough to combat fake clicks / views / likes and are essentially ripping off advertisers. If everyone smells blood in the water all of a sudden due to these other issues heating up, there could be a lot of pressure on these companies to provide more transparency. That could bring their revenues way down.

</comment><comment><USER31> Surprised that the article didn't mention the EUs incoming data protection laws (GDPR) compliance with which is bound to be costly for Facebook as well as shifting power towards individuals more broadly.

<comment><USER32> The unintended effect of GDPR, like other regulations aimed at particular industries, will be to entrench incumbents like Facebook and insulate them against competition.

<comment><USER33> How so? I haven't read anything about GDPR, so I'm curious what it means.

</comment></comment></comment><comment><USER34> I still like that article "facebook is the junkfood of relationships". Such an apt metaphor.

<comment><USER35> Facebook Is the Junk Food of Socializing (2015) | [https://news.ycombinator.com/item?id=15782014](https://news.ycombinator.com/item?id=15782014) two weeks ago.

>kenning:

 _I think cigarettes are a great comparison. I heard it a few years back.

When popular, a huge amount of the population used cigarettes despite growing research showing that it had a slight but consistent harmful effect. A hooked individual is unlikely to stop using even when given this evidence, as the product is addictive and gets stronger with network effects. Younger generations understood the harm better and had to avoid regular temptation to engage._

</comment></comment><comment><USER36> I'm not sure what all these articles are complaining. Facebook is in the business of selling influence, just like Google or Twitter, that's how they make money. The product is people's attention span, just like TV or newspapers or any website or business financed by advertisement.

So what is the problem here? the fact that anybody around the world can buy influence on Facebook? When you needed millions before to buy a spot on TV or newspapers?

It's the black smith complaining about the automaker all over again.

<comment><USER37> The issue is much more subtle than the blacksmith compaining about the automaker.

A simplified version goes something like: Social media feeds are controlled by computer algorithms (AI) and the psychological, social, and political effects of social media are, at best, poorly understood and may, at worst, run counter to the long term goals of the humans building and using those systems.

Also, because these systems are generally autonomous (complex-ish AI), systems which do run counter to the goals of society may be doing so without the intention of the systems' builders.

This was covered here on HN a few days ago [0] and the featured video by Zeynep Tufecki is clear and accessible (23 mins). [1]

Another compelling analysis into the unexpected negative effects of AI in social media (in the domain of YouTube children's videos) is James Bridle's "Something is wrong on the internet" which was featured on HN back in November of this year. [2]

      [0] https://news.ycombinator.com/item?id=15891014
      [1] https://news.ycombinator.com/item?id=15891014
      [2] https://medium.com/@jamesbridle/something-is-wrong-on-the-internet-c39c471271d2

EDIT: word order

</comment></comment><comment><USER38> I uninstalled the facebook app from my mobile and only use once in a day for about 10-15 mins in the evening to get update on web. This has become very effective and I still keep update with some of my friends/relatives there.

I think facebook has to do much larger research on the impact it is having on wider group of people and not just in western world in terms of politics, news, kids, humans behavior, etc. I have seen people spending hours and hours of unproductive time on facebook in very poor and developing countries where the same time could have been used for more useful stuff.

</comment><comment><USER39> For me the biggest problem with Facebook is that you bust your ass to obtain an audience and then you can't reach them all because they change the algorithm and you have to pay extra. So you're paying initially to advertise and reach an audience and then you pay again to actually be allowed to say something to them. That's fucking pathetic. I mean come on Facebook, get your shit together. Either you'll make money from advertising or from promotions. You can't have it both ways. You're pissing off businesses, especially the smaller ones.

</comment><comment><USER40> 2017 Was Bad for Bloomberg. 2018 Will Be Worse. All of these anti-Facebook articles should have disclaimers informing readers that they are in competition with Facebook and that Facebook is winning.

<comment><USER41> Genuinely curious - how do Facebook and Bloomberg compete?

<comment><USER42> For viewer time and attention I guess. As mentioned by another poster FB stock is up about 50% on the year, the earnings are up a similar amount. I'm skeptical 2017 was that bad for them.

</comment></comment></comment><comment><USER43> Though many have mentioned in their posts and comments, following things made me weary of using FB:

1\. More friendlier to businesses - after each N number of posts (where N sometimes < 5) we can see sponsored posts

2\. Feeling of stalking - after searching few things in e-commerce sites (the exact same items getting listed in advertisements of sponsored feed). Though its through the Ad affiliation this happens, its totally creepy to see the "things" you searched for following you all over the social media.

3\. Pushing for wider attention - though you haven't uploaded any picture of you, if in someone else's photo you get a part (even in a corner) all your friends will be notified!

4\. Always-on-top - Their messenger app displays always-on-top floating bubble in mobile phones whenever there is a notification! Never ever look anywhere else!

5\. Feeling of being their product - if the data we generate (not the moments we cherish) is their selling point for being an attractive platform, then there is no human part to it. We are just the products they sell!

6\. Getting annoyed when an user doesn't login for a long time - sending an email and text message to say "if you have trouble logging please click this link"

7\. Thank you animations other custom generated animations - All these animations are auto generated (may be mostly using AI), though in the end of the animation it says "Team FB", its more of a "AI @ FB". Why bother creating it, if it is auto generated!

</comment><comment><USER44> Yes! It will definitely be worse for people who are not investing in FB stock.

<comment><USER45> 2017 was bad for people who didn't buy facebook stock.

</comment></comment><comment><USER46> FB's business model will eventually clash with its value proposition to users.

The hedge fund and institutional investing world has fallen in love with facebook because it obviously is growing like crazy and scale and in a profitable manner, but also because it is viewed by many as a modern-day "value investment" (strange as that sounds), in the sense it has a powerful competitive moat and compounding returns on investment. but ultimately this thesis comes down to placing more paid ads in front of users. facebook will have to choose between cramming more and increasingly intrusive ads into its platform or dealing with a falling stock price. when it happens who knows, but it will at some point

the regulatory risk is real but vague. out of curiousity, i wonder how many people thought the regulatory risk for microsoft in the late 90s was real

</comment><comment><USER47> I only use Facebook for work - promoting nonprofit events, but its utility is diminishing as there is a growing share of people who flee Facebook and it's now creating double work as I both need to support Facebook, and email and the format of work are different. Facebook made it especially hard when they removed the ability to invite the same people from an old event - now I have to go thru my over 1,000+ and select who I should invite to which event, which is total nonsense! For personal stuff, I still use Skype and Viber to keep up with friends and family.

</comment><comment><USER48> The title and content is not matching. As a to-customer company, whether it is a good or bad year depends on how much they earn from their customers and how much they grow instead of how badly they are regulated or criticized. As long as people love using Facebook, every year is a good year. If the article describes that Facebook is losing their users either drastically or gradually, I would agree with the title saying that it was bad for Facebook.

</comment><comment><USER49> I think that the main reason of Facebook's failure is that people need someone to listen to them. Facebook is just about sharing. People will hear you but you want someone to listen to you, eventually.

So,this feeling of being heard can only satisfy you temporarily until a certain point, meaning until you realize you need something more. Facebook has failed iked at what their main purpose is: communication.

Is there an alternative? Yeah, it's called life, listening, opportunities, etc.

My 2 cents.

</comment><comment><USER50> I hate Facebook with such a passion I really hope this is true.

</comment><comment><USER51> Does anyone take Bloomberg and their "predictions" seriously? I may be biased (I think, most of the predictions I've seen are in "Apple is suffering badly and will be suffering" context). But it looks like their "predictions" never ever hit their mark and only serve to drive traffic.

<comment><USER52> I think Bloomberg as any other online news try to come with catchy titles like this one. Apparently, it works. Look at how many comments dit it bring here on HN. :-)

</comment></comment><comment><USER53> Facebook jumped the shark when it switched from being a social network to being a news network.

</comment><comment><USER54> I stopped using FB because the feed was full of promoted posts, which made me really mad. And when your interested in finance/fintech/investment you get some really suspicious(most likely some scam) ads for promoting some X crypto- coins.

</comment><comment><USER55> Every technological revolution has profound effects on society, our brains and our ability to interact. Witness [0]. From the printing press to the internet, a change occurs, it affects our brain and the way we interact, and then eventually we begin to deal.

The start of the vaccine(/backlash/response) to social media has begun.

[0] [https://xkcd.com/1227/](https://xkcd.com/1227/)

<comment><USER56> Not that I don't take the point, but presumably if mankind were in an endless decline into intellectual laziness, then each of the writers in that XKCD comic would be correct: they'd each be sampling a different segment of the same downward slope.

<comment><USER57> I'm torn between wanting to agree with you ("Idiocracy is a documentary!", et al), and the cognitive dissonance of the greater and greater scientific and technological achievements we continue to create.

Maybe there's an analogue at work here; like financial/wealth inequality, but for intellect (that feels incredibly elitist to 'verbalize').

</comment></comment></comment><comment><USER58> TV also rots kids minds, making them complacent, in case you missed the memo circa 1960. And now look at all these old zombies running around.

</comment><comment><USER59> So..their financials are great, and people are staying with the platform despite their propaganda issues. I'm not following this article.

</comment><comment><USER60> You wouldn't know it from their stock.

</comment><comment><USER61> FUD. Mostly unsubstantiated. Written like Facebook is a pre-IPO company not a publicly traded one.</comment>


How Google has knowingly enabled piracy for years, and still does - <AUTHOR> https://blog.turbo.run/how-google-has-knowingly-enabled-piracy-for-years-and-still-does/ <comment><USER2> Author should try Showbox or Terrarium on Android, where Google is also on top among video providers. I was always WTF is GoogleVideo doing as a host in this app. You have to get the app in ways other than Google Play. It's better than any Netflix or Hulu where catalog is much more limited.

</comment><comment><USER3> I tried the javascript bookmarklet on a YouTube video but it didn't work.

</comment><comment><USER4> Cracking laws in the hot sun, i fought the G and the G won!

</comment><comment><USER5> what's the gain for google?</comment>


Charles Darwin, Economist - <AUTHOR> http://www.the-american-interest.com/article.cfm?piece=1049 <comment><USER2> Another way to phrase most of the article is that Prisoner's Dilemmas and Tragedies of the Common are much more common in economics than most people think. I personally agree.

What was surprising for me to hear was the notion that it was Darwin who supposedly first emphasized the importance of such dynamics. These insights have always come to me via Game Theory so far, which is not usually associated with Darwin (as far as I know).

</comment><comment><USER3> A review of the book from a UK/european perspective:

[http://www.timeshighereducation.co.uk/story.asp?storycode=41...](http://www.timeshighereducation.co.uk/story.asp?storycode=417490)

 _"And the idea presented at the start, to the effect that Darwin, rather than Adam Smith, will come to be seen as the father of modern economics, gets lost on the journey. Indeed, he reveals in the preface that the book's title was imposed by the publisher, and that his own preference would have been for_ The Libertarian Welfare State _, which would have been a clearer guide to the material he presents."_</comment>


Practical Examples in Data Oriented Design - <AUTHOR> https://docs.google.com/presentation/d/17Bzle0w6jz-1ndabrvC5MXUIQ5jme0M8xBF71oz-0Js/present#slide=id.i0 <comment><USER2> I recommend the old bitsquid blog as well - it gives a good snapshot of the thinking that goes into creating game engines these days.

[http://bitsquid.blogspot.com](http://bitsquid.blogspot.com)

<comment><USER3> I recommend the new "Our Machinery" blog [1], where they write about a new engine development. Bitsquid was sold to Autodesk, rebranded Stingray and as of now seems to be discontinued [2].

[1] [https://ourmachinery.com/post/](https://ourmachinery.com/post/) [2] [https://www.autodesk.com/products/stingray/overview](https://www.autodesk.com/products/stingray/overview)

<comment><USER2> Excellent, I'll check that out. As (at the risk of exposing my geriatric age) someone who did 3d engine and driver work back in the mid 90s to early 00s, I found the bitsquid blog really useful to warping my brain to the near era and the tradeoffs that matter today. Great stuff.

<comment><USER3> If you are into no-nonsense software design, Molecular Musings [1] written by Stefan Reinalter is also a goldmine. As is anything written or said on topic by Mike Acton, whose ramblings de-facto brought DOD into the mainstream [2][3]. Regarding good old days, remember Flipcode? ;) [4]

[1] [https://blog.molecular-matters.com/](https://blog.molecular-matters.com/) [2] [https://macton.smugmug.com/Other/2008-07-15-by-Eye- Fi/n-xmKD...](https://macton.smugmug.com/Other/2008-07-15-by-Eye- Fi/n-xmKDH#!i=593426709&k=ZX4pZ) [3] [https://www.youtube.com/watch?v=rX0ItVEVjHc](https://www.youtube.com/watch?v=rX0ItVEVjHc) [4] [https://flipcode.com/archives/articles.shtml](https://flipcode.com/archives/articles.shtml)

<comment><USER2> Excellent, thank you for those references.

I also recently picked up "Data-oriented design: software engineering for limited resources and short schedules" by Richard Fabian, which I've not had a chance to read properly but looks like it covers things in detail.

</comment></comment></comment></comment></comment><comment><USER4> This emerged as a result of writing performance-demanding games, but I think it should be more widespread, because it's much more fundamental, as opposed to object-oriented design.

<comment> mind-blight Definitely. I started writing React/Typescript this way, and it's been a pleasure. Each component is just a function, so composing components is just a data pipeline. If you have few, key data structures that you're working with, it makes reconfiguring that pipeline to fit product needs a while lot easier.

It also means you naturally end up with small, testable, generic components without having to think too hard about it. You've five the heavy lifting in the data structure, and whatever behavior you want flows naturally from that.

</comment></comment><comment><USER5> For those not familiar with this, here's a bit of background knowledge: A lot of game engines had run into an issue where a sensible and user friendly object oriented design led to a lot of little inefficiencies that added up to relatively poor performance. And fixing this became very tricky, since the problem manifested itself across multiple layers of code, and was a result of the access patterns that came with OO, in addition to poor cache optimization. In most applications this rarely matters (e.g. in a web-app the round-trips to the database will dwarf this), but in game engines you're trying to simulate and render a complex world 60 times per second, so you've got 16 ms for each frame, and you really don't want half of that being wasted on the CPU doing stuff that could have been avoided or not optimizing cache usage.

So an alternative to object-oriented design was proposed: Data oriented design - there's a good video about this from 2014 by Mike Ackton [1]. But in short, the idea is to go 'back to basics' and focus on this: You're pushing around and transforming bits of data so you can eventually give an output. So the goal of your design is to make it explicit how and when you do any of this, so you can avoid unnecessary copying, you can lay out data to fit efficiently in the cache, parallelize as much of this as possible, and do as little else as you possibly can. The result is the difference between opening Word and Sublime Text. In a web-context, Map-Reduce is a similar way of explicitly expression transformations in a way that enables parallelization.

A common pattern that many game engines have adopted as a result of this is Entity-Component-System [2]. Basically, most game engines work with a model where each object in the game world is an object with a list of components that give it varies attributes - e.g. a physics component to define how it handles collisions, a rendering component, a script component with some code to run every frame, etc. Previously that was also how it would be laid out in memory - an object contains the data from its components. With ECS this is inverted/exploded - the object is split up into an entity (basically just an id), each component's data is stored in an array along with all the components for other entities that also have that component (and the entity id is used to look up/associate in that array) and finally a system does transformations on the data in the component arrays. One of the benefits of this is that it lays out e.g. all the physics data continuously in memory, which makes it much easier to use the cache efficiently - for example if you load one components' worth of physics data into the cache, it might already include the next 1-3 chunks that just so happen to be exactly what the physics system will work on next. This blog post comes with some nice illustrations to help understand the difference between these two ways of laying out data [3]

[1] [https://www.youtube.com/watch?v=rX0ItVEVjHc](https://www.youtube.com/watch?v=rX0ItVEVjHc) [2] [https://en.wikipedia.org/wiki/Entity_component_system](https://en.wikipedia.org/wiki/Entity_component_system) [3] [https://medium.com/@savas/nomad-game-engine-part-4-3-aos- vs-...](https://medium.com/@savas/nomad-game-engine-part-4-3-aos-vs-soa- storage-5bec879aa38c)

<comment><USER6> Seems like there's a lot of similarities between DOD and relational modelling (as in modelling for a RDMBS). I imagine DOD is kinda like doing batch/bulk operations in pure SQL vs using an ORM.

<comment><USER7> It is almost exactly relational modeling. Instead of having an object that maps to an entity, you only have relations that hold information about various aspects of what you are modelling, and iterate over and join as needed.

</comment></comment></comment><comment><USER8> The scrolljacking + history pollution of this site is basically a crime.

Also, is there anything more useless than a slide deck without the actual presentation? Just have to kinda guess all the blanks eh? I normally wouldn't even comment but I find data oriented design to be the best and love to see other takes/critiques/methods but this is useless as is.

<comment><USER2> Did you try with the speaker notes on? That gives a bit more detail.

</comment></comment><comment><USER9> Might be just me, but I was expecting the examples to be a bit more fleshed out than they actually are based on the title. A bit disappointed.

<comment><USER8> Based on the notes it seems there were better examples just not in the slide deck.

</comment></comment><comment><USER10> I'm not sure these slides alone will teach anything to anyone who doesn't already know what they're trying to say.

I also find it kind of funny talking about scene graphs and animations when model, mesh and texture data are already examples of data focused designs and they're much more fundamental.

</comment><comment><USER11> whot?? this is some kind of a new thing? i do everything in this fashion for years</comment>


MIT solves 100-year-old engineering problem  - <AUTHOR> http://web.mit.edu/newsoffice/2008/fluid-flow-0924.html

<comment><USER2> The gist is that they've created a better theory of flow separation (roughly speaking, where a flowing fluid "tears loose" from a boundary surface of some sort to make a sheet of fluid that folds up and projects out into the main flow).

Their theory deals only with incompressible flow, so I'm not sure how much this would help aerodynamic simulations, but it's probably got lots of applications in hydrodynamics and industrial process simulation.

You can see the original papers at <http://web.mit.edu/ghaller/www/papers.html>.

<comment><USER3> This is one of the reasons why I get most of my news these days through HN, and typically read the comments first. I get a concise summary and usually more interesting links to the original research.

<comment><USER4> I'm a little bitter that I can't get the concise summary in the RSS feed. Or a real feed for that matter. A lot of links never show up at all.

</comment></comment></comment><comment><USER5> It's fascinating science, but the one thing that it proves to me is that MIT has absolutely solved the science of the press release. They do a far better job than most other engineering schools that I know of at hammering the message (for any given message) home, over and over, in breathless prose.

The very fact that they've subtitled their magazine (" Technology Review") as "The Authority on the Future of Technology" is proof of that.

Hell, the fact that they've gone beyond press releases to printing up their own hagiographic magazine is proof of that.

I don't say this to be bitter - as someone for whom marketing does not come easy, I'm perpetually impressed by what a great job they do.</comment>


Show HN: Song of the Moment – A homepage with a new song suggestion every day - <AUTHOR> https://www.songofthemoment.com/ <comment><USER2> Simple and elegant. I'm assuming somebody is trying an MVP. Congratulations for putting it out there and trying it out. Questions: How do you plan of monetising this? How would you expect the selection process will be? How do you chose the winner? Let's assume you get flooded by some Heavy Metal fans. Will this transform into the Heavy Metal Song of the Moment? Let's not even talk about trolls...</comment>


Machine Learning Can Help Unlock the World of Ancient Japan - <AUTHOR> https://thegradient.pub/machine-learning-ancient-japan/ <comment><USER2> for those interested in the different ml methods attempted for the challenge, many of the top kagglers in this contest posted rundowns of their solution [0].

for those interested in kuronet [1] and the competition alex gave a presentation here (en, [2]) as did tarin (ja, [3]).

for those interested in classical japanese literature, you can see the tools they've built here [4]. tarin is also very active on twitter [5].

[0] [https://www.kaggle.com/c/kuzushiji- recognition/discussion](https://www.kaggle.com/c/kuzushiji- recognition/discussion)

[1] [https://arxiv.org/pdf/1910.09433.pdf](https://arxiv.org/pdf/1910.09433.pdf)

[2] [https://youtu.be/e2-mVBvygm8?t=1428](https://youtu.be/e2-mVBvygm8?t=1428)

[3] [https://youtu.be/e2-mVBvygm8?t=537](https://youtu.be/e2-mVBvygm8?t=537)

[4] [https://mp.ex.nii.ac.jp/kuronet/](https://mp.ex.nii.ac.jp/kuronet/)

[5] [https://twitter.com/tkasasagi](https://twitter.com/tkasasagi)

</comment><comment><USER3> > Chirashigaki was a method of writing popular in premodern Japanese due to > the aesthetic appeal of the text. ... When humans read these documents, they > decided where to start reading based on the size of characters and the > darkness of the ink.

Extraordinary.

<comment><USER4> Sounds more extraordinary than it is. It basically means "you read it the obvious way."

<comment><USER5> I wopud not call it really obvious:

[https://thegradient.pub/content/images/2019/11/image2.jpg](https://thegradient.pub/content/images/2019/11/image2.jpg)

<comment><USER6> Well, even someone such as myself with only occasionally passable Japanese skills can fairly easily see that one most likely ought to start at "御" towards the upper right and do find that the other order markings "makes sense". So perhaps it is just a matter of needing a little bit of exposure? Now, reading it is its entirety is an entirely different story, but I do know that native Japanese readers do struggle greatly as well on this point.

On a related note, does the first text region not look an awful lot like the Japanese main island of Honshu?

<comment><USER5> Spotting the starting point is easy, but I doubt even a human can order the text correctly without taking cues from the textual information.

It is indeed doable, calling it obvious is what I react to :-)

</comment></comment></comment></comment></comment><comment><USER7> Describing _kuzushiji_ ("broken characters") as a "writing system" is a bit much, I'd liken it to a cursive script. Not that this diminishes the importance of ML here, since anybody who's tried to read historical English documents will know that these can also be pretty incomprehensible to the untrained eye:

[https://www.nationalarchives.gov.uk/palaeography/doc5_popup/...](https://www.nationalarchives.gov.uk/palaeography/doc5_popup/image.htm)

But as ever, Japanese ramps up the difficulty because there are thousands of characters instead of 26 letters to deal with.

</comment><comment><USER8> It would be really cool if they released these generated images en masse because that could help a whole generation of linguists catch up on ancient Japanese literature swiftly. These symbols are hard to decipher, but with enough Machine Generated examples it could advance the field considerably!</comment>


For the New Superrich, Life Is Much More Than a Beach - <AUTHOR> http://www.nytimes.com/2015/06/21/business/for-the-new-superrich-life-is-much-more-than-a-beach.html

<comment><USER2> Meh, if you did all that stuff and didn't buy anything and took coach flights and rented a little boat for the yacht stuff it would probably cost maybe about $50k a year (probably a heck of a lot less actually). The hard part, of course, is getting invited to the billionaire parties. That would make a really hilarious travel blog: The relatively poor guy going to all the rich people events.

</comment><comment><USER3> An Add for a private jet company masquerading as a nytimes article.

</comment><comment><USER4> Was this paid for by Jean Pigozzi? Very little new information on the lives of globe trotting wealthy elite.

</comment><comment><USER5> Why do the superrich spend most of their time around their own types. Would it not be much more fun to hang out with people who didn't have their level of wealth so they could really show off and everyone would come out better.

<comment><USER6> If a superrich person was hanging around with an average joe (or even a 1%er), it would be an unequal relationship. It's like asking why supermodels don't hang out in ordinary bars.

<comment><USER5> > it would be an unequal relationship

that's not a bad thing.

</comment></comment></comment><comment><USER7> Nothing interesting.</comment>


Too Fast, Too Furious: In search of time gained - <AUTHOR> https://nplusonemag.com/issue-21/the-intellectual-situation/too-fast-too-furious/

<comment><USER2> Welcome to your 40's. :-)

Joking aside, it takes a while for many people to realize that at the end of their life, they are just going to be dead. But as they do come to realize that, they question what they are spending their time on, and then often completely turn around what they care about. A number of publications have called this the 'u-turn' or mid-life dip.

</comment><comment><USER3> FOMO

[http://en.wikipedia.org/wiki/Fear_of_missing_out](http://en.wikipedia.org/wiki/Fear_of_missing_out)</comment>


100+ Million members. Hundreds of thousands of instances. Less than 10 Core SREs - <AUTHOR> https://www.linkedin.com/pulse/100-million-members-125-hours-watched-per-day-hundreds-probst/ <comment><USER2> What is an SRE?

Why are people so poor at defining their acronyms these days?

</comment><comment><USER3> SRE: site reliability engineers (notorious at Google) ...</comment>