Publishing JSON-LD for Developers - <AUTHOR> https://datalanguage.com/news/publishing-json-ld-for-developers <comment><USER2> Try leading with an explanation of why developers should care about JSON-LD. Its value is not obvious to me.

According to the Wikipedia article [0] this is used by Google Knowledge Graph, but there's no other examples. Are there open source RDF processors? What are they used for?

Previously I've used json-schema for documenting, validating, and testing a REST API. The tooling wasn't very good, but it worked alright. As I understand it, JSON-LD wouldn't help at all with this.

The fact that JSON-LD is a W3C standard while json-schema isn't doesn't constitute an argument against it. Standards regularly show up and die without ever gaining adoption. Maybe instead of a vacuous remark on JSON-LD offering more than json-schema with respect to linked data you could actually muster some concrete example which highlight these alleged benefits?

I'm not an expert on this subject, but isn't it worrying that third-party links can change or go down without notice? Ideally if I'm hosting a context I'll want to replicate my whole dependency graph and provide a mirror in order to reduce dependencies on external systems. However, just because I want to host my own mirror doesn't mean I want it to be treated as a different kind of entity. It seems like something such as content-addressable storage [1] could be relevant here.

[0] [https://en.wikipedia.org/wiki/JSON- LD](https://en.wikipedia.org/wiki/JSON-LD)

[1] [https://en.wikipedia.org/wiki/Content- addressable_storage](https://en.wikipedia.org/wiki/Content- addressable_storage)

<comment><USER3> The main benefit in my eyes is data integration. If you have multiple systems with data, and you want to merge the data together into a unified whole for some reason then RDF/JSON-LD make it easy and mostly automatic.

For example: 1\. How do you distinguish IDs from one system with those of another? RDF solves this. 2\. How do you distinguish property names across systems? RDF solves this. 3\. What if a entity originates in system A which you don't control but you want to add a property to it in your system? RDF solves this.

JSON-LD is simply one way to serialize RDF data that makes look like what you would typically expect from an API that returns JSON. I.e. it's developer friendly

In addition to the above, RDF is also an extraordinarily flexible/schemaless data model if you store your data as triples rather than as documents. There is definitely a steep learning curve to linked data, and I've had a hard time explaining it's value over the years, but I think it's worth the time to learn, understand, and leverage.

All of these benefits exist before you get into things like ontologies, which allows you to add additional value on top of what I outlined above.

<comment><USER4> Outstanding explanation. I would like to emphasize one point:

> _If you have multiple systems with data, and you want to merge the data > together into a unified whole for some reason_

This isn't just about "big data" or "data warehousing" or such OLAPy concerns. It's really about the bread and butter of modern information systems.

"Get some ID from service A, use it to query service B." Does that sound familiar? That's data integration for you. That's what RDF / Linked Data is about.

</comment></comment></comment><comment><USER5> I'm working on language ressources and graphs and in my opinion, RDF is so flawed you shouldn't even bother with it. I will address the topic during a conference in June (email me -- info in my profile -- for follow up or to get my articles if you're interested by the topic). JSON-LD is trying to make RDF sexier (more exactly said, RDF try to pimp itself by using JSON-LD) but as it is just RDF with a new serialization syntax, it share every of its issues.

Main issues are:

\- a literal node (strings which carry the useful information for an human) cannot be the source of an edge, so you end up creating "resources" nodes and pushing content as leaf of the graph. Access to its is thus done with a lot of indirections.

\- no annotations, which mean you cannot represent simple graph construct such as a weighted edge.

\- blank nodes, needed to join more than two piece of data which, are anonymous so they are difficult to reuse. That's sad because a graph is supposed to make data link each other. Coupled with issue 1, it mean most linguistic resources graphs are actually closer to trees than real graphs.

\- reliance on the web infrastructure (IRI, DNS, web servers, ...) which is a big dependency with a lot of gotchas and not fitted for every uses cases (self contained data for example)

\- performances is abyssal. I tried one of the dictionary build on RDF, and some query took up to 40 seconds (!) to return no result. Even bloated web dictionaries perform under 2 seconds.

Also, the second sentence of the article is totally false. I read the history of JSON-LD by one of its main author [1], and it does not originated in the RDF community. It originated elsewhere, and then there was RDF people included in the loop.

[1] [http://manu.sporny.org/2014/json-ld- origins-2/](http://manu.sporny.org/2014/json-ld-origins-2/)

<comment><USER6> Is there a reasonable alternative? I've worked with RDF and LD and can agree with most of your points but would like to see if there is something better on the horizon.

<comment><USER5> Currently no. I am concerned with making dictionaries better (especially mobile applications), so I don't have a general purpose solution but I propose something for that use case. I basically started from scratch and came up with a very simple type system which aggregates a few values (name, id, type, ...). This type system is not hierarchical so no inheritance; you could implement it with a few classes in a OO language.

Also, nodes can host complex structure but do not expose it to the graph (edges are made only between nodes) and edge can be of n-arity. The system is regular enough to implement simple and complex lexicographic constructs easily as well as to use the graph in an actual application.

Issue with RDF et al if that before you start even working on your real data, you have to come up with an ontology, that is to describe the world in categories, which is not easy. Another problem is that a lot of projects want to define standards that works with everything. That's not realistic. So I took an approach where you can learn from your domain by working directly on your data, make something useful with it, and then expand it you need it. KISS.

<comment><USER7> There are plenty of ontologies already defined that someone could use. I'm currently involved in work to map STEP [1] onto RDF/OWL/SKOS and it seems to be working out well.

I know that some of my collegues are using JSON-LD as the interchange format for this kind of thing.

[1] [https://en.wikipedia.org/wiki/ISO_10303](https://en.wikipedia.org/wiki/ISO_10303)

<comment><USER5> It totally depends on what you are doing. You need to take in account if using an ontology will solve any problem at hand. Also you may have an ontological system not build in RDF. At least in what I'm doing, RDF is creating more problems than it solves. Finally there is all the political layer that may go against publishing your data in an open and (web) accessible format and then you need another solution anyway.

<comment><USER8> To counter the argument of opening data to the outside world, LinkedOpenData has been studied _inside_ companies. I.e opening only inside the walled garden. And guess what? It failed. Simply because companies are not organized so data can "travel" flawlessly. Companies are organized as silos. With boundaries & (implicit) contracts between people, teams, hierarchies. Of course, everyone knows the information is somewhere here or there, but eventually it is a real hard job to get it for real.

</comment></comment></comment></comment></comment></comment><comment><USER9> For an argument against using JSON-LD, see [https://hsivonen.fi/no-json- ns/](https://hsivonen.fi/no-json-ns/)

<comment><USER4> This article does not have a valid argument against _using_ JSON-LD.

It may be read as an argument against making namespaces a ubiquitous part of JSON, in the same way as they are ubiquitous in XML (even though not part of the base XML spec). It's a valid argument against getting to the point where namespaces pop up in every JSON tutorial, and every JSON serializer takes a namespace map, and every user of JSON has to deal with them.

But JSON-LD (as RDF) uses namespaces to solve a particular problem (merging data from disparate sources). Solutions involve costs, that's normal. You might weigh this cost against the expected payoff and decide it's not worth it for you — but the article doesn't do that.

</comment></comment><comment><USER10> As someone completely out of the loop on this one but deeply entrenched in modern web development, I have some questions.

1\. What benefit does this format give that other schema systems do not?

2\. The `@context` just seems like a way of defining variables. As best as I can tell, the use case leads to one only using each of these "variables" once. What's the benefit?

3\. What benefit does RDF in any format provide to the average web developer?

Sorry if these questions are asinine. It's just that the article bemoans the fact that this hasn't hit mainstream web development yet, to my mind, does nothing to encourage its use.

<comment><USER5> > 3\. What benefit does RDF in any format provide to the average web > developer?

Probably (almost) none, otherwise in its 20 years of existence it would have been used somewhere. Heck, even Semantic Web scholars actually don't use it for their own personal websites...

<comment><USER3> It provides a lot of benefits, see my other comment on this thread for a few specific benefits.

<comment><USER5> I read your post and you rose valid points.

I think one problem though is that RDF is a solution searching for a problem to solve. It's clear it was designed from some abstract space instead to be a solution evolving from real use cases. And that's why most people have a hard time understand it, and even more putting it in practice.

For example, even basic RDF concepts such as a resource are hard to grasp. You have an IRI, great, but should it be dereferenceable? If yes, what it expected to be returned: a document in various formats or more RDF triples? If not (URN case), what to do with it? All these problematics are not addressed in the spec itself but must be understood before even starting to implement a hello world.

There is interesting projects such as DBpedia. Another problem of RDF is social and pertains to its advocates: trying to impose the technology everywhere without taking in account the audience needs nor the limitations of the technology itself is not going to work great. See the suggestions made during this workshop to improve the technology: [https://www.w3.org/2009/12/rdf-ws/](https://www.w3.org/2009/12/rdf-ws/) In 9 years (half of its live), nothing was addressed.

<comment><USER3> I think it solves a real problem. I work at a large company, with many data silos. I've had to hire armies of interns to match in merge data over the years because it wasn't possible to automate the merging of data from different databases.

I agree with your other points though, people have a hard time understanding it, and the community hasn't really shown the value. My hobby project is an effort to show the value, but it's not ready to share yet.

And yes, there's a lot of confusion things (URI vs URL, dereference or not) that the community hasn't done a good job articulating a happy path. There's another you didn't mention, there's an impedance mismatch between triples and resources. One is property oriented, and the other entity oriented, and they dont' always play nice together.

<comment><USER5> Of course I don't know every issues but sure I forgot some. Difficulty of making reification for example. Anyway, I will be glad to hear about your project when it's published.

</comment></comment></comment></comment></comment></comment><comment><USER11> Blah. Some people just won't be happy until JSON turns into the debacle XML turned into. It's a special kind of brain problem to see a simple straightforward thing and to only consider how one might bolt on arbitrary complexity.

<comment><USER12> You must have misunderstood something. JSON is a data format. JSON-LD is a use of that data format.

Your complaint is as if you looked at the Sublime Text configuration file, which is in JSON, and said "I liked JSON better when you didn't have to configure anything".

JSON-LD isn't designed to replace JSON, it's designed to replace all the awkward formats for RDF.

</comment></comment><comment><USER12> I recently wrote about the use of JSON-LD in ConceptNet: [http://blog.conceptnet.io/posts/2018/conceptnet-and-json- ld/](http://blog.conceptnet.io/posts/2018/conceptnet-and-json-ld/)

Seeing some knee-jerk negativity in other replies, I should emphasize: nobody is under any obligation to use JSON-LD just because you use JSON! It's not an upgrade to JSON, it's an upgrade to RDF.

</comment><comment><USER13> Please forgive me if off topic. I feel EDN deserves some love. Unsure if it's lack of awareness or what. Defrecord with type hints is enough for most projects, esp. the data models. The collection types are complete and there are also comments, namespaces, and tags. The grammar is also short, simple and easy.

Spec: [https://github.com/edn- format/edn/blob/master/README.md](https://github.com/edn- format/edn/blob/master/README.md)

Grammar: [https://github.com/antlr/grammars-v4/blob/master/clojure/Clo...](https://github.com/antlr/grammars-v4/blob/master/clojure/Clojure.g4) (EDN is a subset of Clojure).

Sorry if this is too fanboy, I just need to assume people aren't aware when I see this big pile of mud that is JSON.

<comment><USER14> No worries, it is _slightly_ off-topic though :) JSON-LD is a JSON format for the serialization of linked data, not a general data interchange format like JSON itself. Presumably an EDN fanboy could come up with EDN-LD without too much trouble if they so desired. I linked this elsewhere but here are nine other RDF serialization formats that you could model EDN-LD on: [https://help.poolparty.biz/doc/developer-guide/general- infor...](https://help.poolparty.biz/doc/developer-guide/general-information- on-the-poolparty-api/rdf-serialization-formats) if it ever comes into being.

</comment></comment><comment><USER15> Only slightly related bit does anyone have a good current take on how to get going on using RDF for something of value? I recently got interested through a colleague showing off his pet rdf setup, but the more I read the more I am just confused with the platora of dead/abandoned and renamed projects, different standards and tons of different shorter versions like this one. It really feels like everything on the topic is written both by and for people who have been active in the space continually since 2005, so for someone new it's difficult to see where to start and what to avoid.

<comment><USER16> RDF is a zombie format. It isn't entirely "dead" but after some wildly ambitious promises, it hasn't lived up to any of them, and it seems only a few "true believers" are still working with it. This being a world of seven billion people, a few "true believers" can still be a few thousand people, but it's just not a technology I can say is vibrant, alive, or worth spending much time with. The core problem is that it solves the easy problems, and not even terribly well (I more-or-less endorse titanix2's comment elsewhere in the thread), while leaving the hard problems mostly untouched. The excitement it generated 10-15 years ago mostly comes from confusing solving the easy problem for the hard problem. Everything that I've personally ever seen used RDF has ripped it back out again at some point. Whether that's the fate in store for the current users named in the article I can't say, but it certainly wouldn't be a bad guess.

If the space intrigues you, I would suggest starting with a graph database instead.

<comment><USER8> All the questions that the Semantic Web asked itself are reemerging with GraphQL. (exposing the DB schema, querying over the web, returning results based on a structure). The JS script kiddies are just scratching the surface today, but they will eventually have exactly the same questions. (data delivery, data reuse, data semantics, data exposure). They still worship plain JSON. But they will (have to) evolve. The Semantic Web has solved all those questions already, but in the most obscure manner.

PS: and yes, a graph database is a good start to open your mind.

</comment></comment></comment><comment><USER17> I've been developing a strongly-typed Ruby library for generating JSON-LD that might be interesting or useful: [https://github.com/public-law/schema-dot- org](https://github.com/public-law/schema-dot-org)

<comment><USER14> Awesome, I love messing with Ruby and semantic web stuff. Thanks for posting this. Could you explain more? How do you implement the strongly-typed feature? How does it interoperate with the Ruby-RDF library? [https://github.com/ruby- rdf](https://github.com/ruby-rdf)

<comment><USER17> Here's a quick example. Put this in a Rails template:

      <%= WebSite.new(
            name: 'Texas Public Law',
            url:  'https://texas.public.law',
          )%>

...and you'll see this in the HTML:

      <script type="application/ld+json">
      {
        "@context": "http://schema.org",
        "@type": "WebSite",
        "name": "Texas Public Law",
        "url": "https://texas.public.law"
      }
      </script>

This DRY's up my code - I just encode the right way of forming JSON-LD and the correct objects and attributes in one place, the library. (That JSON-LD is from my live site, [https://texas.public.law](https://texas.public.law))

Details:

First I created a small library which wraps Rails ActiveModel Validations so they can be used in any Ruby object. And I supply a new validator, TypeValidator.

[https://github.com/public-law/validated_object](https://github.com/public- law/validated_object)

With this building block, I can create classes for each Schema type I care about. And they strictly enforce their attributes:

      class Organization < SchemaType
        attr_accessor founding_date
        validates founding_date, type: Date
      end

That's a little redundant, but to a Rails developer, it's immediately clear what's going on. The full Organization code: [https://github.com/public- law/schema-dot-org/blob/master/lib...](https://github.com/public-law/schema- dot-org/blob/master/lib/schema_dot_org/organization.rb)

I'm not using Ruby-RDF at all. I looked into the current Ruby meta-data and strong typing work, and found it all too complex for my simpler use case:

I'm creating websites, and I want to embed correct JSON-LD-formatted schema.org in a rock-solid way: (1) Correct syntax, and (2) correct semantics. I've got the information as Rails models and objects, and I need to convert this to HTML/JSON-LD.

So all of these objects, like Organization above, recursively creates proper markup in response to #to_s:

      <%= @an_organization %>

...instantiated from that class above, will result in this in the generated HTML page:

      <script type="application/ld+json">
      {
        "@context": "http://schema.org",
        "@type": "Organization",

etc.

[https://github.com/public-law/schema-dot- org#usage](https://github.com/public-law/schema-dot-org#usage)

<comment><USER14> Thanks for the in-depth explanation. Sounds really great. I'll add it to my Ruby RDF toolkit.

What do you think of Spira [https://github.com/ruby- rdf/spira](https://github.com/ruby-rdf/spira) , does it complement what you are doing in any way?

<comment><USER17> That's pretty cool! But yeah, I don't have any RDF data sources. I parse lots of plain text and PDFs, and import some databases directly.

And for generating the website metadata, that info is coming from the Rails models.

</comment></comment></comment></comment></comment><comment><USER18> I guess I don't understand the purpose. If a high degree of formalization, typing and namespacing is required, why not use full-blown XML with namespaces and schemas?

<comment><USER8> Everyone is slowly reinventing SOAP :) (Note that RDF can modelize graphs natively, has native support of types, IDs and labels, and has a javascript parsing library, a bit more powerful than JSON.parse()).

</comment></comment><comment><USER19> Awesome stuff. I'm working with JSON-LD in both C# and JavaScript and loving the freedom that the linked data concepts (constraints) bring to developing APIs.</comment>


Tetris and The Power Of CSS - <AUTHOR> http://www.heydonworks.com/article/tetris-the-power-of-css <comment><USER2> I love CSS's pseudo-selectors. In my opinion, they are the best part of CSS3 and are generally great.

However, I think the author's jabs at CSS pre-processors and their adherents are unsubstantiated and a little unfair. I don't see how using SASS precludes you from knowing about or using complex selectors. As the author points out, SASS is merely an efficient and more intuitive way to write _classic CSS._ The good parts of CSS are still the good parts of SASS, and by definition every feature of CSS is a feature of SASS. It doesn't really follow that using SASS predisposes you to be less knowledgeable about regular CSS.

If anything, people using SASS likely use many more complex styles and work on larger projects, and are probably know more about and actively use more aspects of CSS than do people who don't have a need for SASS.

<comment><USER3> Not only that: if the author wanted to extend the trick for N-column grids, then they'd probably need to use a CSS preprocessor to output the final CSS rules (e.g. for N=5, the widths would be 20% and there'd be 4 special :last- child:nth-child rules).

</comment></comment><comment><USER4> Am I the only one who clicked the link expecting to see the Tetris in pure CSS?

AskHN: is there a good online resource that actually explains the layout mechanics of the modern browser? Not a comprehensive CSS reference (there're lots of them) but fundamental principles? lmgtfy's welcome.

<comment><USER5> Is something like ([https://developer.mozilla.org/en- US/docs/Introduction_to_Lay...](https://developer.mozilla.org/en- US/docs/Introduction_to_Layout_in_Mozilla)) what you were looking for? Or Were you looking more for how the browser reads CSS and sticks that into a formatting context? For the latter, I would suggest visiting [https://developer.mozilla.org/en- US/docs/Web/CSS](https://developer.mozilla.org/en-US/docs/Web/CSS) and poking around the key concepts a bit

</comment></comment><comment><USER6> Geoffray Warnants did a simple CSS3 Tetris in 2011: [https://developer.mozilla.org/en-US/demos/detail/tetris- css3...](https://developer.mozilla.org/en-US/demos/detail/tetris-css3-by- geoffray-warnants/launch)

</comment><comment><USER7> Great article on what is definitely a couple of nice and powerful features. For those new to nth-child and last-child, they are both IE9 and above features [0] [1] (of course, all non-IE browsers have proper support).

[0] [https://developer.mozilla.org/en-US/docs/Web/CSS/:nth- child](https://developer.mozilla.org/en-US/docs/Web/CSS/:nth-child)

[1] [https://developer.mozilla.org/en-US/docs/Web/CSS/:last- child](https://developer.mozilla.org/en-US/docs/Web/CSS/:last-child)

<comment><USER8> It staggers me when basic things like this are so late in the IE support game. I mean, IE6 - fair enough. And complicated, new layout stuff (columns, flexbox) - fair enough too. But selectors based on the index of an item in a list?! Why the hell did MIcrosoft drag their feet for so long and screw us all over - I can just imagine having to wait another 5 years before I can actually use this stuff...

<comment><USER9> [http://selectivizr.com/](http://selectivizr.com/)

<comment><USER8> That requires javascript, so is appropriate for 'nice to have' design elements, but not for core layout, etc.

</comment></comment></comment></comment><comment><USER10> I love this article except for the argument it makes about preprocessors. While I agree with the author that preprocessors do not replace the need for a deep understanding of CSS3, that doesn't mean that preprocessors are useless or bad; hell, the ability to nest rules alone saves me hours and hundreds of LOC.

<comment><USER11> I don't think the author is suggesting they are useless or bad.

</comment></comment><comment><USER12> Great article, however I won't be satisfied until someone provides me with a working CSS-only Tetris. _Hmph!_

</comment><comment><USER13> tldr:

        li:nth-child(3n + 1):last-child {
           float: none;
           width: auto;
        }

        li:nth-child(3n + 2):last-child {
            width: 66.666%;
        }

<comment><USER14> i feel this should be a problem that's going to be solved by flex-box.

<comment><USER15> I feel like the solution presented is the correct one. Using flex-box divs for everything won't be an improvement over table layouts.

<comment><USER16> Yes it will because you have separated layout from content

</comment></comment></comment></comment><comment><USER17> Thanks for giving some credit to plain old CSS. I've used SASS & am starting to use LESS but I'm really appalled when job interviewers give me a strange look when I say I don't use them religiously.

Same with COffeeScript... let's get real, pre-processing is great and all but there are tons of scenarios where it's not worth it just to get around writing extra sets of brackets or duplicating a bit of CSS.

Surely there are logic-intensive places where it is a huge boon but then I'm surprised I don't see more people advocating the absolute need for something like Dart rather than pre-processors.

Anyway, I feel like when you go to corporate work they want you to know atomic level ("how do various browsers interpret this bit of css") whereas its the smaller companies who want to know how many lines of code you saved by using syntactic sugar ("do you use LESS or SASS?"). They're way impressed if you use it even if it's just saving you 10 lines of code per project... Just an observation about pre-processing / interviewing / code hipsterdom. :D

<comment><USER18> CoffeeScript is much much more than just avoiding extra brackets. Anyone avoiding it because of the hype should do themselves a favour and check it out before dismissing it. I can't quantify the amount of time I've saved both reading and writing CS instead of JS, but it's gotta be in the 10-20% range.

And please, can we drop the "hipster" meme around new languages/tools? People experiment and adopt promising new technologies because they see a benefit to using them.

</comment></comment><comment><USER19> I really don't get why this article starts off with a rant about less and sass. What do pre-processors have to do with anything demonstrated? Do they make these things harder somehow?

</comment><comment><USER20> I know of this pseudo-selector. I've avoided really using it because of IE though.

<comment><USER7> I'm sort of in the same boat as you in that I have to support IE8 for one of my projects. However, these selectors are often used to simply enhance the appearance of something, so the lack of IE8 support isn't a big deal. Basically, I let certain styling gracefully degrade instead of simply not using the newer CSS rules.

<comment><USER20> To be fair, in all of my side stuff I ignore IE completely, but at work I've been tasked almost exclusively on the JS with IE8 support, so I haven't had to worry about it. Great point though!

</comment></comment></comment><comment><USER21> While I agree with the premise that css preprocessors are overused, I can't stress enough that the use of complex css selectors is a really bad idea. Not only can it kill performance (or at least make it hard to reason about) it encourages tight implicit coupling between the style sheet and the document which generally leads to hard to maintain front ends.

<comment><USER22> > While I agree with the premise that css preprocessors are overused

I'd like to know how one maintains a huge modular css code base without any sort of preprocessor.

Preprocessors are here because CSS sucks, and no standard committee seems to want to fix it. That's why people built these tools right, to solve a problem nobody was going to solve for them.

That's exactly the same thing with javascript. If javascript was decent we would not need all these compile to javascript languages.

These tools bring diversity and choice to a poor plateform with shamefull languages that are not evolving very fast. You cant fix it just by adding features without fixing the core. that's what preprocessors are for and it's ok to abuse them without shame.

EDIT:

my point is "it's good enough" isnt good enough, in a time where we are supposed to maintain complex front-end projects and asset pipelines, that work on different devices that have their own idea of how to implement (poorly written) standards.

<comment><USER21> Well, I think JavaScript is good enough (I do prefer Python though) and we certainly don't _need_ compile-to-JS languages like CoffeeScript (which IMO just takes a somewhat-ambiguous syntax and makes it more ambiguous). TypeScript is somewhat of an exception, but I view it less as a language (since it doesn't change runtime semantics afaik) and more of hints to a linting tool.

The problem with CSS preprocessors is that they are simultaneously too powerful and not powerful enough. That is, things like SASS mixins and nesting make it easy to make mistakes (specificity overload and huge stylesheets are the two big ones). At the same time they don't change runtime semantics so you can't fix the biggest problems in CSS like specificity wars, finding dead selectors and namespacing.

I do like variables and expressions though (mainly for colors and grid units).

The way you maintain a big modular codebase is to make your stylesheets really stupid and build the smarts into whatever is generating the DOM. The tools we have for generating DOM are both far more mature and we have more control over the semantics of the runtime.

</comment></comment></comment><comment><USER23> I'll toss my 2 cents in. People often forget that one of the biggest components of UX is page rendering speed. This solution while addressing a visual inconsistency will slow down the page considerably.

<comment><USER18> I wouldn't say "considerably" for most pages. From what I've read, complex CSS selectors won't have much of an appreciable impact on your average site/page.

[http://stackoverflow.com/a/12279783/179609](http://stackoverflow.com/a/12279783/179609)

<comment><USER23> Pseudo classes are very slow. Take a look at the bottom of the table he had using more complex attributes. The bottom line is that when we don't know how many elements are going to be cycled, it's a good practice to think in terms of worst case scenario.

</comment></comment></comment><comment><USER24> Would it be better to adjust the first element rather than the last one, as the first element is most likely to be the most important?

<comment><USER25> I think it's just for effect - the point of the article is determining which elements to act on. The author mentions you could just apply centering to the element instead.

</comment></comment><comment><USER26> "Did you think I was actually going to recreate Tetris in CSS? Sorry, no. Nobody needs to do that."

What a major let down :(

</comment><comment><USER27> Aww, I was expecting a game of tetris in CSS.

But awesome all the same

</comment><comment><USER28> Is it a new thing? I zoom OUT for many articles that are shared here in order to read them easily.

<comment><USER11> I think it's a responsive trend. Many sites even think my 1280x800 screen size is small and notch me into a mobile friendly view. Which is good for me as I normally zoom by about 125%. Personally 16px is comfortable for me with my resolution at about 1/2 metre.

I fix the font size and font in Firefox and state a preference in Chrome (seems to get overridden). I have a default zoom of 125% for Chrome, but it's starting to look like I can ditch that soon, as author's are changing their designs.

Sometimes resizing the window can lead to something more pleasing (font sizes can also change depending on the window size.) Resizing the browser doesn't play that well with tabs - resize one and you resize them all.

"You can please some of the people some of the time all of the people some of the time some of the people all of the time but you can never please all of the people all of the time." ― Abraham Lincoln

In general though responsive sites are better for me.

<comment><USER11> When I say 16px is comfortable for me, I'm referring to font-size.</comment></comment></comment>


The top 10 hackers of all time - <AUTHOR> http://www.dzone.com/links/r/the_top_10_hackers_of_all_time.html

<comment><USER2> Surely the best 'hackers' of all time are the ones that haven't been caught?</comment>


Why Apple's iBooks Numbers Are Meaningless - <AUTHOR> http://bits.blogs.nytimes.com/2010/06/07/why-apples-ibook-numbers-are-meaningless/?ref=technology

<comment><USER2> It's important to watch for careful wordings: 22% of _sales_ , 5 million _downloads_.

As a single data point, I've downloaded about 20 free books (I've read _The Invisible Man_ and I'm halfway through _Pinocchio_ ). The overlap of free books on Kindle vs iBooks is pretty high (mostly all from Project Gutenberg).

I think the iBooks ability to download a free sample (usually first 30 pages) is the killer difference. I've downloaded a few samples when I first heard about a book, and every time I open iBooks they're there reminding me about a book I wanted to read, that I can pay for when I'm ready. Maybe the Kindle device has a better "shopping list" type feature, but all Kindle book purchases on iPad have to go through the browser.

I think iBooks is a better service, but the huge Kindle catalog will help Amazon. For a single book, the programs are similar enough that I'd just buy it from the cheaper store.

<comment><USER3> I have iBooks, BN eReader, and Kindle on my iPad. I primarily use the Kindle. I use iBooks to put free ePub books on my iPad. I bought an Alastair Reynolds book on the BN app, but I'm leery about it's need to "call home to the mothership" every time I open it. What's going to happen on the plane?

I bought the book from BN instead of Amazon because BN's book was $4 cheaper.

Kindle and BN also do free samples.

<comment><USER2> Didn't know about the Kindle samples, thanks!</comment></comment></comment>


Ask HN: Formal education or self-taught? - <AUTHOR> There are consistent posts on HN from people wanting or offering advice on what types of math, algorithms, marketing, business, etc. books to read.
I'm curious how many HN readers consider a formal education to be the biggest factor in their ability to pursue the projects they are interested in, versus having a strong tendency to learn stuff on their own.
Or perhaps a healthy mix?
My own situation is that I'm mostly self-taught with respect to programming and algorithms and have learned most of what I know by working on projects "on the job".
I'm currently interested in some areas that involve heavier math and algorithms and I wonder how much a formal educational background (i.e. an MS in computer science) would have accelerated how quickly I could get into this stuff.
Thoughts? <comment><USER2> Here's my 2p: a mixture is good, but ultimately it comes down to what is best for you.

My background has been quite a mix. Most of my formal education is related to electronics (my degree was an embedded systems engineering) whilst my outside interests were in CS, programming and the internet (and some sociology thrown in on top :D). All of my programming and CS knowledge is self taught.

Career wise I've been more successful in the CS side of things - but there are large portions of that success which come down to things brought out of formal education. Stuff like essay writing really helped my form filling for example (and I seem to do a hell of a lot of that! :D) as well as technical handling and critical thinking (part of the engineering blitz they gave us!)

Now I am just starting out on an Open University (who provide degrees through distant learning) after my Dad advised it as a good route. This is the best of both worlds because it requires a lot of self teaching from the provided material but with the formal aspects of tests and essays thrown in on top. Im doing it alongside my work in related fields so it really is a complete learning mix and it's been an enlightening experience - I really think more people should be encouraged to take this route from the get-go.

Im finding it a real joy to do because it doesn't matter if you drift off into an aside - that is almost the point (at this level at least - Masters, one imagines Bachelors and non-degree level is a bit more rigid) of the exercise.

</comment><comment><USER3> My take on this is that if you're not interested in the subject enough to learn it on your own, then you'll probably never gain a deep understanding of it. That's not to say that a formal education is bad -- it will just never be a substitute for real personal motivation. If you have the motivation it takes to start learning a subject on your own, then I don't see any reason not to use every vector available to you to increase your knowledge, including college.

So, I don't think that a formal education is the biggest factor in one's ability to pursue interesting projects. However, there are some cases where a college degree could come in handy. At least in the initial stages of pursuing your dream you'll probably need a day job. Unfortunately, many employers dismiss out of hand resumes that do not meet their education requirements. Granted that employers that do so are probably not the best to work for, but sometimes you just gotta do what you gotta do to pay the rent.

</comment><comment><USER4> My formal education gave me the tools (or at least the knowledge of the tools) that I would need to make sense of things that interest me.

Without it the bootstrapping would have been a great deal harder.

<comment><USER5> this. i commonly refer to my formal education as me learning how to teach myself.

</comment></comment><comment><USER6> I've battled with this myself for a couple years now. I am going back to school half time starting Monday.

Being a self taught software engineer, such as yourself, and making a pretty decent salary I've had a hard time really understanding what a degree could do for me. I get job offers left and right (and yes I ask for a fair bit more than the "average" salary for my area and fellow programmers tell me they want to work with me or convince me to come work with them.

Why do I need a degree? I'm creating a name for myself in my community, presenting at code camps and Alt.NET and being a leader, right?

There are a couple things that changed my perspective.

1\. My Goals- I've been realizing I want to be a technical leader in my field. Most likely I want to pursue AI. I don't want to be wanted for my knowledge of a framework or programming language. I want to be wanted because I can do anything anywhere. I want to make the impossible possible. Well two things regarding this: First is that I've noticed that the most influential people I respect can back up their claims with formal reasoning and concrete evidence. I'd like to learn to do that better. Second is that innovators in computer science typically utilize a large foundation of knowledge to create new solutions. I'm thinking Google, Genetic Algorithms, etc.

2\. Honest Reasons I Haven't Committed to a Degree Yet: Ego and Money/Time. Now that I make a good salary money is no longer the excuse. I've learned better time management as well so neither is time. The only thing really holding me back is that I was proud that I was self-educated up to this point. What I've realized is that I'll always be learning more than what I need. If I have a masters I personally expect that I'll be at more of a doctorate level. Getting a degree doesn't mean I'll plateau it means I'll sky rocket.

3\. I took inventory of all the classes I'd need to transfer to a university. By this time next year I will have taken multi-variable calculus, possibly differential equations, calculus based physics, and more. This is just for my A.S.! I am excited to go even if I didn't get a degree at the end. REALLY excited. There's no way I will have taught myself all of those things on my own.

4\. Whenever I want to brag about the place I work or my mentor (which is my boss) I mention that my boss has his M.S. in Computer Science. I finally realized that the degree does still mean something to me.

5\. I don't like mooching. If I'm gonna self-educate I really need a mentor. But here's the thing, my current mentor has his M.S. and I would want future mentors to have at least that as well. So really... I'm admitting I want the college education but without paying for it and by having someone give away and devalue their time for my personal betterment. I just read Atlas Shrugged, and I don't want to be a moocher.

I'm only 27. So I figure even if it takes me 10 years to get through my Master's I'll still have plenty of time to enjoy that knowledge and leverage it to do some awesome things. For me it's not about money or fear of job loss, it's really just about I want to be as awesome as I possibly can be and just going for it.</comment>


Automatic Kernel Optimization for Deep Learning on All Hardware Platforms - <AUTHOR> https://tvm.ai/2018/10/03/auto-opt-all.html <comment><USER2> It took me a moment to understand what kernel in the title is referring to. They are not referring to the machine learning term, but a CUDA kernel, a GPU program.

<comment><USER3> indeed, they refer to GPU (kernel) programs</comment></comment>


Read The Docs: New theme & Improvements - <AUTHOR> http://ericholscher.com/blog/2013/nov/4/new-theme-read-the-docs/

<comment><USER2> I like this improvement as I no longer have to resize my browser window to cut long lines of text.

I just wish there is a little more contrast for TOC items when the section is expanded.</comment>


Suspected Russian hack of DNC widens - <AUTHOR> https://www.yahoo.com/news/exclusive-hacked-emails-of-dnc-oppo-researcher-point-to-russians-and-wider-penetration-154121061.html?nhp=1 <comment><AUTHOR> Boy after several of these types of incidents, this really creates the impression that a hacker can just arbitrarily break into anyone's e-mail account that he wants to. (This particular article mentions a hack of someone's personal Yahoo e-mail account, and another person's Gmail account, plus their DNC work e-mail accounts)

This seems like magic; I mean what methods are they using? Is it mostly phishing, if phishing is really that effective? Scratchin my head here as to how they can just grab any account they want.

<comment><AUTHOR> Ah, I think I found an answer:

[https://www.crowdstrike.com/blog/bears-midst-intrusion- democ...](https://www.crowdstrike.com/blog/bears-midst-intrusion-democratic- national-committee/)

And yep it appears they started with primarily phishing.</comment></comment>


Adbrite launches BritePic - "Steroids for Photos" - <AUTHOR> http://blogs.business2.com/beta/2007/03/not_ready_brite.html <comment><AUTHOR> Also on BritePic: <http://news.ycombinator.com/comments?id=7286>

</comment><comment><USER2> Nice. It seems a bit complex though for the casual user. But I can see it catch on.

</comment><comment><USER3> I got to say this was idea was very clever. kudos to Phil K!</comment>


Google AMP case study: leads dropped by 59% - <AUTHOR> https://kinsta.com/blog/disable-google-amp/ <comment><USER2> Here's the reality. The Taboola news carousals at the bottom of most slow loading actual news sites are filled with total junk. One page per image websites, super slow, adblock goes crazy. I've literally NEVER had a good experience with these "Stories you may like"

Google does something with a news carousel that loads fast and the content isn't crap. I get why publishers running things like taboola think it's terrible, but as a user interested in reading some quick news without going blind, I like it.

Hacker news is the exception in terms of a quick loading / clean website.

I was a google reader user heavily - so I like the more stripped down view of things even if it's "terrible".

One other note about this study. This company's goal is not to educate but to sign up users. At least for myself, Folks who want / like a stripped down experience may just be less interested in being marketed to.

<comment><USER3> > The Taboola news carousals at the bottom of most slow loading actual news > sites are filled with total junk.

This, a thousands times. For both Taboola and Outbrain it's clickbaity trash - usually misleading and low quality content. They're designed to "disrupt" so that people click on them and have in the past featured on blatantly false news stories. I'd honestly be ashamed to work at one of these sort of organisations and it further underlines how awful the web experience can be if you're not using an ad blocker.

It's no surprise to me that AMP is popular among users if news sites are not including such garbage in their AMP renditions.

<comment><USER4> It's interesting that so many people would enjoy AMP, because on my Android, viewing AMP sites in Google's main app often feels much slower than regular web browsing in Firefox for Android.

The difference? I have an ad-blocker in Firefox, but not in Google's app.

So Ad-blocking > AMP > Regular (as far as user-experience from a speed perspective). Obviously Google has a lot of incentive to make sure people don't go the ad-blocking route.

Though not sure what is keeping ad-blocking from growing given its superiority - likely just a lack of awareness about the option. If ad-blocking ever did grow massively though, the internet would change in ways we haven't yet seen. Either ad-serving companies would win the arms battle and ad-blockers would become ineffective, or, the web would have to move to a new payment model (Brave-like perhaps).

I'm not entirely sure what the ideal is - likely a model where users can choose between ads or micropayments is the most pragmatic world.

<comment><USER5> Google AMP on iOS is also much worse than Safari + adBlocker. AMP also leaves out relevant content.

<comment><USER6> A huge pet peeve of mine was that I'd google for something I once saw on Reddit, or maybe I just wanted to see a certain discussion. Google would identify the correct post, but then I'd either get it in AMP or new-redesign format, both of which present a terrible loss in readability (for the most part).

With AMP in particular, there was no obvious link back towards Reddit itself. And with the redesign, the actual discussion was interrupted with sections showing what other posts you could read on the subreddit. Similarly, both lost the essential hierarchy and it was really hard to follow the threads of discussion.

The whole thing was dreadful compared to using the decade old Reddit design. The modern stuff is crap.

<comment><USER7> Heh I uninstalled reddit is fun a while ago to limit my procrastination. Worked well. But I reinstalled after about a week because I search for things on Reddit via Google regularly.

Reddit has some disturbing dark patterns going on.

You can't view a page on their site without being nudged to use their app. And you're asked every single page view. Like take a damn hint please.

I'd be ok with the asking but they use different popups with the "no, go away" answer in different places with different wording.

This is all exasperated by AMP, I have to click the amp banner twice to load the real url, this then prompts to open in reddit is fun. Prompts because I want this to happen only sometimes.

<comment><USER8> It was these dark patterns that prompted me to really step back and re- evaluate what I wanted to get out of Reddit.

I set a hard timer on the app and focused on surfing Hacker News instead (since I wanted to keep abreast of tech news). I still browse /r/politics for popcorn purposes, but otherwise no other subreddits. To my surprise today I realised I hadn't opened Reddit and didn't even miss it at all.

<comment><USER9> Thanks. You have just convinced me to never browse reddit again, and I've been on it since 2007.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> I don't like AMP, but I am so happy to see when websites complain that "leads dropped by 59%" because of it.

For "leads" to drop that much it must mean they weren't legitimate, happy leads in the first place. I bet those "leads" came from a shit letter popup or other similar dark pattern, in which case AMP works as designed and benefits the user by shielding them from such garbage.

AMP is bad for the web in the long term. But it is a decent stop-gap solution given that nobody is willing to make their websites bearable without Google's pressure.

EDIT: I just tried their website again without an ad blocker and sure enough, I was asked to subscribe to their shitletter.

<comment><USER11> Agreed. However, I'm more in favour of AMP because if the reasons you mentioned. Essentially I think Google has tricked a lot of publishers into using less dark patterns and avoiding shooting themselves in the foot with heavy ads and tracking. It's not perfect but from an end user perspective I'm grateful for it.

<comment><USER12> It's also important to note that AMP isn't meant to be used for every site out there. It's only useful for specific sites that have a static landing pages. I still don't understand why sites like reddit use it either.

<comment><USER13> The SEO incentives are likely enough to make any and all types of websites interested in using it.

</comment></comment></comment></comment><comment><AUTHOR> I think that AMP made Google's search results feel like they were essentially just Google's own pages. Because that's exactly what the user sees in his address bar, when he visits an _accelerated mobile page_ : google.com/amp/<...>. And that encourages him to hit "Back" as soon as he is done with it, instead of checking out the newly discovered website. Because he never felt like he had discovered anything. He never felt that he had left Google.

The fact, that there are no AMP pages in Google's search results on Firefox Mobile, was the final reason for me to make the switch. I feel like I am browsing the _world wide web_ again, not just a Google's snapshot of it.

<comment><USER14> Users don't see google.com, they see shittypopups.com delivered by Google

</comment></comment><comment><USER15> Hopefully this one-sided, web damaging framework will die a death like IE finally did, with its awful standards.

<comment><USER16> Definitely.

I can't understand why the hell anyone would want to use it anyway. The experience is terrible.

<comment><USER17> It's wonderful when browsing. Pages load in less than half a minute, unlike nearly the entire rest of the internet.

Hacker News doesn't need it, but they're nearly unique in having written a good website.

<comment><USER18> I abhor it on mobile. I can't navigate away from it easily, it's hard to copy paste annurl to share with others, etc. I wish Chrome had the option to disable it, but of course they don't.

<comment><USER19> > I can't navigate away from it easily

eh? You can't hit 'back'?

<comment><USER20> They might also mean "go to the non-AMP version", which is my main issue with AMP.

I'd like to get the non-AMP page to e.g. see user comments (if any) which are often omitted from the AMP version, or for posting the non-AMP URL to friends or social media.

Sometimes there is an easy way to go to non-AMP page, depending on how you got there, but most of the time for me there is not. For example, this article just appeared on my Google feed on my phone, with no way to open the non-AMP version: [https://www.vice.com/amp/en_uk/article/wda7jm/where-does- he-...](https://www.vice.com/amp/en_uk/article/wda7jm/where-does-he-get-those- terrible-toys-an-interview-with-ashens-008)

My preferred option would be to have AMP permanently disabled on my phone.

<comment><USER21> How to disable AMP permanently on your phone:

\- stop using Google feed. I can't recommend a one-stop replacement, since I use RSS to follow sites I trust to produce high-quality content and HN to discover new stuff.

\- stop using other Google products that link to AMP pages. DuckDuckGo is good enough these days.

\- use Firefox. That in itself might prevent Google search from showing AMP results, if you can't bear to use DDG. At least someone said so two years ago in this thread on Google's product forums [https://productforums.google.com/forum/?_escaped_fragment_=t...](https://productforums.google.com/forum/?_escaped_fragment_=topic/news/ixPneB4vpGk)

\- install [https://addons.mozilla.org/en- US/firefox/addon/amp2html/](https://addons.mozilla.org/en- US/firefox/addon/amp2html/) in Firefox. It still needs to load the AMP page to grab the canonical URL, but then it redirects to the non-AMP version. You can also add an adblocker like uBlock Origin while you're at it. The ability to install addons is what makes Firefox the best mobile browser in my opinion.

<comment><USER15> I just thought of this great Ffox addon that I use too. AMP pages are not real web pages. They are awful.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> > Could we have done more conversion rate optimization to our AMP install? > Probably yes. There are ways to add CTAs, newsletter signups, etc

If I'm reading this correctly they switched from regular pages with CTAs to AMP pages without CTAs. Seemingly this test was designed to fail.

</comment><comment><USER23> The analysis on the google analytics data seems a bit biased against AMP.

\- decrease in average positions in SERPs on mobile \- decrease in CTR on mobile \- higher number of impressions \- slight increase in total clicks

These measures are correlated. You can't just add them all together.

More impressions with the same amount of clicks means CTR (click through rate) will drop. Average position should also drop.

In this case we see a slight increase in total clicks and almost double impressions!

What if adding AMP makes Google show your site to a wider range of audience (more variance on target audience), while assigning your pages a lower weight (average position). You would get this behaviour. Lower average position but more clicks. This could lower your account creation and similar metrics because users are less interested.

What I mean is for some websites, getting more clicks would be great. If your total clicks is the goal, you would like these results (ex: page with ads). For search users, this is not good because we are shown pages that are less relevant.

I would like more explanations on mobile leads, account creation, and newsletter email sign-ups dropped. Why not show plots? Are these compared to total from previous months or percentages? We should also need to be able to compare both websites (mobile vs AMP) to see if there are any major differences.

I am not an SEO expert or web designer but I personally use AMP on my modest website. I don't even have a desktop version. Only AMP. It is simpler that way and took only an afternoon (for a css noob) to switch. What made me switch was their amp-img carousel lightbox. They are simple to use and just work. I tried a plethora of css/js carousel or album viewers and chose AMP. Bonus page speed and better mobile search cards.

<comment><USER24> Very much agree with this comment. It's quite likely that the AMP pages received incremental impressions in lower positions, which reduced the overall average position but increased clicks.

The screenshot of rankings from another tool (looks like Accuranker) with a few +1 ranking improvements after disabling AMP also seems insignificant. Often this kind of fluctuation is very normal. Without knowing the baseline level of ranking fluctuation, it's hard to read too much into this.

This is the danger of analysing 'totals' without segmentation to better track incrementality.

Any test needs to be properly controlled to form clear conclusions and I don't see enough rigor here.

I would however commend the article on its advice to avoid simply 'disabling' AMP after using it for a period of time. There is cleanup to be done as the article touches on, and I suspect many may not be aware.

</comment></comment><comment><USER25> Over and over again I'll click a link from Twitter or elsewhere, and in mere moments I'm thinking to myself…waaait a sec, is this another crappy AMP page?

It never looks right. It's always "off" in some weird (and sometimes very obvious) way. Nearly every time I go to the real page on the real website, it looks better and functions better. Since I use an ad blocker, it's never a problem for me that the real site might want to load heavier ads on mobile.

AMP is a plague on the open web. It's offensive, I never request it, and it never solves any problem for me. I'm glad I use DuckDuckGo as my search engine so I never get kicked to AMP pages from search. As a web developer, I've vowed never to implement AMP on any of my client sites and will explain to my clients why if asked (and so far I've never been asked).

Just say no to AMP.

<comment><USER15> You have hit the nail on the head with this explanation. Just.Say.No!

</comment></comment><comment><USER26> So another problem with AMP delivered via Google is it tends to utterly booger your analytics... first pageview (via the Google cache) is viewed as a different domain than your site. This can play havoc with optimization efforts.

In terms of performance... this is a situation where the AVERAGE AMP site is much faster than the AVERAGE site not using AMP... but that's a rigged game given the volume of non-optimized WordPress junk and god-knows-what coming from the typical advertising server (images, video, scripts).

A well-optimized site run by knowledgeable and balanced adults will see a moderate improvement in speed; this is assuming you leaned out the pages already and kept the advertising cruft on a short leash. You can generally beat AMP's load times with some elbow grease.

<comment><USER27> You can't beat its load times. Google pre-renders the web page before the user clicks, which isn't safe to do with pages created by your own elbow grease.

<comment><USER28> Load times ain't everything, and it's a terrible pitch for something that breaks basic rules of browsing.

<comment><USER27> This post was specifically saying you could beat AMP's load times. That isn't possible.

</comment></comment></comment></comment><comment><USER29> the easiest way to get rid of AMP pages is rolling out an !important; in the AMP CSS - so invalidating the AMP pages.

wait until they are kicked out from the google cache (see your trusted google search console, best the useable old one).

then remove the references to the AMP page from the non-AMP pages. then delete the AMPs.

usually takes 2 to 3 days for a few thousand pages.

</comment><comment><USER30> They don't actually say why they think leads declined.

They list a few reasons why they think it didn't _increase_ , e.g. they're already fast on mobile. But they don't explain a 59% drop in leads.

Crucially they note that impressions and clicks actually increased with AMP. That points to an unflattering explanation: the AMP format is blocking techniques they use to turn clicks into leads.

So why don't they discuss the reasons for the drop? Perhaps because they know those techniques are user hostile.

</comment><comment><USER31> A company trying to hijack the web is not a good idea.

</comment><comment><USER32> I have experienced AMP only from the user perspective and always hated it since day one. Until now I don't really understand where it came from and why people would willingly enable it on their site. The first thing I do when I see it is consider whether to go somewhere else or open the actual underlying link.

It already sounds toxic. Instead of loading your page suddenly I load a google wrapper that includes some parts of your page. Doesn't that sound like a red flags for anybody? Does it sound less toxic if I call it "free and open google wrapper build on existing technologies"?

</comment><comment><USER33> As a user I like AMP because it's guaranteed to be very fast. There, I said it.

<comment><USER34> Well sure, Google isn't dumb. Adding in enough benefits (speed, carousel placement) to your Trojan horse ensures there are plausible reasons to bring it into the fort.

Publishers certainly wouldn't give up the most important bits of their page (the top), and cede left/right swipe hijacking (on carousel loaded pages) if there weren't some perceived benefit.

<comment><USER35> "Perceived" benefit is the key.

It used to be the "World Wide Web" but now it is the "Google Platform" and we just live in it. After Google established that useful web search was possible the realized that the #1 competitor for their ads was organic rankings, and if you could really get a #1 ranking by investing in the best content then why would you spend money on ads?

So since then it is has been about deliberately degrading the search results so you learn to look at the ads instead, giving people bad S.E.O. advice, etc.

<comment><USER36> Your conspirancy theory completely ignores the whole shitshow of 15MB+ textual websites we've had to endure in those last years.

<comment><USER34> "Conspiracy theory" is an interesting take. Are you suggesting Google's motives here are purely altruistic...solely to improve the web?

<comment> shaki-dora The _conspiracy_ here seems to refer to the accusation that Google is trying to actively make their search results worse, in order to force people to buy ads.

That post does seem to be paying lip service to actual benefits for users (such as speed), but then ... suddenly ignore them in favour of a Trojan horse metaphor that doesn't make much sense to me.

<comment><USER34> It would be hard to prove Google is purposefully making the organics lower quality. On the other hand, it's obvious they are shifting them down the page over time, which has a similar effect.

As for the Trojan horse metaphor, it is my opinion that's what AMP is. It's tricking publishers into ceding control of their websites. I suspect Google will, over time, leverage AMP to further march towards a walled garden. It is, though, an opinion. Hard for me to "prove" something I'm not privy to.

</comment></comment></comment></comment></comment></comment></comment><comment><USER36> What exactly are "leads" in this context?

<comment><USER34> The article heavily implies sales leads...collected email addresses to try and convert into sales.

They sell managed wordpress hosting.

However, their site doesn't appear to have much in terms of collecting leads. No newsletters, no trial accounts, etc. They just have paid plans you can sign up for. I guess the "contact us" page could be considered a lead generator.

So, I'm as confused as you are. Lead generation would be pretty bad if you don't collect leads :)

</comment></comment><comment><USER28> It's been about a decade since Google provided a decent user experience for search. We really need an alternative.

<comment><USER37> [http://ddg.gg](http://ddg.gg)

<comment><USER28> That mostly offers the same functionality google does.

I'd love a search engine that gives users control over ranking, over whether the site runs ads, whether they are a business, whether they're SEOd out the ass, by security, to blacklist results, to control how they're displayed.

But of course none of these help display ads, so they have no value to companies.

</comment></comment></comment><comment><USER38> > Our mobile leads dropped by 59.09%. Our newsletter email sign-ups from > mobile dropped by 16.67%. Our account creations from mobile devices dropped > 10.53%.

What happened to _total_ leads/signups/creations?

</comment><comment><USER39> This is a totally uncontrolled test. How do they know leads wouldn't have dropped anyways? Without an A/B test you can't draw any firm conclusions from this.

</comment><comment><USER40> Please don't turn off AMP actually. Do I really want to sign up for your dumb site's newsletter, or get push notifications? Well, so far I've wanted to do that Literally Zero times in the past, so I'm gonna bet on no.

</comment><comment><USER41> im surprised this is not banned in EU yet

</comment><comment><USER42> Front end engineers are not selected for their skills in understanding algorithms and data structures. It's quite easy to speed up a web site if you understand how CPU works on a low level and how Javascript is compiled to machine code, but it requires a lot of knowledge.

<comment><USER43> Very little knowledge is needed to know how to speed up a website (or keep it from becoming slow). Almost every front-ender I've met, including those who never got beyond inserting jQuery snippets, knows enough.

<comment><USER44> Speeding a site up is one thing. Speeding it up substantially is another and I doubt your example of one who only knows how to insert jQuery snippets knows enough to both understand and implement all the details from server to network to browser.

<comment><USER45> You don't need to know enough to understand and implement all the details from server to network to browser, you just need to know enough to remove the <script> tags related to ad networks and tracking to see huge load time and ux improvements.

It's not really the web developers who are the issue; they just implement what the people above them in the org chart wants. You could argue that the web developers should push back on it more than they do, but I don't buy that they're not knowledgeable enough to fix it.

That's not to say that there aren't actual technical issues; the recent trend of throwing front-end frameworks on content-heavy pages, making the users' low-powered phones parse and run hundreds of megabytes of JS before the page can be interacted with, is an example.

<comment><USER44> If one thinks all they need to do is remove javascript to speed things up substantially, then they fit into my category of people who only know jQuery snippets only think they know enough.

There are a multitude of issues that can be tweaked to speed things up more so than javascript elimination. You can switch to HTTP/2, implement server push, image compression, header compression, compressing HTML/CSS/Javascript downloads, preloading, above-the-fold downloads, and much more. A jQuery plugin user might not know half those things and I only mentioned maybe half the things one should know.

<comment><USER46> And none of the things you mention will amount to anything if the site is still pulling dozens of trackers and ad scripts.

The average JS dev (like average anything dev) may not write performant code, but the functional parts of the website are not where the main problem lies.

<comment><USER44> That is a business and design problem not a programming problem. And if one thinks the functional part of a web site cannot be tuned to substantially increase the speed of a web site then one is part of that jQuery plugin crowd who does not know or understand the pipeline from browser to network to server and back.

<comment><USER46> Website performance will be limited by the parts you're not allowed to improve, i.e. ad & tracking junk. It's basically Amdahl's law. I'd thought understanding _that_ would be even more important.</comment></comment></comment></comment></comment></comment></comment></comment>


TrueVault – HIPAA compliant data storage - <AUTHOR> https://www.truevault.com/index.html <comment><USER2> I don't quite see the reason for this with the cloud. Amazon has a whitepaper on AWS with HIPAA and I've seen some startups give presentations about their implementation in the AWS conference.

There's some misinformation on your website, "HIPAA compliance is costly and hard to get right" It's not. It's almost cheaper to sign an EA with Microsoft and use Azure (who by the way also sign a BAA) than your pricing. I also couldn't find any mention of what redundancy you use or any mention of uptime.

HIPAA compliance is basically encryption + access control + logs + redundancy with a few other simple features. All of which are easily accomplished with AWS or Azure. BAAs between you and your hosting provider are _not_ necessary unless you have access to the PHI (Amazon doesn't, Azure does).

The biggest red flag to me is that this doesn't (as one might assume) absolve the developer from liability / responsibility. If it were to come to light that your business is (I don't think any of these things about you) corrupt/poorly run/hacked/breached/etc. the developer is then liable to immediately remedy the situation which may include being required to move elsewhere. That would be a huge disruption to any service as they would have to build a system from scratch while somehow still operating. This would be the only reason I would switch my apps from AWS to your service but unfortunately this is not the case. The fact also remains any HIPAA violation would be more likely in the implementation of the webapp (i.e. allowing images to be cached) and not in the storage of it. Leaks of encrypted PHI aren't even an issue with HIPAA.

You have the issue of being new and without a reputation while I can still be liable for your mistakes. While you have insurance it's not really feasible to sue someone as a startup. Anyone not a startup would find your pricing way too expensive.

Amazon whitepaper: [https://aws.amazon.com/about-aws/whats- new/2009/04/06/whitep...](https://aws.amazon.com/about-aws/whats- new/2009/04/06/whitepaper-hipaa/) re:Invent presentation: [http://www.slideshare.net/ControlGroup/aws- reinvent](http://www.slideshare.net/ControlGroup/aws-reinvent)

TL;DR: BAAs do not remove liability, HIPAA compliance isn't nearly as complex as other regulatory bs, AWS and Azure are both easily made HIPAA compliant.

<comment><USER3> Howdy -

We think of ourselves as Parse for healthcare sites/apps/devices.

One can absolutely build their own Parse to power their own stack, but it may not be time/resource effective. Behind the scene, among other things, we provide unique object encryption and automatic object re-key and re-encryption -- mechanisms one would have to be custom build for a homegrown HIPAA environment (event on AWS).

We make sure the Protected Health Information our customers collect is always in compliance with HIPAA despite the ever changing healthcare regulatory landscape.

But you are absolutely right. We do not absolve the developers/covered entities from all HIPPA liabilities and responsibilities. We just take care of one aspect of HIPAA so they can focus on other things.

</comment></comment><comment><USER4> FYI:

HIPAA & PCI

TrueVault is in the process of being audited by a third-party auditor. We will soon be verified to be HIPAA compliant for the HIPAA technical safeguards. TrueVault will go through PCI Service Provider Level 1 certification soon thereafter. Feel free to contact us for details.

[https://www.truevault.com/documentation.html](https://www.truevault.com/documentation.html)

<comment><USER5> There is no such thing as "HIPAA compliance".

Also, do they sign BAAs?

<comment><USER3> Hi - Yes, TrueVault does sign a BAA. We also carry a comprehensive cyber liability insurance that covers any post-breach costs and regulator fines (hopefully it'll never come to that).

<comment><USER6> Do you add clients as named insureds on that coverage?

If not, it's not really worth the paper it's printed on for your clients.

<comment><USER3> We will on a case by case basis. But there are other contractual indemnification options as well. Ping us and we can tell you all about it.

</comment></comment></comment></comment></comment><comment><USER7> HIPAA, unlike many other compliance standards, cannot be "certified." This can lead to certain levels of open interpretation, but best practices are generally agreed upon.

Products like TrueVault provide excellent value, but security awareness training is the golden key to improve an organization's information security posture.

For an example of what I mean, consider the following scenario:

\- Patient data (called Protected Health Information, or PHI) is stored securely in a TrueVault database. This database is accessible only from the hospital, and TrueVault has signed a BAA with the covered entity.

\- A surgeon is prepping a kidney transplant for patient John Smith. The surgery is tomorrow morning, and Dr. Goofböl wants to make sure he's familiar with the patient's medical history.

\- Dr. Goofböl, an authorized viewer of this patient's PHI, accesses the data and begins to take notes. A new batch of PHI is now being created, as it contains medical information as well as identifying information of the patient (say, his name).

\- Dr. Goofböl emails this document to himself (whether his work or personal email address--it doesn't really matter), and goes home for the night.

\- Dr. Goofböl stops at a nice coffee shop on his way home, and his personal laptop (without full-disk encryption) is stolen. The data is lost, and cannot be accounted for.

My company provides HIPAA Security Risk Assessments, and I've seen _this exact scenario_ play out many times, albeit with other "HIPAA compliant storage" solutions, rather than TrueVault. There is absolutely a place for secure products like this, but security awareness training and the true gravity of identity theft and information loss _needs_ to be ingrained in the medical industry.

"Security" for a hospital used to mean protecting doctors and patients from intruders (or mentally unstable patients). It used to involve burly men in white clothes; they're not used to thinking about where their information is traveling. Furthermore, the government is mandating that electronic health information be available to patients through web-based patient portals, which introduces a whole different level of potential vulnerabilities.

I truly believe that the healthcare technology industry is going to be one of the most booming sectors of the next decade, but there are major changes that need to occur to facilitate that. Hospitals need better IT infrastructures, more attention needs to be paid to security, and better tech personnel need to be brought into these environments. Only then can the next generation of healthcare technology truly succeed.

<comment><USER8> In your theoretical scenario, the doctor himself violated HIPAA when he emailed himself the document. He exposed the document to his email provider and all those along the transport path of the email. So, to agree, technology can only do so much, you have to use it correctly.

<comment><USER9> If the email server was provided by his workplace, then it was likely secured and HIPAA compliant. Most hospital email services are. Once the file is on his hard drive, most hospitals will require that the user uses some kind of encryption if it contains PHI. They enforce this by training and recertification procedures every year or so.

<comment><USER10> When I worked at an insurance company, emailing certain things was a huge no- no. So I doubt that.

</comment></comment></comment></comment><comment><USER11> Interesting product. It is certainly needed.

But if I understand correctly it is a data backend, right? So if there is any sort of web-based dashboard to accompany the app, and the PHI data has to be passed on to a server to display the dashboard then that server will have to be HIPAA compliant too, which brings the developer back to square one?

<comment><USER3> Hello - We are developing a library of JavaScript UI controls our customers place on their site to display protected content that's pulled directly from our server. We'll have display widgets as well as input widgets/forms like sign-in, sign-up, etc.

They are very much like Stripe's checkout JS form.

</comment></comment><comment><USER12> HIPAA compliance is a hugely important issue when it comes to developing medical applications. I think it's important to point out here that Box is now also apparently HIPAA compliant and signs BAA. Still, there's room for a product that's easy to use and focuses purely on maintaining compliance.

Given how important this is, however, I would think the creators of the product would put some information about themselves and their backgrounds up on their site. It seems that's not done as much anymore with startups, but given they are a new company offering security of healthcare data, I think potential users would like to know.

</comment><comment><USER13> I can't quite figure out why a HIPAA compliant data storage service is a big deal...

Isn't this just a thin encryption layer on top of Mongo? I feel like I could replicate this in ~100 lines of Node.

<comment><USER3> It's a few more lines of code more complicated that that :)

In all seriousness, we can give a talk on software security, encryption algorithms and network security with the setup we've created. To do it right, every system in our platform is segregated where one system doesn't see another -through software and network level security. Plus every piece of data is uniquely encrypted with rotating keys (that's kept isolated from the encrypted data). The level of security is like the Secret Service vs. Paul Blart the mall cop.

We are in the middle of writing a blog post about how we harden our platform. Stay tuned.

<comment><USER13> Noted. I'll be looking out for it!

</comment></comment></comment><comment><USER14> Do you build and run your own infrastructure, or are you built on top of existing cloud infrastructure ?

(genuinely curious)

</comment><comment><USER15> There is actually a lot more to HIPAA compliance than what you see on the back end of your application. You have to do Risk Assessments annually, assign a Privacy Officer, have policies & procedures in place, implement employee training, and execute Business Associate Agreements with anyone you share PHI with.

These administrative parts are frequently forgotten when implementing a HIPAA compliance program.

Disclosure: my startup, Accountable, automates this process. [http://www.accountablehq.com](http://www.accountablehq.com)

</comment><comment><USER16> I always find it funny how more money is spent on audit tools like this, and yet people get no training in HIPAA, so they _e-mail_ spreadsheets of social security #s and medical records to 3rd parties, to say nothing of dropbox and pastebin. Most people would shit themselves if they knew all the violations that go unreported.

<comment><USER17> >and yet people get no training in HIPAA,

WHAT!?! I'm a physician, and to my lament I have to do HIPAA training over and over and over and over... Just like everyone else everywhere I've ever worked. Yes, we get plenty of HIPAA training. There are still breaches, of course, but your statement is just plain wrong.

<comment><USER16> Okay, perhaps they just blatantly ignore their training? In which case they probably need to fix the training, or something. Are you sure all the personnel that work for the hospital system (or private practice) gets HIPAA training? There's plenty that work with sensitive data that aren't physicians.

<comment><USER17> Yes, everyone that touches protected data gets the training. I'm sure there are some hospitals/offices that don't but that's got to be pretty rare. I imagine most of the breaches are not due to overt ignorance, but due to poor application like not understanding the level of security provided by some means of transmission, or knowing but doing it anyway because it's convenient.

</comment></comment></comment></comment><comment><AUTHOR> OP here.. I created a quick little Ruby library for interacting with TrueVault's REST API: [https://github.com/marks/truevault.rb](https://github.com/marks/truevault.rb)

</comment><comment><USER18> Does anyone know of a HIPAA compliant PaaS (other than building it yourself)? I'd like to run stuff for work on Heroku, but they don't claim and compliance last I checked.

</comment><comment><USER19> I'd love to learn more about HIPAA compliance and web applications. Any good resources out there? From from a developer's standpoint HIPAA feels like a lot of grey area.

<comment><USER20> HIPAA is more about policy than it is about any specific technology or standard. And most of it is good practice for many applications, from a privacy and security perspective, not just healthcare.

Start here: [http://www.hhs.gov/ocr/privacy/hipaa/understanding/covereden...](http://www.hhs.gov/ocr/privacy/hipaa/understanding/coveredentities/index.html)

Then this: [http://www.hhs.gov/ocr/privacy/hipaa/understanding/summary/i...](http://www.hhs.gov/ocr/privacy/hipaa/understanding/summary/index.html) and this: [http://www.hhs.gov/ocr/privacy/hipaa/understanding/srsummary...](http://www.hhs.gov/ocr/privacy/hipaa/understanding/srsummary.html)

<comment><USER21> Thanks for these links. I'm curently building a network to connect several medical facilities together and, while I don't think I have to be too concerned w/ HIPAA, this stuff is good to know. I've bookmarked those pages and will be reading through all of them over the weekend.

</comment></comment></comment><comment><USER22> hmmm, It made me realize that I may be on the verge of breaching the HIPAA laws. I'm developing an app on Google App Engine (which afaict won't sign a BAA), this app will help users with storing and interpreting their data (some of which may be considered health data: like all the biometric data). Anyone knows if I have to comply to HIPAA in spite of not being an health provider myself?

<comment><USER3> Take a look at this article: [http://www.hhs.gov/ocr/privacy/hipaa/understanding/covereden...](http://www.hhs.gov/ocr/privacy/hipaa/understanding/coveredentities/De- identification/guidance.html)

The definition of who needs to comply with HIPAA has more to do with who has contact with protected health information and less about who the company is (e.g., a hospital or not).

<comment><USER22> This document has some bullshit example: Identifying users by zipcode and gender? huh?

"Imagine that a covered entity is considering sharing the information in the table to the left in Figure 3. This table is devoid of explicit identifiers, such as personal names and Social Security Numbers. The information in this table is distinguishing, such that each row is unique on the combination of demographics (i.e., Age, ZIP Code, and Gender). Beyond this data, there exists a voter registration data source, which contains personal names, as well as demographics (i.e., Birthdate, ZIP Code, and Gender), which are also distinguishing. Linkage between the records in the tables is possible through the demographics. Notice, however, that the first record in the covered entity's table is not linked because the patient is not yet old enough to vote."

<comment><USER23> It's not bullshit. Here's the paper from 2000: [http://dataprivacylab.org/projects/identifiability/paper1.pd...](http://dataprivacylab.org/projects/identifiability/paper1.pdf) From the abstract: _87% (216 million of 248 million) of the population in the United States had reported characteristics that likely made them unique based only on {5-digit ZIP, gender, date of birth}._

<comment><USER22> the date of birth is not cited in the example. Only the age. Seems like a stretch of an example to me.

</comment></comment></comment></comment></comment><comment><USER24> Could we get more tech details than are on the website? Specifically around HITECH.

The box with logos makes me feel uncomfortable from a trademark perspective, btw.

</comment><comment><USER25> I don't know how this stuff is handled normally, but is nobody uneasy about storing HIPAA protected data in "the cloud"?

<comment><USER26> I understand your concern, but these days, cloud or no cloud isn't what's important, just that you use a data store in a HIPAA compliant fashion and that the provider will sign a BAA. Health tech startups these days are using AWS, Azure, and Rackspace, all of which will sign BAA's.

</comment></comment><comment><USER27> Companies like TrueVault can pretty much forget about expanding outside the US after the NSA scandal.

Their target market is already writing the policies and protocols to ensure that in the for the next few decades no bit of data ends up anywhere near US jurisdiction.

</comment><comment><USER28> I hope this includes the HIPAA NSA backdoor.

<comment><USER29> I've probably shoveled more fuel on HN's NSA fire than most, but how do you think _health records_ are related to anyone's NSA threat model? Are there health conditions that will prompt a visit from the black-bag squad?

<comment><USER30> They aren't any more related to their threat model than anything else they're vacuuming up but that doesn't mean they don't want them. All it takes is one known terrorist with a known illness / rare treatment and "wouldn't it be nice to have this access" becomes "we need this access NOW" becomes "we will take the access, now and forever into the future, and there's nothing you can do about it."

Also, perhaps terrorist networks target people with terminal illnesses and nothing to lose? Or perhaps the FBI is worried that someone who has been denied treatment in the US will turn terrorist all on their own. We have a large population that has been wronged by the system and has nothing to lose, I think the FBI wants to keep an eye on them. I know, FBI!=NSA, but the whole "parallel construction" deal shows exactly what they think about separation of powers: at least a few of them see it as an obstacle to overcome, not as a safeguard against abuse. And a few people is enough to do all the damage in the world.

Also, let's not forget there's a heavy financial incentive for individuals with access to such a database to sell the info to insurance companies. It follows that such individuals then have a motive to push for the establishment of such a database. They could launder the info into some "proprietary liability metric" which they would be able to sell for loads of money. I don't know what internal checks they put in place after Snowden but they can't be perfect. Any shadow copy of your health records increases your exposure and provides an opportunity to the unscrupulous if the records can be accessed in aggregate.

<comment><USER29> I have to admit that these are plausible scenarios. However, most regular citizens (I know, lots of horrible arguments start out with that phrase) would be harmed more by the spooks turning communications about legal gray areas over to prosecutors than to anyone in the government knowing about their gout or depression or whatever. (Sure some people are worried about "Obama's Death Panels" but if such ever appear I'm pretty sure they'll have access to your health records anyway.)

In your last scenario, the "bad" agents only win if they can sell the service, but keep secret the inputs to that service. I'm sure they can do that in the short term, but it's quite likely that eventually a salesweasel will speak a bit too freely in a semi-public forum and the whole scheme will unravel. After all, other government agents would be pissed off, if only out of jealousy.</comment></comment></comment></comment>


Novel Coronavirus situation reports - <AUTHOR> https://www.who.int/emergencies/diseases/novel-coronavirus-2019/situation-reports/ <comment><USER2> There just was the first confirmed human to human infection outside of Asia in Germany. A guy got sick over the weekend, went to work on Monday as he felt better and was sent to the doctor by his boss. He got infected during a seminar in Germany where he got into contact with a women from Shanghai whos parents are from Wuhan.

[https://www.tagesschau.de/inland/coronavirus- deutschland-107...](https://www.tagesschau.de/inland/coronavirus- deutschland-107.html)

edit: englisch source

[https://www.aljazeera.com/news/2020/01/germany-european- coun...](https://www.aljazeera.com/news/2020/01/germany-european-country- confirm-coronavirus-200128074844874.html)

>The Chinese employee, a woman from Shanghai, "started to feel sick on the flight home on January 23", Andreas Zapf, head of the Bavarian State Office for Health and Food Safety, said at a news conference.

Unfortunately not a date for the meeting yet.

edit2: corrections added, thank you

<comment><USER2> The German Minister of Health (Jens Spahn) just gave a live interview. The German government made it mandatory for airlines to keep seating charts for 30 days and ask every traveler from China for a contact address where the person can be reached the next month. The Airlines will be mandated tomorrow, but it will take 3-5 days till the new regulation for hospitals to take effect, which makes reporting "Begründete Verdachtsfälle" "justified suspected-cases" mandatory, ie if you have the symptoms AND have been in China or had contact with someone infected. The minister also took the opportunity to criticizes all this panic and conspiracy theories in the internet.

Everything is fine, nothing to do, nothing to see. What a shitshow its like the events from this morning hadnt happened yet.

</comment></comment><comment><USER3> 27th of January? Is this yesterday's? Quoting:

2741 confirmed 5794 suspected 461 severe 80 deaths

Compare to [https://www.bbc.com/news/world-asia- china-51275896](https://www.bbc.com/news/world-asia-china-51275896) , on 28th:

"The death toll from the new coronavirus now stands at 106, with the number of infections almost doubling in a day to more than 4,500."

Can't see sitrep for 28th yet.

<comment><USER4> [https://multimedia.scmp.com/infographics/news/china/article/...](https://multimedia.scmp.com/infographics/news/china/article/3047038/wuhan- virus/index.html)

I have this page open for the last 24 hours. It updates whenever the journos have tangible info. Dreadful.

<comment><USER5> Scare mongering. Do that with the normal flu for comparison.

<comment><USER6> Thought this way too untill I checked CDC stats on flu. Death/hospitalisation rates are completely uncompatable.

</comment></comment></comment></comment><comment><USER7> Taiwan is included as part of China on this map, which it's not. WHO also excludes Taiwan from participating and gaining access to important information that can save people. Thank the WHO for making the world a little less safe by withholding information from those who need it.

<comment><USER8> > Taiwan is included as part of China on this map

Where do you see that? I only see mention of "Taiwan" on the map, no mention of whether or not it's part of mainland China.

> which it's not

Regardless of whether it's "de-facto independent" and whether the mainland has a legitimate claim or not, the de-jure situation is that Taiwan is not recognized by the United Nations.

And I think now is not the time to argue about the validity of the the mainland-Taiwan situation. It's not even productive to do so. Besides, Taiwan has already restricted travel to and from China: [https://www.reuters.com/article/us-china-health-taiwan- trave...](https://www.reuters.com/article/us-china-health-taiwan-travel- idUSKBN1ZR14J)

<comment><USER9> The map on page one of _' Situation report - 7'_ colors China red, and includes Taiwan in that coloring.

(There are currently five confirmed cases in Taiwan, so Taiwan should be colored beige on that map, not red.)

</comment></comment></comment><comment><USER10> Title should better be using "WHO" instead of "Who". Got quite confused on this one.

<comment><USER11> The who.int you see is the url.

<comment><USER12> The title probably got renamed and said "Who" before.

<comment><USER10> Yes, exactly

10:50 Who nCov-2019 situation reports

↓

11:20 Novel Coronavirus situation reports

[https://hackernewstitles.netlify.com/](https://hackernewstitles.netlify.com/)

</comment></comment></comment></comment><comment><USER13> Updated arcgis mapping: [https://gisanddata.maps.arcgis.com/apps/opsdashboard/index.h...](https://gisanddata.maps.arcgis.com/apps/opsdashboard/index.html#/bda7594740fd40299423467b48e9ecf6)</comment>


Musk's Secret Plan to Curb City Traffic with Self-Driving 'Bus' - <AUTHOR> http://www.bloomberg.com/news/articles/2016-04-21/musk-s-secret-plan-to-curb-city-traffic-with-self-driving-bus <comment><USER2> Musk: _"There's a new type of car or vehicle that would be great for that and that'll actually take people to their final destination and not just the bus stop."_

What do you want to bet this involves daisy-chaining autonomous car-pods and linking them up in HOV lanes. Get to your stop, and it breaks off to drop you at your destination, and then goes back to queue at the "bus" station.</comment>


World's highest-energy laser begins operating - <AUTHOR> http://www.newscientist.com/article/dn16940-worlds-highestenergy-laser-begins-operating.html?&nsref=tech <comment><USER2> I know the LHC has been getting the lions share of attention these days, but the National Ignition Facility, APS, NSLS2, ITER, and ILC all deserve some mention. I may just be a sucker for big toys, but there are days I think I should have been a high-energy particle physicist!</comment>