Google Developers Launchpad is an accelerator program that excels in helping startups solve the world’s biggest problems through the best of Google, with a focus on advanced technology. However our impact doesn’t stop there. A distinguishing aspect of our program is the network that we build with, and for, our founders. Over the past five years, Launchpad has created a global community of founders based on deep, genuine connections that we foster during the program, and that community supports one another in remarkable ways.
Posted by Franziska Hauck, DevRel Ecosystem Regional Lead DACH
When we look at the community landscape in programming in 2019, we find people of all backgrounds and with expertise as varied as the people themselves. There are developer groups for every imaginable interest out there. What becomes apparent, though, is that the allocation is not as equally balanced as it might be. In Europe, we observe that more programming women are in front-end development and active in the associated groups.
But what about in cloud? Recently, Global Knowledge published a ranking that showed that Google Cloud Certification is the most coveted achievement in the labor market. We knew that the interest was there. How could we capture it and get more women and diverse poeple involved? [Indeed, we had seen women succeed and in this chosen field at that. It was time to contribute to seeing more success stories coming our way.]
Immediately the Cloud Study Jam came to mind. This campaign is a self-study, highly individualized study jam for Google Developer Groups (GDGs) and other tech meetups. Organizers get access to study materials to help them prepare for their event, register it on the global map and conduct the activity with their attendees in any location they choose. Attendees receive free Qwiklabs credits to complete a number of courses of their choice. The platform even offers a complete Google Cloud environment - the best training ground for aspiring and advanced programmers!
GDGs form one pillar of our community programs. One of the other cornerstones is the Women Techmakers program with which we engage and involve organizers interested in increasing diversity worldwide. Cloud Study Jams in the local groups, with dedicated Women Techmakers, seemed like the most natural fit for us. And, as we soon realized, so thought the organizers.
For us - Almo, Abdallah and Franziska - that was the start of a great initiative and an even bigger road trip. Together with local volunteers from Google and the groups, we held 11 Cloud Study Jams all over Europe in March and April.
Over 450 attendees, 80 % of them women, learned about Cloud technologies.
This was some of their feedback:
“This made me aim for the Cloud Certificate exam as my next goal in my career!”
“I found useful everything! The labs are interesting... and I would like to have more meetups like this.”
“The labs are interesting, at least both that we did. I would like to have more meetups like this!”
As surmised, many attendees were indeed front-end developers. It was amazing to see that, with the courses, they “converted” to Cloud and are now going forward as ambassadors. We also saw quite a big number of data scientists and back-end developers. All in all, it was a great mix of enthusiastic participants.
Cloud Study Jams are a great way to engage group members by guided materials. The way they are designed makes it easy for the organizers to focus on the participants. Since attendees follow their chosen courses on their own organizers act as facilitators. They need only jump in when organizational questions arise.
If you would like to hold a Cloud Study Jam with your group or organization you will find more information here. Register your event via the link to get access to the free Qwiklabs credits for your attendees.
We are very much looking forward to supporting you!
Almo, Abdallah, Franziska & the European DevRel Ecosystem
Posted by Wesley Chun (@wescpy), Developer Advocate, G Suite
We recently introduced Hangouts Chat to general availability. This next-generation messaging platform gives G Suite users a new place to communicate and to collaborate in teams. It features archive & search, tighter G Suite integration, and the ability to create separate, threaded chat rooms. The key new feature for developers is a bot framework and API. Whether it's to automate common tasks, query for information, or perform other heavy-lifting, bots can really transform the way we work.
In addition to plain text replies, Hangouts Chat can also display bot responses with richer user interfaces (UIs) called cards which can render header information, structured data, images, links, buttons, etc. Furthermore, users can interact with these components, potentially updating the displayed information. In this latest episode of the G Suite Dev Show, developers learn how to create a bot that features an updating interactive card.
As you can see in the video, the most important thing when bots receive a message is to determine the event type and take the appropriate action. For example, a bot will perform any desired "paperwork" when it is added to or removed from a room or direct message (DM), generically referred to as a "space" in the vernacular.
Receiving an ordinary message sent by users is the most likely scenario; most bots do "their thing" here in serving the request. The last event type occurs when a user clicks on an interactive card. Similar to receiving a standard message, a bot performs its requisite work, including possibly updating the card itself. Below is some pseudocode summarizing these four event types and represents what a bot would likely do depending on the event type:
function processEvent(req, rsp) { var event = req.body; // event type received var message; // JSON response message if (event.type == 'REMOVED_FROM_SPACE') { // no response as bot removed from room return; } else if (event.type == 'ADDED_TO_SPACE') { // bot added to room; send welcome message message = {text: 'Thanks for adding me!'}; } else if (event.type == 'MESSAGE') { // message received during normal operation message = responseForMsg(event.message.text); } else if (event.type == 'CARD_CLICKED') { // user-click on card UI var action = event.action; message = responseForClick( action.actionMethodName, action.parameters); } rsp.send(message); };
The bot pseudocode as well as the bot featured in the video respond synchronously. Bots performing more time-consuming operations or those issuing out-of-band notifications, can send messages to spaces in an asynchronous way. This includes messages such as job-completed notifications, alerts if a server goes down, and pings to the Sales team when a new lead is added to the CRM (Customer Relationship Management) system.
Hangouts Chat supports more than JavaScript or Python and Google Apps Script or Google App Engine. While using JavaScript running on Apps Script is one of the quickest and simplest ways to get a bot online within your organization, it can easily be ported to Node.js for a wider variety of hosting options. Similarly, App Engine allows for more scalability and supports additional languages (Java, PHP, Go, and more) beyond Python. The bot can also be ported to Flask for more hosting options. One key takeaway is the flexibility of the platform: developers can use any language, any stack, or any cloud to create and host their bot implementations. Bots only need to be able to accept HTTP POST requests coming from the Hangouts Chat service to function.
At Google I/O 2018 last week, the Hangouts Chat team leads and I delivered a longer, higher-level overview of the bot framework. This comprehensive tour of the framework includes numerous live demos of sample bots as well as in a variety of languages and platforms. Check out our ~40-minute session below.
To help you get started, check out the bot framework launch post. Also take a look at this post for a deeper dive into the Python App Engine version of the vote bot featured in the video. To learn more about developing bots for Hangouts Chat, review the concepts guides as well as the "how to" for creating bots. You can build bots for your organization, your customers, or for the world. We look forward to all the exciting bots you're going to build!
Ever found yourself trying to figure out the right way to combine mobile, cloud, and web technologies, only to be lost in the myriad of available offerings? It can be challenging to know the best way to combine all the options to build products that solve problems for your users.
That's why we created Build Out, a new YouTube series where real engineers face-off building fake products.
Each month we, (Reto Meier and Colt McAnlis), will present competing architectures to help show how Google's developer products can be combined to solve challenging problems for your users. Each solution incorporates a wide range of technologies, including Google Cloud, Android, Firebase, and Tensorflow (just to name a few).
Since we're engineers at heart, we enjoy a challenge—so each solution goes well past minimum viable product, and explores some of the more advanced possibilities available to solve the problem creatively.
Now, here's the interesting part. When we're done presenting, you get to decide which of us solved the problem better, by posting a comment to the video on YouTube. If you've already got a better solution—or think you know one—tell us about it in the comments, or respond with your own Build Out video to show us how it's done!
Episode #1: The Smart Garden.
In which we explore designs for gardens that care for themselves. Each design must be fully autonomous, learn from experience, and scale from backyard up to large-scale commercial gardens.
You can get the full technical details on each Smart Garden solution in this Medium article, including alternative approaches and best practices.
You can also listen to the Build Out Rewound Podcast, to hear us discuss our choices.