Web Application Prototyping on Google Cloud Platform with “No” money
In our professional life, we all know what is prototype and why we need it. Every ideas, every products or services or any process may require prototyping before making it official. There are lots of ideas from millions of people are arising every day, every moment. As a software engineer I will share about how Google is providing you their cloud ecosystem for your web application prototype with no money.
In terms of cloud platform competition, Google already became a vital player in this game and ultimately we, are the consumers taking all the advantages from that competition. Technologies are evolving so fast and becoming more and more smart than what was in past. I know lots of people who have ideas, who have necessary skills but they think twice about their idea when they need platform where they can furnish their prototype to study feasibility of their planning. Ok, let’s assume you want to build a simple but smart To-Do List web app with REST Api for mobile application. What should be your process to start working on that? First you need to write down your entire ideas, find software engineers, discuss with them, change something if needed, start development, share your beta or alpha version to some of your close people from where you can get few effective advice or suggestions about how to improve it further and also sometime prototyping is necessary to get some funds from somewhere or from somebody.
Let’s assume, you are the software engineer and it’s your idea. You don’t need to hire any other people to work for initial prototype. You are enough (for right now). So no cost for human resource or anything. But when you have finished your prototype, you need a platform where your prototype will work smoothly and you don’t need to hire any other DevOPS engineer to take care of that platform because you don’t have any money to invest except your idea. So in this case, how you would chose the platform which can give you their finest architecture, pretty simple process that you can handle yourself. Most of the time we looks something for FREE. But even in any paid platform, you should find some opportunities about how to utilize most of their platform with lower fees. But what would happen if your prototype can fit inside their free tier? Then of course you don’t need to pay a single dime for that. And that’s why I am sharing about Google Cloud Platform.
Google Cloud Platform a.k.a GCP has brought some important tools and features for working with your prototype. If you are little bit smart, then you can get most of it for free until you release your production version of your work.
Consume $300 Credits
After signing up on Google Cloud Platform, as soon as you create your billing profile with a credit card, you can instantly get $300 credits with 12 months validity. But still, there are plenty of rooms available if you are smart then you can save this credit for further purposes here. You can claim your credit anytime if you are first time GCP customer. Details I found from https://cloud.google.com/free/docs/frequently-asked-questions#free-trial
Google App Engine — Deploy Your Code
Google App Engine is a great place to start where you can deploy your app and publish your REST apis. Python, Java, Node.js, Go, Ruby, PHP, or .NET codes you can deploy there. Every application gets an amount of each resource for free. Free quotas can only be exceeded by paid applications, up to the application’s spending limit or the safety limit, whichever applies first.
For free, everyday you will get
- 28 free F1 instance-hours per day
- Google Cloud Storage Bucket Data — 5GB
- Datastore 1GB
- Mail API calls — 10 Calls
- Bandwidth 1GB (Incoming) and 1GB (Outgoing) and many more. You can get a complete details for free tier of App Engine from https://cloud.google.com/appengine/quotas
Also in Google App Engine, same project you can deploy multiple services and each service can have multiple versions. So it may like your To-Do App, Rest API both can server from one project.
Also from Google App Engine app, you can consume their PubSub messaging, Task queues. And based on my experience, your prototype can’t be able to hit their limit initially if you start using them.
StackDriver Logging — Log Everything That Matters
StackDriver logging is just awesome. Log everything that you think mattered most for your entire application. Use various logging library and from inside your app you can log everything in App engine syslog. Google provides a great UI to visually explore, search your data.
The most important features for their logging services is “Sink”. You can sink those log data to anywhere like BigQuery, Google Cloud Storage.
Use BigQuery with your Application Log Data
Every query requires some data to process. Based on that calculation, first 1 TB per month is free. So you can test and build analytics from your application logging data that will help you to understand about how your prototype is working.
And finally from Google DataStudio, you can setup DataStudio connector for BigQuery and visualize your data interactively.
If you can learn basics about this architecture I mentioned above, it can be a great deal for you to go forward with your prototype. If you have any particular questions regarding this article, feel free to write a comment, I will be happy to respond.
Happy prototyping on GCP!