Tag Archives: Get Inspired

Build transformative augmented reality experiences with new ARCore and geospatial features

  Posted by Eric Lai, Group Product Manager

With ARCore, Google’s platform for building augmented reality experiences, we continue to enhance the ways we interact with information and experience the people and things around us. ARCore is now available on 1.4 billion Android devices and select features are also available on compatible iOS devices, making it the largest cross-device augmented reality platform.

Last year, we launched the ARCore Geospatial API, which leverages our understanding of the world through Google Maps and helps developers build AR experiences that are more immersive, richer, and more useful. We further engaged with all of you through global hackathons, such as the ARCore Geospatial API Challenge, where we saw a number of high quality submissions across a number of use cases, including gaming, local discovery, and navigation.

Today, we are introducing new ARCore Geospatial capabilities, including Streetscape Geometry API, Geospatial Depth API, and Scene Semantics API to help you build transformative, world-scale immersive experiences.


Introducing Streetscape Geometry API

With the new Streetscape Geometry API, you can interact, visualize, and transform building geometry around the user. The Streetscape Geometry API makes it easy for developers to build experiences that interact with real world geometry, like reskinning buildings, power more accurate occlusion, or just placing a virtual asset on a building, by providing a 3D mesh within a 100m radius of the user’s mobile device location.

moving image showing streetscape geometry
Streetscape Geometry API provides a 3D mesh of nearby buildings and terrain geometry

You can use this API to build immersive experiences like transforming building geometry into live plants growing on top of them or using the building geometry as a feature in your game by having virtual balls bounce off and interact with them.

Streetscape Geometry API is available on Android and iOS.


Introducing Rooftop Anchors and Geospatial Depth

Previously, we launched Geospatial anchors which allow developers to place stable geometry at exact locations using latitude, longitude, and altitude. Over the past year, we added Terrain anchors which are placed on Earth's terrain, using only longitude and latitude coordinates, with the altitude being calculated automatically.

Today we are introducing a new type of anchor: Rooftop anchors. Rooftop anchors let you anchor digital content securely to building rooftops, respecting the building geometry and the height of buildings.

moving image showing rooftop anchors
Rooftop anchors make it easier to
anchor digital content to building rooftops
moving image showing geospatial depth
Geospatial depth combines
real time depth measurement from
users' device with Streetscape Geometry data
to generate a depth map of up to 65 meters

In addition to new anchoring features, we are also leveraging the Streetscape Geometry API to improve one of the most important capabilities in AR: Depth. Depth is critical to enable more realistic occlusion or collision of virtual objects in the real world.

Today, we are launching Geospatial Depth. It combines the mobile device real time depth measurement with Streetscape Geometry data to improve depth measurements using building and terrain data providing depth for up to 65m. With Geospatial Depth you can build increasingly realistic geospatial experiences in the real world.

Rooftop Anchors are available on Android and iOS. Geospatial Depth is available on Android.


Introducing Scene Semantics API

The Scene Semantics API uses AI to provide a class label to every pixel in an outdoor scene, so you can create custom AR experiences based on the features in an area around your user. At launch, twelve class labels are available, including sky, building, tree, road, sidewalk, vehicle, person, water and more.

moving image showing streetscape geometry
Scene Semantics API uses AI to provide accurate labels for different features that are present in a scene outdoors

You can use the Scene Semantics API to enable different experiences in your app. For example, you can identify specific scene components, such as roads and sidewalks to help guide a user through the city, people and vehicles to render realistic occlusions, the sky to create a sunset at any time of the day, and buildings to modify their appearance and anchor virtual objects.

The Scene Semantics API is available on Android.


Mega Golf: The game that brings augmented mini-golf to your neighborhood

To help you get started, we’re also releasing Mega Golf, an open source demo that helps you experience the new APIs in action. In Mega Golf you will use buildings in your city to bounce off and propel a golf ball towards a hole while avoiding 3D virtual obstacles. This open source demo is available on GitHub. We're excited to see what you can do with this project.

moving image showing streetscape geometry
Mega Golf uses Streetscape Geometry API to transform neighborhoods into a playable mini golf course where players use nearby buildings to bounce and propel a golf ball towards a hole

With these new ARCore features improvements and the new Geospatial Creator in Adobe Aero and Unity, we’ll make it easier than ever for developers and creators to build realistic augmented reality experiences that delight and provide utility for users. Get started today at g.co/ARCore. We’re excited to see what you create when the world is your canvas, playground, gallery, or more!

Create world-scale augmented reality experiences in minutes with Google’s Geospatial Creator

Posted by Stevan Silva, Senior Product Manager

ARCore, our augmented reality developer platform, provides developers and creators alike with simple yet powerful tools to build world-scale and room-scale immersive experiences on 1.4 billion Android devices.

Since last year, we have extended coverage of the ARCore Geospatial API from 87 countries to over 100 countries provided by Google’s Visual Positioning System and the expansion of Street View coverage, helping developers build and publish more transformative and robust location-based, immersive experiences. We continue to push the boundaries of introducing helpful applications and delightful new world-scale use cases, whether it's the innovative hackathon submissions from the ARCore Geospatial API Challenge or our partnership with Gorillaz, where we transformed Times Square and Piccadilly Circus into a music stage to witness Gorillaz play in a larger-than-life immersive performance.

One thing we’ve consistently heard from you over the past year is to broaden access to these powerful resources and ensure anyone can create, visualize, and deploy augmented reality experiences around the world.

Introducing Geospatial Creator


Today, we are launching Geospatial Creator, a tool that helps anyone easily visualize, design, and publish world-anchored immersive content in minutes straight from platforms you already know and love — Unity or Adobe Aero.

Easily visualize, create, and publish augmented reality experiences with Geospatial Creator in Unity (left) and Adobe Aero (right)

Geospatial Creator, powered by ARCore and Photorealistic 3D Tiles from Google Maps Platform, enables developers and creators to easily visualize where in the real-world they want to place their digital content, similar to how Google Earth or Google Street View visualize the world. Geospatial Creator also includes new capabilities, such as Rooftop anchors, to make it even easier to anchor virtual content with the 3D Tiles, saving developers and creators time and effort in the creation process.

These tools help you build world-anchored, cross-platform experiences on supported devices on both Android and iOS. Immersive experiences built in Adobe Aero can be shared via a simple QR code scan or link with no full app download required. Everything you create in Geospatial Creator can be experienced in the physical world through real time localization and real world augmentation.


With Geospatial Creator, developers and creators can now build on top of Photorealistic 3D Tiles from Google Maps Platform (left) which provide real time localization and real time augmentation (right)

When the physical world is augmented with digital content, it redefines the way people play, shop, learn, create, shop and get information. To give you an idea of what you can achieve with these tools, we’ve been working with partners in gaming, retail, and local discovery including Gap, Mattel, Global Street Art, Singapore Tourism Board, Gensler, TAITO, and more to build real world use cases.

SPACE INVADERS: World Defense immersive game turns the world into a playground

Later this summer you’ll be able to play one of the most acclaimed arcade games in real life, in the real world. To celebrate the 45 year anniversary of the original release, TAITO will launch SPACE INVADERS: World Defense. The game, powered by ARCore and Geospatial Creator, is inspired by the original gameplay where players will have to defend the Earth from SPACE INVADERS in their neighborhood. It will combine AR and 3D gameplay to deliver a fully contextual and highly engaging immersive experience that connects multi-generations of players.



Gap and Mattel transform a storefront into an interactive immersive experience

Gap and Mattel will transform the iconic Times Square Gap Store into an interactive Gap x Barbie experience powered by Geospatial Creator in Adobe Aero. Starting May 23, customers will see the store come to life with colors and shapes and be able to interact with Barbie and her friends modeling the new limited edition Gap x Barbie collection of clothing.

moving image of Gap by Mattel

Global Street Art brings street art to a new dimension with AR murals

Google Arts & Culture partnered with Global Street Art and three world-renowned artists to augment physical murals in London (Camille Walala), Mexico City (Edgar Saner), and Los Angeles (Tristan Eaton). The artists used Geospatial Creator in Adobe Aero to create the virtual experience, augmenting physical murals digitally in AR and bringing to life a deeper and richer story about the art pieces.



Singapore Tourism Board creates an immersive guided tour to explore Singapore

Google Partner Innovation team partnered with Singapore Tourism Board to launch a preview of an immersive Singapore guided tour in their VisitSingapore app. Merli, Singapore's tourism mascot, leads visitors on an interactive augmented tour of the city’s iconic landmarks and hidden gems, beginning with the iconic Merlion Park and engaging visitors with an AR symphony performance at Victoria Theatre and Concert Hall. The full guided tour is launching later this summer, and will help visitors discover the best local hawker food, uncover the city's history through scenes from the past, and more.


Gensler helps communities visualize new urban projects

Gensler used Geospatial Creator in Adobe Aero to help communities easily envision what new city projects might look like for the unhoused. The immersive designs of housing projects allows everyone to better visualize the proposed urban changes and their social impact—ultimately bringing suitable shelter to those who need it.

moving image of city projects from Gensler

Geospatial Creator gives anyone the superpower of creating world scale AR experience remotely. Both developers and creators can build and publish immersive experiences in minutes in countries where Photorealistic 3D Tiles are available. In just a few clicks, you can create applications that help communities, delight your users, and provide solutions to businesses. Get started today at goo.gle/geospatialcreator. We’re excited to see what you create when the world is your canvas, playground, gallery, or more!

Developer Journey: Explore I/O through the lens of our developer communities (May 2023)

Posted by Lyanne Alfaro, DevRel Program Manager, Google Developer Studio

Developer Journey is a monthly series to spotlight diverse and global developers sharing relatable challenges, opportunities, and wins in their journey. Every month, we will spotlight developers around the world, the Google tools they leverage, and the kind of products they are building.

With Google I/O season in full swing, we’re sharing diverse perspectives of developers across Google’s developer communities who have been on the ground.

Meet AiJing, Jolina, and Maria – members of Google Developer Student Clubs, Google Developer Groups, and Women Techmakers – who share a passion for learning, creating, and connecting through Google technology as they share what they’re most excited for this year at I/O.


AiJing Wu

Headshot of AiJing Wu, smiling
Madison, Wisconsin
GDSC Lead, Women Techmakers
GDSC University of Wisconsin-Madison
Software Engineer

What does Google I/O mean to you, and what are you looking forward to most this year?

To me, Google I/O is the paradise for embracing cutting-edge technologies. I have followed the keynotes online for two years, and it is so exciting that I will join in-person this year! I can’t wait to exchange thoughts with other amazing developers and listen to the game-changing AI topics.


What's your favorite part about Google I/O?

I’m obsessed with live demos for new technologies. Daring to do a live demo shows Google developers’ strong confidence and pride in their work. It is also exciting to see what kinds of use cases are emphasized and what metrics are evaluated.


What Google tools have you used to build?

As a full-stack developer and cloud engineer, I have built progressive apps and distributed services with Chrome, Android Studio, BigQuery, Analytics, Firebase, Google Maps, YouTube, and Google Cloud Platform. Other than those, I love exploring AI and ML features with Google Colab, Cloud TPU, and TensorFlow.


Which tool has been your favorite? Why?

Chrome has been my favorite. To me, it is the best choice for web app development: great compatibility across OS platforms, feature-rich developer tools, and smooth mobile integration. ChromeDriver is a sweet bonus when accessing deployments and automating tests on a server.


Tell us about something you've built in the past using Google tools.

I collaborated with my friends to build a web app aimed at helping people understand and analyze soccer games easier and faster with pre-trained ML models. This app includes accessing YouTube video sources, detecting targets with Yolo-v3 in TensorFlow, accelerating computation with Colab GPU, and storing results in Google Cloud.


What advice would you give someone starting in their developer journey?

Actively discuss with people and listen to their ideas, especially if you are a student or a beginner. Participating in GDSC and GDG events is a great source to connect with peers and senior developers near you and across the globe. I benefit so much simply by chatting about random tech topics with others. Good communication will open your mind and guide your direction. Meeting interesting people will also make your journey as a developer much more colorful and enjoyable!


Jolina Li

Headshot of Jolina Li, smiling
Toronto, Ontario, Canada
GDSC Lead
Google Developer Student Club, University of Toronto St. George

What does Google I/O mean to you, and what are you looking forward to most this year?

It has been a dream for me since high school to attend Google I/O. In previous years, I would watch clips of the keynotes online and browse through creators’ YouTube vlogs to see all the incredible technologies at the hands-on stations. This May, I can’t believe I will be traveling to Mountain View and experiencing Google I/O 2023 for the first time live in person. For me, Google I/O is an opportunity to connect with passionate individuals in the developer community, including students, and experts from around the world. It is a full day of learning, inspiration, innovation, community, and growth. This year, I’m looking forward to hearing all the exciting keynotes in person, interacting with transformative technology, and making new connections.


What's your favorite part about Google I/O?

My favorite part about Google I/O is the technical sessions after the keynotes, where I can learn about innovative products from experts and engage in product demonstrations. I love seeing developments in machine learning, so I will definitely visit the TensorFlow station. I’m also excited to explore other Google technology stations, including Google Cloud and Google Maps Platform, and learn as much as I can.


What Google tools have you used to build?

I have used Android to build mobile apps for my software design course and a tech entrepreneurship competition. I have also used Google Colab, a cloud-based Jupyter notebook environment, for my research and deep learning engineering internships.


Which tool has been your favorite? Why?

I love using Google Colab because it’s an accessible and cost-free tool for students working on data science and machine learning projects. The environment requires no setup and offers expensive computing resources such as GPUs at no cost. It uses Python, my favorite language, and contains all the main Python libraries. The user interface features independent code segments you can run and test rather than running the entire script every time you edit code. There is also an option to add text segments between code to document various script components. Google Colab notebooks can be easily shared with anyone for collaboration and stored in Google Drive for convenient access.


Tell us about something you've built in the past using Google tools.

For my software design course project, a few teammates and I built a cooking recipe organizer app using Android Studio that allows users to discover new recipes and build their own portfolio of recipes. Users can save interesting recipes that they found, give ratings and reviews, and also upload their own recipes to the database. I designed a recipe sorting and filtering system that allows users to sort their saved recipes alphabetically, by interest keywords or rating, and filter their recipes by genre.

Android Studio allowed me to preview the mobile app development using an emulator that functions across all types of Android devices. This feature helped me to understand the app from a user’s perspective and develop the UI/UX more efficiently. We also used Google Firebase for its cloud storage, non-relational feature, and high compatibility with Android.


What advice would you give someone starting in their developer journey?

When I began attending university, I had no experience in programming and had to start my computer science career from zero. I pursued computer science, however, because I was interested in learning about AI and building technology to solve global problems such as climate change.

I believe that when you are starting your career, it’s important to have a goal about what you want to achieve. There are so many possibilities in tech, and having a goal can help you make decisions and motivate you when you’re facing challenges. It’s also important to keep an open mind about different opportunities and explore multiple areas in tech to learn more about the field and discover your passions.

Another tip is to look for opportunities and resources to help you grow as a developer. Many opportunities and resources are available for beginners, including online courses, self-guided project tutorials, and beginner-friendly workshops.

Google has amazing developer communities, including student campus clubs (GDSC), professional developer groups (GDG), Google developer expert groups (GDE), and a women in tech community (WTM). You can also create your own opportunities by teaching a hands-on workshop to enhance your technical and soft skills, starting a local developer group to gain leadership and collaboration skills, or building projects to increase your knowledge and apply what you learn.

Learn a lot, discover new opportunities, gain new skills, connect with people in tech, and keep pursuing what you love about technology!

Maria Paz Muñoz Parra

Headshot of Maria Paz Muñoz Parra, smiling
Malmö, Sweden
Google Developer Groups Organizer and Women Techmakers Ambassador
Senior front-end developer, IKEA


What does Google I/O mean to you, and what are you looking forward to most this year?

Google I/O is an opportunity to stay up to date in Google technologies and initiatives. We get to witness innovation, connect with other developers and generate energetic conversations about what we are passionate about.

Besides Bard, this year I have a special interest in the WebGPU API. Currently, I work as a senior front-end developer on a Knowledge Graph project. There, one of the most powerful tools for ontologists and data scientists to model and understand data are the canvases. I’m curious about how we can boost the performance when rendering these graphs on the web, using the new features of WebGPU. Google I/O will surely be an inspiration for my work.


What's your favorite part about Google I/O?

It’s the perfect excuse to meet my colleagues and watch the event together, popcorn included! In the online realm, it’s always fun to follow the discussions on social media, and Google always finds a way to surprise us and keep us engaged in our learning process. I still remember the I/O Adventure platform of 2022. It was an outstanding virtual experience, interacting with people in the community booths. Later, I also followed the recorded talks. A gamified learning experience, top to bottom!


What Google tools have you used to build?

The devTools have been my everyday tools for the past 10 years. The ones that I have used the most are the Core Web Vital metrics, devTools for debugging (extra love for the ones to debug accessibility issues), and tools for testing CSS on the browser (i.e. the grid properties and the media queries emulation features).

Since last year, I’ve been testing the Instant Loading and Seamless APIs, and they have allowed me to deliver high-quality interfaces with intuitive navigation, as we are used to having in native mobile apps.


Which tool has been your favorite? Why?

Accessibility guidelines and tools are my favorite. Lighthouse, the accessibility scanner, and Material Design. These tools help us ensure that all users, including those with disabilities, can access and use content and services published on the web. With these tools integrated, other users can start educating themselves on the power of accessibility. My interest in this space started when I noticed that my mother, who has low vision and motor impairments in her hands, couldn’t easily access her favorite music on her phone. The voice search feature on YouTube was revolutionary for her, and probably for many other elders.

Many questions popped into my mind: “Who is considered a user with a disability? How are the interfaces I create used? Am I creating unintentional barriers?”

As a web developer, tools that allow me to test, audit, understand and improve are a must.


Tell us about something you've built in the past using Google tools.

I collaborated with my friends to build a web app aimed at helping people understand and analyze soccer games easier and faster with pre-trained ML models. This app includes accessing YouTube video sources, detecting targets with Yolo-v3 in TensorFlow, accelerating computation with Colab GPU, and storing results in Google Cloud.


What advice would you give someone starting in their developer journey?

Many developers who start their journey come from other areas of expertise or industries. Imagine a journalist, nurse, or primary school teacher who wants to start a developer journey. They may feel they need to throw away all the knowledge they have acquired.

On the contrary, I believe prior knowledge is key to standing out as a developer. Every person has a different combination of interests, talents, and skills. Master the basics, and shine with your own story.

From meeting talented developers to exciting keynotes, there’s so much to look forward to at Google I/O 2023. To optimize your experience, create or connect a developer profile, and start saving content to My I/O to build your personal agenda. Share your experience with us by using #GoogleIO across your social media so we can find you!

6 Flutter/Dart Projects from Google Dev Library to Kickstart Your Next Project

Posted by Swathi Dharshna Subbaraj, Project Coordinator, Google Dev Library

Developers can build, test, and deploy any application from a single codebase in Flutter. With high performance and code reusability, it has transformed the app development process. Flutter has become the go-to framework for developers as it streamlines the development process, allowing applications to be built on multi-platform with ease and efficiency.

In this blog, we will explore 6 Flutter/Dart projects from Google Dev Library from building weather apps to Tetris games. These projects will help you grow as a developer, and inspire you to build your first open source project. Let's dive in!

Flutter Design Patterns by Mangirdas Kazlauskas

screen grab of Flutter design patterns by Mangirdas Kazlauskas

Design patterns are reusable solutions to common software development problems. They help you create software that is easier to maintain, extend, and refactor. Written in Dart, this repository showcases all 23 design patterns, as described in Design Patterns: Elements of Reusable Object-Oriented Software, to help you learn and apply design patterns in your own projects, improving the quality and maintainability of your code. 

Check out Flutter design patterns


Smart Home App by Lakhan Kumawat

A mobile application (developed using Flutter and Dart) designed to control various smart home devices. The app also allows users to create custom scenes to automate device actions based on certain conditions or events. 

Check out the Smart Home App


Photo Manager by Alex Li

Learn about an easy-to-use package for accessing a device's photo library, including operations like retrieving images, videos, and albums, as well as deleting, creating, and updating files in the photo library. This package is built using the Flutter plugin architecture, which enables it to interact with native platform APIs for accessing photos and videos on iOS and Android devices. 

Check out photo_manager


Tetris Flutter Game by Mouaz M. Al-Shahmeh

This project implements the classic Tetris game using the Flutter framework. It’s structured into several classes that handle different aspects of the game. 

Check out Tetris Flutter game


FlutterGen by Daichi Furiya

FlutterGen is a code generator tool that helps you automate the process of generating boilerplate code for assets and fonts, making it easier to use them in Flutter projects. It works by scanning a project directory for specified assets and font files and generates code that can be easily used within a Flutter application. Overall, FlutterGen can save you time and effort in managing assets and fonts in your Flutter projects. 

Check out the FlutterGen package


Flutter Maps by Souvik Biswas

This app uses the Google Maps SDK & Directions API when coding with Flutter. It offers several location-based functions, including the ability to detect the user's current location. It also uses Geocoding to convert addresses into coordinates and vice versa, and allows users to add markers to the map view. 

Check out the Flutter Maps package


Are you actively contributing to the #FlutterDev community? Become a Google Dev Library Contributor!

Google Dev Library is a platform for showcasing open-source projects featuring Google technologies. Join our global community of developers to showcase your projects. Submit your content.

Google Dev Library Newsletter: 20th Edition

Posted by the Dev Library team

In this newsletter, we’re highlighting the best projects developed with Google technologies that have been contributed to the Google Dev Library platform. We hope this will spark some inspiration for your next project!


Highlights of the Month - Cloud Champions


Google Anthos in a nutshell by Navveen Balani


GCP Anthos Config Management Architecture

Dive into the overview on Anthos Service Mesh (ASM) and go through the topology supported by ASM and high level steps to implement multi cluster service mesh on a single and multiple VPC network.

Read more on Dev Library


Google Cloud Contact Center Artificial Intelligence (CCAI) by Rubens Zimbres

Explore the concept of CCAI and how it can be used to improve customer service, along with tools that can be integrated with existing contact center infrastructure to automate and optimize various processes.

Read more on Dev Library


Build a chat server with Cloud Run by Jaeyeon Baek

Explore how to build a chat server with Cloud Run using Python as the development language with the FastAPI framework.

Read more on Dev Library


Android


DocuBox by Vaibhav Jaiswal

Learn to build an app like DocuBox, which is designed to manage and organize documents on an Android device.

WebRTC Android by Jaewoong Eum

Understand how the WebRTC pre-compiled library for Android reflects the recent WebRTC updates to facilitate real-time video chat for Android.

WebRTC in Jetpack Compose by Jaewoong Eum

Discover how the project demonstrates WebRTC protocol to facilitate real-time video communications with Jetpack Compose.

TabSync, a lightweight synchronizer between Android's Tabs and Lists by Ahmad Hamwi

Learn how to add a synchronizer between Android’s RecyclerView and TabLayout, and what are the use cases of such on mobile devices.


Angular


Directives in practice: user role-based element control by Paweł Kubiak

Explore the concept of structural and attribute directives in Angular, which can be added to HTML elements to modify behavior or appearance.


Flutter


Ultimate guide to becoming a Flutter expert by Isaac Adariku

Become an Expert Flutter developer by mastering these concepts.

Handling complex HTML in Flutter by Tanmoy Karmakar

Discover how to handle complex HTML content like tables, images, and links in a Flutter app using the flutter_html package.

Firebase Cloud Messaging (FCM) with Flutter by Ayesha Iftikhar

Learn how to use FCM in Flutter apps. FCM is a cloud messaging service that allows you to send notifications and messages to devices on different platforms, including Android, iOS, and the web.

Understanding app localization in Flutter by Caleb Jesusegun

Take a deep dive into app localization and learn how to implement it in Flutter using the intl package.


Machine Learning


Visualizing custom TFX artifacts with InteractiveContext by Suzen Fylke

Learn how you can use InteractiveContext to visualize custom TFX artifacts.

How is generative machine learning transforming finance? By Hannes Hapke

Follow these detailed steps to adopt large generative models for domain-specific, fine-tuned generative models using the TensorFlow ecosystem.


Yonatan Levin, Android GDE, uses his developer superpowers to help refugees in Ukraine

Posted by Kevin Hernandez, Developer Relations Community Manager

Headshot of Yonatan Levin, smiling
Yonatan Levin, R&D Tech Lead, Monday.com

Initial reaction to the news

At the beginning of Russia’s invasion of Ukraine, Android GDE Yonatan Levin was confused. He started his day just like any other - with exercise and a book - but on the day of the invasion, his phone was bombarded with text messages from friends, relatives, and coworkers. Normally a hard worker, Yonatan tried to go into work but as he sat at his desk, he had a distracting thought in the front of his mind. He recounts, “I was staring at my monitor and in my head, all I kept repeating was, ‘I have to do something, I have to do something.’” He messaged coworkers about the situation to see what they could do and eventually, the leadership of his or gave Yonatan their blessing to go to the Ukraine / Poland border and help the refugees. Yonatan and his friends immediately packed their bags and set out to Poland.

Arriving at the border

Yonatan and his friends landed and immediately drove 6 hours from Warsaw to the border where camps organized by volunteers were located. When he got there, he and his friends felt immediate shock. They saw thousands of refugees crammed in a small space with their whole lives packed into bags. His feeling of shock quickly wore off as he saw the unorganized volunteer efforts; he started focusing on ways to support relief efforts as a developer.

Yonatan noticed that there were volunteers arriving from all over Europe to offer free rides, accommodation, or even work opportunities. However, there was little technology being used - volunteers held up signs with locations they were driving to. The current matchmaking process was inefficient, so he decided to build an Android app and a solution on top of monday.com (an all-in-one work management software) where volunteers with cars and refugees registered online and were matched based on where they needed to go.

Using technology to turn chaos into order

Just like any new idea or a startup, Yonatan’s group went through iterations before they had a solution that truly worked. To replace the cardboard signs that volunteer drivers held up, Yonatan and his friends bought laptops and a TV so they could display a list of drivers and their destinations. Then, they matched refugees with volunteer drivers - but this proved to be a manual solution. They offered this solution to other camps but when they came back to the original site, they found that the laptops were closed and volunteers reverted back to the old system of holding up cardboard signs. This was a sign to go back to the drawing board to create something that would stick.

While the laptops and TV screens helped, there were still large queues at the camps as busloads of refugees came in every few minutes. With monday.com, they created a registration form for the refugees and a completely new process. Once refugees arrived at the camp, they received a wristband with a QR code, registered their names, and selected what they needed: food, sim cards, a bed, a ride to a different city, etc. This new process took just 10 minutes and they built a dashboard to keep track of data in order to dedicate resources where they were needed. For example, if the most in-demand destination was Warsaw, volunteers knew to recruit more drivers heading there.

Yonatan and his friends were able to pull off the impressive feat of developing an entire Android app with 3rd party APIs integrations for driver verification and a core database with monday.com in just one night. “To build an app in one night is amazing. You can not easily do this with other platforms,” he observed. This was a turning point for the camps and volunteer organizers embraced this system.

Reflecting a year later

Yonatan hopes to inspire others through his experience. “This is something that happened very close to me. If I did something about it, I hope others know they can help too,” he urges. He expanded the system to other camps and remembers one of the organizers beaming that it was the best software they have ever used. Yonatan and his colleagues used their expertise to help refugees get to safety and he reflects on being a developer by saying, “It is a power that we developers have - to identify a huge pain and solve it with relatively minimal effort, sometimes in a matter of hours. This is a super power.”

Yonatan’s motto is to help in any way you can. He encourages other developers, “Things happen everywhere, all the time. Do not distance yourself from the struggles of others. Instead, search for ways you can help them.” Due to the changing environment, the app is not being used today but countless refugees were driven to safety thanks to Yonatan's developer superpowers.

You can find Yonatan on LinkedIn or Twitter.

The Google Developer Experts (GDE) program is a global network of highly experienced technology experts, influencers, and thought leaders who actively support developers, companies, and tech communities by speaking at events and publishing content.

Developer Journey: April 2023

Posted by Lyanne Alfaro, DevRel Program Manager, Google Developer Studio

Developer Journey is a monthly series to spotlight diverse and global developers sharing relatable challenges, opportunities, and wins in their journey. Every month, we will spotlight developers around the world, the Google tools they leverage, and the kind of products they are building.

This month, it’s our pleasure to feature three members from the Google Developer Experts community. Enjoy reading through their entries below and be on the lookout on Google Developer communities’ social media platforms, where we will also showcase their work.


Ruqiya Bin Safi

Headshot of Ruqiya Bin Safi smiling

Google Developer Expert, Machine Learning

Women Techmakers Ambassador

Jeddah, Saudi Arabia

Data Scientist

Twitter

LinkedIn

What Google tools have you used to build?

I used TensorFlow, one of the most widely used tools for building machine learning models. It is employed in a variety of applications including image recognition, speech recognition, and natural language processing.

Besides TensorFlow, I have used several cloud-based products for ML/AI development, such as Google's Vertex AI. This powerful platform enables developers to accelerate machine learning development and deployment by providing a unified platform for data, AI, and tooling for both pre-trained and custom models. With Vertex AI, developers can implement MLOps practices to efficiently manage, monitor, and govern their ML workloads. This includes features like automated model tuning, model management, and model serving.

Another useful Google tool that I often use is Google Colab, a cloud-based notebook that enables users to run and share Jupyter notebooks with Python code, including TensorFlow code.

Which tool has been your favorite to use? Why?

One of my favorite tools to use is Google Vertex AI. This platform provides an end-to-end solution for building, deploying, and managing machine learning models. It offers a user-friendly interface for data processing, model training, and model deployment without requiring extensive knowledge of machine learning.

Google Vertex AI also has a wide range of pre-built models, such as image and speech recognition, text classification, and more - which can be used to jumpstart machine learning projects. The platform also allows for customization of these pre-built models or the ability to create your own models. Additionally, it provides automatic hyperparameter tuning, which helps to optimize model performance.

Another great feature of Google Vertex AI is its scalability. It can handle large datasets and can automatically scale resources up or down based on demand, making it ideal for organizations with varying machine learning needs.

Overall, Google Vertex AI is a powerful and user-friendly tool that makes machine learning accessible to a wider audience. Its combination of pre-built models, customization options, automatic hyperparameter tuning, and scalability make it an excellent choice for both beginners and advanced machine learning practitioners.

Tell us about something you've built in the past using Google tools.

I collaborated with my team in the Smartathon competition to develop an object detection model utilizing two distinct methods: YOLOv3 Tensorflow, pre-trained on ImageNet dataset, and Google AutoML. Our primary goal was to accurately identify and locate various objects within images. The Smartathon competition specifically targets visual pollution on street imagery taken from a moving vehicle. The objective is to introduce a new field of automated visual pollution classification for environmental management using advanced technology.

Meanwhile, participants simulate human learning experience by training and testing convolutional neural networks for picture identification and visual pollutant classification. The competition aims to create a "visual pollution index" for urban areas, which could become a new metric in urban environmental management. The competition dataset consists of raw sensor camera inputs captured by a fleet of multiple vehicles in a specific geographic area in KSA. We were motivated to participate and to have an impact on further development in city planning and to empower communities worldwide.

What advice would you give someone starting in their developer journey?

  • Choose a specific field or technology that you are interested in and focus on it. There are so many areas of development to explore, so it's important to identify your interests and invest your time and energy in developing expertise in that area.
  • Practice coding regularly. The more you practice, the better you will become.
  • Join a developer community or attend developer meetups. This can help you learn from other developers, get feedback on your work, and stay up-to-date on the latest trends and technologies.
  • Read documentation and tutorials regularly. This will help you stay up-to-date on the latest trends and technologies and keep your skills sharp.
  • Don't be afraid to ask for help. Developers are a helpful community, and there are many resources available online to help you with any questions or issues you may encounter.
  • Develop good coding habits early on. This includes writing clean and readable code, commenting on your code, and using version control.
  • Always be willing to learn and adapt. Technology is constantly evolving, so it's important to stay open to new ideas and be willing to learn new technologies and programming languages.
  • Remember that becoming a successful developer takes time and effort, but with persistence, dedication, and a passion for coding, you can achieve your goals.

Antonio Leiva

Headshot of Antonio Leiva smiling

Google Developer Expert, Kotlin and Android

Madrid, Spain

CEO @ DevExpert

YouTube

Twitter

LinkedIn

What Google tools have you used to build?

Android and all the AndroidX libraries. In particular, I use Jetpack Compose a lot nowadays.

Which tool has been your favorite to use? Why?

Jetpack Compose is one of the tools that I'm dedicating most of my time to. As a trainer, I believe it's the right time to learn this technology, and as a developer, I see it as a game-changer in terms of interface creation.

The development speed is significantly increased, and in my opinion, it's a much more natural way to create UI code. Additionally, being cross-platform opens up a world of possibilities that were previously unimaginable.

Tell us about something you've built in the past using Google tools.

I have built many amazing applications while working on projects for other companies. The most challenging one was Plex, where we worked on a multimedia playback and personal catalog product. There, we faced many complexities that are hard to find in typical applications.

Perhaps the project I am most proud of has been the creation of my own teaching academy, DevExpert, where I help other programmers become experts in Android technologies and the Kotlin language.

What advice would you give someone starting in their developer journey?

One thing that truly ignited my passion for my work and software development was participating in community events hosted by the likes of Google Developer Groups, where I discovered many talented individuals who genuinely enjoyed their daily tasks.

This energy inspired me to improve in my profession and to create content that would assist others in similar situations.

So my advice is to become involved in communities, attend events, and dedicate time to helping others follow the same path.


Aurélie Vache

Headshot of Aurélie Vache smiling

Google Developer Expert, Cloud technologies

Toulouse, France

DevRel, OVHCloud

Twitter

LinkedIn

GitHub

Notist

What Google tools have you used to build?

As a developer and data lover, I use several Google products and I have been a Cloud enthusiast for many years.

I’ve used:

  • Google Cloud Platform: BigQuery, GKE, Cloud Run, Cloud Functions, Anthos, Pub/Sub, Cloud Code, Cloud Build, Container Registry
  • Android Studio
  • Google Maps API
  • GWT

When it comes to building, accessibility and AI also matter to me so I used Cloud Vision API, Cloud Text to Speech API, Cloud Speech to Text API & Cloud Translation API.

I am working for OVHcloud, a European Cloud provider, so I’m not using Google Cloud technologies at the moment, but I continue to use a language that I love: Golang. It is one of the languages used within OVHcloud to create new cloud provider services.

Moreover, for several years, I have been using and sharing a lot about Kubernetes and Isio - two projects created and open-sourced by Google.

Which tool has been your favorite to use? Why?

I have two tools in my mind when I am thinking about Google.

The first one is Google BigQuery. In my first company, we needed to analyze data for our internal teams and our customers, and the first technical architecture that we had put in place was based on the Hadoop ecosystem with a cluster under Cloudera of ten hosted servers. The performance was there, but the time spent on maintenance and operations was high.

When BigQuery was mature enough and met our needs on paper, we decided to test this new Google technology and migrate our products. We’ve spent years creating tools related to BigQuery, customizing and fine-tuning queries, monitoring developments, and maintaining products.

Another tool that I love is Kubernetes. It is a container orchestrator created and open-sourced by Google that I discovered and used a lot at a previous job. Since then, I have used this tool often in production. I gave several talks at conferences on it, published many blog posts, and used sketchnotes to explain this technology in a visual way.

Now, I work with the OVHcloud teams who create and maintain managed Kubernetes clusters. It's a pleasure to test, give feedback, help on the UX and DX of the solutions, write articles, tutorials, talk to users, and just keep working daily with Kubernetes.

Tell us about something you've built in the past using Google tools.

In my first company, I co-created moderation and community management tools. First, there was an application that centralizes all conversational content flows in real time, regardless of the social network, website, or blog. This application, made in Java and Google Web Toolkit, is still used by teams of moderators, community managers, watchers, and supervisors who can moderate, classify, and apply a tone to the content of the messages.

After linking this tool to Google BigQuery to store data in real time, it was possible to do so much more. We could moderate content in post, generate customer reports, and dashboards for teams.

What advice would you give someone starting in their developer journey?

Learn every day. We are lucky to do a job that allows us to learn every day. You have the right to make mistakes and to learn from those mistakes properly.

There are plenty of great communities through which you could attend presentations. Talk to other developers and then feel free to share from your end as well.

One more thing: Trust yourself. Don't try to copy others. Be yourself. Stay yourself. Have confidence in yourself, in your ideas, and in your abilities.

GDE Women’s History Month Feature: Jigyasa Grover, Machine Learning

Posted by Kevin Hernandez, Developer Relations Community Manager

For Women’s History Month, we are celebrating Jigyasa Grover, ML GDE.

Photo of Jigyasa Grover, holding a cup of coffee, smiling
Jigyasa Grover, ML GDE, Senior ML Engineer, Twitter

Jigyasa Grover is a 10x award winner in AI and open source, a published book author in machine learning, and was most recently named one of the 50 most powerful women in technology to follow for 2023. Jigyasa has always been inspired by technology – with her father being a computer scientist for the government of India and playing with a toy laptop as a child. Google has also played an integral role in her career by providing resources and community every step of the way: from early in her university days through Google Summer of Code to today, where she is a Senior ML Engineer at Twitter and leverages the Women Techmakers and Google Developer Experts programs to connect with other developers and pay it forward through programs like Google Code-In.

Getting involved in the developer community

Things started rolling for Jigyasa in her first year at university when she discovered Pharo at the library, where she spent a lot of her time. As she started to dive deeper into Pharo, she read more and more about the open source community and eventually started reaching out to members of the community online. This led her to discover Google Summer of Code, an open source internship, where she was selected to participate as one of the youngest developers. After a successful stint in the program, Jigyasa was invited to participate again the following year, which proved to be a pivotal moment in her academic career. Up to this point, Jigyasa was working primarily on mobile and web app development. “The second year, the project that I was working on was more focused on building web scrapers, machine learning, NLP chatbots, and so on. That was my introduction to the world of machine learning which got me intrigued”, Jigyasa says. After this experience she started taking more courses related to machine learning, watched talks, worked on more machine learning projects, and interned at the National Research Council of Canada and then the Institute Research and Development in France. These experiences helped shape her career vision and she knew that machine learning would be her field of expertise.

Finding community through Google

Up until college, Jigyasa had always gone to all-girls schools so when she first got to engineering school, it was an eye-opening experience for her. She reflects, “I felt like a minority coming from a place where I was surrounded by girls all the time. That's when I started Googling different organizations and found organizations like Women Who Code, Women Techmakers, and Google Developer Groups.” These organizations exposed her to mentorship, resources, and events, and more. One such event was Google I/O, where she was invited to attend online. Many developer events reminded her of the lack of women's representation in the developer community. This inspired her to commit to the saying, "be the change you want to see in the world." Jigyasa would go on to pursue speaking opportunities at tech events and inspire other women developers with her passion and support.

After university, Jigyasa discovered the GDE program and the strong community the program offers. Jigyasa adds, “I think one of the most meaningful parts of the program is the community. I like how different Google programs cater to different kinds of audiences. For example, when I became a GDE, I was a part of the wider developer community but also connected with developers in my field of expertise - machine learning.” Jigyasa appreciates being able to interact with people in her field and is motivated by being surrounded by like-minded people. She has even been a guest on another GDE’s YouTube channel and was also given a chance to connect with Laurence Moroney, Lead AI Advocate at Google, who wrote the foreword for her book. Jigyasa credits Google developer programs for developing her career and expertise, “All of these programs have brought me great opportunities. Summer of Code, Google Developers Groups, Women Techmakers, and now GDE. All these programs have been so important in my journey and I'm forever grateful to them.”

Inspiration and advice

As an award winner and influencer in technology, Jigyasa is a role model for other women and is committed to helping women developers in their careers. She says, “It has definitely been a journey. From being involved in these communities, giving talks in numerous countries and cities. It's just been a domino effect.” In addition to speaking events, Jigyasa has published content, mentored through Google programs and has even designed curriculums at local colleges in the Bay Area.

Jigyasa urges other women developers to pursue opportunities for development and connection. Jigyasa has accomplished a lot in her career by reaching out to her communities and by saying yes to challenging opportunities. She is committed to supporting more women in their developer journey and driving representation in the field of machine learning.

You can find Jigyasa on LinkedIn, Twitter, or her personal site.

The Google Developer Experts (GDE) program is a global network of highly experienced technology experts, influencers, and thought leaders who actively support developers, companies, and tech communities by speaking at events and publishing content.

Navigating new routes, places and distance: Introducing Google Maps Platform to Dev Library

Posted by Swathi Dharshna Subbaraj, Project Coordinator, Google Dev Library

We are excited to announce that Google Maps Platform has now been officially added to the Dev Library! Continuous innovation and the integration of technology into our physical environment have become increasingly important. One product, Google Maps, has played a critical role in shaping the future of the internet. With these resources, developers have created applications that enable them to visualize geospatial data and build projects ranging from hyperlocal logistics to location-driven app development.

By adding Google Maps Platform, Dev Library contributors will be better able to create innovative and useful applications that utilize Google’s mapping, places, and routing data and features. Developers now have access to even more resources that can help take their projects to the next level.

As Alex Muramoto, the Google Maps Platform curator for Dev Library, said,“We’re excited to see developers across tech stacks using Google Maps Platform to build and showcase their projects on Google Dev Library. We hope these projects will provide inspiration and guidance to help your own development efforts”.

Let's explore some contributions from Dev Library authors who have implemented Google Maps Platform APIs and SDKs into their applications.


Contributions in Spotlights:



Flutter Maps by Souvik Biswas

This app uses Google Maps SDK & Directions API on flutter framework. It offers several location-based functionalities, including the ability to detect the user's current location.

It also utilizes Geocoding to convert addresses into coordinates and vice versa, and allows users to add markers to the map view. Moreover, it enables the drawing of routes between two places through the use of Polylines and Directions API, and calculates the actual distance of the route.

Learn more about Flutter Maps


How to integrate a customized Google Map in Flutter by Jaimil Patel

Learn how to use the Google Maps Flutter plugin to display a customized Google Maps view.

Explore key customization features like configuring the integration with Google Maps, adding a custom style to the map, and fetching the current location with the user's permission.

Learn more about the blog post

Customize the Google Map marker icon In Flutter by Lakshydeep Vikram

Learn how to use the Google Maps Flutter plugin to display a customized Google Maps view.

EDiscover how to customize a Google Maps marker icon by adding an image of your choice in Flutter in just a few steps: add the Google Maps Flutter plugin to the Flutter application, then describe how to use the GoogleMap widget provided by the plugin to display the map on the screen.

See how it's done

Google Dev Library is a platform for showcasing open-source projects and technical blogs featuring Google technologies. Join our global community of developers and showcase your Google Maps projects by submitting your content to the Dev Library.

Google Dev Library Letters: 19th Edition

Posted by the Dev Library team

In this newsletter, we’re highlighting the best projects developed with Google technologies that have been contributed to the Google Dev Library platform. We hope this will spark some inspiration for your next project!


Contributions of the Month


[ML] Serving Stable Diffusion by Chansung Park

Learn the various ways to deploy Stable Diffusion with TensorFlow Serving, Hugging Face Endpoint, and FastAPI.


[ML] Textual inversion pipeline for Stable Diffusion by Chansung Park

Dive into this repository which demonstrates how to manage multiple models and their prototype applications of fine-tuned Stable Diffusion on new concepts by Textual Inversion.

Read more on DevLibrary 


[Flutter] Animated soccer rating hexagon by Prateek Sharma

Create a hexagon widget in Flutter that displays the ratings of a soccer player or team. The six sides represent a different aspect of the player or team's rating such as speed, strength, and accuracy.

Read more on DevLibrary 


Android & Kotlin


Mastering Kotlin Coroutines by Amit Shekhar

Dive into an introduction to coroutines in Kotlin programming language. Coroutines are a way to write asynchronous and non-blocking code in a sequential and easy-to-understand manner.

Kotlin Symbol Processing (KSP) for code generation by Tim Lin

Discover more about KSP API you can use to develop lightweight compiler plugins, which helps you get the complete source code information during compile time.

Form Conductor by Naing Aung Luu

Learn about form conductor. More than form validation, it provides a handful of reusable API to construct a form in simple easy steps.

MovieDB by Gabriel Bronzatti Moro

Discover how to fetch data from Movie DB API and allow users to search for movies and view details and store them on a local database in this Android project.


Angular


A complete guide to Angular Multilingual Application by Hossein Mousavi

Dive into the technical aspects of building a multilingual Angular application, starting with the localization of the application's text.


Flutter


Bank cards UI by Ethiel Adiassa

See how Flutter can be used to create aesthetically pleasing and functional UI designs for banking applications.

macOS UI by Reuben Turner

Dive into the repo resource for designers and developers looking to create beautiful templates and tutorials to create macOS applications and interfaces.


Google Cloud


Search for Brazilian laws using Dialogflow CX and matching engine by Rubens Zimbres

Develop a chatbot using Dialogflow CX and a matching engine to help users search for something specific in legislation.

Awesome CloudOps automation by Doug Sillars

Learn how a single repository could satisfy all your day-to-day CloudOps automation needs.

Serverless Kubernetes on Google Cloud Platform by Gursimar Singh

Learn how serverless technologies like Cloud Run can be used to simplify and expedite the process of designing software applications.

Implement secure CI/CD with Workload Identity Federation, GitLab CI, and Cloud Deploy by Ezekias Bokove

See how to implement a secure Continuous Integration/Continuous Deployment (CI/CD) pipeline using Workload Identity Federation and GitLab CI.