Learn what’s new in Demand Gen with October’s Demand Gen Drop.
This month’s drop is focused on bidding optimizations and creative tools to boost your YouTube performance.
Source: Google Ads & Commerce
Learn what’s new in Demand Gen with October’s Demand Gen Drop.
This month’s drop is focused on bidding optimizations and creative tools to boost your YouTube performance.
Source: Google Ads & Commerce
Partnering to power Miami’s AI-ready future
We’re developing and piloting AI-powered solutions to support both learning outcomes and operational efficiency.
Source: The Official Google Blog
Start learning all things AI on the new Google Skills
Google Skills is a new home for building skills in AI, and learning about other topics like data analytics and security.
Source: The Official Google Blog
Discover “Picture Poland” on Google Arts & Culture
Embark on a virtual journey through Poland's rich cultural and natural heritage with "Picture Poland," a new collection on Google Arts & Culture, featuring over 400 cura…
Source: The Official Google Blog
Protecting Gmail users from XS-Search with Cross-Origin Opener Policy (COOP)
What’s happening
COOP background
Who’s impacted
Getting started
- Developers:
- For websites and browser extensions opening Gmail, refactor the offending code to avoid accessing the window properties or functions through the window handle and instead, utilize alternative APIs to achieve the desired functionality (e.g., chrome.tabs, Messaging).
- For browser extensions injected into the Gmail page, instead of trying to communicate with or access the opener, the browser extension should be updated so it doesn't need to interact with it at all and the extension's logic should be revised to work independently. If that is not possible, browser extensions can use existing APIs (e.g., chrome.tabs) to implement their logic.
- Admins: There is no admin control for this feature.
- End users: There is no end user setting for this feature.
Rollout pace
- Enforcement will begin on January 20, 2026. Rollout will be extended (potentially longer than 15 days for feature visibility).
Resources
Source: Google Workspace Updates
Gemini in Google Sheets can now analyze data across multiple tables
What’s changing
Starting today, Gemini in Sheets can understand and analyze multiple tables within a single tab of a spreadsheet. This new functionality allows you to ask questions and perform analysis that spans multiple data sources, dramatically increasing the power and accuracy of your queries. You can select or deselect tables to focus Gemini’s attention, and you can also directly make a selection within a table to be used as input for your query.
You can use this update while:
- Generating formulas: Generate complex formulas that reference and perform calculations across several tables in one go. For example, you can now have Gemini write XLOOKUP functions to look up values from one table to use in another, or aggregate data from multiple tables into a single summary calculation.
- Analyzing and generating charts: Ask Gemini to analyze data scattered across multiple tables to uncover insights and create data visualizations. You can get a holistic view of your data, whether you’re identifying top performers by combining sales data from different tables, or creating a single chart that compares sales performance data from separate tables.
- Editing your data: Apply changes to multiple tables at once with a single request. For example, you can now use Gemini to apply consistent conditional formatting across all your tables in a spreadsheet or build a single pivot table that summarizes data from multiple tables.
- Targeting analysis with selections: You can now make selections within your tables to focus Gemini’s analysis. Ask for summaries of specific data, find outliers in a selected range, or generate formulas based on the data you’ve highlighted. For example, you can select a column and ask, "What are the trends in the selected column?"
Getting started
- Admins: To access Gemini in Workspace apps, users need to have smart features and personalization turned on. Admins can turn on the personalization setting for their users in the Admin console.
- End users:
- This feature will be on by default.
- Visit the Help Center to learn more about Gemini in Sheets.
Rollout pace
- Rapid Release and Scheduled Release domains: Gradual rollout (up to 15 days for feature visibility) starting on October 20, 2025
Availability
Available for Google Workspace:
- Business Standard and Plus
- Enterprise Standard and Plus
- Customers with the Gemini Education or Gemini Education Premium add-on
- Google AI Pro and Ultra
Anyone who previously purchased these add-ons will also receive this feature:
- Gemini Business*
- Gemini Enterprise*
Resources
Source: Google Workspace Updates
Dynamic App Links: Elevating your Android deep linking
Since Android 6, App Links has been crucial for delivering a seamless web-to-app user experience. By directing users directly to relevant content within your app, rather than a web browser or mobile-web page, you enhance engagement, boost conversions, and foster greater customer loyalty. Now Dynamic App Links, available on Android 15 and later, makes achieving this even easier and more effective.
What's New: Functionalities Enabled by Dynamic App Links
The core of these enhancements lies in the Digital Asset Links JSON file. Previously, this file was primarily used for basic verification. Now, it's a powerful configuration tool that allows you to specify paths, query parameters, fragments, and exclusions, providing a dynamic and robust deep linking solution.
Here what’s new in Dynamic App Links:
Exclusions support
You can now specify certain paths or sections of a URL that should not open your app, even if they would otherwise match your App Link configuration. This is incredibly useful for:
Unsupported Content: Directing users to web content that isn't yet supported within your app.
Legacy Content: Managing old URLs that you no longer want to route to your app.
Specific Campaigns: Temporarily excluding certain links during promotions or tests.
This granular control ensures users always land in the most appropriate experience.
Query parameters support
With the new Query parameters functionality you can define specific parameters that, if present in a URL, will prevent your app from opening. This opens up exciting possibilities for:
Dynamic Exclusions: Quickly turning off app linking for specific scenarios without requiring an app update.
A/B Testing: Directing users to different experiences (app vs. web) based on test parameters.
Controlled Rollouts: Gradually enabling app linking for certain user segments.
Dynamic updates
Make easier updates to your App Links configuration without needing to update your app. You can now specify the URL paths that your app will handle directly within the Digital Asset Links JSON file that is hosted on your server.
This means you can:
Respond quickly to changes: Adapt your deep linking strategy in real-time without the overhead of a new app release.
Reduce development cycles: Implement and test App Link changes much more efficiently.
Maintain agility: Keep your app's deep linking configuration current with your evolving content and features.
Why Dynamic App Links?
Android Dynamic App Links are the preferred way to link to content within your app because they offer:
Seamless User Experience: Direct users instantly to the exact content they're looking for, bypassing browser redirects.
Improved Engagement: Keep users within your app, leading to higher engagement and longer session times.
Increased Conversions: Guide users effortlessly through your app's flows, improving the likelihood of desired actions.
Enhanced Customer Loyalty: Deliver a polished and efficient experience that keeps users coming back.
With Dynamic App Links, you now have the tools to build even more powerful and flexible deep linking experiences, ensuring your users always find the content they need, right where they expect it.
We're excited to see what you'll build with Dynamic App Links. Visit our documentation to start exploring these new features today and elevate your app's deep linking strategy!
Source: Android Developers Blog
Simplify Your Code: Functional Core, Imperative Shell
Is your code a tangled mess of business logic and side effects? Mixing database calls, network requests, and other external interactions directly with your core logic can lead to code that’s difficult to test, reuse, and understand. Instead, consider writing a functional core that’s called from an imperative shell.
Separating your code into functional cores and imperative shells makes it more testable, maintainable, and adaptable. The core logic can be tested in isolation, and the imperative shell can be swapped out or modified as needed. Here’s some messy example code that mixes logic and side effects to send expiration notification emails to users:
A functional core should contain pure, testable business logic, which is free of side effects (such as I/O or external state mutation). It operates only on the data it is given.
An imperative shell is responsible for side effects, like database calls and sending emails. It uses the functions in your functional core to perform the business logic.
Rewriting the above code to follow the functional core / imperative shell pattern might look like:
Now that the code is following this pattern, adding a feature to send a new type of email is as simple as writing a new pure function and reusing getExpiredUsers:


Posted by Ran Mor - Product Manager
