jm + google   235

The Case for Learned Index Structures
'Indexes are models: a B-Tree-Index can be seen as a model to map a key to the position of a record within a sorted array, a Hash-Index as a model to map a key to a position of a record within an unsorted array, and a BitMap-Index as a model to indicate if a data record exists or not. In this exploratory research paper, we start from this premise and posit that all existing index structures can be replaced with other types of models, including deep-learning models, which we term learned indexes. The key idea is that a model can learn the sort order or structure of lookup keys and use this signal to effectively predict the position or existence of records. We theoretically analyze under which conditions learned indexes outperform traditional index structures and describe the main challenges in designing learned index structures. Our initial results show, that by using neural nets we are able to outperform cache-optimized B-Trees by up to 70% in speed while saving an order-of-magnitude in memory over several real-world data sets. More importantly though, we believe that the idea of replacing core components of a data management system through learned models has far reaching implications for future systems designs and that this work just provides a glimpse of what might be possible.'

Excellent follow-up thread from Henry Robinson: https://threadreaderapp.com/thread/940344992723120128

'The fact that the learned representation is more compact is very neat. But also it's not really a surprise that, given the entire dataset, we can construct a more compact function than a B-tree which is *designed* to support efficient updates.' [...] 'given that the model performs best when trained on the whole data set - I strongly doubt B-trees are the best we can do with the current state-of-the art.'
data-structures  ml  google  b-trees  storage  indexes  deep-learning  henry-robinson 
7 hours ago by jm
Fooling Neural Networks in the Physical World with 3D Adversarial Objects · labsix
This is amazingly weird stuff. Fooling NNs with adversarial objects:
Here is a 3D-printed turtle that is classified at every viewpoint as a “rifle” by Google’s InceptionV3 image classifier, whereas the unperturbed turtle is consistently classified as “turtle”.

We do this using a new algorithm for reliably producing adversarial examples that cause targeted misclassification under transformations like blur, rotation, zoom, or translation, and we use it to generate both 2D printouts and 3D models that fool a standard neural network at any angle. Our process works for arbitrary 3D models - not just turtles! We also made a baseball that classifies as an espresso at every angle! The examples still fool the neural network when we put them in front of semantically relevant backgrounds; for example, you’d never see a rifle underwater, or an espresso in a baseball mitt.
ai  deep-learning  3d-printing  objects  security  hacking  rifles  models  turtles  adversarial-classification  classification  google  inceptionv3  images  image-classification 
5 weeks ago by jm
Google and Facebook Have Failed Us - The Atlantic
There’s no hiding behind algorithms anymore. The problems cannot be minimized. The machines have shown they are not up to the task of dealing with rare, breaking news events, and it is unlikely that they will be in the near future. More humans must be added to the decision-making process, and the sooner the better.
algorithms  facebook  google  las-vegas  news  filtering  hoaxes  4chan  abuse  breaking-news  responsibility  silicon-valley 
10 weeks ago by jm
Anthony Levandowski has founded an AI religion
In September 2015, the multi-millionaire engineer at the heart of the patent and trade secrets lawsuit between Uber and Waymo, Google’s self-driving car company, founded a religious organization called Way of the Future. Its purpose, according to previously unreported state filings, is nothing less than to “develop and promote the realization of a Godhead based on Artificial Intelligence.”


this article is full of bananas.
google  crazy  uber  waymo  self-driving-cars  cars  religion  way-of-the-future  ai  god 
10 weeks ago by jm
Abseil
a new common C++ library from Google, Apache-licensed.
c++  coding  abseil  google  commons  libraries  open-source  asl2  c++17 
10 weeks ago by jm
How to Easily Unsubscribe from Bulk Emails in Gmail - Unroll.me Alternative
nice Google Script which runs in the background and scrapes out unsubscribe links. I'm drowning in single-opt-in mainsleaze newsletters at this stage so this is very welcome
mainsleaze  unsubscribe  spam  gmail  google  email  one-bite-of-the-apple 
august 2017 by jm
Going Multi-Cloud with AWS and GCP: Lessons Learned at Scale
Metamarkets splits across AWS and GCP, going into heavy detail here
aws  gcp  google  ops  hosting  multi-cloud 
august 2017 by jm
Allen curve - Wikipedia
During the late 1970s, [Professor Thomas J.] Allen undertook a project to determine how the distance between engineers’ offices affects the frequency of technical communication between them. The result of that research, produced what is now known as the Allen Curve, revealed that there is a strong negative correlation between physical distance and the frequency of communication between work stations. The finding also revealed the critical distance of 50 meters for weekly technical communication.

With the fast advancement of internet and sharp drop of telecommunication cost, some wonder the observation of Allen Curve in today's corporate environment. In his recently co-authored book, Allen examined this question and the same still holds true. He says[2]

"For example, rather than finding that the probability of telephone communication increases with distance, as face-to-face probability decays, our data show a decay in the use of all communication media with distance (following a "near-field" rise)." [p. 58]


Apparently a few years back in Google, some staff mined the promotion data, and were able to show a Allen-like curve that proved a strong correlation between distance from Jeff Dean's desk, and time to getting promoted.
jeff-dean  google  history  allen-curve  work  communication  distance  offices  workplace  teleworking  remote-work 
august 2017 by jm
timeX.google.com provide non standard time · Issue #437 · systemd/systemd
Google ask systemd not to use timeX.google.com due to nonstandard ticking behaviour; systemd dev tells them to FO. lovely
systemd  systemdsucks  fail  google  ntp  time 
july 2017 by jm
Everybody lies: how Google search reveals our darkest secrets | Technology | The Guardian
What can we learn about ourselves from the things we ask online? US data scientist Seth Stephens‑Davidowitz analysed anonymous Google search results, uncovering disturbing truths about [America's] desires, beliefs and prejudices


Fascinating. I find it equally interesting how flawed the existing methodologies for polling and surveying are, compared to Google's data, according to this
science  big-data  google  lying  surveys  polling  secrets  data-science  america  racism  searching 
july 2017 by jm
The Guardian view on patient data: we need a better approach | Editorial | Opinion | The Guardian

The use of privacy law to curb the tech giants in this instance, or of competition law in the case of the EU’s dispute with Google, both feel slightly maladapted. They do not address the real worry. It is not enough to say that the algorithms DeepMind develops will benefit patients and save lives. What matters is that they will belong to a private monopoly which developed them using public resources. If software promises to save lives on the scale that drugs now can, big data may be expected to behave as big pharma has done. We are still at the beginning of this revolution and small choices now may turn out to have gigantic consequences later. A long struggle will be needed to avoid a future of digital feudalism. Dame Elizabeth’s report is a welcome start.


Hear hear.
privacy  law  uk  nhs  data  google  deepmind  healthcare  tech  open-source 
july 2017 by jm
AIY Projects Voice Kit
This looks nifty!
This project demonstrates how to get a natural language recognizer up and running and connect it to the Google Assistant. Along with everything the Google Assistant already does, you can add your own question and answer pairs. All in a handy little cardboard cube, powered by a Raspberry Pi.


(via sergio)
voice  google  aiy-projects  cardboard  hacks  raspberry-pi 
may 2017 by jm
Towards true continuous integration – Netflix TechBlog – Medium
Netflix discuss how they handle the eternal dependency-management problem which arises with lots of microservices:
Using the monorepo as our requirements specification, we began exploring alternative approaches to achieving the same benefits. What are the core problems that a monorepo approach strives to solve? Can we develop a solution that works within the confines of a traditional binary integration world, where code is shared? Our approach, while still experimental, can be distilled into three key features:

Publisher feedback — provide the owner of shared code fast feedback as to which of their consumers they just broke, both direct and transitive. Also, allow teams to block releases based on downstream breakages. Currently, our engineering culture puts sole responsibility on consumers to resolve these issues. By giving library owners feedback on the impact they have to the rest of Netflix, we expect them to take on additional responsibility.

Managed source — provide consumers with a means to safely increment library versions automatically as new versions are released. Since we are already testing each new library release against all downstreams, why not bump consumer versions and accelerate version adoption, safely.

Distributed refactoring — provide owners of shared code a means to quickly find and globally refactor consumers of their API. We have started by issuing pull requests en masse to all Git repositories containing a consumer of a particular Java API. We’ve run some early experiments and expect to invest more in this area going forward.


What I find interesting is that Amazon dealt effectively with the first two many years ago, in the form of their "Brazil" build system, and Google do the latter (with Refaster?). It would be amazing to see such a system released into an open source form, but maybe it's just too heavyweight for anyone other than a giant software company on the scale of a Google, Netflix or Amazon.
brazil  amazon  build  microservices  dependencies  coding  monorepo  netflix  google  refaster 
may 2017 by jm
'What’s your ML Test Score? A rubric for ML production systems'
'Using machine learning in real-world production systems is complicated by a host of issues not found in small toy examples or even large offline research experiments. Testing and monitoring are key considerations for assessing the production-readiness of an ML system. But how much testing and monitoring is enough? We present an ML Test Score rubric based on a set of actionable tests to help quantify these issues.'

Google paper on testable machine learning systems.
machine-learning  testing  ml  papers  google 
april 2017 by jm
Unroll.me sold your data to Uber
'Uber devoted teams to so-called competitive intelligence, purchasing data from Slice Intelligence, which collected customers' emailed Lyft receipts via Unroll.me and sold the data to Uber'.

Also: 'Unroll.me allegedly "kept a copy of every single email that you sent or received" in "poorly secured S3 buckets"': https://news.ycombinator.com/item?id=14180463

Unroll.me CEO: 'felt bad “to see that some of our users were upset to learn about how we monetise our free service”.'
https://www.theguardian.com/technology/2017/apr/24/unrollme-mail-unsubscription-service-heartbroken-sells-user-inbox-data-slice
uber  unroll.me  gmail  google  privacy  data-protection  lyft  scumbags  slice-intelligence 
april 2017 by jm
Build a Better Monster: Morality, Machine Learning, and Mass Surveillance

We built the commercial internet by mastering techniques of persuasion and surveillance that we’ve extended to billions of people, including essentially the entire population of the Western democracies. But admitting that this tool of social control might be conducive to authoritarianism is not something we’re ready to face. After all, we're good people. We like freedom. How could we have built tools that subvert it?

As Upton Sinclair said, “It is difficult to get a man to understand something, when his salary depends on his not understanding it.”

I contend that there are structural reasons to worry about the role of the tech industry in American political life, and that we have only a brief window of time in which to fix this.
advertising  facebook  google  internet  politics  surveillance  democracy  maciej-ceglowski  talks  morality  machine-learning 
april 2017 by jm
How Google Book Search Got Lost – Backchannel
There are plenty of other explanations for the dampening of Google’s ardor: The bad taste left from the lawsuits. The rise of shiny and exciting new ventures with more immediate payoffs. And also: the dawning realization that Scanning All The Books, however useful, might not change the world in any fundamental way.
books  reading  google  library  lawsuits  legal  scanning  book-search  search 
april 2017 by jm
Research Blog: Federated Learning: Collaborative Machine Learning without Centralized Training Data
Great stuff from Google - this is really nifty stuff for large-scale privacy-preserving machine learning usage:

It works like this: your device downloads the current model, improves it by learning from data on your phone, and then summarizes the changes as a small focused update. Only this update to the model is sent to the cloud, using encrypted communication, where it is immediately averaged with other user updates to improve the shared model. All the training data remains on your device, and no individual updates are stored in the cloud.

Federated Learning allows for smarter models, lower latency, and less power consumption, all while ensuring privacy. And this approach has another immediate benefit: in addition to providing an update to the shared model, the improved model on your phone can also be used immediately, powering experiences personalized by the way you use your phone.

Papers:
https://arxiv.org/pdf/1602.05629.pdf , https://arxiv.org/pdf/1610.05492.pdf
google  ml  machine-learning  training  federated-learning  gboard  models  privacy  data-privacy  data-protection 
april 2017 by jm
The Uber Bombshell About to Drop
Alphabet's IP theft allegations regarding Waymo, Otto and Anthony Levandowski are pretty hardcore
alphabet  google  uber  lawsuits  ip  waymo 
march 2017 by jm
Annotated tenets of SRE
A google SRE annotates the Google SRE book with his own thoughts. The source material is great, but the commentary improves it alright.

Particularly good for the error budget concept.

Also: when did "runbooks" become "playbooks"? Don't particularly care either way, but needless renaming is annoying.
runbooks  playbooks  ops  google  sre  error-budget 
march 2017 by jm
Zeynep Tufekci: "Youtube is a crucial part of the misinfomation ecology"
This is so spot on. I hope Google address this issue --
YouTube is crucial part of the misinformation ecology. Not just a demand issue: its recommender algo is a "go down the rabbit hole" machine.
You watch a Trump rally: you get suggested white supremacist videos, sometimes, auto-playing. Like a gateway drug theory of engagement.
I've seen this work across the political spectrum. YouTube algo has discovered out-flanking and "red-pilling" is.. engaging. So it does.


This thread was in response to this Buzzfeed article on the same topic: https://www.buzzfeed.com/josephbernstein/youtube-has-become-the-content-engine-of-the-internets-dark
youtube  nazis  alt-right  lies  politics  google  misinformation  recommendations  ai  red-pill 
february 2017 by jm
'Software Engineering at Google'
20 pages of Google's software dev practices, with emphasis on the build system (since it was written by the guy behind Blaze). Naturally, some don't make a whole lot of sense outside of Google, but still some good stuff here
development  engineering  google  papers  software  coding  best-practices 
february 2017 by jm
Google - Site Reliability Engineering
The Google SRE book is now online, for free
sre  google  ops  books  reading 
january 2017 by jm
'Rules of Machine Learning: Best Practices for ML Engineering' from Martin Zinkevich
'This document is intended to help those with a basic knowledge of machine learning get the benefit of best practices in machine learning from around Google. It presents a style for machine learning, similar to the Google C++ Style Guide and other popular guides to practical programming. If you have taken a class in machine learning, or built or worked on a machine­-learned model, then you have the necessary background to read this document.'

Full of good tips, if you wind up using ML in a production service.
machine-learning  ml  google  production  coding  best-practices 
january 2017 by jm
How a Machine Learns Prejudice - Scientific American
Agreed, this is a big issue.
If artificial intelligence takes over our lives, it probably won’t involve humans battling an army of robots that relentlessly apply Spock-like logic as they physically enslave us. Instead, the machine-learning algorithms that already let AI programs recommend a movie you’d like or recognize your friend’s face in a photo will likely be the same ones that one day deny you a loan, lead the police to your neighborhood or tell your doctor you need to go on a diet. And since humans create these algorithms, they're just as prone to biases that could lead to bad decisions—and worse outcomes.
These biases create some immediate concerns about our increasing reliance on artificially intelligent technology, as any AI system designed by humans to be absolutely "neutral" could still reinforce humans’ prejudicial thinking instead of seeing through it.
prejudice  bias  machine-learning  ml  data  training  race  racism  google  facebook 
january 2017 by jm
Leap Smear  |  Public NTP  |  Google Developers
Google offers public NTP service with leap smearing -- I didn't realise! (thanks Keith)
google  clocks  time  ntp  leap-smearing  leap-second  ops 
january 2017 by jm
Slicer: Auto-sharding for datacenter applications
Paper from Google describing one of their internal building block services:
A general purpose sharding service. I normally think of sharding as something that happens within a (typically data) service, not as a general purpose infrastructure service. What exactly is Slicer then? It has two key components: a data plane that acts as an affinity-aware load balancer, with affinity managed based on application-specified keys; and a control plane that monitors load and instructs applications processes as to which keys they should be serving at any one point in time.  In this way, the decisions regarding how to balance keys across application instances can be outsourced to the Slicer service rather than building this logic over and over again for each individual back-end service. Slicer is focused exclusively on the problem of balancing load across a given set of  backend tasks, other systems are responsible for adding and removing tasks.


interesting.
google  sharding  slicer  architecture  papers 
december 2016 by jm
Founder of Google X has no concept of how machine learning as policing tool risks reinforcing implicit bias
This is shocking:
At the end of the panel on artificial intelligence, a young black woman asked [Sebastian Thrun, CEO of the education startup Udacity, who is best known for founding Google X] whether bias in machine learning “could perpetuate structural inequality at a velocity much greater than perhaps humans can.” She offered the example of criminal justice, where “you have a machine learning tool that can identify criminals, and criminals may disproportionately be black because of other issues that have nothing to do with the intrinsic nature of these people, so the machine learns that black people are criminals, and that’s not necessarily the outcome that I think we want.”
In his reply, Thrun made it sound like her concern was one about political correctness, not unconscious bias. “Statistically what the machines do pick up are patterns and sometimes we don’t like these patterns. Sometimes they’re not politically correct,” Thrun said. “When we apply machine learning methods sometimes the truth we learn really surprises us, to be honest, and I think it’s good to have a dialogue about this.”


"the truth"! Jesus. We are fucked
google  googlex  bias  racism  implicit-bias  machine-learning  ml  sebastian-thrun  udacity  inequality  policing  crime 
october 2016 by jm
'Jupiter rising: A decade of Clos topologies and centralized control in Google’s datacenter networks'
Love the 'decade of' dig at FB and Amazon -- 'we were doing it first' ;)

Great details on how Google have built out and improved their DC networking. Includes a hint that they now use DCTCP (datacenter-optimized TCP congestion control) on their internal hosts....
datacenter  google  presentation  networks  networking  via:irldexter  ops  sre  clos-networks  fabrics  switching  history  datacenters 
october 2016 by jm
Google and Monotype launch Noto, an open-source typeface family for all the world’s languages
Great font factoid: 'The name “Noto” comes from the little squares that show when a font is not supported by a computer. This are often referred to as “tofu”, because of their shape, therefore the font is short for No Tofu.'
tofu  fonts  i18n  google  design  typography  unicode 
october 2016 by jm
[net-next,14/14] tcp_bbr: add BBR congestion control
This commit implements a new TCP congestion control algorithm: BBR
(Bottleneck Bandwidth and RTT). A detailed description of BBR will be
published in ACM Queue, Vol. 14 No. 5, September-October 2016, as
"BBR: Congestion-Based Congestion Control".

BBR has significantly increased throughput and reduced latency for
connections on Google's internal backbone networks and google.com and
YouTube Web servers.

BBR requires only changes on the sender side, not in the network or
the receiver side. Thus it can be incrementally deployed on today's
Internet, or in datacenters. [....]

Signed-off-by: Van Jacobson <vanj@google.com>
google  linux  tcp  ip  congestion-control  bufferbloat  patches  algorithms  rtt  bandwidth  youtube  via:bradfitz 
september 2016 by jm
did Google blacklist their own site?

The leading theory that I've seen going around is that Google is actually blocking all links in any FeedBurner feed, because it's a violation of its own terms of service. Seriously.

The link-shortener "goo.gl", run by Google, is blocking all URLs generated by Feedburner, run by Google. pic.twitter.com/IR7wrlv6xj
— Great Again Also (@agentdero) September 6, 2016

That's because Google's URL shortener's terms of service bans "URL re-directors" and it appears that the genius engineers at Google have decided that Google-run FeedBurner is nothing more than a URL re-director and killed off everyone's links without notice or explanation. This despite the fact that they're the same damn company and that FeedBurner unilaterally moved everyone's RSS feed to use Goo.gl links in the first place.
urls  url-shorteners  history  goo.gl  google  feedburner  redirectors  rss  links 
september 2016 by jm
How a Japanese cucumber farmer is using deep learning and TensorFlow
Unfortunately the usual ML problem arises at the end:
One of the current challenges with deep learning is that you need to have a large number of training datasets. To train the model, Makoto spent about three months taking 7,000 pictures of cucumbers sorted by his mother, but it’s probably not enough. "When I did a validation with the test images, the recognition accuracy exceeded 95%. But if you apply the system with real use cases, the accuracy drops down to about 70%. I suspect the neural network model has the issue of "overfitting" (the phenomenon in neural network where the model is trained to fit only to the small training dataset) because of the insufficient number of training images."


In other words, as with ML since we were using it in SpamAssassin, maintaining the training corpus becomes a really big problem. :(
google  machine-learning  tensorflow  cucumbers  deep-learning  ml 
september 2016 by jm
Google Intrusion Detection Problems
'We have lost access to multiple critical data stores because Google has an automated threat detection system that is incapable of handling false positives.'
google  security  cloud  false-positives  intrusion-detection  automation  fail 
august 2016 by jm
Push notifications delayed, Hearbeat Interval not reliable - Google Product Forums
Good thread on GCM notifications and their interactions with NAT -- they are delivered over a single TCP connection to port 5228 to the google servers, kept alive, and NAT timeouts can hang the conn resulting in delayed notifications.

Particularly useful is the *#*#426#*#* dial code, which displays a log screen on Android devices with GCM debugging info.
android  gcm  google  push-notifications  nat  tcp 
june 2016 by jm
Differential Privacy
Apple have announced they plan to use it; Google use a DP algorithm called RAPPOR in Chrome usage statistics. In summary: "novel privacy technology that allows inferring statistics about populations while preserving the privacy of individual users".
apple  privacy  anonymization  google  rappor  algorithms  sampling  populations  statistics  differential-privacy 
june 2016 by jm
Why the Very Silly Oracle v. Google Trial Actually Matters
If it’s illegal to write clean room implementations of APIs, then no one has clean hands. The now-shelved open source project Apache Harmony, like Android, reimplemented Java SE, and tech giant IBM contributed code to that project. Oracle itself built its business off a proprietary implementation of SQL, which was created by IBM. The proposition “Reimplementations of APIs are infringements” creates a recursive rabbit hole of liability that spans across the industry. Even the very 37 Java APIs at issue in this trial contain reimplementations of other APIs. Google witness Joshua Bloch—who, while at Sun Microsystems, wrote many of the Java APIs—testified that specific Java APIs are reimplementations of other APIs from Perl 5 and the C programming language.
apis  fair-use  copyright  ip  android  java  google  oracle  law 
may 2016 by jm
Revealed: How copyright law is being misused to remove material from the internet
Automated DMCA takedowns used to fraudulently censor online content.
In fact, no copyright infringement had occurred at all. Instead, something weirder had happened. At some point after Narey posted her comments on Mumsnet, someone had copied the entire text of one of her posts and pasted it, verbatim, to a spammy blog titled “Home Improvement Tips and Tricks”. The post, headlined “Buildteam interior designers” was backdated to September 14 2015, three months before Narey had written it, and was signed by a “Douglas Bush” of South Bend, Indiana. The website was registered to someone quite different, though: Muhammed Ashraf, from Faisalabad, Pakistan.

Quite why Douglas Bush or Muhammed Ashraf would be reviewing a builder based in Clapham is not explained in “his” post. BuildTeam says it has no idea why Narey’s review was reposted, but that it had nothing to do with it. “At no material times have we any knowledge of why this false DCMA take down was filed, nor have we contracted any reputation management firms, or any individual or a group to take such action on our behalf. Finally, and in conjunction to the above, we have never spoken with a ‘Douglas Bush,’ or a ‘Muhammed Ashraf.’”
fraud  censorship  mumsnet  dmca  takedowns  google  automation  copyright 
may 2016 by jm
Uploading, Resizing and Serving images with Google Cloud Platform — Google Cloud Platform — Community — Medium
Cropping, scaling, and resizing images on the fly, for free, with GAE. Great service, wish AWS had something similar
App Engine API has a very useful function to extract a magic URL for serving the images when uploaded into the Cloud Storage. get_serving_url() returns a URL that serves the image in a format that allows dynamic resizing and cropping, so you don’t need to store different image sizes on the server. Images are served with low latency from a highly optimized, cookieless infrastructure.
gae  google  app-engine  images  scaling  cropping  image-processing  thumbnails  google-cloud 
may 2016 by jm
CoreOS and Prometheus: Building monitoring for the next generation of cluster infrastructure
Ooh, this is a great plan. :applause:
Enabling GIFEE — Google Infrastructure for Everyone Else — is a primary mission at CoreOS, and open source is key to that goal. [....]

Prometheus was initially created to handle monitoring and alerting in modern microservice architectures. It steadily grew to fit the wider idea of cloud native infrastructure. Though it was not intentional in the original design, Prometheus and Kubernetes conveniently share the key concept of identifying entities by labels, making the semantics of monitoring Kubernetes clusters simple. As we discussed previously on this blog, Prometheus metrics formed the basis of our analysis of Kubernetes scheduler performance, and led directly to improvements in that code. Metrics are essential not just to keep systems running, but also to analyze and improve application behavior.

All things considered, Prometheus was an obvious choice for the next open source project CoreOS wanted to support and improve with internal developers committed to the code base.
monitoring  coreos  prometheus  metrics  clustering  ops  gifee  google  kubernetes 
may 2016 by jm
Google Cloud Status
Ouch, multi-region outage:
At 14:50 Pacific Time on April 11th, our engineers removed an unused GCE IP block from our network configuration, and instructed Google’s automated systems to propagate the new configuration across our network. By itself, this sort of change was harmless and had been performed previously without incident. However, on this occasion our network configuration management software detected an inconsistency in the newly supplied configuration. The inconsistency was triggered by a timing quirk in the IP block removal - the IP block had been removed from one configuration file, but this change had not yet propagated to a second configuration file also used in network configuration management. In attempting to resolve this inconsistency the network management software is designed to ‘fail safe’ and revert to its current configuration rather than proceeding with the new configuration. However, in this instance a previously-unseen software bug was triggered, and instead of retaining the previous known good configuration, the management software instead removed all GCE IP blocks from the new configuration and began to push this new, incomplete configuration to the network.

One of our core principles at Google is ‘defense in depth’, and Google’s networking systems have a number of safeguards to prevent them from propagating incorrect or invalid configurations in the event of an upstream failure or bug. These safeguards include a canary step where the configuration is deployed at a single site and that site is verified to still be working correctly, and a progressive rollout which makes changes to only a fraction of sites at a time, so that a novel failure can be caught at an early stage before it becomes widespread. In this event, the canary step correctly identified that the new configuration was unsafe. Crucially however, a second software bug in the management software did not propagate the canary step’s conclusion back to the push process, and thus the push system concluded that the new configuration was valid and began its progressive rollout.
multi-region  outages  google  ops  postmortems  gce  cloud  ip  networking  cascading-failures  bugs 
april 2016 by jm
Dan Luu reviews the Site Reliability Engineering book
voluminous! still looks great, looking forward to reading our copy (via Tony Finch)
via:fanf  books  reading  devops  ops  google  sre  dan-luu 
april 2016 by jm
Wired on the new O'Reilly SRE book
"Site Reliability Engineering: How Google Runs Production Systems", by Chris Jones, Betsy Beyer, Niall Richard Murphy, Jennifer Petoff. Go Niall!
google  sre  niall-murphy  ops  devops  oreilly  books  toread  reviews 
april 2016 by jm
Nest Reminds Customers That Ownership Isn't What It Used to Be
EFF weigh in on the internet of shit:
Customers likely didn't expect that, 18 months after the last Revolv Hubs were sold, instead of getting more upgrades, the device would be intentionally, permanently, and completely disabled. ....
Nest Labs and Google are both subsidiaries of Alphabet, Inc., and bricking the Hub sets a terrible precedent for a company with ambitions to sell self-driving cars, medical devices, and other high-end gadgets that may be essential to a person’s livelihood or physical safety.
nest  legal  tech  google  alphabet  internetofshit  iot  law 
april 2016 by jm
Is anyone concerned about the future of Nest?
wow, looks like Nest is fucked:
As a Nest engineer, I won't say any numbers that aren't public, but this company is already on deathwatch. Once that happens, most people will quickly have shiny paperweights because it's a constant firefight keeping these systems up. We have $340M in revenue, not profit, against a ~$500M budget. No new products since the purchase, and sales/growth numbers are dire. Our budget deal expires soon, and all the good engineers on my teams have discreetly indicated they are going to flee once their golden handcuffs unlock (many have already left despite sacrificing a lot of money to do so).
Tony and his goons demand crazy timelines so much that "crunch time" has basically lost meaning. Just when your labor bears fruit, they swoop in, 180 the specs you just delivered on, then have the gall to call your team "incompetent" for not reading their mind and delivering on these brand-new specs. I waste most of my time in pointless meetings, or defending my teams so they don't flip their desks and walk out. People fall asleep in corners and cry in the bathrooms, health and marriages are suffering. Already the churn is insane, close to half the company if not more. Skilled engineers can tell the environment is toxic, so we're filling vacancies with mostly sub-par talent.
nest  google  business  dotcoms  churn  iot 
april 2016 by jm
Google's Nest killing off old devices
Google is making customers' existing devices useless, less than 2 years after the devices were available for sale, with only 2 months warning. This is one of the reasons I won't spend money on the Internet Of Things shitshow.

'"Which hardware will Google choose to intentionally brick next?" asks Arlo Gilbert. "If they stop supporting Android will they decide that the day after warranty expires that your phone will go dark? Is your Nexus device safe? What about your Nest fire alarm? What about your Dropcam? What about your Chromecast device?"'
iot  fail  google  alphabet  nest  revolv  home  shutdown 
april 2016 by jm
A Decade Of Container Control At Google
The big thing that can be gleaned from the latest paper out of Google on its container controllers is that the shift from bare metal to containers is a profound one – something that may not be obvious to everyone seeking containers as a better way – and we think cheaper way – of doing server virtualization and driving up server utilization higher. Everything becomes application-centric rather than machine-centric, which is the nirvana that IT shops have been searching for. The workload schedulers, cluster managers, and container controllers work together to get the right capacity to the application when it needs it, whether it is a latency-sensitive job or a batch job that has some slack in it, and all that the site recovery engineers and developers care about is how the application is performing and they can easily see that because all of the APIs and metrics coming out of them collect data at the application level, not on a per-machine basis. To do this means adopting containers, period. There is no bare metal at Google, and let that be a lesson to HPC shops or other hyperscalers or cloud builders that think they need to run in bare metal mode.
google  containers  kubernetes  borg  bare-metal  ops 
april 2016 by jm
GCM XMPP delivery receipt not always received - Google Groups
Good to know:
'GCM delivery receipts don't have an SLA at this time. Having your connection open longer will increase the odds that delivery receipts will arrive. 10 seconds seems a bit short. I'm glad it works. I would recommend longer like 10 min or an hour. The real design of this system is for persistent connections, hence connections that setup and tear down frequently will have difficulty receiving delivery receipts.'
gcm  xmpp  receipts  messaging  push-notifications  google 
march 2016 by jm
DeepMind founder Demis Hassabis on how AI will shape the future | The Verge
Good interview with Demis Hassabis on DeepMind, AlphaGo and AI:
I’d like to see AI-assisted science where you have effectively AI research assistants that do a lot of the drudgery work and surface interesting articles, find structure in vast amounts of data, and then surface that to the human experts and scientists who can make quicker breakthroughs. I was giving a talk at CERN a few months ago; obviously they create more data than pretty much anyone on the planet, and for all we know there could be new particles sitting on their massive hard drives somewhere and no-one’s got around to analyzing that because there’s just so much data. So I think it’d be cool if one day an AI was involved in finding a new particle.
ai  deepmind  google  alphago  demis-hassabis  cern  future  machine-learning 
march 2016 by jm
Maglev: A Fast and Reliable Software Network Load Balancer
Maglev is Google’s network load balancer. It is a large distributed software system that runs on commodity Linux servers. Unlike traditional hardware network load balancers, it does not require a specialized physical rack deployment, and its capacity can be easily adjusted by adding or removing servers. Network routers distribute packets evenly to the Maglev machines via Equal Cost Multipath (ECMP); each Maglev machine then matches the packets to their corresponding services and spreads them evenly to the service endpoints. To accommodate high and ever-increasing traffic, Maglev is specifically optimized for packet processing performance. A single Maglev machine is able to saturate a 10Gbps link with small packets. Maglev is also equipped with consistent hashing and connection tracking features, to minimize the negative impact of unexpected faults and failures on connection-oriented protocols. Maglev has been serving Google's traffic since 2008. It has sustained the rapid global growth of Google services, and it also provides network load balancing for Google Cloud Platform.


Something we argued for quite a lot in Amazon, back in the day....
google  paper  scale  ecmp  load-balancing  via:conall  maglev  lbs 
february 2016 by jm
The Nyquist theorem and limitations of sampling profilers today, with glimpses of tracing tools from the future
Awesome post from Dan Luu with data from Google:
The cause [of some mystery widespread 250ms hangs] was kernel throttling of the CPU for processes that went beyond their usage quota. To enforce the quota, the kernel puts all of the relevant threads to sleep until the next multiple of a quarter second. When the quarter-second hand of the clock rolls around, it wakes up all the threads, and if those threads are still using too much CPU, the threads get put back to sleep for another quarter second. The phase change out of this mode happens when, by happenstance, there aren’t too many requests in a quarter second interval and the kernel stops throttling the threads. After finding the cause, an engineer found that this was happening on 25% of disk servers at Google, for an average of half an hour a day, with periods of high latency as long as 23 hours. This had been happening for three years. Dick Sites says that fixing this bug paid for his salary for a decade. This is another bug where traditional sampling profilers would have had a hard time. The key insight was that the slowdowns were correlated and machine wide, which isn’t something you can see in a profile.
debugging  performance  visualization  instrumentation  metrics  dan-luu  latency  google  dick-sites  linux  scheduler  throttling  kernel  hangs 
february 2016 by jm
View & diagnose Google Cloud Messaging (GCM) statistics
Looks like GCM now offers a way to determine if a message got delivered, via the GCM diagnostics console
gcm  google  push-notifications  android  messaging 
february 2016 by jm
Exclusive: Snowden intelligence docs reveal UK spooks' malware checklist / Boing Boing
This is an excellent essay from Cory Doctorow on mass surveillance in the post-Snowden era, and the difference between HUMINT and SIGINT. So much good stuff, including this (new to me) cite for, "Goodhart's law", on secrecy as it affects adversarial classification:
The problem with this is that once you accept this framing, and note the happy coincidence that your paymasters just happen to have found a way to spy on everyone, the conclusion is obvious: just mine all of the data, from everyone to everyone, and use an algorithm to figure out who’s guilty. The bad guys have a Modus Operandi, as anyone who’s watched a cop show knows. Find the MO, turn it into a data fingerprint, and you can just sort the firehose’s output into ”terrorist-ish” and ”unterrorist-ish.”

Once you accept this premise, then it’s equally obvious that the whole methodology has to be kept from scrutiny. If you’re depending on three ”tells” as indicators of terrorist planning, the terrorists will figure out how to plan their attacks without doing those three things.

This even has a name: Goodhart's law. "When a measure becomes a target, it ceases to be a good measure." Google started out by gauging a web page’s importance by counting the number of links they could find to it. This worked well before they told people what they were doing. Once getting a page ranked by Google became important, unscrupulous people set up dummy sites (“link-farms”) with lots of links pointing at their pages.
adversarial-classification  classification  surveillance  nsa  gchq  cory-doctorow  privacy  snooping  goodharts-law  google  anti-spam  filtering  spying  snowden 
february 2016 by jm
Seesaw: scalable and robust load balancing from Google
After evaluating a number of platforms, including existing open source projects, we were unable to find one that met all of our needs and decided to set about developing a robust and scalable load balancing platform. The requirements were not exactly complex - we needed the ability to handle traffic for unicast and anycast VIPs, perform load balancing with NAT and DSR (also known as DR), and perform adequate health checks against the backends. Above all we wanted a platform that allowed for ease of management, including automated deployment of configuration changes.

One of the two existing platforms was built upon Linux LVS, which provided the necessary load balancing at the network level. This was known to work successfully and we opted to retain this for the new platform. Several design decisions were made early on in the project — the first of these was to use the Go programming language, since it provided an incredibly powerful way to implement concurrency (goroutines and channels), along with easy interprocess communication (net/rpc). The second was to implement a modular multi-process architecture. The third was to simply abort and terminate a process if we ended up in an unknown state, which would ideally allow for failover and/or self-recovery.
seesaw  load-balancers  google  load-balancing  vips  anycast  nat  lbs  go  ops  networking 
january 2016 by jm
"Hidden Technical Debt in Machine-Learning Systems" [pdf]
Another great paper about from Google, talking about the tradeoffs that must be considered in practice over the long term with running a complex ML system in production.
technical-debt  ml  machine-learning  ops  software  production  papers  pdf  google 
december 2015 by jm
re:Work - The five keys to a successful Google team
We learned that there are five key dynamics that set successful teams apart from other teams at Google:
Psychological safety: Can we take risks on this team without feeling insecure or embarrassed?
Dependability: Can we count on each other to do high quality work on time?
Structure & clarity: Are goals, roles, and execution plans on our team clear?
Meaning of work: Are we working on something that is personally important for each of us?
Impact of work: Do we fundamentally believe that the work we’re doing matters?
teams  google  culture  work  management  productivity  hr 
november 2015 by jm
User data plundering by Android and iOS apps is as rampant as you suspected
An app from Drugs.com, meanwhile, sent the medical search terms "herpes" and "interferon" to five domains, including doubleclick.net, googlesyndication.com, intellitxt.com, quantserve.com, and scorecardresearch.com, although those domains didn't receive other personal information.
privacy  security  google  tracking  mobile  phones  search  pii 
november 2015 by jm
Google Cloud Platform HTTP/HTTPS Load Balancing
GCE's LB product is pretty nice -- HTTP/2 support, and a built-in URL mapping feature (presumably based on how Google approach that problem internally, I understand they take that approach). I'm hoping AWS are taking notes for the next generation of ELB, if that ever happens
elb  gce  google  load-balancing  http  https  spdy  http2  urls  request-routing  ops  architecture  cloud 
october 2015 by jm
Google tears Symantec a new one on its CA failure
Symantec are getting a crash course in how to conduct an incident post-mortem to boot:
More immediately, we are requesting of Symantec that they further update their public incident report with:
A post-mortem analysis that details why they did not detect the additional certificates that we found.
Details of each of the failures to uphold the relevant Baseline Requirements and EV Guidelines and what they believe the individual root cause was for each failure.
We are also requesting that Symantec provide us with a detailed set of steps they will take to correct and prevent each of the identified failures, as well as a timeline for when they expect to complete such work. Symantec may consider this latter information to be confidential and so we are not requesting that this be made public.
google  symantec  ev  ssl  certificates  ca  security  postmortems  ops 
october 2015 by jm
Chromecast Speakers
Supports Spotify -- totally getting one of these
spotify  speakers  music  home  google  gadgets  toget 
october 2015 by jm
Google Cloud Shell
your command line environment in the [Google] Cloud. This feature enables you to connect to a shell environment on a virtual machine, pre-loaded with the tools you need to easily run commands to develop, deploy and manage your projects. Currently, Cloud Shell is an f1-micro Google Compute Engine machine that exposes a Debian-based development environment. You are also assigned 5 GB of standard persistent disk space as the home disk so you can store files between sessions.


It's also free. This is a great idea -- handy both for beginners getting to grips with GoogCloud and for experts looking for a quite dev env to hack with. I wish AWS had something similar.
google  cloud  shell  google-cloud  gcs  gce  cli  tools 
october 2015 by jm
Brotli: a new compression algorithm for the internet from Google
While Zopfli is Deflate-compatible, Brotli is a whole new data format. This new format allows us to get 20–26% higher compression ratios over Zopfli. In our study ‘Comparison of Brotli, Deflate, Zopfli, LZMA, LZHAM and Bzip2 Compression Algorithms’ we show that Brotli is roughly as fast as zlib’s Deflate implementation. At the same time, it compresses slightly more densely than LZMA and bzip2 on the Canterbury corpus. The higher data density is achieved by a 2nd order context modeling, re-use of entropy codes, larger memory window of past data and joint distribution codes. Just like Zopfli, the new algorithm is named after Swiss bakery products. Brötli means ‘small bread’ in Swiss German.
brotli  zopfli  deflate  gzip  compression  algorithms  swiss  google 
september 2015 by jm
Using Samsung's Internet-Enabled Refrigerator for Man-in-the-Middle Attacks
Whilst the fridge implements SSL, it FAILS to validate SSL certificates, thereby enabling man-in-the-middle attacks against most connections. This includes those made to Google's servers to download Gmail calendar information for the on-screen display. So, MITM the victim's fridge from next door, or on the road outside and you can potentially steal their Google credentials.


The Internet of Insecure Things strikes again.
iot  security  fridges  samsung  fail  mitm  ssl  tls  google  papers  defcon 
september 2015 by jm
What does it take to make Google work at scale? [slides]
50-slide summary of Google's stack, compared vs Facebook, Yahoo!, and open-source-land, with the odd interesting architectural insight
google  architecture  slides  scalability  bigtable  spanner  facebook  gfs  storage 
august 2015 by jm
The reusable holdout: Preserving validity in adaptive data analysis
Useful stats hack from Google: "We show how to safely reuse a holdout data set many times to validate the results of adaptively chosen analyses."
statistics  google  reusable-holdout  training  ml  machine-learning  data-analysis  holdout  corpus  sampling 
august 2015 by jm
Inside the sad, expensive failure of Google+
"It was clear if you looked at the per user metrics, people weren’t posting, weren't returning and weren’t really engaging with the product," says one former employee. "Six months in, there started to be a feeling that this isn’t really working." Some lay the blame on the top-down structure of the Google+ department and a leadership team that viewed success as the only option for the social network. Failures and disappointing data were not widely discussed. "The belief was that we were always just one weird feature away from the thing taking off," says the same employee.
google  google+  failures  post-mortems  business  facebook  social-media  fail  bureaucracy  vic-gundotra 
august 2015 by jm
New study shows Spain’s “Google tax” has been a disaster for publishers
A study commissioned by Spanish publishers has found that a new intellectual property law passed in Spain last year, which charges news aggregators like Google for showing snippets and linking to news stories, has done substantial damage to the Spanish news industry.

In the short-term, the study found, the law will cost publishers €10 million, or about $10.9 million, which would fall disproportionately on smaller publishers. Consumers would experience a smaller variety of content, and the law "impedes the ability of innovation to enter the market." The study concludes that there's no "theoretical or empirical justification" for the fee.
google  news  publishing  google-tax  spain  law  aggregation  snippets  economics 
august 2015 by jm
Why Google's Deep Dream Is Future Kitsch
Deep Dream estranges us from our fears, perhaps, but it doesn't make them go away. It's easy to discuss Deep Dream as an independent creature, a foreign intelligence that we interact with for fun. Yet like all kitsch, it comes straight back to its creators.
kitsch  deep-dream  art  graphics  google  inceptionism 
july 2015 by jm
Google Flights
oh look, Google has a flight search engine! I had no idea
google  flights  travel  search  holidays 
july 2015 by jm
Self-driving cars drive like your grandma
'Honestly, I don't think it will take long for other drivers to realize that self-driving cars are "easy targets" in traffic.' -- also, an insurance expert suggests that self-driving cars won't increase premiums
driving  google  cars  traffic  social  insurance 
july 2015 by jm
Google Cloud Platform announces new Container Registry
Yay. Sensible Docker registry pricing at last. Given the high prices, rough edges and slow performance of the other registry offerings, I'm quite happy to see this.
Google Container Registry helps make it easy for you to store your container images in a private and encrypted registry, built on Cloud Platform. Pricing for storing images in Container Registry is simple: you only pay Google Cloud Storage costs. Pushing images is free, and pulling Docker images within a Google Cloud Platform region is free (Cloud Storage egress cost when outside of a region).

Container Registry is now ready for production use:

* Encrypted and Authenticated - Your container images are encrypted at rest, and access is authenticated using Cloud Platform OAuth and transmitted over SSL
* Fast - Container Registry is fast and can handle the demands of your application, because it is built on Cloud Storage and Cloud Networking.
* Simple - If you’re using Docker, just tag your image with a gcr.io tag and push it to the registry to get started.  Manage your images in the Google Developers Console.
* Local - If your cluster runs in Asia or Europe, you can now store your images in ASIA or EU specific repositories using asia.gcr.io and eu.gcr.io tags.
docker  registry  google  gcp  containers  cloud-storage  ops  deployment 
june 2015 by jm
Inceptionism: Going Deeper into Neural Networks
This is amazing, and a little scary.
If we choose higher-level layers, which identify more sophisticated features in images, complex features or even whole objects tend to emerge. Again, we just start with an existing image and give it to our neural net. We ask the network: “Whatever you see there, I want more of it!” This creates a feedback loop: if a cloud looks a little bit like a bird, the network will make it look more like a bird. This in turn will make the network recognize the bird even more strongly on the next pass and so forth, until a highly detailed bird appears, seemingly out of nowhere.

An enlightening comment from the G+ thread:

This is the most fun we've had in the office in a while. We've even made some of those 'Inceptionistic' art pieces into giant posters. Beyond the eye candy, there is actually something deeply interesting in this line of work: neural networks have a bad reputation for being strange black boxes that that are opaque to inspection. I have never understood those charges: any other model (GMM, SVM, Random Forests) of any sufficient complexity for a real task is completely opaque for very fundamental reasons: their non-linear structure makes it hard to project back the function they represent into their input space and make sense of it. Not so with backprop, as this blog post shows eloquently: you can query the model and ask what it believes it is seeing or 'wants' to see simply by following gradients. This 'guided hallucination' technique is very powerful and the gorgeous visualizations it generates are very evocative of what's really going on in the network.
art  machine-learning  algorithm  inceptionism  research  google  neural-networks  learning  dreams  feedback  graphics 
june 2015 by jm
Google Cloud Platform Blog: A look inside Google’s Data Center Networks
We used three key principles in designing our datacenter networks:
We arrange our network around a Clos topology, a network configuration where a collection of smaller (cheaper) switches are arranged to provide the properties of a much larger logical switch.
We use a centralized software control stack to manage thousands of switches within the data center, making them effectively act as one large fabric.
We build our own software and hardware using silicon from vendors, relying less on standard Internet protocols and more on custom protocols tailored to the data center.
clos-networks  google  data-centers  networking  sdn  gcp  ops 
june 2015 by jm
Google Photos - Can I get out?
what's the export policy for Google's new Photos service? pretty good, it turns out
google  export  data  google-photos  photos  archive  history  storage 
june 2015 by jm
« earlier      
per page:    204080120160

related tags

3d  3d-printing  3g  4chan  4g  99th-percentile  abseil  absurd  abuse  acm  ad-injectors  adobe  adrian-weckler  ads  adsense  adversarial-classification  advertising  adwords  aggregation  ai  aiy-projects  al3x  algorithm  algorithms  allen-curve  alphabet  alphago  alt-right  amazon  america  android  angular  annotations  anonymization  ansible  anti-spam  antispam  anycast  aosp  api  apis  app-engine  appengine  apple  application-shortcuts  apps  architecture  archive  art  asl2  assholes  atscript  audio  australia  authentication  authoritarianism  authy  autocomplete  automation  aws  azure  b-trees  backreferences  backup  ballymascanlon  bandwidth  bare-metal  bay-area  bayes  bazel  behavioral  beheadings  bell-curve  belle-du-jour  ben-treynor  benchmarks  best-practices  beta  bias  big-data  bigquery  bigtable  binary  biology  birdsong  blacklist  blaze  blenders  blink  blocking  blogging  blogs  boards  boilerplate  book  book-search  books  borg  bots  brainteasers  brazil  breaking-news  brotli  browser  browsers  bruce-schneier  bubble-race-chart  buffer-overflows  bufferbloat  bugs  build  build-tools  building  bureaucracy  business  business-models  byte  c  c++  c++17  ca  caches  calendar  canada  canary-requests  cap  capnproto  cardboard  cars  cascading-failures  causal-inference  censorship  cep  cern  certificates  certs  chilling-effects  china  chrome  churn  cisco  classification  classifiers  clearcase  cli  clocks  clos-networks  cloud  cloud-computing  cloud-dataflow  cloud-storage  cluster-management  clustering  cnnic  code-validation  codec  coding  coding-standards  coe  colds  collaboration  commons  communication  competition  compression  computer-science  congestion-control  connected  consistency  consistent-hashing  containers  content  contracts  cookies  copyfight  copyright  corba  coreos  corporate-culture  corpus  correlation  cortana  cory-doctorow  costs  crazy  crime  cron  cropping  crypto  css  cucumbers  culture  daily-mail  dan-luu  dapper  dash  data  data-analysis  data-centers  data-privacy  data-processing  data-protection  data-retention  data-science  data-structures  database  databases  datacenter  datacenters  datalink  datasets  dataviz  ddos  dealextreme  debugging  deep-dream  deep-learning  deepmind  defamation  defcon  deflate  demis-hassabis  democracy  denmark  dependencies  deployment  design  development  devops  dick-sites  differential-privacy  dirt  disaster-recovery  discrimination  discussion  disk  disks  distance  distcomp  distributed  diy  dkim  dmca  dns  docker  docs  documentation  documents  dorking  dotcoms  double-irish  dpi  dr-slump  dreams  driving  dropbox  dtecnet  dvcs  dvr  dysaguria  dystopia  east-texas  ebooks  ec2  ecmp  economics  editing  editors  efficiency  eiffel  elb  emacs  email  embed  embedded  embedding  emergent  emoji  employment  encryption  encyclopedia-dramatica  end-to-end  enda-kenny  engineering  ensemble  equustek  eric-schmidt  eric-veach  error-budget  estimation  ethan-zuckerberg  etsy  ev  event-processing  eventual-consistency  exercises  exploits  exponential-time  export  extensions  external  f1  fabrics  facebook  facts  fail  failures  fair-use  fake-news  false-positives  fault-tolerance  federated-learning  feedback  feedburner  feudal-internet  fg  files  filesystems  filtering  fine-gael  firefox  flatbuffers  fleets  flights  flu  fonts  food  formats  formatting  foss  fox  france  fraud  free-software  freebsd  freedom  freedom-of-expression  fridges  froyo  funding  funny  future  gadgets  gae  game-day  games  gboard  gce  gchq  gcm  gcp  gcs  gdocs  gems  gender  geolocation  gfs  gifee  git  glass  gmail  gmaps  go  god  goo.gl  goodharts-law  google  google+  google-calendar  google-cloud  google-docs  google-flu-trends  google-glass  google-groups  google-instant  google-io  google-maps  google-news  google-photos  google-tax  google-voice  googlewhack  googlex  gossip  government  gpa  gpl  grand-theft-auto  grant-shapps  graphics  graphs  greatfire  groups  groups.io  grpc  gta4  guava  guidelines  gw1000  gzip  h264  hacking  hacks  hadoop  hangs  hardware  hashing  health  healthcare  hedged-requests  henry-robinson  hermetic-servers  heuristics  hidden-costs  hiring  histograms  history  hoaxes  holdout  holidays  hollywood  home  honeypots  hosting  hotels  hr  hrd  hsdpa  html  html5  http  http2  https  hublog  humans  hummingbird  i18n  ico  identity  idl  iframe  ilya-grigorik  image-classification  image-processing  images  implicit-bias  inceptionism  inceptionv3  incident-response  incidents  indexes  inept  inequality  infographics  innodb  instrumentation  insurance  international-law  internet  internetofshit  interoperability  interviewing  interviews  intrusion-detection  invariants  investment  iot  ip  ireland  itax  japan  jars  java  javascript  jean-marie-hullot  jeff-dean  jetty  jitter  jokes  jon-rafman  journalism  js  json  kdd  kernel  kevin-fox  key-distribution  keywords  kits  kitsch  kludges  kubernetes  labelling  lame  languages  las-vegas  latencies  latency  launches  law  law-enforcement  lawsuits  lbs  leap-second  leap-smearing  learning  legal  leveldb  libraries  library  licensing  lies  life  life-hacks  linear-time  linking  links  lint  linux  lionsgate  load-balancers  load-balancing  lockstep  lorem-ipsum  low-latency  lte  lyft  lying  mac  machine-learning  maciej-ceglowski  maglev  mail  mailing-lists  mainsleaze  maintainance  malware  management  managers  managing  map  map-reduce  mapping  maps  mariadb  marketing  mars  marshalling  maven  maven-central  memory  messaging  metrics  mfa  microservices  microsoft  mike-hearn  millwheel  misinformation  misogyny  mit  mitm  ml  mobile  mocking  mocks  models  moderation  monitoring  monorepi  monorepo  morality  movies  mozilla  mpeg  mua  multi-az  multi-cloud  multi-dc  multi-region  mumsnet  muscular  music  music-industry  music-key  mysql  nasa  nat  nazis  nelson-minar  nest  netbsd  netflix  netty  network  network-traffic  networking  networks  neural-networks  new-york  news  newspapers  nhs  niall-murphy  nosql  nsa  nsfw  ntp  nul  nyc  obama  objects  office-hours  offices  old-media  omega  on-call  one-bite-of-the-apple  online-backup  open  open-source  openbsd  opendns  operational-transformation  ops  opt-out  optimization  oracle  oreilly  orm  orphaned-roads  osx  ot  outages  outsourcing  paas  packages  packaging  packets  packing  panda  paper  papers  paramount  paris  partitioning  passwords  patches  patents  paul-buchheit  paxos  pdf  pegasus  penguin  people  performance  periodic  persistence  pervasive-computing  phone  phones  photography  photos  pii  pile-of-poo  pimms  piracy  piratebay  pixar  pki  playbooks  pliers  poaching  policing  politics  polling  poo  populations  porn  post-mortems  postmortems  power  power-management  powerpoint  ppt  preconditions  prejudice  presentation  pricing  prism  privacy  probabilistic  production  productivity  profiling  project-zero  prometheus  proto3  protobuf  protobufs  protocol-buffers  protocols  proxying  publishing  push  push-notifications  puzzles  python  quality  questions  r  r-and-d  race  racism  rahman-algorithm  randomness  ranking  rants  rappor  raspberry-pi  re2  reading  realtime  receipts  recode  recommendations  record-labels  red-pill  redaction  reddit  redirectors  redirects  redundancy  refaster  regexps  regions  registry  regular-expressions  regulation  releases  reliability  religion  remote-disabling  remote-work  renderman  replication  repo  request-routing  request-tracing  research  resilience  responsibility  reusable-holdout  reversing  review  reviews  revolv  riak  rifles  right-to-be-forgotten  roads  robots  routing  rpc  rss  rtt  ruby  rumblefish  runbooks  ryanair  safe-browsing  safety  sampling  sampling-profiler  samsung  satire  sbe  scalability  scale  scaling  scalr  scanning  scheduler  scheduling  schema  science  scm  scripps  scumbags  scummy  sdn  sea  search  searching  sebastian-thrun  secrets  security  seesaw  self-driving-cars  seo  seomoz  serialization  services  servlets  set  sex  sexism  sf  sgd  sharding  shell  shipping  ships  shutdown  side-effects  silicon-valley  siri  site-specific-browsers  skype  slice-intelligence  slicer  slides  smartphones  smtp  snake-oil  snappy  sniffing  snippets  snooping  snowden  soa  social  social-media  software  source-code  source-code-analysis  sovereign  spain  spam  spamassassin  spammers  spamming  spanner  spdy  speakers  speed  spinning  spotify  spreadsheets  spying  sql  sre  sse  ssl  ssl3  stack-ranking  standards  star  star-trek  static  static-code-analysis  statistics  steve-jobs  stings  stl  stock-photos  storage  stream-processing  streaming  street-view  stupid  stupidity  style  superfoods  surveillance  surveys  swiss  switching  swpats  symantec  sync  synchronization  syria  systemd  systemdsucks  systems  takedowns  talks  tax  tax-avoidance  tax-evasion  taxes  taxis  tcp  teams  tech  tech-debt  techcrunch  technical-debt  technology  ted-dziuba  telcos  telecom  teleworking  tensorflow  test  test-doubles  testing  tests  the-atlantic  the-circle  the-game  thomassons  throttling  thumbnails  tim-bray  time  time-series  timing  tipping  tips  tls  to-read  tofu  toget  tomato-sauce  tools  toread  tories  tpb-afk  tracers  tracing  tracking  traffic  trafficpaymaster  training  transactions  translate  translation  transparency  transports  trap-streets  travel  treasure-island  trends  triangulation  trolling  tumblr  tun  turd  turkey  turtles  tv  twitter  twoheadlines  types  typescript  typography  uber  udacity  udp  ui  uk  unchi  undocumented  unicode  unit-testing  unlabelled-learning  unladen-swallow  unroll.me  unsubscribe  url-shorteners  urls  urs-holzle  us-law  us-politics  usa  user-scripts  ux  v8  version-control  via:AdamMaguire  via:aliverson  via:anildash  via:bldgblog  via:boingboing  via:bradfitz  via:christinebohan  via:codeslinger  via:conall  via:davebolger  via:destraynor  via:eoin-brazil  via:fanf  via:irldexter  via:jg  via:jordansissel  via:kellabyte  via:kellan  via:klyda  via:nelson  via:preddit  via:robc  via:spoon  via:stx  via:tieguy  via:waxy  viacom  vic-gundotra  video  viewer  vim  vips  visualization  vogons  voice  voice-recognition  vp8  vps  vr  wage-fixing  warner-music  wave-power  way-of-the-future  waymo  web  webkit  webm  webrtc  websockets  weighting  wifi  wired  women  word-frequency  work  workplace  xhr  xml  xmpp  xoogler  yahoo  yahoo-groups  youtube  yubikey  zip  zippy  zoe-keating  zopfli 

Copy this bookmark:



description:


tags: