Google APIs

Google APIs is a set of application programming interfaces (APIs) developed by Google which allow communication with Google Services and their integration to other services. Examples of these include Search, Gmail, Translate or Google Maps. Third-party apps can use these APIs to take advantage of or extend the functionality of the existing services.

The APIs provide functionality like analytics, machine learning as a service (the Prediction API) or access to user data (when permission to read the data is given). Another important example is an embedded Google map on a website, which can be achieved using the Static maps API,[1] Places API[2] or Google Earth API.[3]

Authentication and authorization

Usage of some of the APIs requires authentication and authorization using the OAuth 2.0 protocol. OAuth 2.0 is a simple protocol. To start, it is necessary to obtain credentials from the Developers Console. Then the client app can request an access token from the Google Authorization Server, and uses that token for authorization when accessing a Google API service.[4]

Client libraries

There are client libraries in various languages which allow developers to use Google APIs from within their code, including Java, JavaScript, .NET, Objective-C, PHP and Python. [5]

The Google Loader is a JavaScript library which allows web developers to easily load other JavaScript APIs provided by Google and other developers of popular libraries. Google Loader provides a JavaScript method for loading a specific API (also called module), in which additional settings can be specified such as API version, language, location, selected packages, load callback and other parameters specific to a particular API. Dynamic loading or auto-loading is also supported to enhance the performance of the application using the loaded APIs.[6]

Google Apps Script

Google Apps Script is a cloud-based JavaScript platform which allows developers to write scripts that can manipulate API services such as Calendar, Docs, Drive, Gmail, and Sheets and easily create Add-Ons for these services with chromium based applications. [7]

Common use cases

  • User registration is commonly done via Google, which allows users to securely log into 3rd party services with their Google account using the Google Sign-in system. This is currently available from within Android, iOS or JavaScript.[8] It is popular to include a “Sign in with Google” button in Android apps, as typing login credentials manually is time-consuming due to limited screen size. As the user is usually signed into their Google account on their mobile device, signing-in/signing-up for a new service with a Google is usually a matter of a few button clicks.
  • Drive apps are various web applications (often third party) which work within Google Drive using the Drive API. Users can integrate these apps into their Drive from the Chrome Web Store which allows them to do work entirely in the cloud.[9] There are many apps available for collaborative document editing (Google Docs, Sheets), picture/video editing, work management or for sketching diagrams and workflows.
  • Custom Search allows web developers to provide a search of their own website by embedding a custom search box and using the Custom Search API. They can customize the search results and make money off the ads shown using AdSense for Search.
  • App Engine apps are web apps that run on the Google App Engine, a platform-as-a-service (PaaS) cloud computing platform which allows web developers to run their websites in Google datacenters.[10] These web apps often take advantage of APIs to manipulate services such as TaskQueue (a distributed queue), BigQuery (a scalable database based on Dremel) or DataStore.
  • Gadgets are mini-applications built in HTML, JavaScript, Flash and Silverlight that can be embedded in webpages and other apps. They can run on multiple sites and products (even writing them once allow users to run them in multiple places).[11]

References

  1. ^ "Static maps API".
  2. ^ "Google Places API".
  3. ^ "Google Earth API".
  4. ^ "Using OAuth 2.0 to Access Google APIs".
  5. ^ "Google APIs Client Libraries".
  6. ^ "Google Loader Developer's Guide". July 26, 2012. Retrieved February 27, 2013.
  7. ^ "Google APIs Client Libraries".
  8. ^ "Google Sign-in system".
  9. ^ "Chrome Web Store".
  10. ^ "Google App Engine".
  11. ^ see https://developers.google.com/gadgets/

External links

Alexa Internet

Alexa Internet, Inc. is an American web traffic analysis company based in San Francisco. It is a subsidiary of Amazon.

Alexa was founded as an independent company in 1996 and acquired by Amazon in 1999. Its toolbar collects data on Internet browsing behavior and transmits them to the Alexa website, where they are stored and analyzed. This is the basis for the company's web traffic reporting, including its Alexa Rank. According to its website, Alexa provides web traffic data, global rankings, and other information on 30 million websites. As of 2018, its website is visited by over 3 million people every month.

Comparison of JavaScript frameworks

There are many JavaScript frameworks available. The intention of this comparison is to show some examples of notable JavaScript frameworks.

Custom firmware

Custom firmware, also known as aftermarket firmware, is an unofficial new or modified version of firmware created by third parties on devices such as video game consoles and various embedded device types to provide new features or to unlock hidden functionality. In the video game console community, the term is often written as custom firmware or simply CFW, referring to an altered version of the original system software (also known as the official firmware or simply OFW) inside a video game console such as the PlayStation Portable, PlayStation 3, PlayStation Vita and Nintendo 3DS.

G Suite Marketplace

G Suite Marketplace (formerly Google Apps Marketplace) is a product of Google Inc. It is an online store for web applications that work with Google Apps (Gmail, Google Docs, Google Sites, Google Calendar, Google Contacts, etc.) and with third party software. Some Apps are free. Apps are based on Google APIs or on Google Apps Script.

Google Developers

Google Developers (previously Google Code) is Google's site for software development tools, application programming interfaces (APIs), and technical resources. The site contains documentation on using Google developer tools and APIs—including discussion groups and blogs for developers using Google's developer products.

There are APIs offered for almost all of Google's popular consumer products, like Google Maps, YouTube, Google Apps, and others.

The site also features a variety of developer products and tools built specifically for developers. Google App Engine is a hosting service for web apps. Project Hosting gives users version control for open source code. Google Web Toolkit (GWT) allows developers to create Ajax applications in the Java programming language.

The site contains reference information for community based developer products that Google is involved with like Android from the Open Handset Alliance and OpenSocial from the OpenSocial Foundation.

Google Developers Live

Google Developers Live is the live, streaming content for the developers and Google developers on many of Google's platforms. Through the use of streaming video and Google+ hangouts, it is organized by Google around the world. Google Developers Live features highly technical, in-depth topics focused on building of web, mobile, and enterprise applications with Google and open web technologies such as Android, HTML5, Chrome, Chrome OS, Google APIs, Google Web Toolkit, App Engine,Cloud, Google Maps, YouTube and more, and give participants an excellent chance to learn about Google developer products as well as meet the engineers who work on them.

Google Play Services

Google Play Services is a proprietary background service and API package for Android devices from Google. When first introduced in 2012, it provided simple access to the Google+ APIs and OAuth 2.0, but since then it has expanded to cover a large variety of Google's services, allowing applications to easily communicate with the services through common means. As of April 2018, it has been installed more than five billion times on Android devices.

Google Plugin for Eclipse

Google Plugin for Eclipse (GPE) was a set of development tools that enabled Java developers to design, build, optimize, and deploy cloud computing applications. developers in creating complex user interfaces, generating Ajax code using the GWT Web Toolkit, and deploying applications to Google App Engine. GPE installed into the Eclipse integrated development environment (IDE) using the extensible plugin system.

GPE was available under the Eclipse Public License 1.0.

Google Translate

Google Translate is a free multilingual machine translation service developed by Google, to translate text. It offers a website interface, mobile apps for Android and iOS, and an API that helps developers build browser extensions and software applications. Google Translate supports over 100 languages at various levels and as of May 2017, serves over 500 million people daily.

Launched in April 2006 as a statistical machine translation service, it used United Nations and European Parliament transcripts to gather linguistic data. Rather than translating languages directly, it first translates text to English and then to the target language. During a translation, it looks for patterns in millions of documents to help decide on the best translation. Its accuracy has been criticized and ridiculed on several occasions. In November 2016, Google announced that Google Translate would switch to a neural machine translation engine - Google Neural Machine Translation (GNMT) - which translates "whole sentences at a time, rather than just piece by piece. It uses this broader context to help it figure out the most relevant translation, which it then rearranges and adjusts to be more like a human speaking with proper grammar". Originally only enabled for a few languages in 2016, GNMT is gradually being used for more languages.

Google Web Toolkit

Google Web Toolkit (GWT ), or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files. It is licensed under the Apache License version 2.0.GWT emphasizes reusable approaches to common web development tasks, namely asynchronous remote procedure calls, history management, bookmarking, UI abstraction, internationalization, and cross-browser portability.

Hugh (robot)

Hugh is an artificial intelligence robot librarian designed and built by William Sachiti and Ariel Ladegaard at Aberystwyth University. Funded by Academy of Robotics in the UK, the robot was first introduced in February 2016. Hugh stands 1.4 metres tall and weighs 60 pounds, its core function is to help users by locating and navigating them to desired books in the library.

Index of JavaScript-related articles

This is a list of articles related to the JavaScript programming language.

Joomla

Joomla! is a free and open-source content management system (CMS) for publishing web content, developed by Open Source Matters, Inc. It is built on a model–view–controller web application framework that can be used independently of the CMS.

Joomla! is written in PHP, uses object-oriented programming (OOP) techniques (since version 1.5) and software design patterns, stores data in a MySQL, MS SQL (since version 2.5), or PostgreSQL (since version 3.0) database, and includes features such as page caching, RSS feeds, printable versions of pages, news flashes, blogs, search, and support for language internationalization.Joomla! has been downloaded over 100 million times. Over 8,000 free and commercial extensions are available from the official Joomla! Extensions Directory, and more are available from other sources. It is estimated to be the second most used content management system on the Internet, after WordPress.

LineageOS

LineageOS is a free and open-source operating system for set-top boxes, smartphones and tablet computers, based on the Android mobile platform. It is the successor to the custom ROM CyanogenMod, from which it was forked in December 2016 when Cyanogen Inc. announced it was discontinuing development and shut down the infrastructure behind the project. Since Cyanogen Inc. retained the rights to the Cyanogen name, the project rebranded its fork as LineageOS.LineageOS was officially launched on December 24, 2016, with the source code available on GitHub. Since that time, LineageOS development builds now cover more than 185 phone models with over 1.7 million active installs, having doubled its user base in the month February–March 2017.

List of server-side JavaScript implementations

This is a list of server-side JavaScript implementations.

Mibbit

Mibbit is a web-based client for web browsers that supports Internet Relay Chat (IRC), Yahoo! Messenger, and Twitter. It is developed by Jimmy Moore and is designed around the Ajax model with a user interface written in JavaScript. It is the IRC application setup by default on Firefox.

Nexus 6

The Nexus 6 (codenamed Shamu) is a phablet co-developed by Google and Motorola Mobility that runs the Android operating system. The successor to the Nexus 5, the device is the sixth smartphone in the Google Nexus series, a family of Android consumer devices marketed by Google and built by an original equipment manufacturer partner. Nexus 6 along with HTC Nexus 9 served as the launch devices for Android 5.0 "Lollipop".

The Nexus 6's design and hardware is very similar to that of the second-generation Moto X, which was released around the same time, with the Nexus 6 being larger and having higher specs while running stock Android.

Open architecture

Open architecture is a type of computer architecture or software architecture intended to make adding, upgrading, and swapping components easy. For example, the IBM PC, Amiga 500 and Apple IIe have an open architecture supporting plug-in cards, whereas the Apple IIc computer has a closed architecture. Open architecture systems may use a standardized system bus such as S-100, PCI or ISA or they may incorporate a proprietary bus standard such as that used on the Apple II, with up to a dozen slots that allow multiple hardware manufacturers to produce add-ons, and for the user to freely install them. By contrast, closed architectures, if they are expandable at all, have one or two "expansion ports" using a proprietary connector design that may require a license fee from the manufacturer, or enhancements may only be installable by technicians with specialized tools or training.

Computer platforms may include systems with both open and closed architectures. The Mac mini and Compact Macintosh are closed; the Macintosh II and Power Macintosh G5 are open. Most desktop PCs are open architecture, but nettops are typically closed.

Similarly, an open software architecture is one in which additional software modules can be added to the basic framework provided by the architecture. Open APIs (Application Programming Interfaces) to major software products are the way in which the basic functionality of such products can be modified or extended. The Google APIs are examples. A second type of open software architecture consists of the messages that can flow between computer systems. These messages have a standard structure that can be modified or extended per agreements between the computer systems. An example is IBM's Distributed Data Management Architecture.

Open architecture allows potential users to see inside all or parts of the architecture without any proprietary constraints. Typically, an open architecture publishes all or parts of its architecture that the developer or integrator wants to share. The open business processes involved with an open architecture may require some license agreements between entities sharing the architecture information. Open architectures have been successfully implemented in many diverse fields, including the US Navy.

RStudio

RStudio is a free and open-source integrated development environment (IDE) for R, a programming language for statistical computing and graphics. RStudio was founded by JJ Allaire, creator of the programming language ColdFusion. Hadley Wickham is the Chief Scientist at RStudio.RStudio is available in two editions: RStudio Desktop, where the program is run locally as a regular desktop application; and RStudio Server, which allows accessing RStudio using a web browser while it is running on a remote Linux server. Prepackaged distributions of RStudio Desktop are available for Windows, macOS, and Linux.

RStudio is available in open source and commercial editions and runs on the desktop (Windows, macOS, and Linux) or in a browser connected to RStudio Server or RStudio Server Pro (Debian, Ubuntu, Red Hat Linux, CentOS, openSUSE and SLES).RStudio is partly written in the C++ programming language and uses the Qt framework for its graphical user interface. The bigger percentage of the code is written in Java. JavaScript is also amongst the languages used.Work on RStudio started around December 2010, and the first public beta version (v0.92) was officially announced in February 2011. Version 1.0 was released on 1 November 2016. Version 1.1 was released on 9 October 2017. In April 2018 it was announced RStudio will be providing operational and infrastructure support for Ursa Labs. Ursa Labs will focus on building a new data science runtime powered by Apache Arrow.

Overview
Advertising
Communication
Software
Platforms
Hardware
Development
tools
Publishing
Search
(timeline)
Events
People
Other
Related

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.