Health organizations are busier than ever providing information to help with the COVID-19 pandemic. To better assist them, Google has created a best practices article to guide health organizations to make COVID-19 information more accessible on Search. We’ve also created a new technical support group for eligible health organizations.
Best practices for search visibility
By default, Google tries to show the most relevant, authoritative information in response to any search. This process is more effective when content owners help Google understand their content in appropriate ways.
To better guide health-related organizations in this process (known as SEO, for “search engine optimization”), we have produced a new help center article with some important best practices, with emphasis on health information sites, including:
How to help users access your content on the go
The importance of good page content and titles
Ways to check how your site appears for coronavirus-related queries
How to analyze the top coronavirus related user queries
How to add structured data for FAQ content
New support group for health organizations
In addition to our best practices help page, health organizations can take part in our new technical support group that’s focused on helping health organizations who publish COVID-19 information with Search related questions.
We’ll be approving requests for access on a case-by-case basis. At first we’ll be accepting only domains under national health ministries and US state level agencies. We’ll inform of future expansions here in this blog post, and on our Twitter account. You’ll need to register using either an email under those domains (e.g. email@example.com) or have access to the website Search Console account.
Fill this form to request access to the COVID-19 Google Search group
The group was created to respond to the current needs of health organizations, and we intend to deprecate the group as soon as COVID-19 is no longer considered a Public Health Emergency by WHO or some similar deescalation is widely in place.
Posted by Daniel Waisberg, Search Advocate & Ofir Roval, Search Console Lead PM
Kubernetes configuration manifests have become an industry standard for deploying both custom and off-the-shelf applications (as well as for infrastructure). Manifests are combined into bundles to create higher-level deployable systems as well as reusable blueprints (such as a product offering, off the shelf software, or customizable starting point for a new application).
Teams quickly discover they need to customize, validate, audit and re-publish their forked/ generated bundles for their environment. Most packaging solutions to date are tightly coupled to some format written as code (e.g. templates, DSLs, etc). This introduces a number of challenges when trying to extend, build on top of, or integrate them with other systems. For example, how does one update a forked template from upstream, or how does one apply custom validation?
Packaging is the foundation of building reusable components, but it also incurs a productivity tax on the users of those components.
Today we’d like to introduce kpt, an OSS tool for Kubernetes packaging, which uses a standard format to bundle, publish, customize, update, and apply configuration manifests.
Kpt is built around an “as data” architecture bundling Kubernetes resource configuration, a format for both humans and machines. The ability for tools to read and write the package contents using standardized data structures enables powerful new capabilities:
- Any existing directory in a Git repo with configuration files can be used as a kpt package.
- $ kpt fn
Example workflow with kpt
Now that we’ve established the benefits of using kpt for managing your packages of Kubernetes config, lets walk through how an enterprise might leverage kpt to package, share and use their best practices for Kubernetes across the organization.
First, a team within the organization may build and contribute to a repository of best practices (pictured in blue) for managing a certain type of application, for example a microservice (called “app”). As the best practices are developed within an organization, downstream teams will want to consume and modify configuration blueprints based on them. These blueprints provide a blessed starting point which adheres to organization policies and conventions.
The downstream team will get their own copy of a package by downloading it to their local filesystem (pictured in red) using kpt pkg get. This clones the git subdirectory, recording upstream metadata so that it can be updated later.
They may decide to update the number of replicas to fit their scaling requirements or may need to alter part of the image field to be the image name for their app. They can directly modify the configuration using a text editor (as would be done before). Alternatively, the package may define setters, allowing fields to be set programmatically using kpt cfg set. Setters streamline workflows by providing user and automation friendly commands to perform common operations.
Once the modifications have been made to the local filesystem, the team will commit and push their package to an app repository owned by them. From there, a CI/CD pipeline will kick off and the deployment process will begin. As a final customization before the package is deployed to the cluster, the CI/CD pipeline will inject the digest of the image it just built into the image field (using kpt cfg set). When the image digest has been set, the CI/CD pipeline can send the manifests to the cluster using kpt live apply. Kpt live operates like kubectl apply, providing additional functionality to prune resources deleted from the configuration and block on rollout completion (reporting status of the rollout back to the user).
One more thing
There’s still a lot to the story we didn’t cover here. Expect to hear more from us about:
- Using kpt with GitOps
- Building custom logic with functions
- Writing effective blueprints with kpt and kustomize
By Phillip Wittrock, Software Engineer and Vic Iglesias, Cloud Solutions Architect
The Atari57 suite of games is a long-standing benchmark to gauge agent performance across a wide range of tasks. Weve developed Agent57, the first deep reinforcement learning agent to obtain a score that is above the human baseline on all 57 Atari 2600 games. Agent57 combines an algorithm for efficient exploration with a meta-controller that adapts the exploration and long vs. short-term behaviour of the agent.Read More…
A Fresh Coat of Paint
Improved Accessibility and Touch Support
A More Visible Focus Ring
Increased Tap Target Sizes for Multi-input Displays
Improved Color Picker
More Consistent Keyboard Access
How You Can Get Involved
Test Your Sites
Tell us What You Want to See
For Women’s History Month, we’re profiling some of the powerful, dynamic and creative Canadian women at Google.
As the Country Manager for Google Canada, Sabrina Geremia is a firm believer that technology, when thoughtfully applied, can be a bridge to building a better Canada. And as a champion of technology, she leads her teams to build programs aimed at helping Canadians and Canadian businesses (small and large) thrive in the digital economy.
Her focus this year is on helpfulness, and she’s been hard at work with her team to build helpful tools, products and features that lead to productivity, wellness and happiness. Whether it’s meeting with Canadian business leaders, advising nonprofits or mentoring, Sabrina is passionate about sharing her experience, and finding ways to propel Canada forward in the digital age.
Recently named “Woman of the Year” by WCT (Women in Communication Technology in Canada), it’s undeniable that Sabrina is not only paving the path forward, but continuing to inspire other women along the way.
How would you describe your job at a dinner party to people who don’t work in tech?
I’m the Country Manager for a company whose mission is to organize the world’s information and make it universally accessible and useful. Our goal is to help Canadians find and get things done in the moments that matter, help businesses drive economic impact, and grow digital skills in Canada.
The most exciting part about leading Google in Canada is that we have here at home, amazing people and teams who are innovating and creating products that are helpful for users across the globe.
Was there something specific that pushed you toward your career in tech?
When I was 11, my big brother surprised me at Christmas with an IBM PS@ model 50 computer. He said to me “you can play with this over the holidays” and walked out of the room. Now this was the 80s, and we’re talking first generation personal computing. The computer was enormous, weighed a ton, had a blinking cursor, and a floppy disk drive. I was both enthralled and intimidated. I unpacked it and started asking him questions like how to turn it on. Instead of coming to my rescue, he said “the plugs can only go into one place, you won’t break it, figure it out”. That lesson has stayed with me for over 30 years. I used this computer to write stories, play games, and eventually saved up enough to buy another computer. While I didn’t go on to become a coder, I did have a University internship at Microsoft. My role there was to help explain their technology to their senior clients, and that’s the type of work I still do today.
What is the most challenging part of your job?
The speed of technological transformation is intense, and this makes my job challenging but also exciting. Every day I’m connecting with Canadian businesses to showcase the opportunities that technology can offer. And a big part of digital transformation is anchored in investing in digital skills.
What is your favourite part of the job?
Solving complex problems with amazing people in Canada and beyond. And I love seeing how our products are helping people across the globe, my family included! My kids for example, are learning how to play the trumpet with their Grandpa who lives in Wales, thanks to the Google Home Hub.
What is your secret power that makes you successful?
I’m innately curious and an ‘always on learner’. Whether it’s brushing up on my technical skills or finding best practices from other parts of the world or learning from other amazing leaders, I like understanding how things work. In my job it’s like putting together a puzzle of a landscape that keeps evolving. In my 14 years at Google there’s never been a day where I haven’t learned something new.
Speaking of Canadian businesses – are there any businesses that inspire you?
I’m inspired to see how small businesses in Canada are thinking beyond our borders and expanding their businesses abroad. A great example of this is Peace by Chocolate. Originally from Syria, the Hadhad family came to Nova Scotia and re-built their family-run chocolate business. It’s now become a symbol of international peace and purchased by customers all across the globe.
What inspires you in your career?
The people I work with, inside and outside of Google, inspire me every day. I recently attended a graduation for Grow with Google’s IT Support Professional Certificate Program at the Toronto Public Library. I’m a big believer in the power of education, and by growing your digital skills so many more doors will open. Connecting with the graduates about their new skills and their career aspirations was extremely rewarding.
Tell us about a project that you’re proud of!
Investing in digital skills for Canadians was one of the first things I wanted to do when I took this job. So I’m extremely proud of our Grow with Google program, which includes free training, tools and events for Canadians to grow their skills, career or business. Over the past few years we’ve gone to different cities across Canada and trained thousands of learners.
What advice would you give to women pursuing a career in technology?
Make digital skills a super power, no matter what industry you work in. …
Recently, we introduced the “Google Cloud for Student Developers” video series to encourage students majoring in STEM fields to gain development experience using industry APIs (application programming interfaces) for career readiness. That first episode provided an overview of the G Suite developer landscape while this episode dives deeper, introducing G Suite’s HTTP-based RESTful APIs, starting with Google Drive.
The first code sample has a corresponding codelab (a self-paced, hands-on tutorial) where you can build a simple Python script that displays the first 100 files or folders in your Google Drive. The codelab helps student (and professional) developers…
- Realize it is something that they can accomplish
- Learn how to create this solution without many lines of code
- See what’s possible with Google Cloud APIs
While everyone is familiar with using Google Drive and its web interface, many more doors are opened when you can code Google Drive. Check this blog post and video for a more comprehensive code walkthrough as well as access the code at its open source repository. What may surprise readers is that the entire app can be boiled down to just these 3-4 lines of code (everything else is either boilerplate or security):
DRIVE = discovery.build('drive', 'v3', http=creds.authorize(Http()))
files = DRIVE.files().list().execute().get('files', )
for f in files:
Once an “API service endpoint” to Google Drive is successfully created, calling the
list() method in Drive’s
files() collection is all that’s needed. By default,
files().list() returns the first 100 files/folders—you can set the
pageSize parameter for a different amount returned.
The video provides additional ideas of what else is possible by showing you examples of using the Google Docs, Sheets, and Slides APIs, and those APIs will be accessed in a way similar to what you saw for Drive earlier. You’ll also hear about what resources are available for each API, such as documentation, code samples, and links to support pages.
If you wish to further explore coding with G Suite REST APIs, check out some additional videos for the Drive, Sheets, Gmail, Calendar, and Slides APIs. Stay tuned for the next episode which highlights the higher-level Google Apps Script developer platform.
We look forward to seeing what you build with Google Cloud!
OpenTelemetry and OpenCensus have been a critical part of our goal of making platforms like Kubernetes more observable and more manageable. This has been a multi-year journey for us, from creating OpenCensus and growing it into a core part of major web services’ observability stack, to our announcement of OpenTelemetry last year and the rapid growth of the OpenTelemetry community.
To learn more, please read our official community announcement, which copied below:
Co-authored by maintainers, community contributors, and members of the OpenTelemetry governance committee.
If you’re not already familiar with OpenTelemetry, the project provides a single set of language-specific APIs, SDKs, agents, and other components that you can use to collect distributed traces, metrics, and related metadata from your applications. In addition to its core capabilities, much of OpenTelemetry’s utility comes from integrations for HTTP and RPC libraries, storage clients, etc. that allow developers to capture critical observability data from their applications with almost zero effort. After capturing these signals, each OpenTelemetry component can export them to your backends of choice, including Prometheus, Jaeger, Zipkin, Azure Monitor, Dynatrace, Google Cloud Monitoring + Trace, Honeycomb, Lightstep, New Relic, and Splunk.
This first beta release includes:
- Language-specific API integrations for at least one popular HTTP framework, gRPC, and at least one popular storage client, which can be enabled with one line of code, and will automatically capture relevant traces and metrics and handle context propagation.
- Language-specific exporters that allow SDKs to send captured traces and metrics to any supported backends.
- The OpenTelemetry Collector, which can receive data from OpenTelemetry SDKs and other sources, and then export this telemetry to any supported backend.
- Auto-Instrumentation for Java that captures telemetry from 47 Java libraries and frameworks without requiring any modification to your application.
- Documentation for each component including getting started guides.
As these and subsequent OpenTelemetry components enter beta (requirements and release plan), we are declaring that they are ready to start integrating with. This means that service developers can begin to include OpenTelemetry in their applications and that maintainers of storage, RPC, etc. clients should start testing the OpenTelemetry APIs to provide better observability of their users.
- Each OpenTelemetry component will likely undergo several beta releases in the coming weeks — this is simply the first.
- While functional, beta components have not gone through thorough testing or benchmarking and they are not intended for production workloads.
- While we aim to avoid any major changes to the OpenTelemetry APIs between beta and GA release candidates, we cannot guarantee that there will not be any changes during this period.
- Some functionality is still missing from the first beta and will be added in subsequent releases; this is documented in each component’s GitHub repository.
In the coming weeks, you can expect additional beta releases from the first wave of OpenTelemetry components and others. In particular, we expect the API + SDK for .Net and the Java auto-instrumentation agent to be ready soon. Eventually, components will reach a level of maturity and testing where we’ll feel confident in naming them a release candidate (RC), after which we will not make any breaking changes to the APIs for that component.
This beta milestone is a huge accomplishment for the OpenTelemetry community, and every contributor should be proud of the fact that OpenTelemetry is now working and ready to integrate with. This is a great opportunity for the maintainers of client libraries to begin integrating with the OpenTelemetry APIs, for end-users to start integrating it into their services, and for anyone interested in contributing to join our rapidly growing community by joining our mailing lists, Gitter chats, and the monthly community meeting!
We’re back with another update in our Stadia Savepoint series, providing a summary of recent news on Stadia.
This month we added seven new games to the Stadia store including DOOM Eternal and Lost Words: Beyond the Page, a First on Stadia title. With Serious Sam Collection, Spitlings and Stacks On Stacks (On Stacks) being added to Stadia Pro on April 1, subscribers can claim and build their library of games, playing for free as part of their subscription.
Web Capture Library
Access captured gameplay screenshots and clips on your laptop or desktop and download them from your library.
4K on Web
Players with an active Stadia Pro subscription plus the necessary hardware and network speeds can now play Stadia at up to 4K resolution on the web in their Chrome browser.
Recent content launches on Stadia
Borderlands 3: Guns, Love, and Tentacles: The Marriage of Wainwright & Hammerlock Expansion
Lost Words: Beyond the Page
Serious Sam Collection
SteamWorld Dig 2
The Crew 2
Tom Clancy’s The Division 2
Tom Clancy’s The Division 2: Warlords of New York Expansion
New games announced for Stadia
Monster Jam Steel Titans
The Turing Test
Stadia Pro updates
New games that are free to claim for Stadia Pro subscribers in April: Serious Sam Collection, Spitlings, Stacks On Stacks (On Stacks).
Existing games still available to add to your collection: Destiny 2, GRID, GYLT, Metro Exodus, SteamWorld Dig 2, SteamWorld Quest: Hand of Gilgamech and Thumper.
Act quickly: Metro Exodus and Thumper leave Stadia Pro on March 31.
Ongoing discounts for Stadia Pro subscribers: Check out the web or mobile Stadia store for the latest.
As the coronavirus outbreak continues to worsen around the world, it’s taking a devastating toll on lives and communities. To help address some of these challenges, today we’re announcing a new $800+ million commitment to support small- and medium-sized businesses (SMBs), health organizations and governments, and health workers on the frontline of this global pandemic.
Our commitment includes:
$250 million in ad grants to help the World Health Organization (WHO) and more than 100 government agencies globally provide critical information on how to prevent the spread of COVID-19 and other measures to help local communities. This is an increase from our initial $25 million announced last month. In addition, we’re providing $20 million in ad grants to community financial institutions and NGOs specifically to run public service announcements on relief funds and other resources for SMBs.
A $200 million investment fund that will support NGOs and financial institutions around the world to help provide small businesses with access to capital. As one example, we’re working with the Opportunity Finance Network in the U.S. to help fill gaps in financing for people and communities underserved by mainstream financial institutions. This is in addition to the $15 million in cash grants Google.org is already providing to nonprofits to help bridge these gaps for SMBs.
$340 million in Google Ads credits available to all SMBs with active accounts over the past year. Credit notifications will appear in their Google Ads accounts and can be used at any point until the end of 2020 across our advertising platforms. We hope it will help to alleviate some of the cost of staying in touch with their customers.
A pool of $20 million in Google Cloud credits for academic institutions and researchers to leverage our computing capabilities and infrastructure as they study potential therapies and vaccines, track critical data, and identify new ways to combat COVID-19. Learn how to apply for credits on the Google for Education site.
Direct financial support and expertise to help increase the production capacity for personal protective equipment (PPE) and lifesaving medical devices. We’re working with our longtime supplier and partner Magid Glove & Safety, with the goal of ramping up production of 2-3 million face masks in the coming weeks that will be provided to the CDC Foundation. Additionally, employees from across Alphabet, including Google, Verily and X, are bringing engineering, supply chain and healthcare expertise to facilitate increased production of ventilators, working with equipment manufacturers, distributors and the government in this effort.
In addition to these commitments, we also increased the gift match Google offers every employee annually to $10,000 from $7,500. That means our employees can now give $20,000 to organizations in their communities, in addition to the $50 millionGoogle.org has already donated. Together, we’ll continue to help our communities—including our businesses, educators, researchers and nonprofits—to navigate the challenges ahead.
As people around the globe increasingly work or learn from home, we want to recognize the impact this shift is having on software providers. Many third-party developers rely on G Suite APIs to deliver richly integrated experiences to users, and it’s crucial for them to plan proactively for potential risks.
To support developers as usage surges, we’re sharing our recommendations for how to best prepare for new scaling demands and user onboarding, as well as some tips on where to get help.
1. Plan for increased capacity
Technology platforms across the ecosystem, and in particular education platforms, are seeing unprecedented increases in usage as many businesses, schools, and universities move towards online and distance learning. If you expect that the usage of your application(s) will increase significantly, we highly recommend you plan for this proactively by considering the following:
Google API quota needs: If your application depends on any Google APIs, we recommend that you estimate what your increased traffic might look like so you can make any appropriate quota increase requests. If you find that you will need a quota increase, you should submit a request ASAP with details on how you arrived at your estimations.
Here’s how to request a quota increase for any G Suite APIs:
If you don’t already have a billing account for your project, create one.
In the API Console, visit the Enabled APIs page and select an API from the list.
To view and change quota-related settings, select Quotas. To view usage statistics, select Usage.
Note: For quota increase requests related to YouTube APIs, please submit a request here.
Performance and scalability with Classroom, Drive, and Gmail: When you’re regularly sending a large number of requests, you might receive 403 error responses with reasons such as dailyLimitExceeded, userRateLimitExceeded, or quotaExceeded. To handle these responses gracefully, Classroom has updated its developer docs to include more information on common request errors and how to handle them. For more suggestions on how to optimize your application with Classroom, read these tips for improving performance and batching API requests.
For developers interested in integrating with Gmail, we recommend reviewing the different usage limits specific to that API.
2. Solve new user issues related to distance and online learning
As the necessity for online and distance learning increases, schools and districts are being onboarded to G Suite on a domain-wide basis. This makes the APIs that enable developers to programmatically manage accounts and Google Groups all the more crucial. For developers interested in Hangouts Meet integrations—or expanding their knowledge of these integrations—here’s a guide on how to leverage Meet functionality through other G Suite APIs, including the Calendar API and Admin SDK Reports API.
For developers looking to explore other G Suite integration options, we recommend reviewing the developer offerings for each of our products here.
3. Know your channels of support
Below is a list of support options that can help developers quickly find answers.
Stack Overflow: Each G Suite API has its own tag for developers to post technical questions to. Each tag is of the format ‘google-productname’ or ‘google-productname-api’, e.g. google-classroom, google-drive-api, and google-calendar-api.
Public Issue Trackers: Google uses public issue trackers to collect feedback from third-party developers. These issue trackers collect all the information needed to investigate so that our support teams can respond as soon as possible. When reporting an issue, please include as many details as possible, including the steps to reproduce the issue, relevant endpoints, request and response JSON, error logs, etc. A list of public issue trackers for all G Suite APIs can be found here.
As you respond to increasing or changing user demand, we encourage you to reach out for support through our different channels and take advantage of documentation highlighting different ways you can leverage G Suite to support users.