Android's fragmentation leads to a digital security divide - <AUTHOR> http://money.cnn.com/2017/06/07/technology/gadgets/android-iphone-security-poor-digital-divide/index.html <comment><USER2> Android devices, as deployed in the wild, consist of a bewildering array of offerings, from shovelware-equivalent throw-over-the-fence devices, to pricey flagships whose makers command some brand awareness. Google has known for years that the Android security patch situation is awful, and has been slowly trying different approaches -- from shipping its own hardware, to moving portions of the OS out of the base image and into Google Play Services- updatable components (much to the chagrin of those who lament the increasing disparity between stock AOSP and Android-as-shipped-on-devices), to its newest: Project Treble, a HAL and vendor interface.

But a big part of Android's headaches is the long tail of devices that have been functionally abandoned by all involved parties: the device maker, the carrier, and Google. These devices are trapped in time and in a cesspit of an ever-increasing number of vulnerabilities. It's like unpatched WinXP, except these devices were once bought new a mere two or three years prior. Because all involved parties have dropped the ball, and at the lowest end of the market, the consumer can't really punish the these parties because they're reliant on the exact same names to get access, this sad state of affairs continues until Project Treble ships for real.

At that point, all pre-Treble devices are still doomed, but post-Treble devices at least have a fighting chance.

<comment><USER3> > all pre-Treble devices are still doomed

The only devices that are doomed are those that:

A. have no reasonable support for third party firmware B. have no user base or community to maintain security

The Galaxy S series since the S3, for example, is unlikely to ever stop getting some degree of support from community ROMs. Of course, those community developments don't have the resources of the OEM - they can't fix the proprietary parts that break, and security hinges on the willingness of volunteers to merge patches, which they don't always do.

I don't think its that black and white, though. Plenty of "supported" devices get updates and ignore security vulnerabilities. Companies can and will stop updating arbitrarily, and you have no way to know who is actually looking for vulnerabilities to fix. All you get is a set of known exploits elsewhere and the means you can test them yourself on your own devices, or someone else did and you already know unpatched vulnerabilities on your end.

<comment><USER4> >A. have no reasonable support for third party firmware B. have no user base or community to maintain security

You're automatically assuming that these third party maintainers apply all of the security patches released by Google. This would be an incorrect assumption.

</comment></comment></comment><comment><USER5> There is no technical reason that Android phones aren't up to date with patches. Apple is not doing something magical here. This is something that could be remedied if Google forced phone makers and carriers to support the latest patches ASAP.

iOS may be more security-focused in general than Android, but this article is centered on updates and un-patched phones. That part of the security equation is very solvable.

<comment><USER6> One difference with security implications is that Apple makes both the hardware and the software. So the hardware is controlled by Apple and can authenticate the software, across the full stack, including the fingerprint sensor (this is why third parties who replaced the fingerprint sensor were running into problems awhile back.)

This ensures all software run on the phone is uncompromised. For android, the software is modified by the carrier, and while their intentions are likely good, their ability to integrate the security patches with their custom changes is open for debate (carriers are not the best software developers.) Further, there are more opportunities for compromising the software that is run- more surface area to attack, including installing malware in the supply chain.

<comment><USER3> Except the Windows world shows it isn't a technical hurdle either. Microsoft makes their OS, OEMs buy copies of it, and stuff bloatware and crap and change stuff all the same as Android vendors before selling it to consumers.

But then, despite modifications, Microsoft updates _their_ stuff, including the kernel.

It doesn't actually even take hardware vendors being ethical and making open source mainline kernel drivers for their parts. They could just be shipping DKMS kernel modules instead of baking their trash into fixed kernel releases. But they simply do not, because they don't care.

<comment><USER4> You're missing the part where these Android OEM fork the OS, add all of their source code modifications, compile, link and the build it. Google cannot update an OS created by another OEM because unlike Microsoft, which provides these OEM's binaries of their OS, Google simply provides the source to Android.

</comment></comment></comment></comment><comment><USER7> At the risk of sounding like a libertarian, what's the issue here? Clearly the consumers/market has spoken and they place a very low value on security.

<comment><USER5> I don't think I would say that consumer ignorance counts as consumers speaking via the market. Computer security is complicated stuff and no one really explains to users what the vulnerabilities are and how to mitigate them.

The fact that we don't have chip and pin credit cards in the U.S. is hardly evidence that consumers don't want them or that they somehow prefer a system that makes it much easier for them to be defrauded. It's simply that the few credit card companies we have don't want to spend the money to provide chip and pin (or another secure payment system).

<comment><USER8> Huh? I'm confused, I live in the midwest and chip and pin is everywhere. Do stores not use it in other places?

<comment><USER9> Where I live (also US midwest, rural area), about 2/3 of locations where I regularly shop have the "chip" part implemented, zero have the "pin" part. (Chip and pin = having to type a pin each time you use the card in the chip reader.)

<comment><USER8> Pretty much every store I go to, I use the chip and then enter my pin. I haven't had to sign in over a year.

<comment><USER3> I live in not-very-rural PA (45 mins north of Philly) and all the cards and most readers have chips but nobody takes pins, I still have to sign everything.</comment></comment></comment></comment></comment></comment>


Gmail Improves "Undo Send" - <AUTHOR> http://googlesystem.blogspot.com/2010/08/gmail-improves-undo-send.html

<comment><USER2> Personally, the "Undo Send" feature is one of my all-time favorites in Gmail. A lot of people are comparing it to an outbox, but while the two are functionally similar, they are psychologically different. The undo send simply gives you a few extra seconds to re-read your email and catch any small errors before sending.

When the feature first launched, I was worried I would eventually adjust to it, and stop re-reading emails before clicking "send". So far, that has not happened - it's effectively a psychological trick that continues to make my emails better proof-read.

</comment><comment><USER3> The blog post makes it confusing about what was actually improved.

Gmail just increased the time you have to "undo". Before the max was 10 seconds. Now you can choose up to 30 seconds.

<comment><USER4> yeah... poor use of the word 'constantly'

</comment></comment><comment><USER5> Unlimited undo to Gmail users until the E-mail is open would make sense too.

<comment><USER6> This point was raised when Gmail originally launched the feature. The problem is that it would essentially act as a read receipt, which is a privacy concern.

<comment><USER7> Plus it would add to confusion - you see it in your inbox (unread) and then you don't and wonder what happened. With Exchange you can do this and it usually just gets ugly in practice.

<comment><USER8> It would also be wired for us BlackBerry users, where we get the email instantly, and then it wouldn't be in the inbox when you check it on your PC.

</comment></comment></comment></comment><comment><USER9> Revolutionary.

An outbox would be pretty nice.

<comment><USER10> What's wrong with the already existing Drafts feature?

<comment><USER11> I tend to use Drafts more for emails that aren't actually completed, and an outbox for emails that are completed but with one last chance for me to look them over before they go out.

<comment><USER12> You can add labels to emails in the Drafts folder, so you could have an "Outbox" label if you wanted to.</comment></comment></comment></comment>


Ask HN: Is this a DMCA takedown? - <AUTHOR>

IANAL, but I just found a site that has identical content as a recent blog post of mine.
Exhibit A: (the thief) http://www.vevz.com/the-year-that-was-2008-a-rundown-of-the-major-financial-events-that-rocked-the-nation
Exhibit B: (my site) http://www.mybanktracker.com/articles/2009/01/08/the-year-that-was-2008-a-rundown-of-the-major-financial-events-that-rocked-the-nation/
He even forgot to remove my links at the bottom of his page.
I already sent an email to email@example.com (his DNS points there), but should I be throwing around the DMCA word yet? How do you file a DMCA complaint?
Completely new territory for me... <comment><USER2> I have dealt with these type of folks before and DMCA threats mean very little to them. What hurts them is getting de-listed/penalized in search engines, particularly Google. I would suggest reporting to Google's web spam team. You can access the Google web spam form through Google webmaster tools.

<comment><USER3> _I have dealt with these type of folks before and DMCA threats mean very little to them._

You don't send the takedown to the spammer; you send to their hosting company, who has to take action by law.

</comment></comment><comment><AUTHOR> It seems that it's a scraper site with all content stolen from around the web. If you go to the vevz site, there are a ton of blog posts copied verbatim (links intact on most of them).

Also, I just realized... Who uses a four letter domain name for this type of stuff?

</comment><comment><USER3> <http://www.plagiarismtoday.com/2008/05/15/takedown-faq/>

I've seen a DMCA takedown template somewhere, but I can't find it right now.

<comment><AUTHOR> Maybe this one:

[http://www.scribd.com/doc/3504180/Sample-DMCA-Takedown- Notic...](http://www.scribd.com/doc/3504180/Sample-DMCA-Takedown-Notice-for- Scribdcom)

I guess I should have my own template, since this may not be the last time I use it.

</comment></comment><comment><USER4> IANAL, this is simply a case of copy write infringement, not a violation of the DMCA - which prevents the dissemination of information with circumvents an owner's copyright. They stole your content, plain and simple.</comment>


Show HN: Share your Git hooks and config - <AUTHOR> https://github.com/stefanhoelzl/share-git-hooks-and-config <comment><USER2> I'm a big fan of pre-commit ([https://pre-commit.com/](https://pre- commit.com/)) for common git hooks.

<comment><AUTHOR> one goal of my approach was to not have any dependencies you have to install to be able to use it.

It is certainly not as mighty as pre-commit. But it doesn't add an extra layer around the stuff you know (hooks and gitconfig) and it can be enabled by setting just one git config value</comment></comment>


HPE's New Chip Marks a Milestone in Optical Computing - <AUTHOR> http://spectrum.ieee.org/semiconductors/processors/hpes-new-chip-marks-a-milestone-in-optical-computing <comment><USER2> One of their papers (pdf): [https://icrc2016.exordo.com/files/papers/45/final_draft/ID04...](https://icrc2016.exordo.com/files/papers/45/final_draft/ID045_ICRC2016_finalpaper.pdf)

Not exclusively silicon-based work, btw.

</comment><comment><USER3> The underlying technology is awesome and neat but I can't see this exceeding whatever required threshold to be useful, compared to modern computers. That's simply because modern computers based on ICs have 40+ years of R&D behind them to make them do what programmers want, really fast.

<comment><USER4> An advantage of the silicon photonics (over other on-chip optical technologies) is that we can leverage a lot of the experience that we have with silicon to fabricate these devices. There are still large technological challenges, since we often need to introduce new types of materials, etc, but we're not _totally_ out of luck -- there's useful knowledge that can be carried over.

<comment><USER3> it's pretty clear what's being built here is outside of what typical fabs can build. You need a research fab with top of line equipment. The article basically says they _had_ to do chip-style architecture to get the optical paths to be stable enough to do reliable computing.

</comment></comment></comment><comment><USER5> Talk about scientific illiteracy in science media.

> "traveling salesman problem"

They quoted it - which means they obviously don't know what they are talking about - and then go on to talk about esoteric things (Ising machine) as if that's some sort of justification.

An Ising machine is also a Turing machine and the traveling salesman problem is NP complete. Which means no breakthroughs. It can however, maybe, be more performant at certain kind of problems (like statistical solutions to optimization problems... like the traveling salesman problem). Like a GPU is more performant at doing lots of floating point operations at once; but not that it will be any faster, in the large scale, at solving _hard_ problems like the traveling salesman problem.

And they present it with a vague description which makes it sound like it might just be some sort of quantum system. It isn't. The failure to provide facts, to challenge assertions and claims, to actually know, in our news media is super annoying.

And the clickbait, uggh.

<comment><USER6> Sorry to be nit-picking, but:

* the travelling salesman problem is NP hard, not NP complete (i.e. verification of the optimal solution is not in P).

* An Ising machine is not a turing machine, AFAIU, and it may not be turing complete (but not sure about that). AFAICS that machine merely implements search for an approximate optimum on some quadratic function of discretely valued variables. Maybe similar or even equivalent to the closest lattice point problem ([https://en.wikipedia.org/wiki/Lattice_problem#Closest_vector...](https://en.wikipedia.org/wiki/Lattice_problem#Closest_vector_problem_.28CVP.29)).

One could optimistically say, that this is a very special purpose machine. Pessimistically I would say this is the only remotely usable "computation" that can be implemented when you only have unreliable (non-deterministic) components. So the fact that they did not implement a proper turing-complete circuit may be more a bug than a feauture.

[edit] one may view their chip as a very fast hardware-accelerated implementation of a very simple (i.e. slow) algorithm.

[edit2] Obviously, if the Ising machine is capable to find an exact solution to an arbitrary NP-hard optimization problem, then that machine must be turing complete (but still may take exponential time even for problems in P). However, with an imperfect Ising machine (that does not implement perfect annealing or retains an error rate even at lowest temperature) it is pretty difficult to assess turing completeness.</comment></comment>


Boston is first major U.S. city to open source its website - <AUTHOR> http://www.routefifty.com/2016/10/boston-open-source-website/132720/ <comment><USER2> This is a great first step to make government applications a little bit more functional. I would absolutely fix some bugs on a city website after I get frustrated with it.</comment>


Open-source, JavaScript JSON  HTML viewer released - <AUTHOR> http://ajaxstack.com/jsonreport/ <comment><USER2> When I first started interacting with APIs that use JSON I wanted a JS library to automatically convert a JSON structure into, hopefully semantically correct, HTML which I could then easily style with CSS. At the time I couldn't find anything but I did write a simple piece of JS. I show an example of how I used it to style tweets on my site: <http://nirmalpatel.com/json2posh/>

</comment><comment><USER3> Another Javascript-driven JSON viewer (that also allows editing):

<http://www.thomasfrank.se/json_editor.html>

<comment><USER4> My go-to JSON viewer: <http://jsonviewer.stack.hu/>

</comment></comment><comment><USER5> Very nice. I am writing a couchapp and think this will work nicely as a report-generator. Thanks!

<comment><AUTHOR> You're welcome :)

</comment></comment><comment><USER6> I like <http://jsbeautifier.org/>

<comment><USER7> that is different thing altogether. You are comparing apples and Oranges.

</comment></comment><comment><USER8> How is this different from all the javascript template engines like ejs[1], jQuery.tmpl(), jQuote2[2] or one of the many others?

[1]<http://embeddedjs.com/>

[2]<http://aefxx.com/jquery-plugins/jqote2/>

edit: Now I understand. This one generates the report automagically, no need to create a HTML template for the JSON data.

<comment><AUTHOR> Yeah, it's just a way to better visualize your JSON data so it becomes more readable in a glance.

</comment></comment><comment><USER9> Is there a JSON microformat for marking strings as URLs which the user agent should be able to follow? 'Cos that's all that's missing from making this sort of thing a generic REST client.

<comment><AUTHOR> I think it's rare to see JSON HyperMedia data formats in the wild, XML seems the preferred choice due to its use of attributes for metadata annotation.

Here's on of the few examples I've found that uses JSON: <http://restafari.blogspot.com/2010/10/evolving-hal.html>

<comment><AUTHOR> Although I dislike the use of XML in Ajax/SPA applications and very much side with Douglas Crockford in the JSON vs XML debate :) <http://www.infoq.com/presentations/Heretical-Open-Source>

<comment><USER10> Perhaps you could do some simple detection if a given field is a url (i.e., using a regexp) and auto-link it in the generated reports?

<comment><USER9> That won't work reliably with relative links. It also lacks any kind of link annotation (so, is this linked resource a "parent"? A "child"? Metadata? And so on).

</comment></comment></comment></comment></comment><comment><USER11> There is a bug while parsing <http://reddit.com/.json> It is unable to render it.

<comment><USER12> I couldn't even get it to accept:

{"OH HAI":[{"foo":42, "bar":123}, {"foo":123, "bar":456}]}

<comment><USER13> This:

        {"foo":42, "bar",123}

isn't even a valid JSON object. If you make it valid JSON and replace the comma in this with a colon, it accepts it.

<comment><USER12> That was an HN typo, as I had already closed the window where I typed the JSON.

</comment></comment></comment></comment><comment><USER14> I've used/loved <http://chris.photobooks.com/json/default.htm> since the beginning of time for debugging. It isn't embeddable, though I find that it's more readable.

</comment><comment><USER7> Awesome piece of work! I am definitely gonna use this when i get a chance.</comment>


Ask HN: Should email providers add "UNSEND"? - <AUTHOR>

No matter how  careful you are, there have been a couple of times when you wish you could "Unsend" that email to your coworker, your girlfriend, your client......Instead of asking us to be more diligent shouldn't email providers (gmail)add an "Unsend" button? Or if this in fact exists would you forgive my lack of knowledge and please let me know where it is hidden? <comment><USER2> Outlook has this sort of thing, but the receiver sees the notification and has to accept it. Which is always a clear sign to me that someone sent something out and then thought better of it, so I always look extra-closely at the email in question.

Anyway, if people didn't accidentally send stuff like this, cnn.com and other mainstream media couldn't write an article about it every 6 months.

</comment><comment><USER3> Some clients (e.g. Outlook) let you put a delay on your outgoing email, so you can cancel it if you change your mind in time.

And the email recall feature of Outlook/Exchange is also quite good. It even tells you how many emails couldn't be recalled (because people have already read them). It will only work within an organisation though, as it is a feature of the Exchange server.

<comment><USER4> I'd welcome an outbound mail queue in gmail (or whatever web mail provider is your favorite). Preferably one with some configuration options. In my case, I might have a default delay of 2 minutes or so. For more uncertain messages, I might bump their individual delay out to some hours.

This allows for alteration of a message that has not yet made it off the queue. But it has the advantage over e.g. a draft message in that, if circumstances do not change, no further action is required.

If a queued email bothers you enough, you can go back in and change it. But you don't have to remember the things that end up not bothering you; they will be sent after their delay expires. This works in concert with the natural flow of your attention, rather than requiring you to keep track of and follow up on draft emails whose topics your mind has decided it is no longer worried about.

It can also be used to email yourself, or others, reminders at a pre- determined time.

I imagine one reason gmail, for example, does not add such a feature is all the potential avenues of abuse. Accounts set up with to spam without further sign on, or to harass someone else. Or just the person who ueber-automates every moment of their day with umpteen bazillion delayed messages in the latest GTD meme. Google may have better uses for its electrons.

Plus... If its automated, you're not looking at ads while it's sent.

</comment></comment><comment><USER5> While it's not impossible, email just does not work that way. Email has no sense of state on the other end of a message. The extent of the feedback it gets is a bounce that may or may not have a descriptive error attached to it. Some systems could implement a recall option (Exchange may allow this, but I'm far from an expert) if the accounts are housed in the same system, but it is rarely done as it is against the stateless aspect. Email as a protocol(s) is very simplistic, which is why spam and spoofing are so prevalent. There is little room to have complex extensions on top of the existing system.

If, say, gmail implemented this, it would likely require an ACL from the receiving user that specified senders that were allowed to recall.

<comment><USER6> At one time or another, we've all accidentally sent an e-mail, probably by invoking the keyboard shortcut.

I would definitely be waiting to have my emails delayed a few seconds if Gmail would momentarily display an Undo option. This would mean that the email wouldn't even be sent until after the Undo option expired, so we wouldn't need to worry about the email protocol.

<comment><USER7> Yes, having "unsend" as part of the mail client functionality is the way to go.

Maybe the "send the message right now this exact millisecond" function should require an extra step from the user. And the default action should be to enqueue the outgoing messages and wait for N seconds/minutes before sending them.

And add some rule-based "are you sure you want to send this?" function since you are at it.

<comment><USER5> We are talking about a completely different thing now. Adding a delay or an _Are you sure?_ confirmation is trivial but hardly solves the issue of regretting sending something intentionally.

</comment></comment></comment></comment><comment><USER8> in my opinion, no. it raises a lot of concerns about misuse.</comment>


Stadia Founder's Edition - <AUTHOR> https://store.google.com/product/stadia_founders_edition <comment><USER3> The fact that you have to pay full-price for games AND rely on a cloud service makes this a nonstarter for me. The only way this could work is with a good subscription gaming model like Xbox Game Pass or PS Now. Or you give me a guarantee that I can take my games to another platform once Google inevitably shuts this down.

<comment><USER4> You can buy the game and use Stadia without subscription. You are capped at 1080p though.

<comment><USER5> Still a no deal for me, if my purchases in Stadia cannot grant me access to the game on other platforms. Who knows when Google decides Stadia isn't worth it anymore?

<comment><USER6> Isn't it very similar to Steam?

<comment><USER5> Not quite. I can play steam games offline, I can share them with my friends/family and the most important part being - steam's platform has been reliable with top notch support since 90s while Google hasn't gotten that even in 2019.

<comment><USER7> You can only play them offline as long as it can check in to Steam every few days. If (once) Steam is turned off, it will no longer be able to do that.

<comment><USER5> > If (once) Steam is turned off

Big if, and if Steam doesn't provide an alternative method or change their DRM before turning off.

Something unprecedented for Steam over 20+ years, but not so for Google.

<comment><USER7> Steam, one day, will disappear. Not tomorrow, but perhaps 100 years from now. On that day, you will no longer be able to download or even play those games for more than a few days.

<comment><USER8> Will I be alive to care?

<comment><USER9> owning things means that people then inherit things when you die

<comment><USER10> The cynical reply to this is also "Will I be alive to care?".

A more realistic reply might be "will any humans even be alive to inherit my game library?" or "will anyone even be able to run any of my games on the hardware and software available 100 years from now?"

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Discussions around Stadia always fail to mention the alternatives.

I've been using GeForce Now with a Nvidia Shield for over a year now and it's been a great experience. The hardware costs are the same as the Stadia ($130), it's free to use while the beta period lasts, and you can play all the games you've already purchased on Steam, BattleNet, Epic etc. in 4k.

Why would I buy all the games AGAIN on Stadia when I can access them on GeForce now? The social/streaming aspect of Stadia is not a big draw for me either, so I really don't see the advantage from my perspective.

<comment><USER12> The big advantage Stadia has over GeForce Now is that for GeForce Now you have to have a machine capable of playing those games in the first place. If you have a great gaming PC, then Stadia probably isn't for you.

Edit: I was mistaken. i was thinking on nVidia GameStream feature that allows you to stream from your PC to Shiled in your home.

<comment><USER13> GeForce Now is streaming like Stadia. You don't need a great PC. You don't need any PC.

<comment><USER11> This. You don't need a PC at all, I don't have one, just a TV and a Shield, and GeForce Now works great for me. I just buy Steam games through their website and it works perfectly.

</comment></comment></comment></comment><comment><USER14> $10/mo was pretty much the only way they could price the service; however I didn't expect 4k to be the _base_ resolution for the paid service. (thought it would be $10/1080p, $15/4k; having 1080p _for free_ is interesting).

Google needs to be more transparent about device support though. The stream highlighted Chromecast Ultra/Android, but not much else (e.g. if there is an iOS client, or compatibility with a base $35 1080p Chromecast/Chromecast protocol for smart TVs) [EDIT: the FAQ is more clear: [https://support.google.com/stadia/answer/9338946](https://support.google.com/stadia/answer/9338946)]

<comment><USER15> I doubt iOS is going to get access to Stadia. One of the primary perks for going with Android is that you'll be have access to mobile gaming through Stadia that you can't get with an Apple device.

<comment><AUTHOR> Google isn't a company that restricts their services in such a coupled manner. I fully expect it to be supported on most devices where it's possible to support it.

<comment><USER16> In my opinion, restrictive would be keeping Stadia to only Google specific hardware. Making it available for all Android devices feels pretty good to me.

<comment><USER17> I would actually suspect more of the opposite. Their biggest hurdle, at least initially, is fighting the perception that the service just won't be performant enough to be a good experience. I would not be surprised if they start with a limited set of high-end devices (Apple ones included), just so people don't blame device limitations on the service instead.

</comment></comment></comment></comment></comment><comment><USER12> This is right up my alley being a pretty casual gamer. I have a 1GB Fiber connection at home so streaming shouldn't be an issue, the cost is fairly minimal, and not having the worry about downloading or updating games and just being able to pick up the controller and have a quick gaming session will be perfect. And the cost to entry is very low, so even if the service is a bust and I leave after the 3 free months, I'll still have a Chromecast Ultra that I've been looking to pick up anyway.

<comment><USER18> A 1 Gbit/s connection is a great bandwidth (you probably mean 1 Gbit/s and not 1 GB), bit the latency is even more important. If the game movements and actions lag behind your physical input, this can ruin the whole experience, no matter if the stream has a great quality (few compression artifacts, high resolution) thanks to the bandwidth.

I only used the Shadow gaming VM service so far and the servers are in a neighbouring country, with 100 Mbit/s bandwidth and 30ms ping to 188.8.131.52, so not optimal conditions, but GTA IV, Minecraft and other games were not fun to play due to the input lag.

<comment><USER19> With fiber he's probably getting 1ms pings.

<comment><USER12> Yeah according to Speedtest.net I'm getting 2ms ping.

[http://www.gcping.com/](http://www.gcping.com/) to the closest Google data center puts me at 12ms median.

</comment></comment></comment></comment><comment><USER20> I just don't see how they are going to compete with Microsoft on this, or Sony for that matter. I can't help but think this will be killed off in the next 2-3 years due to low adoption. Microsoft and Sony already have their foot in the door, and xCloud is supposedly going to be an E3 topic...and I'm sure they will bundle it with existing Xbox Live services for a bump in price.

Google has proven me wrong in the past, but they've also killed a lot of products like this.

<comment><USER21> I don't think it's as hard as you'd imagine. Gamers are the craziest of early adopters and tech enthusiasts. They'll flock to you if you give them a great product. Unlike other areas (messaging, social media), you don't need the critical mass to have a successful product especially with cross-play becoming more and more common/acceptable. Even if you need the critical mass, it's much easier to get it with a great product in the gaming industry compared to others.

If Google delivers a great product here, they'll for sure have a huge number of users IMO.

<comment><USER22> Go on a number of the gaming subreddit and you'll see Stadia is being met with distaste and hesitation. Gamers are increasingly tiring of the games-as-a- service model, and this is a step even further in that direction.

Personally I think this will have the same lifetime as a lot of other google products: it'll launch, have some success, and then be killed unceremoniously a couple of years down the line.

<comment><USER23> People have said exactly the same thing about:

1) software as a service

2) streaming music

3) streaming video

4) digital games

There just isn't enough people caring about physically owning something these days.

<comment><USER24> People (mostly) already don't physically own games on PC. Steam can in theory shut right down and most people's games would just be gone.

<comment><USER25> the games would be patched to ignore the steam check, or the steam API emulated to bypass it entirely

and since most games use the same steam stub this would be a pretty easy thing to do

</comment></comment></comment></comment></comment></comment><comment><USER26> And the betting on when this product will be shut down by Google has already begun...right now 3 years is the choice with the most money behind it. Some fools are guessing Google may give this as much as 5 years.

Given Google's abysmal history of supporting its software _and hardware_ products, see e.g., the Nest fiasco from a few weeks ago, only a fool or someone with cash to waste would invest in a Google hardware device before it's proven popular by the market.

<comment><USER27> _Google has a habit of getting bored of a service or, if it 's not doing too well, just switching it off. Can you assure people that if they spend money on Stadia games, they are still going to have access to them in the coming years?

I completely understand the question. I think there's a couple of things I would answer to that. One is our commitment to this business is extraordinary. If you look at the list of games, and crucially, the list of game companies that are backing Stadia, you can see the level of interest and support. Google is committed to this for the long term, we have made very significant financial investments in this. And we have an incredibly dedicated team who is helping to make Stadia reality._

[https://www.bbc.co.uk/news/technology-48525703](https://www.bbc.co.uk/news/technology-48525703)

Words are cheap, though.

<comment><USER28> "If you look at the list of apps, and crucially, the list of developers that are backing Android wear, you can see the level of interest and support. Google is committed to this for the long term, we have made very significant financial investments in this. And we have an incredibly dedicated team who is helping to make Android Wear reality." Google, 2014, probably.

Words are _very_ cheap.

<comment><USER27> That seems unfair - Wear hasn't been abandoned. It hasn't been an overwhelming success, but it's not been a complete failure either.

[https://www.idc.com/getdoc.jsp?containerId=prUS44901819](https://www.idc.com/getdoc.jsp?containerId=prUS44901819)

I can't see Google dropping it unless Apple abandons theirs first.

</comment></comment></comment></comment><comment><USER29> I think that an underestimated benefit of game streaming is anti-cheat. It would benefit a lot games like Fortnite and Pubg.

<comment><USER30> Competitive games, at least competitive shooter games, are really the worst application for this though because they suffer the most from input-to-display latency. Games like League of legends might be fine though.

<comment><USER31> They suffer from _uneven or inconsistent_ input-to-display latency. If Stadia can give everyone the same, (hopefully) modest amount of latency, the games remain as fair as they ever were

<comment><USER30> I'm not entirely sure, but you may have misunderstood my point. It's not about fairness, it's about whether it is physically possible to play the game on the same level of skill.

Talking about shooters, in the traditional multiplayer setup input-to-display latency isn't actually a concern, because input-to-display doesn't go over the network at all. When you move your mouse, the display update loop doesn't contain a network roundtrip. There is only the concern of latency to the server for resolving which hits actually connect, and I agree with you that having this latency be roughly the same for everybody is probably quite a bit more important than how low it is.

With game streaming, the input-to-display loop _does_ include a network roundtrip, which makes it harder to aim.

If you've ever tried to play a shooter with <15 fps, or suffered from the mouse input lag that some games used to have on Linux in the past, you should know what I mean: aiming with the mouse crucially relies on a feedback loop where you correct your hand movement based on what you see on the screen. The longer that feedback loop takes, the harder it is to aim.

 _That 's_ what the concern is with competitive shooter play on game streaming services. (And it's why I wrote that other types of competitive games may not be affected as much, but it's been a long time since I've played a lot of games, so what do I know...)

<comment><USER32> If you have <20ms latency (possibly a bit higher), I don't think it will inhibit the skill cap for most shooters.

If it creeps up into the 40's and 50's though, it will for sure.

<comment><USER33> I don't think so - the reason I don't use VSync for first person shooters is because it introduces 1 frame (8ms ~ 16ms depending on your frame rate) of input lag. It really feels laggy when I try to move my mouse and aim.

<comment><USER31> And mechanical keyboards make you type faster and gamer glasses make you aim better and a tincture of molybdenum in your star-water will cure your cold

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> Anyone know of a "how will Stadia perform on my ISP" check (all I see is a bandwidth check, which is not the same)? I'm not expecting anything (I'm on average 50ms ping to servers, 120ms ping if you include processing on the remote end), but it would be good to have confirmation.

I'm also disappointed by the dramatic extension of the "you don't own the games you buy", since there's not even an option to download the titles and play offline. It gets more worrisome based on Google's demonstrated "go to HN" form of customer support.

<comment><USER35> Check out Fast.com. If your loaded latency numbers are high, it's possible you won't do well with Stadia.

The best test is going to be using it. There are too many factors to have a good predictive test.

<comment><USER36> Last mile times are always going to cause lag. 5g won't be rolled out for years, then you'll need a phone to take advantage of it so that's not going to help. Last mile in US performance is really poor unless you're on full fiber which isn't offered in most of the US. Even with direct peering to the ISPs, which they don't have, this isn't likely to be a superior experience compared to a local machine. They'll have to push the entire video stream along with the intelligence. That's a lot of data that can't be lagged.

<comment><USER37> > which they don't have,

Can't directly refute this, but wouldn't you think GCP is peered with the vast majority of local ISPs (in America and maybe the EU)?

<comment><USER36> No. I don't not believe they've done this. They don't peer easily or often and peering with local partners is not something most people want to do, even Google. It takes trust on the part of the local service provider, which Google hasn't built as Google is often a direct competitor to their local products. Peering at the ISP level is really hard because it's all relationship management. Google couldn't manage their own fiber and built up a good deal of animosity with other networks in doing so, especially in the US.

<comment><USER38> [https://peering.google.com/#/infrastructure](https://peering.google.com/#/infrastructure) send to say otherwise. It's in the best interest of both parties, so not sure why they wouldn't have done this.

<comment><USER36> Interesting information. There's definitely a bit of marketing going on there, but it seems that they have at least some peering. Without concrete public evidence otherwise I'll concede that Google must have great peering.

<comment><USER39> Google/AS15169 has an open peering policy.

From a network administrator's point of view, they're an absolute joy to work with too.

If you're share any IXes with them at all, they'll peer with you. Private / appliance based peering has additional requirements, but that's par for course.

Most of the pushback is on the ISP end.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER40> I don't know why people aren't more concerned with the fact these giant companies are so large that they're able to take over entire markets extremely easily.

I keep hearing "man, this <insert_product_here> by Google is absolutely awesome!" but it's getting more and more to the point where Google is taking over markets...

It's getting concerning when silicon valley companies are getting large enough to be their own governments, with their own micro-countries built into their campuses (Google HQ, Apple HQ, etc. etc.) It's almost like the vatican in terms of size at this point.

<comment><USER41> The product isn't set to launch for another half a year.

How can you claim that it is already "taking over the market"?

<comment><USER42> ThE maGic oF GoOglE!

</comment></comment></comment><comment><USER43> Wait what, Baldur's Gate 3? And DOOM Eternal at 4K/60, they must be pretty confident about the latency... OK, I have to admit it's a pretty compelling alternative to upgrading my aging computer. I'll still wait for the reviews / Digital Foundry analysis, but I'm interested.

<comment><USER44> There's a GDC talk by id Software porting DOOM to Stadia [0]. The speaker says that in the latest demos, the difference is basically not perceptible. They had a setup with two computers, one running Stadia and the other locally, and most people couldn't tell them apart.

[https://www.youtube.com/watch?v=qdz4b5psrhE](https://www.youtube.com/watch?v=qdz4b5psrhE)

</comment></comment><comment><USER45> As a (slightly) more than casual gamer, this is a hard sell. I have a deep catalog of games in Steam & GOG, and having to re-purchase them is a non- starter, especially given alternative streaming services that let me use my back catalog. It's even more surprising that Google doesn't have some way of accounting for this because GOG does: at least for a limited selection of games, GOG let's you link to Steam and get the games into your GOG library.

<comment><USER42> I think you are not alone in that opinion. It seems like a bad choice to say to consumers "You have to buy those games again to use with Stadia.".

<comment><USER46> What is the alternative?

<comment><USER47> You could import your Steam/Origin/Gog/etc library of stadia compatible games.

</comment></comment></comment></comment><comment><USER48> I think this is a pretty reasonable price and I fully expect to pre-order, but I'm disappointed that the games must be purchased a la carte. I'd much rather pay a higher monthly fee and be able to play any games I wanted. I'm not sure how much more I'd be willing to pay, but I just think that purchasing titles that I don't own doesn't fit well with the streaming paradigm.

<comment><USER49> Yeah agreed, I was expecting streaming to be streaming - I don't purchase individual titles on Netflix. Maybe if it was transferable to PC or another platform I'd be more open to it.

<comment><USER50> > A free tier will be available some time in 2020, as will a paid subscription > tier that doesn't require the upfront purchase.

Wonder if the paid sub won't require a payment for games in the future.

Even with a console you still have to pay to play online, so I don't see this as necessarily a huge problem if I have to pay $10 to get the online aspect and still pay for the games

<comment><USER49> Makes sense, I went to their site to look more in depth and it seems with the Pro subscription you get some free games periodically and also a discount on select titles. That feels like a good middle ground actually

</comment></comment></comment></comment><comment><USER51> Really not seeing how they pull this off. Even a couple of congested wifi channels is enough to put latency jitter into the connection that's noticable.

Back in gamedev we did all sorts of tricks with dead reckoning and the like to hide/compensate for it. With the current architecture I don't buy that you'll be able to make those same saving adjustments.

<comment><USER52> Maybe a different class of games will do best on a streaming platform.

</comment></comment><comment><USER53> >We aren't in your country yet

Sounds about right. By the time it comes to EU it will be abandoned by Google and shut down in a year or so

<comment><USER54> > The Founder's Edition will launch in United States, Canada, the United > Kingdom, Ireland, France, Germany, Italy, Spain, the Netherlands, Belgium, > Denmark, Sweden, Norway, and Finland.

Disc: Googler.

<comment><USER55> Still the same, I'm in Poland and they are not there yet :(

From the list I see that they don't have any new EU states and they don't have even Portugal.

Which is quite strange, because internet speed there on average much better (fiber is quite popular) than in the old EU.

I think the issue is lack of google servers in those countries.

</comment></comment></comment><comment><USER56> I guess in terms of game development, Stadia will be like GitHub. As a service though, we'll see. Their reveal stream kept crashing, and there was noticeable lag during their initial GDC presentation.

<comment><USER57> Could you explain what you mean by "like GitHub"?

<comment><USER58> [https://www.xkcd.com/624/](https://www.xkcd.com/624/)

</comment></comment></comment><comment><USER59> The problem with clown gaming is latency.

Maybe it can find a place, at the right price (perhaps free), location, game type, mechanic and implementation.

Here, google says the base will be free, but you have to buy the games. But will publishers drop their price enough? Would a low-quality version damage their franchise/brand? Second, will publishers modify their mechanics and implementation, to hide latency?

The other way is with low-latency internet - so would need to be geographically close, like a city-sized LAN party. Perhaps Seoul?

Both need to begin as disruptions, selling their strengths (cheap, convenient, simple, easy), in circumstances/usages where their weaknesses don't matter (latency, bandwidth), starting small and growing as work it out. e.g. a fun game that only really works as a cloud game. (is that possible?)

</comment><comment><USER60> Can someone explain the tech here? Obviously the brains of this is a Google data center beaming the game through a Chromecast to your TV (or in-app on your Pixel/ whatever). Is there any tech in the controller? What "costs" $129 if there's a subscription model attached to this?

If the controller is indeed "dumb" (just sending inputs), why wouldn't there be compatibility with Xbox or PS4 controllers?

If the history of non-main consoles has taught us anything (Nvidia Shield, Ouya, etc), you have to have games and a controller. Seems Google has games covered, but why try and reinvent the wheel with a new controller?

<comment><USER61> My understanding is that the controller supposedly connects directly to Google through WiFi rather than going through the device you're playing on.

<comment><USER60> Hmm. Does this mean that the controller is the "brains", and after sending and receiving the game play data, then needs to beam it to your device? Or do the two devices (controller + screen) work together to handle some of this?

I fear for the latency in general.

<comment><USER62> Neither device is the brains. The controller uploads inputs. The Chromecast downloads outputs.

The brains is Google's cloud.

</comment></comment></comment></comment><comment><USER63> This is astoundingly cheap. In fact its too cheap, €10/month works out to €360 + €130 over a 3 year hardware cycle which is barely enough for a not-really- capable 4k GPU as it is, without costing all the additional services/hardware. And to put it bluntly, these games are second-rate titles from the last year. From this announcement I guess that this is mostly just another data farming play that will never generate a profit on its own and has a very high chance of being shutdown within 3 years.

<comment><USER64> > too cheap

I'm astounded at HN's ability to spin anything as a negative.

> these games are second-rate titles from the last year

since when were games like AC: Odyssey or BL3 "second rate"?

Of course they aren't going to have all games (out of the gate, we can assume they are working on licensing) or have exclusive titles (for obvious reasons).

<comment><USER21> Also not sure if it'd just a licensing issue. I think all the games might very well be modded to run on Stadia servers. May be the renders are optimized to send out compressed video over the wire instead of a video output. Totally speculating but I think it's likely that the games need to be integrated into the Stadia platform somehow.

<comment><USER64> iirc they support games made with certain engines out-of-the-box. Ironically, I think I heard that it's the Unreal Engine (sorry, Epic Games Store...). AC:O and BL3 seem to support that theory.

<comment><USER65> Neither of those games are UE games, though.

</comment></comment></comment></comment></comment><comment><USER66> By definition every game requires 'decent' internet. The fact they will still charge full price for the games and games you could've bought on disc or steam before are now 'internet required' ... means I'm out. Not just for the premium version but for the hardware and free versions as well.. After Google Wave and Google Reader ~ I'm not going to invest solid dollars vs hardware on premises.

</comment><comment><USER67> I am surprised by comments that seem to give Google the benefit of the doubt or do not show concern just because of how other services operate.

It is up to Google to demonstrate they are capable of keeping an 'innovative' service running long-term, not customers wearing the risk (well it should be anyway).

Really the only long term products Google has provided are those dependent on their Ad behemoth. Imagine all the games full of Ads...

</comment><comment><USER68> > Buy games whenever you want: Yes

Not sure why a company like Google can't make a deal that will include AAA games in their subscription fees.

</comment><comment><USER69> The architectural idea behind Stadia is interesting. The tacit assumptions here seem to be that the only games worth playing are multi-player, and also it's a real PITA to build a good gaming rig these days. The first assumption allows that there must be some shared state; and with the second, you extend the shared state to include the entire UI, and you use a video codec to ship it.

Lots of benefits to Google and game authors in terms of DRM - players no longer even have access to the game code. Nor do they have access to the "low entropy" network messaging stack. There will be literally no opportunity to write low entropy bots (although Sikuli style keyboard/mouse bots will always be possible, of course).

It's interesting to compare/contrast the trade-offs with traditional shrinkwrapped and more modern Steam/Blizzard style game distribution. It seems clear that Google wants to leapfrog Steam here, and go toe-to-toe with Netflix.

<comment><USER70> > also it's a real PITA to build a good gaming rig these days

It's like as hard as putting together some legos. For $800 you can get a great setup these days.

<comment><USER69> Do you really believe this? I've actually looked into buying a gaming rig recently, and the amount of choices one has to make is impressive. Plus, even if picking and assembling hardware is easy (and it isn't for the average person), there is the aspect of system administration. I haven't admin'd a Windows box for a long time, but it's not a responsibility I'd take lightly.

<comment><USER71> Yes, if you are even the least bit technically orientated it's extraordinary easy. There are many incredible resources online with prefab builds and suggestions. It's the easiest time in history to do so.

All of my clan friends none of whom are programmers or even in the tech industry all managed to do it fairly easily with help from guides and friends online.

<comment><USER72> IME, every time I go to buy a new PC (haven't bought a new PC since 2006!) I'm told to "wait" until the next, better buttkicker or core i13 comes out. I end up not buying anything.

<comment><USER70> LOL... well as soon as Ryzen 3000 series drops on July 7th, then get that, or see if they have some good deals on previous generations at that time. If you need something now, just go with a Ryzen 5.

</comment></comment></comment></comment></comment></comment><comment><USER21> In 10 years, we are going the have the Netflix, Prime and Hulu for games but unlike movies I think most titles will be available on all platforms. Not sure whether Stadia will be a success or not but someone will be the winner in this market and become the next Netflix for games.

</comment><comment><USER73> > Stadia is not available in Hawaii.

> Stadia is not available in Guam.

Is this a bandwidth issue? Alaska is Ok though?

<comment><USER74> Most likely they don't have data centers in hawaii and thus the latency would be too high to stream it from the continental US.

</comment></comment><comment><USER75> I'm guessing this is probably walled garden approach, Stadia without multi- platform functionality, cross play.

I doubt many AAA game Devs are ready to go all-in on Stadia, unless they are getting subsidies from Google so Stadia will compete with the Consoles, and PC elites.

What would be great though is that if a really liked an played a game i played on my Hardware PC/Console, what would be great is that i could simply invite a set friends to play onetime through the cloud anywhere and all the friends would need to do is login to Stadia and get to play instantly through chrome.

</comment><comment><USER76> So you order some thin client for 129 bucks, pay 10 dollars a month for the service and buy the games? I was assuming Stadia to be like a sort of Netflix for games. I could just as easily buy a console and buy the games.

<comment><USER17> Strictly speaking, the minimum purchase is just one of the games on Stadia if you are going to be using Chrome on your PC and already own any HID-compatible controller.

The $10/mo gets you 4K streams (you get 1080p without a subscription), and occasional free and discounted games (like PS+ does). At launch, the free title will be Destiny 2 + all expansions (including the one releasing later this year).

The $129 gets you a Chromecast Ultra ($60), and the controller ($70), and 3 months of the subscription ($30) for you and a friend. Both the Chromecast and the controller are usable outside of Stadia.

</comment></comment><comment><USER77> How are they overcoming the jarring effects of input latency? Even 20-30ms in input lag would turn a lot of people off, or is this primarily for casual games where this won't matter too much?

<comment><USER61> I played the AC Odyssey Stadia/Stream beta -- at least for that kind of single-player experience it felt comparable to console input lag with no jarring effects. I'd be interested in how it would be in twitch shooters though.

<comment><USER78> I doubt twitch shooters would be playable. I've used steam's in home streaming, and platformers that require precise jumping accuracy are basically unplayable because even a fraction of a second hiccup in latency can get you killed. Even simple platformers like Crash Bandicoot can get frustratingly difficult to play over a stream. If the service gets popular enough, we might see developers making changes to help out players using Stadia, the same way that they add auto-aim for most console shooters, but disable it in the PC version.

<comment><USER27> _even a fraction of a second_

This is meaningless unless you can be more precise.

<comment><USER33> I usually notice input lag in first person shooters when I have V-sync / fast sync on. V-sync introduces about 1 frame of input lag (0.5 frames for fast sync), so 8~16ms is just enough to throw myself off. I would guess platformers and fighting games would have similar kinds of input lag problems.

</comment></comment></comment></comment></comment><comment><USER79> Does MS have a patent on offset joysticks or does noone care that you can't strafe right and look left without smashing your thumbs together? Switch the dpad and left joystick.

<comment><USER14> The current Stadia controller layout matches the PS4's controller.

<comment><USER80> Which is not a good thing IMO. The Xbox One controller has been much more comfortable for longer sessions for me.

</comment></comment></comment><comment><USER81> I feel like I'm missing something in regards to how this will work. I've already got a Chromecast Ultra and I already have PS4 controllers. I will be satisfied with 1080p gaming quality. Can I try this out for free or do I have to purchase a title? Do I need a laptop/phone that is casting to my TV? Can I use my PS4 controller? If so, what would it be connecting to - <USER2> laptop/phone?

<comment><USER82> As far as I know, the Chromecast Ultra has no Bluetooth or USB support. That's why the new controller has direct Wifi support.

</comment></comment><comment><USER83> If I buy a game on PS4, I can be reasonably confident it will continue working for as long as my PS4 physically continues to work. And then I can sell it when I'm finished playing it.

I don't understand why I'd want to buy a game on stadia instead for the same price, not have the opportunity to resell it, and be at the mercy of Google shutting down the stadia servers whenever they feel like it.

</comment><comment><USER84> Is there a risk that they increase the subscription price and hold all of your games hostage if you're unwilling to pay the new premium?

<comment><USER85> You don't need to have a subscription to buy or play your games.

Without a subscription you can stream the games you buy at 60fps 1080p with stereo sound.

With a subscription you can stream the games you buy at 60fps 4K with 5.1 surround sound.

There's a risk that they increase the subscription price and hold _higher quality_ versions of your games hostage. Or, of course, there's the suicidal option of changing their pricing entirely such that free users can't stream the games they've bought (because what are you going to do about it?), but I'd imagine they'd shut down the entire service before trying to pull that off.

</comment></comment><comment><USER86> If you're concerned (or curious) about the effects of latency on things like mouse movement, here's a simple little tool to test it:

[https://codepen.io/crummy/pen/YboVMQ](https://codepen.io/crummy/pen/YboVMQ)

Personally 30ms seems fine, 50ms I can begin to tell a difference.

</comment><comment><USER87> Why aren't licenses transferable cross-platform though? They give you the right to _use_ the product after all. One license should normally allow you to play on any platform you wish (xbox/pc/ps4/stevia) ans even transfer across platforms.

</comment><comment><USER88> I thought Google was just search and a few services like Drive, Docs, Gmail etc Shouldn't Stadia fall under the branch of Alphabet and omit all instances of using 'Google' in their marketing? Why use the Google name for something not remotely related to search?

<comment><USER49> Because the Google brand is still orders of magnitude more recognized than Alphabet especially in mass market. I would wager a decent chunk of their target audience doesn't even know what Alphabet is

<comment><USER89> I'm not even sure why they tried to brand a conglomerate holding company anyway.

<comment><USER3> They didn't. Alphabet has zero branding, barely even a web site. The stock itself is still called GOOG.

</comment></comment></comment></comment><comment><USER3> $170 base price is a bit odd. Chromecast Ultra is $60, which means they are selling the controller for $110? For comparison, you can get an Xbox or PS controller for ~$60.

<comment><USER12> Where do you see $170 base price? It's $130 and includes

Ultra - $60 Controller - $60-70? 3 month Pro Subscription - $30 3 month Pro Sub for a Friend - $30 Destiny 2 Complete Edition - ~$100

So even without taking the game in account you're saving 30% of MSRP

<comment><USER3> Never mind, I was on the Canadian site for some reason. $130 is more reasonable, but I would still have expected them to sell the hardware at a discount to get more monthly subscribers.

Also, you don't get to own Destiny 2, just play it while you have the pro subscription (i.e. similar to Xbox Live Gold benefits).

<comment><USER12> You are getting the hardware at a discount, and besides this is just the founders edition, you won't need a chromecast ultra to use Stadia in 2020. You'll just need Chrome.

</comment></comment></comment></comment><comment><USER90> Good option for people with low spec pcs, mac people, linux people and people without a computer (mobile users)

Plus steam already killed fisical media on pc anyways

</comment><comment><USER91> Overwatch support and it'd be an instabuy for me.

<comment><USER92> You can sign up for GeForce Now -- it already has overwatch. I played it yesterday on my macbook. Felt like local.

</comment></comment><comment><USER93> This website is a complete rip off of the Apple.com/arcade website

</comment><comment><USER94> So what's the line on when google shuts this one down?

</comment><comment><USER95> Hotel WiFi will never be usable again.

</comment><comment><USER96> Doesn't work on Firefox

<comment><USER70> Probably cause Firefox is much slower than Chromium-based browsers, especially when it comes to hardware acceleration support for video streaming in Linux.

</comment></comment><comment><USER97> Without including all the games in the subscription price, this feels like a really bad deal.

</comment><comment><USER98> Lossy video over IP is the Pink Slime of gaming.

</comment><comment><USER99> Is it just me or is google very good at a set of core products, but always puts out poor offerings when they try to expand into other spaces (G+, Glass, Stadia)

I read on another forum the best description of Stadia - "imagine if netflix charged you for each movie on top of your subscription fee"

</comment><comment><USER100> Surprised by the lack of an ad supported free version. Seems like applying the lessons they've learned from conquering internet search might be helpful, but apparently not.

<comment><USER101> I'm not sure I follow. You buy your games like you would with any console. It's just the console is "in the cloud" and you only pay the monthly subscription if you want the higher quality stream and the occasional free game (think PS Plus).

How would an ad supported version fit into that model? I thought it was a fantastic model!

</comment></comment><comment><USER102> I don't like the Google account being tied to everything, email, youtube, stadia, analytics, photos, etc. I won't use it because of this

<comment><USER103> You can create multiple Google accounts.

<comment><USER104> That google will associate and ban together.

</comment></comment></comment><comment><USER105> Won't work. The reason multiplayer games work over the internet is game engines compensate for latency by prediction. But when I move my mouse I don't want to wait a third of a second for the view to change. The problem with Google is they test everything on local 10G networks with near zero latency and the servers are walking distance away. Then they produce these abortions of products that are killed off 2 years later.

Yeah basic input lag is about as enticing as a 2KG chunk of a plastic helmet strapped to my head.

I bet in 10 years time we will still be playing on a PC with a GPU and a monitor on the desk.

<comment><USER51> Yup, as someone who wrote action networked games when I was in gamedev this is pretty on point. You're not going to get any chance at latency correction so jitter(which tends to be bursty) on the connection is going to really hurt you.</comment></comment>


Replacing 'that = this' assignments in JavaScript with Arrow Functions - <AUTHOR> https://dbwriteups.wordpress.com/2017/04/14/replacing-that-this-assignments-in-javascript-with-arrow-functions/ <comment><USER2> I have never subscribed to this particular pattern (antipattern IMO), though I do agree with a lot of the concepts Crockford proposes in "The Good Parts." The concept of 'this' is complicated enough in ES5, with a few new possibilities for its value in ES6+.

Since this is nearly always the pattern that's followed in the class pattern, I nearly always alias `this`, if needed, to the lowercase instance name or some short identifier that semantically maps to "an instance of the class". It gets you instantly out of both the problem of "I already used `that` as an identifier, now what?" as well as providing some nice context to what you're working on if you happen to be scrolled beyond the function/constructor name.

        function SomeClass(arg1, secretArg) {
          var someClass = this; // or `var sc = this`, more often these days

          // Hopefully do something more interesting than this...
          someClass.arg1 = arg1;

          someClass.method = function(foo) {
            someClass.bar = foo;
            // Do something with the "private" param via closure.
            secretArg.count++;
          };
        }

Even if lambda expressions do fix the issue of "which that is that" it doesn't provide me any helpful context for when I'm deep in coding or reading modes.

<comment><USER3> The this/that antipattern is one reason I dislike the class pattern. I avoid it by using prototypes:

      SomeClass = function (arg1) {
        // Hopefully do something more interesting than this, indeed. :)
        this.arg1 = arg1;
      };

      /**
       * Assigns foo to the instance variable bar.
       */
      SomeClass.prototype.method = function (foo) {
        // Hopefully you do something more interesting than this, too!
        this.bar = foo;
      };

      someClass = new SomeClass();
      someclass.method(foo);

Then when I need a handler for a DOM element, I bind the instance to the method:

      someClass = new SomeClass();
      var handler = someclass.method.bind(someclass);
      $('.link').click(handler); // using jQuery as easy-to-read DOM shorthand; it's not required

Or if I'm creating the handler within the class:

      /**
       * Creates a click handler for <a class="link"> elements.
       */
      SomeClass.prototype.init = function () {
        var handler = this.method.bind(this);
        $('.link').click(handler);
      };

Over the years I've found it really easy to maintain code written like this. There's no callback hell, you don't even need Promises, and everything is easy to document. But often I find myself in an environment where I'm maintaining someone else's code, and I can't just refactor everything, so I grit my teeth and use 'that' or 'self'. I like your idea a lot better.

<comment><USER2> The main reason I've come to avoid prototypes in many cases (except when I _really_ need to control memory) is that you can't keep any kind of information private (via closure) and share it across instance methods. It _has_ to be a property on the instance, and is therefore accessible to anybody with access to the instance.

Conventions (like prefixing with _) are great, but they can only help loosely enforce encapsulation and provide no form of real privacy.

<comment><USER4> I just use factory functions that return an object that has arrow functions as properties, then I get private information via closures, and I don't have to worry about dealing with this.

[https://www.youtube.com/watch?v=ImwrezYhw4w](https://www.youtube.com/watch?v=ImwrezYhw4w)

</comment></comment></comment></comment><comment><USER5> The dynamic binding of `this` at the callsite is one of Javascript's biggest mistakes. It's a tremendous source of run-time errors, and we have to hack around it with closures and arrow functions. How counterintuitive is that? It's exhausting to reason about what `this` refers to within a given block of code.

I very frequently want to pass methods around as callbacks and almost never want my functions re-bound as methods on alternative objects. The only times I can think of that I want to re-bind is when I'm writing library code.

<comment><USER6> The real problem is the lack of distinction between functions and methods. Dynamic "this" is really just a hack to make functions behave like methods when invoked via an object member.

Python has an interesting solution to this, which is a lot more complicated - it has a more generic concept of "descriptors" that's used to wrap functions into magic sauce that makes them methods, taking care of "self" etc - but with most of that complexity hidden from either side (definition and invocation).

<comment><USER7> I wouldn't say the Python solution is more complicated (complex, maybe), it's quite elegant and it essentially boils down to just pre-setting the first argument to the class instance or class value.

You can do it yourself:

       >> def x(*args): print(args)

       >> new_func = a.__get__('silly sausage')

       >> new_func()

       ('silly sausage',)

When you do instance.method() Python will look up 'method' inside 'instance'. If 'method' is a descriptor (with functions are), then `__get__` is called and the first argument is set to 'instance'

Here are the docs if anyone is interested: [https://docs.python.org/3/howto/descriptor.html](https://docs.python.org/3/howto/descriptor.html)

<comment><USER6> Yeah, I meant descriptors themselves. Conceptually, having an ability in the language for an object to do some special handling when it's retrieved as a member of another object is a very powerful tool, and once you have it, it solves this particular problem neatly. But it's also an unusual thing to have, and few people are aware that something like this is at play every time you write something like `a.b`.

</comment></comment></comment></comment><comment><USER8> Over many years of writing JavaScript, I've come to generally avoid the issues regarding `this` by preferring a functional style of programming instead of OO. I don't get away from OO completely and sometimes OO is the "goodest" solution for a problem.

</comment><comment><USER9> In sum: "Since the...function was defined as an arrow function rather than the traditional anonymous function, and since it is defined within the lexical scope of another function X, the value of 'this' is set to the surrounding lexical scope of X [instead of the global]"

</comment><comment><USER10> Would love suggestions here, I've migrated towards a style of always using that=this (even when not required because we're in an arrow function, for example) because the JavaScript refactoring tools I'm aware of aren't particularly robust (I'm mostly refactoring by hand) and I don't have confidence that the dev (me) moving code from one method to another will always correctly identify whether the source and destination this inheritance contexts will have the same shape. Always using that=this doesn't solve all problems (you can still get weird this's you're not expecting) but from what I think I've seen this sort of "conservative" approach seems to increase the safety of a lot of refactoring efforts in the more common use cases.

Are there sweet JS refactoring tools that a VS Code using, typescript preferring dev like myself should be using? I'd really like to drop this style if I can.

</comment><comment> c-smile Just on case, there is a `this super` construct in Sciter's Script for that purpose:

       function Foo() {
         return function() {
           (this super).Bar();
         }
       }

_this super_ , when used in inner function, returns _this_ passed to outer function call.

</comment><comment><USER11> In reference to constructor invocation:

      ...a new empty object is created, (let's name it newObj) and the function is invoked on that object,
      like say, newObj.Person() in this case.

Is this true? When a function is invoked with "new", "this" is set to the object being constructed, but is that accomplished by making the constructor a _method_ of the object being initialized? If so, it must be removed later on in the process:

      (new Function).Function
      => undefined

<comment><USER12> It is not true. It's just a confusing attempt by the article to explain what happens to `this` inside Person().

If anything, it's more like:

        var newObj = Object.create(Person.prototype)
        var result = Person.call(newObj)
        if (typeof result === 'object' && result !== null) return result
        return newObj

The article didn't explain it like that because that requires introducing the concept of .call() on functions.

</comment></comment><comment><USER4> I prefer to combine arrow functions with factory functions, and avoid classes completely. You get private variables and functions via closures. The only real downside is that it's slightly slower.

Here's a good video on the subject [https://www.youtube.com/watch?v=ImwrezYhw4w](https://www.youtube.com/watch?v=ImwrezYhw4w)

</comment><comment><USER13> The arrow function doesn't solve it in cases where you define generator functions. You cannot use the arrow operator for those causing syntax errors and you still have to keep binding "this" or define "self" like in the article.

This is one area where typescript (or es7) does it better with async functions where arrow operators are permitted.

</comment><comment><USER14> One of my coworkers made the good suggestion that "that" is only one character away from "this", so we use "self" instead for the same purpose.

<comment><USER15> Not to be overly pedantic, but I'm I missing something here? "that" -> "this" is a two character change, no?

<comment><USER14> Ha ha of course you're right! Math is hard.

<comment><USER16> Barbie? That you?

</comment></comment></comment></comment><comment><USER17> I haven't had to use that = this in a few years and it's immensely improved understandability of the code I work on.

</comment><comment><USER18> if you develop for browsers, title can be: how to lose 60% of your user base to avoid one simple line.

if you are a node developer, title can be: something very banal you've been using for ages.</comment>


Show HN: Create your own decentralized app in one month - <AUTHOR> https://www.studythebc.com/?ref=hackernews <comment><USER2> Hi everyone,

I created this blockchain developer bootcamp to help people roll up their sleeves, build and launch DApps (decentralized apps).

This bootcamp is all online, rigorous, has live instruction, tons of group work, and ends with students presenting their DApps to the blockchain community.

Our instructors are top notch blockchain engineers with computer science backgrounds who made their own DApps on the ethereum blockchain.

Throughout each class we will

● Discuss when to make an app decentralized and when not to

● Constantly build decentralized applications

● Go over code in small groups

● Debug smart contract coding problems

● Create user interface for blockchain applications

● Go over deployment

● Go over Smart Contract best practices, testing, optimizing code to reduce gas expenditure

● Go over security best practices

Our bootcamp spans a month of work and a lifetime of opportunity and connections.

Post graduation, keep in touch and network with alum in a telegram chat

some of the technologies that we cover are

Solidity, Web3, Truffle, Ganache, OpenZeppelin, Storj, IPFS, Uport, Securify, Remix, Metamask

Our first inaugural class starts May 4th 2018 and is 50% off. Enroll, before we run out of spots.

And ask anything you'd like to me!

<comment><USER3> If you need beta testers for the program, let me know. I've completed several MOOCs and a Udacity nanodegree, so I have experience on starting and getting throught online course work

<comment><USER2> @lucasverra would love to get someone experienced like you involved! Would love to chat more with you at peter [at] study the block chain [dot] com</comment></comment></comment>


Show HN: Wrapping bash calls to rsync in Python - <AUTHOR> https://pypi.org/project/sysrsync/ <comment><AUTHOR> The motivation behind this package came while I was writing a custom deploy script in python for the company I work. The script had to deal with pulling changes, compiling code but ultimately it had to reliably deploy code remotely. A small bug caused near catastrophic damage when I mistakenly synched a config directory instead of its content, because of this an outdated database that was mistakenly still operational was used and we lost a couple of days migrating several hours worth of changes to the correct database.

Looking back, it was quick to issue a fix to the script, but the code looked dirty and low level, with many calls to subprocess.run with template strings, all of which were extremely error prone and untestable. I needed therefore a thoroughly tested module to hide and reliably wrap the shell calls to Rsync we were doing and that is why I wrote this package.

I was hoping the community would test it out and leave suggestions as to what could be better implemented, feature ideas as well as test cases I didn't think of.

Thanks beforehand! I hope this package could also come in handy to other people. I would be delighted to know I helped!

</comment><comment><USER2> Anybody having an install issue with python 3.7?

<comment><AUTHOR> thanks for letting me know.

a subpackage was missing a `__init__.py` which didn't show neither in development nor in running `python setup.py install --user`. I guess I should have experimented with pip, lesson learned!

it should be ok to install now, if you could give it another chance

<comment><USER2> Thanks for the update. Installed correctly. Can't wait to try it out.

<comment><AUTHOR> Cool, let me know what you think!</comment></comment></comment></comment>


Ask HN: What do you think of the new Google Search Console? - <AUTHOR> <comment><USER2> I don't like it. It doesn't have the snapshot of your page as fetched by google. I had to switch to the old version to have it. It feels like a half baked project.</comment>


Show HN: The US Bill of Rights written in current vernacular - <AUTHOR> https://github.com/jMyles/Bill-Of-Rights-Rewritten/blob/master/bill-of-rights-rewritten.md <comment><USER2> I would note that the text does not preserve the sense of the original text in moving to the modern vernacular. In some cases, this seems to be because something approximating the effect of modern application of the Bill of Rights _in combination with the 14th Amendment_ has been written into the text of the amendments from the Bill of Rights alone. (Particularly, it consistently recasts restrictions on Congress -- usually construed as restrictions on the federal government more generally -- as restrictions on "any government actor".) But there are other changes in sense, as well.

Additionally, the use of feminine third-person singular pronouns in a generic sense is somewhat niche even now; I'd hardly say that is "current vernacular".

Basically, I'd say its a pretty free riff inspired by the concepts in the Bill of Rights, rather than the actual Bill of Rights written in current vernacular.

</comment><comment><USER3> Show HN is specifically reserved for usable stuff:

        Show HN is for something you've made that other people can
        play with. HN users can try it out, give you feedback, and
        ask questions in the thread.

[https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> Ahh, roger - sorry about that.

Although arguably a more readable bill of rights is usable in a larger way. :-)

</comment></comment><comment><AUTHOR> Pull Requests welcome! :-)</comment>


Stages to Saturn: A Technological History of the Apollo/Saturn Launch Vehicles - <AUTHOR> http://history.nasa.gov/SP-4206/sp4206.htm <comment><USER2> This is a pretty good book. It does fail to compare and contrast the different stages of the Saturn launch vehicle.

For example, the S-II, the 2nd stage, and the S-IVB, the 3rd stage, use a "common" dome between fuel and oxidizer tanks. The S-I, first stage, did not. Why? The S-II apparently used elliptical domes on both fuel and oxidizer tanks, but it appears that the S-IV and S-I used hemispherical domes. There's advantages and disadvantages to both, but why not set a standard? Titans all used "square-root of 2" elliptical domes, and I believe that the Centaur upper stage did as well.

Anyway, a compare-and-contrast on technical issues would have gone a long way with me.

</comment><comment><USER3> Ive bought the book off Amazon a few years back, along with 2 other space related ones.

I have to say, I've been appalled by the print quality of that one. It looks like someone took too big blank book (the white edges are humongous) then xero'ed stuff onto it directly from old typewriter pages (you can see the characteristical typewriter not-entire-letters-printed)

Technically interesting, but a little dry

</comment><comment><AUTHOR> Also available a 169 MB scanned PDF: [http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/1997000...](http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19970009949_1997011911.pdf)

This is a history of Saturn rockets commissioned by NASA (and thereby in the public domain)</comment>


Realizing domains still sell for 800k+ has changed my domain squatting tactics - <AUTHOR> I recently saw the thread about a company using part (or maybe all) of their series a funding to purchase the domain name covers.com for $825,000 dollars.  (https://news.ycombinator.com/item?id=18534468)
Neat! And excellent news for me as a domain collector. I also use the term collector because while I average holding ~150 domains at any given time (including my prized possession, e.ht), I rarely set them up to be exposed on a potential market. Anyone who has shown interest in a domain did the dirty work of figuring out how to reach out to me.  This has worked out and I've actually sold quite a few to some noteworthy groups. For example, the Mormon church sent a broker after LDSMatch.com, and i was able to have a great ROI on a domain that cost me a handful of years worth of ICANN fees.
Fast forward to today. I have a domain that is currently being chased by a Godaddy broker representing a client. It's a good domain, consisting of two words and a .com. My intentions before I read about the covers.com sale were to accept the second offer (I typically ignore the first fishing offers), but woke up this morning and changed my email draft.   If a single word .com is worth sub one million dollars, with every other TLD option out there right now, two word .coms are definitely worth at very least more than four digit offers.  Change my mind. <comment><USER2> People like you make our lives really painful... I wish there was a rule saying that if a domain name has been purchased and hasn't been used after X months, then it should be automatically cancelled and available for other people to use.

Just to avoid domain squatting.

<comment><AUTHOR> What am I actually doing to make your life painful? Let's say I collect beanie babies because I really just like them. I'm not in control of the market supply or demand, so when someone wants to approach me with a $10k offer for my Princess Dianna 1st edition, sudden;y I'm the bad guy for displaying it on my shelf?

<comment><USER3> Does the fact that you have a Princess Diana Beanie Baby, 1st Edition mean that no one else has one, or can have one without buying it from you?

<comment><AUTHOR> I don't quite understand your question, but I'll take a stab at it. When art prints are limited to 1 of 10, does it mean the 11th person is SOL? I'd say yes, unless one of the 10 relinquishes ownership in one way or another.

<comment><USER3> You're only stretching already over-stretched analogies. Art prints are not, by their nature, limited resources, nor do they hold important inherent value. Housing, public transportation, land etc. are better analogies to specific domain names. The ethical ramifications of a person hoarding a specific piece of art and a person reserving and not using seats on public transportation are quite different.

<comment><AUTHOR> You're really going to compare domains with their near infinite options in both Tld and address characters to a seat on public transportation and affordable housing? I'm just embarrassed for the argument at this point.

<comment><USER3> 1\. I'm not comparing domain name availability to anything. Rather, I'm pointing out flaws in your analogy, comparing your analogy to other things, and trying to show you a wide spectrum of resource availability. 2\. Domain names are not random addresses, they're identity, and thus severely constrained. Yes, if one wanted a random domain name, they have near-infinite options; but not every domain use-case is such. Not even the dominant use-case is such. Squatting on a domain name is an effective way of squatting on the online version of a real-life identity. Compared to trademark squatting, domain name squatting is trivial. Needless to say, both practices are extortionary.

<comment><AUTHOR> I want to continue this conversation because it is actually of interest to me, and you seem equally as passionate.

Let's find some common ground first. I get really annoyed when I am domain hunting for a service/app idea and the domain is not in use, has never been (from what I can tell) and has a huge 'BUY THIS DOMAIN' banner waving about. So then it's up to me to determine how badly I want it, and if I want to participate in the ecosystem that is domain name resale. I think we can agree on that.

I don't, however feel like I'm entitled to it just because I may have a better use case for the domain. At risk of being too analogous, I'll take the example x.com. I would love to own x.com and I believe my business 'X Industries' would greatly benefit from having it, and a room full of people could probably agree that my use case would be better than what the domain has served for most of it's life (a 200HTTP status and an 'x'). What is the solution?

Is stricter domain regulation the key? And if so, how do we backstep that to the creation of DNS and domain registration? On top of that, who enforces it? The US, or some other neutral entity? I think you know where I'm going here. I guess rather than saying collecting/squatting/holding is bad, and people are entitled to domains they can put to use, what do you imagine in the perfect domain market?

You also mention 'online version of a real-life identity'. Do you imagine this extends to account handles on Twitter, Instagram, et al? If I own username.com, and someone else owns @username, is that similarly an issue?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER4> > I also use the term collector

And in the title you use "domain squatting tactics". It sounds like you buy/register domains purely for profit, so squatting seems a good term.

<comment><USER5> Squatting sounds like he's using it without having paid for it. This is the opposite. This is domain name speculation.

</comment></comment><comment><USER6> What does it say?

[https://www.godaddy.com/domain-value- appraisal/appraisal/?ch...](https://www.godaddy.com/domain-value- appraisal/appraisal/?checkAvail=1&tmskey=&domainToCheck=cooldomain)

I added dummy value.

<comment><USER7> I wonder how accurate these appraisals are? I've bought a few two-word .coms over the years for projects which have since lapsed (like a travel blog). According to this they're worth a few thousands dollars and I have no real use for them.

</comment></comment><comment><USER8> This reads like a diary entry. What do you want to ask / tell / share with us, except that domains are bought and sold?

<comment><USER5> Maybe he's fishing for an offer on e.ht?

<comment><USER9> I don't understand why this domain is "prized". Is it because it is a single letter?

<comment><AUTHOR> It's personally prized because I've been a domain geek since I knew what domains were. No inferred value to anyone else.

</comment></comment></comment></comment><comment><USER10> Domain squatters are scum. You're scum. Congrats.

<comment><USER7> This attitude puzzles me a little, especially on Hacker News where there is a good-sized contingent of libertarian free-market types. Domains are an asset with value. What's wrong with buying them and then selling them for as much as you can. How does it differ from the sale of any other item or piece of information with value?

<comment><USER11> Domain names are an artificial monopoly that does not work, unless we all agree to play fair.

Otherwise, Oracle could have bought every common word domain at the birth of the internet.

<comment><USER10> Well put.</comment></comment></comment></comment>