Posted by Erica Hanson, Global Program Manager, Google Developer Student Clubs
Hey, student developers! If you’re passionate about programming and are ready to use your technology skills to help your community, then you should become a Google Developer Student Clubs Lead!
Application forms for the upcoming 2021-2022 academic year are NOW OPEN. Get started at goo.gle/gdsc-leads.
Want to know more? Learn more about the program below.
Google Developer Student Clubs are university based community groups for students interested in Google developer technologies. With clubs hosted in 106 countries around the world, students from undergraduate and graduate programs with an interest in leading a community are welcome. Together, students learn the latest in Android App Development, Google Cloud Platform, Flutter, and so much more.
By joining a GDSC, students grow their knowledge in a peer-to-peer learning environment and put theory to practice by building solutions for local businesses and their community.
As a Google Developer Student Club Lead you will have the chance to…
Google Developer Student Clubs are now in 106 countries with 1250+ groups. Find a club near you or learn how to start your own, here.
We encourage students to submit their forms as soon as possible. You can learn more about your region’s application deadline, here. Make sure to learn more about our program criteria.
From working to solve the United Nations Sustainable Development Goals to helping local communities make informed voting decisions, Google Developer Student Club leads are learning valuable coding skills while making a true difference. As a lead from a Club in Kuala Lumpur, Malaysia put it,
“The secret to our club’s success was that we were able to cultivate a heart of service and a culture of open mentorship.”
We can’t wait to see what our next group of Google Developer Student Club leads will accomplish this year. Join the fun and get started, here.
*Google Developer Student Clubs are student-led independent organizations, and their presence does not indicate a relationship between Google and the students' universities.
Posted by Wesley Chun, Developer Advocate, Google Cloud
Since its initial launch in 2008 as the first product from Google Cloud, Google App Engine, our fully-managed serverless app-hosting platform, has been used by many developers worldwide. Since then, the product team has continued to innovate on the platform: introducing new services, extending quotas, supporting new languages, and adding a Flexible environment to support more runtimes, including the ability to serve containerized applications.
With many original App Engine services maturing to become their own standalone Cloud products along with users' desire for a more open cloud, the next generation App Engine launched in 2018 without those bundled proprietary services, but coupled with desired language support such as Python 3 and PHP 7 as well as introducing Node.js 8. As a result, users have more options, and their apps are more portable.
With the sunset of Python 2, Java 8, PHP 5, and Go 1.11, by their respective communities, Google Cloud has assured users by expressing continued long-term support of these legacy runtimes, including maintaining the Python 2 runtime. So while there is no requirement for users to migrate, developers themselves are expressing interest in updating their applications to the latest language releases.
Google Cloud has created a set of migration guides for users modernizing from Python 2 to 3, Java 8 to 11, PHP 5 to 7, and Go 1.11 to 1.12+ as well as a summary of what is available in both first and second generation runtimes. However, moving from bundled to unbundled services may not be intuitive to developers, so today we're introducing additional resources to help users in this endeavor: App Engine "migration modules" with hands-on "codelab" tutorials and code examples, starting with Python.
Each module represents a single modernization technique. Some are strongly recommended, others less so, and, at the other end of the spectrum, some are quite optional. We will guide you as far as which ones are more important. Similarly, there's no real order of modules to look at since it depends on which bundled services your apps use. Yes, some modules must be completed before others, but again, you'll be guided as far as "what's next."
More specifically, modules focus on the code changes that need to be implemented, not changes in new programming language releases as those are not within the domain of Google products. The purpose of these modules is to help reduce the friction developers may encounter when adapting their apps for the next-generation platform.
Central to the migration modules are the codelabs: free, online, self-paced, hands-on tutorials. The purpose of Google codelabs is to teach developers one new skill while giving them hands-on experience, and there are codelabs just for Google Cloud users. The migration codelabs are no exception, teaching developers one specific migration technique.
Developers following the tutorials will make the appropriate updates on a sample app, giving them the "muscle memory" needed to do the same (or similar) with their applications. Each codelab begins with an initial baseline app ("START"), leads users through the necessary steps, then concludes with an ending code repo ("FINISH") they can compare against their completed effort. Here are some of the initial modules being announced today:
webapp2
ndb
taskqueue
What should you expect from the migration codelabs? Let's preview a pair, starting with the web framework: below is the main driver for a simple webapp2-based "guestbook" app registering website visits as Datastore entities:
class MainHandler(webapp2.RequestHandler): 'main application (GET) handler' def get(self): store_visit(self.request.remote_addr, self.request.user_agent) visits = fetch_visits(LIMIT) tmpl = os.path.join(os.path.dirname(__file__), 'index.html') self.response.out.write(template.render(tmpl, {'visits': visits}))
A "visit" consists of a request's IP address and user agent. After visit registration, the app queries for the latest LIMIT visits to display to the end-user via the app's HTML template. The tutorial leads developers a migration to Flask, a web framework with broader support in the Python community. An Flask equivalent app will use decorated functions rather than webapp2's object model:
LIMIT
@app.route('/') def root(): 'main application (GET) handler' store_visit(request.remote_addr, request.user_agent) visits = fetch_visits(LIMIT) return render_template('index.html', visits=visits)
The framework codelab walks users through this and other required code changes in its sample app. Since Flask is more broadly used, this makes your apps more portable.
The second example pertains to Datastore access. Whether you're using App Engine's ndb or the Cloud NDB client libraries, the code to query the Datastore for the most recent limit visits may look like this:
limit
def fetch_visits(limit): 'get most recent visits' query = Visit.query() visits = query.order(-Visit.timestamp).fetch(limit) return (v.to_dict() for v in visits)
If you decide to switch to the Cloud Datastore client library, that code would be converted to:
def fetch_visits(limit): 'get most recent visits' query = DS_CLIENT.query(kind='Visit') query.order = ['-timestamp'] return query.fetch(limit=limit)
The query styles are similar but different. While the sample apps are just that, samples, giving you this kind of hands-on experience is useful when planning your own application upgrades. The goal of the migration modules is to help you separate moving to the next-generation service and making programming language updates so as to avoid doing both sets of changes simultaneously.
As mentioned above, some migrations are more optional than others. For example, moving away from the App Engine bundled ndb library to Cloud NDB is strongly recommended, but because Cloud NDB is available for both Python 2 and 3, it's not necessary for users to migrate further to Cloud Datastore nor Cloud Firestore unless they have specific reasons to do so. Moving to unbundled services is the primary step to giving users more flexibility, choices, and ultimately, makes their apps more portable.
For those who are interested in modernizing their apps, a complete table describing each module and links to corresponding codelabs and expected START and FINISH code samples can be found in the migration module repository. We are also working on video content based on these migration modules as well as producing similar content for Java, so stay tuned.
In addition to the migration modules, our team has also setup a separate repo to support community-sourced migration samples. We hope you find all these resources helpful in your quest to modernize your App Engine apps!
Posted by Christina Yeh, Google Registry Team
Who do you think of when you hear the words sister, daughter, mother? How about when the words are leader, founder, CEO? As a mom of three, I want my kids to grow up in a world where the second set of words is as likely as the first to bring a woman to mind. Which is why we’re elevating the voices of women and making sure their stories are heard in today’s #MyDomain series. On this International Women’s Day, Google Registry is sharing eight new videos — all featuring female leaders who are taking care of business on their .app and .dev domains.
Alice Truswell
Alice Truswell is co-founder of Snoop.app, a money-saving app. “Fear being forgettable more than fearing not fitting in,” she says, “because the earlier you get comfortable with your voice, the earlier you can start refining results.”
Annie Hwang
Annie Hwang is co-founder of Jemi.app, a company that helps creators and public figures interact with their audiences and make money. “Don't let imposter syndrome ever stop you,” she advises.“We've grown up in a society where we are constantly told that we should be a follower. Don't be a follower anymore; be a leader!”
Elena Czubiak
Elena Czubiak is the developer and designer behind saturdaydesign.dev and co-founder of imaginarie.app. She quit her day job in 2018 to start her own business and hasn’t looked back since. Elena says, "Remember that although it might feel like starting over, you'll quickly see that your unique experiences will help you solve problems and make connections that nobody else could."
Ifrah Khan
Ifrah Khan is co-founder of Clubba.app, a platform that provides virtual creative extracurricular clubs (led by college students) for kids ages 6 to 12. Ifrah encourages entrepreneurial women to find and connect with other women who are also working on their own ventures. “Really talk to them and get to know their journey,” she says. “If they fundraised, how did they fundraise? Fundraising is so hard when you start your own business in general, but as a woman it’s even harder.”
Rita Kozlov
Rita Kozlov is a product manager who leads the Cloudflare Workers product, which uses the workers.dev domain. Rita’s advice for women who want to become a product manager is, “Don’t be afraid to ask lots of questions. In product management that’s definitely 100% a strength and never a weakness.”
Romina Arrigoni Samsó
Romina Arrigoni Samsó is founder and CEO of ADDSKIN.app, a social marketplace for skincare, where community recommendations help customers choose the best products. Romina says, “La gracia de la tecnología es que como dice el dicho, el avión se construye en el aire. Lo importante es lanzarse,” which translates to, “The grace of technology is that, as the saying goes, the plane is built in the air. The important thing is to launch.”
Soraya Jaber
Soraya Jaber is co-founder and CEO of Minsar.app, a no-code AR-VR creative and publishing platform. “We don't care about your age, your gender, your race, or sexual orientation — there is no space where you are not allowed,” Soraya says.“Don't hinder yourself, jump into entrepreneurship. I can assure you that's a hell of a great adventure!”
Stefania Olafsdóttir
Stefania Olafsdóttir is the co-founder and CEO of Avo.app, a next-generation analytics governance company. Her advice? “It’s way more important to be brave than to be perfect.”
To see a special video featuring all these amazing women, check out goo.gle/mydomain. If you have a unique story to share about a .app, .dev, or .page domain and would like to be considered for our series, please fill out this short application form. Here’s to helping tell the stories of women everywhere so that we may inspire generations to come.
Posted by Jermaine Robinson, Google Registry Team
It’s been two years since the Google Registry team launched its #MyDomain video series, which highlights creators in tech. While we’re proud of the initiatives we’ve featured so far, we want to do a better job of representing all voices. In honor of Black History Month, we’re featuring six Black creators who are making waves in the digital space.
Dairien Boyd, #MyDomain Video
Dairien Boyd is a founding member and principal designer at All Turtles, a mission-driven product studio. He’s responsible for building experiences that are both fun and useful within mmhmm.app — a project born out of the COVID-19 pandemic. The new reality of working remotely set Dairien and his team on a path to design a better way to deliver presentations — one that works in an all-video conferencing world. They created a powerful presentation tool that provides immersive backgrounds and visual effects to help add a bit of fun to virtual meetings.
Benjamin Williams, #MyDomain Video
Benjamin Williams also found new sources of inspiration during the pandemic. A software engineer at Google by day, Williams launched floward.app — a journaling and creative writing application that encourages “imperfection” — as a way to cope with the challenges and stresses that come from being stuck at home. By providing daily thought-provoking prompts, users can get their thoughts down on “paper” within a simple UI that intentionally prevents going back and making revisions; this way, they stay in the flow of writing instead of fixating on what they’ve already written.
Rhianna Jones, #MyDomain Video
A writer and model by day, Rhianna Jones started a campaign for “Afrovisibility” as a true passion project. Her campaign, which pushes for more widespread adoption of natural hair emojis within universal keyboards (including Android and iOS), went viral. It wasn’t long before her domain — afrohairmatters.page — helped Jones connect with industry leaders. “The opportunity to collaborate only helps the culture move forward in a direction that better represents the rainbow of tech users,” Jones says. While it might seem small to some, the addition of natural hair emojis is a major step towards promoting Afrovisibility in everyone’s daily digital language and lives — especially for a younger generation that is all about ✊🏿 🤗 👩🏾 💕.
Michael Broughton, #MyDomain Video
Michael Broughton, CEO of Perch, launched his credit-building app after getting denied a loan to cover the remainder of his college tuition while attending the University of Southern California. “I was told to get a credit card in order to build credit, but when I applied for a credit card, they said I needed to build my credit score first,” he says. “This made me realize how difficult it can be for individuals to develop their personal finances without already having a foot in the door.” Instead of feeling defeated, he channeled his frustrations into launching getperch.app, a service that helps others build credit history and boost their credit scores.
Edward Cunningham, #MyDomain Video
Edward Cunningham is cofounder and CTO of NXSTEP.app, a platform that allows high-school seniors to connect with current college students to get deeper insights into life within the walls of various academic institutions. By connecting with currently-enrolled college students, seniors can better determine the right college for them. It’s like matchmaking for higher education: helping students decide on their future alma mater based on personality, interests, and goals.
Adesina Tyler, #MyDomain Video
Adesina Tyler is our youngest creator in this month’s #MyDomain series. Tyler is a junior in high school, juggling the complexities that come with distance learning, schoolwork and extracurricular activities. As busy as he’s been, he somehow found the time to launch wondershop.page as part of his participation in Google’s technology program, Code Next. He built his website (an online retail store) as a way to better understand the basic building blocks of e-commerce.
Videos of everyone featured above are available at goo.gle/mydomain. Ensuring proper representation of all groups is crucial for everyone in tech. We all benefit and learn from hearing the full spectrum of voices — especially the voices of those who’ve been underrepresented for far too long.
We want to actively do our part in moving the industry in the right direction by celebrating all entrepreneurs, founders and creators. If you have a unique story to share about an .app. ,dev, or .page domain and would like to be considered for our next series, please fill out this short application form and help us produce and share content that better represents all of us in an industry that still has a long way to go.
Posted by Nikita Gandhi (Community Manager, GDG India), Nilay Yener (Program Manager, Flutter DevRel)
Happy New Year folks. It’s the perfect time of year to learn something new! Do you have an app idea you’ve been dreaming of over the holidays? If so, we have just the opportunity for you! Starting February 1st, leading up to our big event on March 3rd, join us for #30DaysOfFlutter to kickstart your learning journey and meet Flutter experts in the community. Whether you are building your first Flutter app or looking to improve your Flutter skills, we have curated content, code labs, and demos!
Flutter is Google’s open source UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase. It’s one of the fastest growing, most in-demand cross platform frameworks to learn and is used by freelance developers and large organizations around the world. Flutter uses the Dart language, so it will feel natural to many of you familiar with object-oriented languages.
Along with the curated content, we will also have four live AskMeAnything sessions (#AMAs), where you can meet members of Google’s Flutter team and community. You can also join us on the FlutterDev Discord channel, where you can meet the other members of the community, ask and answer questions, and maybe make some new Flutter friends too!
Does this sound exciting? Visit the 30 Days of Flutter website to get more information and to register to join.
Your learning journey with Flutter for the month will look like this::
Week 1
Receive curated content to your inbox. Meet other Flutter Devs on Discord. Attend Kick Off Webinar on February 1st.
Week 2
Receive more content. Start building your first Flutter app. Join the webinar and ask your questions.
Week 3
Work on your app and attend the 3rd webinar to ask your questions.
Week 4
Complete your project and learn how to share it with the Flutter community.
Are you ready to learn one of the most in demand developer skills in the world?
Sign up to be a part of the journey and be sure to follow @FlutterDev on Twitter, to get updates about #30DaysOfFlutter.
Google Registry is always on the lookout for interesting websites that have launched using our top-level domains. 2020 was a rough year, so to help you make 2021 (at least a little bit) better, we’ve rounded up 21 ways you can start something .new, get .appy, turn a new .page, and make .dev(elopment) a breeze.
Start something .new:
Get .app(y):
Turn to the next .page:
Make .dev(elopment) a breeze:
Happy New Year from all of us at Google Registry! We hope these websites and apps help you get the most out of 2021.
Posted by Patricia Correa - Director, Global Developer Marketing
Editor's note: Last night, on the eve of the Black Consciousness Day in Brazil, a Black man, João Alberto Silveira Freitas, died after being beaten at a supermarket in Porto Alegre, in the south of the country. We would like to express our sentiments to the Black community in Brazil.
Today is Black Consciousness Day in Brazil, a country where over 55% of the population identifies as Black. To commemorate, we are showcasing local developers who create apps, games and websites. Watch this video to hear about their journeys, tips and passions.
Meet the founders & developers
Vitor Eleotério, Software Engineer at iFood, a popular food delivery app in Brazil. As much as he liked technology, his colleagues used to mock and discourage him. Vitor heard many times that he would be a great security man as he is tall and strong. People kept saying that IT was only for rich people. With his passion and hard work, he proved them all wrong. Now, he wants to motivate others to also follow their dreams.
Priscila Aparecida Ferreira Theodoro, Software Engineer at Centauro, a large sports goods retailer in Brazil. Her first contact with technology happened while working at an organization that teaches programming. At 38 years old, Priscila decided to completely change careers and learn how to code. She now teaches programming to women, mentors youths, and is involved in a podcast project for women developers.
Marcos Pablo, Co-founder & CTO at G4IT Solutions, a platform that helps companies to manage and automate the work schedules of off-site teams. It was his mother who encouraged him to enter the tech world when he was in high school. By the time he was 19 years old, he was already managing a small tech company.
Iago Silva Dos Santos, Co-founder & CEO of Trazfavela Delivery, a platform for deliveries to and from favelas. He wanted to help his community, including drivers, retailers and people who wanted easier access to goods. TrazFavela is one of the first companies to receive investment from the Google for Startups Black Founders Fund in Brazil.
Tiago Santos, Founder & CEO of Husky, an app for Brazilian professionals to receive international payments. As a software developer working with international clients, Tiago had experienced first hand how difficult it was to get payments from abroad. With his friend Mauricio Carvalho he created the app so professionals can focus on their careers instead of wasting time with bureaucratic tasks.
Ronaldo Valentino da Cruz, Co-founder & CEO of Oktagon, a games studio that produces indie titles and games for clients. He learned how to program when he was 14 and started working with game development in 2002 at the Universidade Federal Tecnológica do Paraná. So far, the company has launched well-received mid-core titles and worked with publishers and clients all over the world.
Nohoa Arcanjo Allgayer, Co-founder & CMO of Creators.LLC, a network that connects creative talent with potential clients. For Nohoa, it was not an easy decision to quit her previous comfortable corporate job to set up this startup. Now she is proud of the risk she took, as it opened up a world of opportunity and endless learning. She took part in the Google for Startups Residency Program. Creators.LLC was one of the first startups to receive capital from the Google for Startups Black Founders Fund in Brazil.
Samuel Matias, Software Engineer at iFood. He became a developer in 2015 and is very active in the Flutter community. He frequently shares his learnings through online articles and talks.
Aline Bezzoco, Founder & Developer of Ta tudo bem? - a suicide prevention app . She feels that the best thing about technology is being able to create solutions to help people. Her app aids those struggling with mental health problems to feel calmer, less anxious and ask for help.
Egio Arruda Junior, Co-founder & CEO of EasyCrédito, a platform that facilitates loans. The main focus is to help those who don’t even have bank accounts. Egio is passionate about innovation and is always looking to create something new. He took part in two Google for Startups programs - Residency and Accelerator.
Márcio Dos Santos, Co-founder & CTO at Facio, a platform that provides loans and financial education to employees in Brazil. Amongst his family and friends, there was no one who had completed a higher education degree. He decided to study Computer Science because he was a video game fan. At University, a professor selected him to do an internship in the United States. Currently based in Seattle, USA, Márcio likes to be approached for advice by those at the beginning of their careers.
Danielle Monteiro, Data Engineer & Founder of Dani.Academy, an educational platform with free and paid courses about data, architecture, NoSQL and infrastructure. She was the first member of her family to start and finish college. She has now won many awards in and outside Brazil, and is a Google for Startups Mentor. Dani is passionate about giving back to society by sharing her knowledge through her blog, lectures, courses and articles.
---
These are just some of the stories that show that the tech world is not for a few but for everyone. Together we can create change and see more Black people finding opportunities in tech. Celebrate these stories by sharing the video on Twitter, Instagram, Facebook & LinkedIn.
Posted by Jennifer Kohl, Program Manager, Developer Community Programs
Eustache Luckens Yadley at a GDG Port-au-Prince meetup
Meet Eustache Luckens Yadley, or “Yadley” for short. As a web developer from Port-au-Prince, Yadley has spent his career building web applications that benefit the local Haitian economy. Whether it’s ecommerce platforms that bring local sellers to market or software tools that help local businesses operate more effectively, Yadley has always been there with a technical hand to lend.
However, Yadley has also spent his career watching Haiti’s unemployment numbers rise to among the highest in the Caribbean. As he describes it,
“Every day, several thousand young people have no job to get by.”
So with code in mind and mouse in hand, Yadley got right to work. His first step was to identify a need in the economy. He soon figured out that Haiti had a shortage of delivery methods for consumers, making home delivery purchases of any kind extremely unreliable. With this observation, Yadley also noticed that there was a surplus of workers willing to deliver the goods, but no infrastructure to align their needs with that of the market’s.
Yadley watching a demo at a GDG Port-au-Prince meetup
In this moment, Yadley did what many good developers would do: build an app. He created the framework for what is now called “Livrezonpam,” an application that allows companies to post where and when they need a particular product delivered and workers to find the corresponding delivery jobs closest to them.
With a brilliant solution, Yadley’s last step was to find the right technical tools to build the concept out and make it a viable platform that users could work with to their benefit.
It was at this crucial step when Yadley found the Port-au-Prince Google Developer Group. With GDG Port-au-Prince, Yadley was able to bring his young app right into the developer community, run different demos of his product to experienced users, and get feedback from a wide array of developers with an intimate knowledge of the Haitian tech scene. The takeaways from working in the community translated directly to his work. Yadley learned how to build with the Google Cloud Platform Essentials, which proved key in managing all the data his app now collects. He also learned how to get the Google Maps Platform API working for his app, creating a streamlined user experience that helped workers and companies in Haiti locate one another with precision and ease.
This wide array of community technical resources, from trainings, to mentors, to helpful friends, allowed Yadley to grow his knowledge of several Google technologies, which in turn allowed him to grow his app for the Haitian community.
Today, Yadley is still an active member of the GDG community, growing his skills and those of the many friends around him. And at the same time, he is still growing Librezonpam on the Google Play App Store to help local businesses reach their customers and bring more jobs directly to the people of Haiti.
Ready to start building with a Google Developer Group near you? Find the closest community to you, here.
Posted by Wesley Chun (@wescpy), Developer Advocate, Google Cloud
Editor’s Note: Guest authors Diego Moreno and Sophia Deng (@sophdeng) are from Gigster, a firm that builds dynamic teams made of top global talent who create industry-changing custom software.
Google Cloud provides multiple services for gathering and managing data. Google Forms paired with Google Sheets are quite popular as they require no engineering resources while being incredibly powerful, providing storage of up to 5 million rows of data and built-in analytics for small team projects.
At the other end of the spectrum, to support a high volume of users or data, Google Cloud provides advanced serverless platforms like Google App Engine (web app-hosting) and Google Cloud Functions (function/service-hosting) that can use Google Cloud Firestore for fast and scalable data storage. These are perfect for professional engineering teams that need autoscaling to respond to any level of user traffic and data input. Such apps can also be packaged into a container and deployed serverlessly on Google Cloud Run.
However, it's quite possible your needs are right in-between. Today, we're happy to present the Gigster story and their innovative use of Google Apps Script—a highly-accessible service conventionally relegated to simple macro and add-on development, but which Gigster used to its advantage, building robust systems to transform their internal operations. Apps Script is also serverless, meaning Gigster didn't have to manage any servers for their application nor did they need to find a place to host its source code.
Gigster enables distributed teams of software engineers, product managers and designers to build software applications for enterprise clients. Over the past five years, Gigster has delivered thousands of projects, all with distributed software teams. Our group, the Gigster Staffing Operations Team, is responsible for assembling these teams from Gigster’s network of over 1,000 freelancers.
Two years ago, our team began building custom software to automate the multi-stage and highly manual team staffing process. Building internal software has allowed the same-size Staffing Operations Team (3 members!) to enjoy a 60x reduction in time spent staffing each role.
The Apps Script ecosystem has emerged as the most critical component in our toolkit for building this internal software, due to its versatility and ease of deployment. We want to share how one piece of the staffing process has evolved to become more powerful over time thanks to Apps Script. Ultimately, we hope that sharing this journey enables all types of teams to build their own tools and unlock new possibilities.
Staffing is an operationally intensive procedure. Just finding willing and able candidates requires numerous steps:
To add complexity, many of these steps require working with different third-party applications. For awhile, we performed every step manually, tracking every piece of data generated in one central Sheet (the “Staffing Broadcast Google Sheet”). At a certain point, this back-and-forth work to log data from numerous applications became unsustainable. Although we leveraged Google Sheets features like Data Validation rules and filters, the Staffing Broadcast Sheet could not alleviate the high degree of manual processes that were required of the team.
The centralized Staffing Broadcast Google Sheet provided organization, but required a high degree of manual entry for tracking candidate decisions.
The key transformation was integrating Sheets data with third-party APIs via Apps Script. This enabled us to cut out the most time-consuming operations. We no longer had to flip between applications to message candidates, wait for their replies, and then manually track responses.
To interact with these APIs, we built a user interface directly into the Staffing Broadcast Google Sheet. By introducing an information module, as well as drop-down lists and buttons, we were able to define a small set of manual actions versus the much wider list of tasks the tool would perform automatically across multiple applications.
By integrating Google Apps Script with third-party APIs and creating a user interface, we evolved the Staffing Broadcast Tool to centralize and automate almost every step of the staffing process.
doPost() is the key function in our staffing tool that facilitates third-party services triggering our Apps Script automations. Below is a snippet of how we listened to candidates' responses from a third-party messaging application. In this case, queueing the third-party message in a Google Sheet so it can be processed with improved error-handling.
doPost()
/** * Receive POST requests and record to queue. */ doPost(e) { var payload = e.postData.contents; SpreadsheetApp.openById(SPREADSHEET_ID) .getSheetByName("Unprocessed") .appendRow([payload]); return ContentService.createTextOutput(""); // Return 200 }
Almost all manual work associated with finding candidates was automated through the combination of integrations with third-party APIs and having a user interface to perform a small, defined set of actions. Our team’s day-to-day became shockingly simple: select candidates to receive messages within the Staffing Broadcast Tool, then click the “Send Broadcast” button. That’s it. The tool handled everything else.
Leveraging Sheets as our foundation, we fundamentally transformed our spreadsheet into a custom software application. The spreadsheet went from a partially automated datastore to a tool that provided an end-to-end automated solution, requiring only the click of a few buttons to execute.
While satisfied, we understood that having our application live in Google Sheets had its limitations, namely, it was difficult for multiple team members to simultaneously use the tool. Using doGet(), the sibling to doPost(), we began building an HTML frontend to the Staffing Broadcast Tool. In addition to resolving difficulties related to multiple users being in a spreadsheet, it also allowed us to build an easier-to-use and more responsive tool by leveraging Bootstrap & jQuery.
doGet()
Having multiple users in a single Google Sheet can create conflicts, but Apps Script allowed us to build a responsive web app leveraging common libraries like Bootstrap & jQuery that eliminated those problems while providing an improved user experience.
When other teams at Gigster got wind of what we built, it was easy to grant access to others beyond the Staffing Operations Team. Since Apps Script is part of the G Suite developer ecosystem, we relied on Google’s security policies to help deploy our tools to larger audiences.
While this can be done through Google’s conventional sharing tools, it can also be done with built-in Apps Script functions like Session.getActiveUser() that allow us to restrict access to specific Google users. In our case, those within our organization plus a few select users.
To this day, we continue to use this third version of the Staffing Broadcast Tool in our daily operations as it supports 100% of all client projects at Gigster.
By fundamentally transforming the Staffing Broadcast Tool with Apps Script, Gigster’s Staffing Operations Team increased its efficiency while supporting the growth of our company. Inspired by these business benefits, we applied this application-building approach using Apps Script for multiple tools, including candidate searching, new user onboarding, and countless automations.
Our team’s psychological shift about how we view what we are capable of, especially as a non-engineering team, has been the most valuable part of this journey. By leveraging an already familiar ecosystem to build our own software, we have freed team members to become more self-sufficient and valuable to our customers.
To get started on your Apps Script journey, we recommend you check out the Apps Script Fundamentals playlist and the official documentation. And if you're a freelancer looking to build software applications for clients, we’re always looking for talented software engineers, product managers or designers to join Gigster’s Talent Network.
Thank you to Sandrine Bitton, the third member of the Staffing Operations Team, for all her help in the development of the Staffing Broadcast Tool.
Summary: Flutter Interact is happening on December 11th. Sign up here for our global livestream and watch it at g.co/FlutterInteract.
Google Pay is now available on Stripe Checkout. Businesses with Stripe Checkout on their websites can now provide an optimized checkout experience to Google Pay users.
Google Pay is available directly from Stripe Checkout
Refer to Stripe’s Checkout documentation for more information.
Stripe merchants that aren’t using Stripe Checkout can integrate directly with Google Pay using the Google Pay Setup Guide.
Google Pay is the fast, simple and secure way to pay on sites, in apps, and in stores using the payment options saved to your Google Account.
See Google Pay Developer documentation for information on additional integration options.
Who doesn’t love finding a good shortcut? A year ago, G Suite created a handful of shortcuts: docs.new, sheets.new, and slides.new. You can easily pull up a new document, spreadsheet or presentation by typing those shortcuts into your address bar.
This inspired Google Registry to release the .new domain extension as a way for people to perform online actions in one quick step. And now any company or organization can register its own .new domain to help people get things done faster, too. Here are some of our favorite shortcuts that you can use:
OpenTable’s reservation.new, eBay’s sell.new and Github’s repo.new are also handy time-savers. Similar to .app, .page, and .dev, .new will be secure because all domains will be served over HTTPS connections. Through January 14, 2020, trademark owners can register their trademarked .new domains. Starting December 2, 2019, anyone can apply for a .new domain during the Limited Registration Period. If you’ve got an idea for a .new domain, you can learn more about our policies and how to register at whats.new.
With .new, you can help people take action faster. We hope to see .new shortcuts for all the things people frequently do online.
DevFest season is always full of lively surprises with enchanting adventures right around the corner. Sometimes these adventures are big: attending a DevFest in the Caribbean, in the heart of the amazon jungle, or traveling more than 3,000 meters above sea level to discover the beautiful South American highlands. Other times they are small but precious: unlocking a new way of thinking that completely shifts how you code.
October marks the beginning of our DevFest 2019 season in Latin America, where all of these experiences become a reality thanks to the efforts of our communities.
What makes DevFests in LATAM different? Our community is free spirited, eager to explore the natural landscapes we call home, proud of our deep cultural diversity, and energized by our big cities. At the same time, we are connected to the tranquil spirit of our small towns. This year, we hope to reflect this way of life through our 55 official Latin America DevFests.
During the season, Latin America will open its doors to Google Developer Experts, Women Techmakers, Googlers, and other renowned speakers, to exchange ideas on Google products such as Android, TensorFlow, Flutter, Google Cloud Platform. Activities include, hackathons, codelabs and training sessions. This season, we will be joined by Googlers Grant Timmerman and Mete Atamel.
Grant is a Developer Programs Engineer at Google where he works on Cloud Functions, Cloud Run, and other serverless technologies on Google Cloud Platform. He loves open source, Node, and plays the alto saxophone in his spare time. During his time in Latin America, he'll be discussing all things serverless at DevFests and Cloud Summits in Chile, Argentina, Peru, Colombia, and Mexico.
Mete is a Developer Advocate based in London. He focuses on helping developers with Google Cloud. At DevFest Sul in Floripa and other conferences and meetups throughout Brazil in October, he’ll be talking about serverless containers using Knative and Cloud Run. He first visited the region back in 2017 when he visited Sao Paulo
Afterwards, he went to Rio de Janeiro and immediately fell in love with the city, its friendly people and its positive vibe. Since then, he spoke at a number of conferences and meetups in Mexico, Colombia, Peru, Argentina, Uruguay and Brazil, and always has been impressed with the eagerness of people to learn more.
This year we will be visiting new countries such as Jamaica, Haiti, Guyana, Honduras, Venezuela and Ecuador that have created their first GDG (Google Developer Group) communities. Most of these new communities are celebrating their first DevFest! We'll also be hosting diversity and inclusion events, so keep an eye out for more details!
We thank everyone for being a part of DevFest and our community.
We hope you join us!
#DevFest
#DevFestLATAM
Find a DevFest near you at g.co/dev/fest/sa
If you wanted to send a secret message by mail, would you rather send it in an envelope, or on a postcard? If you send it on a postcard, anyone who saw the postcard on its way to the recipient could read the message, or even make changes to what’s written.
Encryption on a website functions like an envelope, protecting information passed between your website and its visitors so it can’t be snooped on or changed. It’s what keeps your visitors safe from bad actors who may try to alter your site’s content, misdirect traffic, spy on open Wi-Fi networks, and inject malware or tracking. You achieve encryption on a website by installing an SSL (Secure Sockets Layer) certificate. This certificate ensures that the data passed between a web server and a browser remains private.
To kick off National Cyber Security Awareness Month, we’re highlighting something that many website owners don’t realize—a single page that isn’t encrypted could potentially be used to gain access to the rest of the website. To avoid this, you need encryption on your entire website, not just for pages that are collecting credit card numbers or log-in info. Even unencrypted landing pages that redirect to an HTTPS page can pose risks. A single unprotected page can become a backdoor for bad actors to snoop on the rest of the site. How do you ensure your entire website is encrypted?
Use a top-level domain that is HSTS preloaded.
The HSTS preload list tells modern browsers which websites to only load over an encrypted connection. The fastest way to get on this list is to use a top-level domain that’s already on the HSTS preload list, such as .app, .dev, or .page. Any website on those extensions gets the security benefits of HSTS preloading from day one, so all you need to do is install your SSL certificate.
Add your website to the HSTS preload list yourself.
Websites can be individually added to the HSTS preload list by the website owner at hstspreload.org. Keep in mind this can be a slow process because the list is manually built into the browser. That means updates to the list are made as new browser releases come out, which can take months to occur for all browsers.
More people are creating websites than ever before, with 48 percent of the U.S. population planning to create one. To help make building your secure website a bit easier, we’ve teamed up with some of our registrar partners, who are offering a discount on .dev, .app, and .page domains plus free SSL certificates during the month of October. We’re also kicking off a video series where existing creators will share their tips for launching a website. You can check them out at safe.page/buildsecurely.
Stephanie Duchesneau, Domains Security Expert, explains the importance of website encryption and the benefits of HSTS-preloading.
Ricardo Costeira is a Software Engineer from Coimbra, Portugal. For the first time last year, he attended DevFest, the largest developer community-led movement hosted by Google Developer Groups across the world. To celebrate DevFest 2019, we want to share with you Ricardo’s story and how he went from writing code to finding community.
Ricardo (left) and a fellow GDG Lead plan DevFest Coimbra.
1. How did you first hear about DevFest? What inspired you to join?
2. Can you tell us about your first experience at DevFest?
It was exhilarating - out of this world. When I first walked in, everyone talked to me as if we had known each other for years. Big smiles, loud laughs, and deep kindness were all around me. As someone who is relatively shy and a loner by nature, I was stunned when I felt myself saying, "I belong here, I'm home." That very same night, I looked up the next event I could attend. Since then, I have attended 2 other events, signed up for 6 more, and have become a GDG Lead. In other words, I’m hooked.
So how did this all change me? To be honest, DevFest brought forward a shift in my personality. I now want to be part of a community - that is a new feeling in my life.
3. What from DevFest 2018 are you looking forward to seeing again this year?
The booths. DevFest Coimbra has booths where you can talk with different companies. It’s exciting to learn about all the opportunities to grow so close to home. In my case, it was thrilling to see just how quickly Portugal is scaling and how so many companies come to DevFest eager to talk with the best talent. Forming these relationships is what can make the difference when finding the right opportunity for you.
4. Leading up to DevFest 2019, what are you most excited for?
Lighting a spark in new attendees. I recently joined the organizational staff and I’m excited to give new attendees that feeling I had when I first walked into DevFest. I’ve found such meaning in working with my fellow GDG Leads to bring together attendees in a sense of shared awe.
5. Any advice for those attending DevFest 2019?
Just say hi. You will be surprised with how far it will take you. DevFest is not only about the talks or workshops, it’s also about the people. This community knows the extrovert and understands the introvert, and warmly welcomes both. That is to say, no matter who you are or how you code, there is a place for you here.
Want to find a DevFest event near you? Check out devfest.withgoogle.com to join our community, meet other developers and learn about Cloud, Android, Flutter, Machine Learning and more.
Posted by Erica Hanson, Program Manager
ARUA, UGANDA - Samuel Mugisha is a 23 year old university student with a laugh that echoes off every wall and a mind determined to make change. Recently he heard from a healthcare worker that many children at a local clinic were missing vaccinations, so he decided to take a walk. He toured his community, neighbor to neighbor, and asked one simple question: “Can I see your vaccination card?”
In response he was given dirt stained, wrinkled, torn pieces of paper, holding life or death information - all written in scribble.
He squinted, held the cards to the light, rubbed them on his pant leg, but for no use. They were impossible to read. As Samuel put it, “They were broken.”
From the few cards he could read, Samuel noted children who had missed several vaccinations - they were unknowingly playing the odds, waiting to see if disease would find them.
Without hesitation, Samuel got right to work, determined to fix the healthcare system with technology.
He first brought together his closest friends from Developer Student Clubs (DSC), a program supporting students impacting their communities through tech. He asked them: “Why can’t technology solve our problem?”
This newly formed team, including Samuel, Joshwa Benkya and Norman Acidri, came up with a twofold plan:
The idea came together right as Developer Student Clubs launched its first Solution Challenge, an open call for all members to submit projects they recently imagined. These young developers had to give it a shot. They created a model, filled out an application, and pitched the idea. After waiting a month, they heard back - their team won the competition! Their idea was selected from a pool of 170 applicants across India, Africa, and Indonesia. In other words, everything was about to change.
In a country where talent can go unnoticed and problems often go unsolved, this new team had pushed through the odds. Developer Student Clubs is a platform for these types of bold thinkers. Students who view the issues of their region not simply as obstacles to overcome, but chances to mend their home, build a better life for themselves, and transform the experiences of their people.
The goal of the Solution Challenge, and all other DSC programs, is to educate young developers early and equip them with the right skills to make an impact in their community.
In this case, office space in Uganda was expensive and hard to find. Samuel’s team previously had few chances to all work under the same roof. After winning the challenge, Developer Student Clubs helped them find a physical space of their own to come together and collaborate - a simple tool, but one that led to a turning point. As Samuel described it,
With this new space to work, DSC then brought some of Africa’s best Google Developer Group Leads directly to the young developers. In these meetings, the students were given high-level insights on how to best leverage Android, Firebase, and Presto to propel their product forward. As Samuel put it:
As a result, the team realized that with the scarcity of internet in Uganda, Firebase was the perfect technology to build with - allowing healthcare workers to use the app offline but “check in” and receive updates when they were able to find internet.
Although the app has made impressive strides since winning the competition, this young team knows they can make it even better. They want to improve its usability by implementing more visuals and are working to create a version for parents, so families can track the status of their child’s vaccination on their own.
While there is plenty of work ahead, with these gifted students and Developer Student Clubs taking each step forward together, any challenge seems solvable.
What has the team been up to recently? From August 5th-9th they attended the Startup Africa Roadtrip, an intensive training week on how best to refine a startup business model.
Posted by Ben Fried, VP, CIO, & Chief Domains Enthusiast
Celebrating 100 of our favorite .app websites. See the list here.
A year ago, we launched .app, the first open top-level domain (TLD) with built-in security through HSTS preloading. Since then, hundreds of thousands of people have registered .app domains, and we want to take a moment to celebrate them.
People are making more websites and apps than ever before. A recent survey we conducted with The Harris Poll found that nearly half (48%) of U.S. respondents plan to create a website in the near future. And a lot of people, especially students, are already building on the web. Over a third (34%) of 16-24 year olds who’ve already created a website did so for a class project.
Having a meaningful domain name helps students turn their projects into reality. Take Ludwik Trammer, creator of shrew.app, who said: “The site started as a project for my graduate Educational Technology class at Georgia Tech. Getting the perfect domain gave me the initial push to turn it into the real deal (instead of making a prototype, publishing a scientific paper on it, and forgetting it).”
Helping creators launch their sites securely
With so many new creators, it’s essential that everyone does their part to make the internet safer. That’s why Google Registry designed .app to be secure by default, meaning every website on .app requires a HTTPS connection to ensure a secure connection to the internet.
HTTPS helps keep you and your website visitors safe from bad actors, who may exploit connections that aren’t secure by:
“As a social application, data protection is paramount. As cyber attacks increase, the security benefits a .app domain brings was a key factor for us. We also believe that a .app domain is significantly more descriptive than a .com domain, meaning users can find us more easily! All in all it was a no brainer for us switching to .app.” -Daneh Westropp, Founder, pickle.app
-Daneh Westropp, Founder, pickle.app
There's still work to be done. One out of two people don’t know the difference between HTTP and HTTPS. Many major browsers (like Chrome) warn users in the URL bar when content is "not secure," but there’s every website creator still has a shared responsibility to keep their users safe.
.App is year in, and we’re happy to see so many people using it to build secure websites and connect with the world. You can read more stories from .app owners here and get your own .app name at get.app. If you’re one of the millions of people planning to build a website, we hope you’ll join us in making the internet safer and take the steps to securely launch your website.
Posted by William Florance, Global Head, Developer Training Programs
Building upon our pledge to provide mobile developer training to 100,000 Africans to develop world class apps, today we are pleased to announce the next round of Google Africa Certification Scholarships aimed at helping developers become certified on Google’s Android, Web, and Cloud technologies.
This year, we are offering 30,000 additional scholarship opportunities and 1,000 grants for the Google Associate Android Developer, Mobile Web Specialist, and Associate Cloud Engineer certifications. The scholarship program will be delivered by our partners, Pluralsight and Andela, through an intensive learning curriculum designed to prepare motivated learners for entry-level and intermediate roles as software developers. Interested students in Africa can learn more about the Google Africa Certifications Scholarships and apply here
According to World Bank, Africa is on track to have the largest working-age population (1.1 billion) by 2034. Today’s announcement marks a transition from inspiring new developers to preparing them for the jobs of tomorrow. Google’s developer certifications are performance-based. They are developed around a job-task analysis which test learners for skills that employers expect developers to have.
As announced during Sundar Pichai - Google CEO’s visit to Nigeria in 2017, our continued initiatives focused on digital skills training, education and economic opportunity, and support for African developers and startups, demonstrate our commitment to help advance a healthy and vibrant ecosystem. By providing support for training and certifications we will help bridge the unemployment gap on the continent through increasing the number of employable software developers.
Although Google’s developer certifications are relatively new, we have already seen evidence that becoming certified can make a meaningful difference to developers and employers. Adaobi Frank - a graduate of the Associate Android Developer certification - got a better job that paid ten times more than her previous salary after completing her certification. Her interview was expedited as her employer was convinced that she was great for the role after she mentioned that she was certified. Now, she's got a job that helps provide for her family - see her video here. Through our efforts this year, we want to help many more developers like Ada and support the growth of startups and technology companies throughout Africa.
Follow this link to learn more about the scholarships and apply.
Posted by Adam Seligman, VP, Developer Relations
Last week we announced the new .dev top-level domain (TLD) was open for Early Access registrations. As of today, .dev is available to anyone through your registrar of choice (typically $12-$15 for standard priced domains, varies by registrar).
We envision .dev as a home for developers. From tools to programming languages to blogs, .dev is the best place for all the amazing things that you build. Over the past few months, we've launched, or re-launched, many of our own developer sites on the new domain. Here are some of our favorites:
But we're not done yet! We've got big plans for .dev, and we'd like to invite you to join us. To start, everyone who applied for a ticket to Google I/O 2019 will get a .dev domain at no cost for one year. If you entered the drawing, check your inbox for your redemption code. We'll be moving more of our existing projects and launching some exciting things on .dev in the months to come. We can't wait to see what you build on .dev -- share what you create with #hellodotdev.