How was Google Drive developed? There is no straight textbook answer on the development of Google Drive. Also, there is no story as we’ve seen with Google Maps. But that’s not to say that this story is not interesting. Far from it.
Google Drive is such a complex and intricate system, it is absolutely fascinating to learn all its ins and outs. And although much of the behind-the-scenes information is kept well hidden from the public eye, in this article, we do try to explain it as best as possible.
So all is left to do now, is sit back and enjoy the story of ‘how was Google Drive developed’ . But, first things first, before we dive into all of the technical aspects of this amazing service we use every day without question, let’s ask ourselves one important question…
What is Google Drive?
Google Drive is a cloud based-application just like Canva, Evernote, or Dropbox, just to name but a few apps. These applications allow users to upload and store data or files on a remote or cloud server, where they can access them at all times, de-clutter their own personal machines and even share files with others.
In simple terms, cloud-based apps like Google Drive are internet-run programs which means that most- if not all – of their processes run in the cloud, where all their components exist and are stored. However, Google Drive is just a part of the broader Google cloud ecosystem – or better put, Google Drive is the name given to the service within Google cloud’s personal storage space.
So, Google Drive, which was introduced on 24th April 2012, is simply a remote cloud storage service solution offered by Google for both individuals and businesses to store their data. And you might be wondering now, why would you want your files and personal data stored in such a system? Well, there are many different reasons.
Why do we need Cloud storage like Google Drive?
Cloud storage, of which Google Drive is a part, has become extremely popular in the past decade. One of the reasons is the convenience of freeing your computer’s hard drive space. That reason also brings the benefit of having your files in a remote location, where one can access the files on the go from whatever geographic location or device.
Besides, people can work remotely on the same project, by simply sharing a link with someone you trust or giving them access to your files via email.
In Google Drive, like with many of such services, you can even limit the access another user has to your information to editing, comments and suggestions, or view only. A person with view-only access cannot interfere with your files in any other way than just that – viewing them.
Users with comment and suggestions access can interact with your files but in a very limited way – they can leave a comment, or make a suggestion which you, as the owner, or your editors can resolve, approve, etc.
Lastly, the editors have the same access as you, so they can change the location of a file, edit its contents or name, and so forth. So it is recommended to not share your files just with anyone, and keep your data private.
Aside from that, the only foreseeable downside of such services like Google Drive is that the companies behind them can get access to your files. However, most of them, Google included, have strict policies against “snooping” into peoples’ personal data. That is not to say that these companies are not a prime target for data breaches and hacking attacks.
However, Google and other’s like it, do provide several security measures, such as the 2FA or the two-factor authentication, authorizing devices connected with your account and alerts when a new device connects to your accounts, geolocation verification, and alerting you when a user from a different location logged into your account and so on.
All in all, we cannot say if Google Drive is more secure than Dropbox, or others like it, but at the end of the day, it is in their interest to be as secure as they can be. After all, Google did not become Google by being sloppy and uncaring with its systems.
Characteristics of Google cloud Storage solution
Aside from the above-mentioned benefits of using a cloud storage service like Google Drive, we must also recognize the characteristics of such cloud-based apps. In other words, before we can understand how Google drive was developed, we should note that cloud-based development is quite different from web development as we know it.
For example, you can cache your information partially on your device, even though that information is stored on Cloud. This, and the synchronization feature that Drive is so good at, enables users to work both online and offline on a file, with no problem whatsoever.
So, if you’re on a train commuting to work and you are doing last-minute changes to a presentation, as long as you have enabled the “work offline” option, you won’t lose progress when you enter that tunnel. You can continue working on your slides, and when your phone reconnects to the internet, Google will simply sync the information and update the file in Drive automatically.
However, we do have to point out that one can only access Google Drive through any device as long as it is connected to the internet. The “work offline” feature is only available for existing files stored in Drive.
Google Drive also comes with customizable APIs that connect users with third-party services or that allow developers to integrate Drive with their own platforms. One example that comes to mind is if you are running a recruitment agency and want users to upload their CV directly to your company’s Drive cloud storage.
In this case, your developers would simply integrate the Google Drive API with your website, and whenever a user uploads a file, it will be stored in a dedicated folder that you and your team set up. How cool is that?
Now that we understand why we need Google Drive and other cloud storage applications like it, let’s find out how was Google Drive developed!
How was Google Drive developed?
To fully answer this question, we will constantly look at the Google cloud ecosystem as both a point of reference and departure. We also look at Google Drive in light of cloud app development architecture and requirements.
And what point better to start with if not the Office integration.
Google Office Integration
As you may know, Google Drive has its own Office suite, which allows us to create Google Docs, Google Sheets, Google Slides, and basically anything that you might need or think of.
But aside from that, it also has an integration that allows us to open, transform and edit Microsoft Office files. This office integration is available for all Drive users, i.e. users with a Gmail account, at no cost.
Moreover, Google uses data-extraction technology known as Google goggles, through which all data files uploaded on Google Drive are scanned, so images and text alike are recognized and ready to be retrieved whenever one searches for it.
The Google Goggles technology is not just a simple search function. In fact, it is a complex technology that helps us access information fast, from the various files, by identifying and presenting them in the search result without us typing the name of the file specifically.
Google Goggles also help in transcoding into multiple formats whatever videos stored in Google Drive, which can then be viewed without a problem by other devices and browsers.
And, for that perfect user experience and fast response, Google Drive can take your files and spread them across Google’s web-accessible servers, then onto one’s different mobile devices and personal computer(s) through the syncing feature.
Even more mind-blowing, on Google Drive, text from PDFs can be extracted and presented in a Docs file, using Google’s Optical Character Recognition (OCR) technology.
Whenever we think of Google as a brand, we think clean, professional, slick, modern, and user friendly. So it’s only natural that the Google Drive interface, which is part of the Google ecosystem, has been developed to integrate seamlessly with other services and apps from Google.
Also, as it is a custom to any of Google’s apps, Drive has an incredibly intuitive UI. At the left side of the screen, the user can see their main Drive folder, shared items, recently used as well as starred items – which can be files or folders.
Moreover, the big + button gives users quick access to create files of several formats, such as Slides, Docs, Sheet but also create or even upload entire folders. But, speaking of uploading items, Drive uses a simple drag-and-drop function, so whatever you want to upload in whatever format, just grab it, drag it and drop it. Within a few minutes, it will be uploaded and you’re done.
Google drive is mainly composed of Google docs, slides, and sheets. One can edit and create stuff in the editor suite like drawings, presentations, fill forms, etc. The files that one creates are then saved automatically as one works on them in the cloud storage or aptly put Google Drive. Google Drive is a file storage service and can be categorized as ‘SaaS’ – Software as a Service.
Google Drive has also been developed to allow file accessibility offline on whatever device one uses if the settings are in place. One can create, edit and save files in Google Docs and simultaneously in Google Drive.
Which programming language was used to develop Google Drive?
Since we established that Google’s cloud storage space is called Google Drive, we can safely deduce that Google Drive and the Google cloud ecosystem have been developed using Golang. Golang, also known in short form as GO, is Google’s developed programming language.
In 2016, the then Googles GO lead-Steve Francia stated that GO language was not only used in cloud infrastructure development but would in future (now 2021) be used for the ‘entire cloud’. GO is a procedural language.
It is said that developers at Google were fed up with some languages they were using and that some of them were not scalable, and so GO was born. GO language is gaining momentum to sidetrack a bit and has been used to develop your ‘favorite’ DevOps platform- Docker!
It is impossible to get information on the exact development and infrastructure employed by Google Drive and Google cloud platforms. Instead, we look at the general architecture of any cloud storage solution, including Google Drive.
Cloud storage architecture can be challenging if it is not scalable and multi-tenant since many users need the storage on demand and in multiple remote locations.
Google Drive has the front-end from which it communicates/dispatches APIs that can access fetch stored remote files.
The Front end, middleware, and back end
There are many types of cloud app front ends. Google Drive can be found on both mobile devices and PC. Google Drive has a file-based front-end. Other types of front ends are web-based and traditional front-end like SCSI.
There is also the middleware and the back end. The middleware layer is developed for compression of data files-reducing the data size as well as replicating it. The back end is for the storage of data
Google Drive development features?
Cloud App development entails a mixture of talented teams. Google Drive has been made by a mix of teams skilled in data architecture, design, programming, and management.
The way Google drive has been constructed is such that it is flexible. One can increase their data usage in the cloud without having to wait. In short, the cloud solution is scalable.
Besides, with cloud app development, data optimization is an issue. There must be a balance between having space to store as much as you want in the cloud and considering the costs of cloud hosting.
As such, compared to other cloud storage solutions Google Drive, in the long run, has a limit to data storage capacity and the only apparent downside of Google Drive!
Also, with cloud app development, one needs to be aware of security. The codebase should be stored separately from other files/information; remember, cloud storage has many data storage centers/locations. The storage system should not jeopardize the user’s data but enhance security.
Types of Cloud Application – Where does Google Drive fit in?
There are three types of cloud applications. That is SaaS-Software as a Service, such as Google Docs, Dropbox, PaaS – Platform as a Service, such as Google App Engine, and IaaS – Infrastructure as a Service, such as Google Compute Engine, Microsoft Services, or AWS services.
Google Drive is a SaaS cloud App storage solution. SaaS is the most common type of cloud application. These types of apps have their software in a remote location.
SaaS advantage is that one does not need to pay for a license in software updates, which is a plus for cloud app users. Also, the cloud apps are not run on one’s desktop or mobile device but third-party hardware which is convenient and for security purposes.
Since Google Drive is a SaaS and also part of the Google cloud network. Security is a top feature for the cloud app particularly when it comes to the logic behind the data being processed to and from the cloud and the users.
Some characteristics of Cloud storage that Google drive has adhered to in its development that if ignored might be a challenge are:
Cloud storage allows one to access storage in more than one way, including employing APIs through web service. Google drive is not an exception and has the capacity for integrating APIs that use REST and HTTP for the transportation of data.
A point to note is that Web services can not in themselves contact cloud storage like Google Drive on their own but through an intermediary, if you like a form of application.
The advantage of REST APIs is that they are efficient to run/use because they are stateless. Examples of access storage methods are file-based protocols, such as: -are iSCSI that is block-based protocol, FTP, CIFS, etc.
First, speed is an issue not just with Google ranking pages but also with cloud app performance. We all agree that we want to access our Google Drive files from anywhere. However, the load time it takes before the files open may vary depending on many factors including how near or far one is from the nearest servers.
Most cloud app storage solution providers have different data centers in various geographical locations. For instance, Google Drive enables its users to connect to servers nearest to their location to ensure access to have the same fast loading speed. Google has stated that for excellent user experience, the mobile page loading speed should be less than a second, while on desktops, not more than 3 seconds.
Second, ways in which to move large chunks of information between the user and some remote location can be challenging. There are cases of the late arrival of files or packet loss when using TCP for data transfer which is not good for performance.
Some cloud storage solutions have a way around the TCP that is not great for large chunks of files transported via HTTP to remote storage like FASP. FASP (Fast and Secure Protocol) is a protocol that helps speed data transfer to and from some remote cloud storage location.
Google Drive cloud storage is self-managing. Meaning it can self-configure its systems when, for instance, new storage is introduced/added. Also, to self-trouble shoot, if there are any errors and automatically resolve them while keeping the cost reasonable and manageable for the end-users.
With an on-demand view, Google Drive is appealing. One can pay for their storage needs as per how much space they use. If your needs for data capacity go up or down, you can adjust accordingly. This is known as functional scaling. Therefore one pays for what they consume. Google Drive has been developed in such a way that there is also geographic scalability.
Google Drive is highly interoperable. One can connect cloud-based services to their infrastructure while at the same time be able to run the apps on different mobile devices and desktops as well.
Multi-tenacity in cloud storage means many ‘tenants’ or users able to log in and use Google Drive facilities without the quality of service diminishing. Like other cloud storage, Google Drive has the layer for application and storage, and a user can be connected through network infrastructure to storage, thus allowing, for instance, specific bandwidth allocation.
There must be reliability in mind when it comes to the development of cloud apps. Google Drive seems to have a great cloud framework and design- not in looks but as far as essential operations are concerned and satisfied users.
The only exception on a large scale may be last year (2020) when there was some ‘go slow’ with Google and for some time users were unable to use their services including Google Drive users. However, Google was able to resolve the issue and users were able to log into Google services again.
Many apps have API integrations and Google Drive is one of them; as such, security is a concern. How has Google drive been developed to ensure that one can access data through various apps and using various APIs without compromising information safety?
The availability of a login system in place and encryption of data between their data centers helps to restrict access for unauthorized persons in ones Google Drive user account. All in all, Google Drive seems to have some form of cloud identity and access management (IAM) approach if we may borrow from cloud app development lingo.
We deduce Google Drive has some parallels with the Cloud-Based Apps Architecture framework
As a cloud-based app, Google Drive has different API services joined and operating without hindering each other. You can work in Google Docs and have information saved instantly and accessed by a colleague at a different location.
You can decide to share the document in a Word format with other team members. while still working on it. As the changes are effected, those collaborating on the same project are able to see the updates in real-time.
Yet, as we have seen, even though several functionalities rely on each other in Google Drive, they still exist as separate components. The apps exist separately for flexibility and performance including speed.
In all, we see a clear logic behind the flow of information through different services housed or enabled by Google Drive. Some cloud storage systems use optimization techniques like system message grouping as the logic behind communication
Well, if you need a cost-effective and convenient cloud storage solution as a private user with a Gmail account on a hunt for data storage then Google Drive may just be what you need. It is also reliable and scalable. One does not need a license for any software updates.
Google Drive as a cloud app for a storage solution is a sort of network with API service integrations, stand-alone apps like the Google office built on a versatile cloud framework and architecture.
In the long run, Google Drive has a limit to data storage capacity, and one of the few apparent downsides of Google Drive!
However, let us not forget Google cloud platform and its ecosystem is a formidable competitor to AWS and Microsoft Azure. Did we hear you say, ‘whaaaaat’? You are right!