01 April 2016

Thumbnails Next to Google's Results for Similar Pages


If you click the small arrow next to the URL of a search result in the desktop Google interface, you'll usually see 2 menu items: "cached" and "similar". The second option lets you find related pages and it's rarely used.

It looks like Google now shows thumbnails next to the search results if the query includes the related: operator. Here's an example for [related:https://avocado.io avocado], a query automatically triggered by the "similar" link.


31 March 2016

Save Images in Desktop Google Search


Last year, Google added a feature that allowed you to save image search results and organize them using tags. This feature was only available in the mobile interface, but now you can use it on the desktop too. Just click the "save" button next to an image search result and then click "view saved" to go to google.com/save and manage your saved images.




"This feature is currently available in the US when you search for images on desktop and in your mobile browser. To try it out, make sure you're logged into your browser with your Google Account; then you can start image searching and saving," informs Google.

The site mentions that the "website links you save using the Save to Google extension for Chrome can also be found here," but I couldn't find this extension. There's a Save to Google Drive extension, but it only saves images and screenshots to Google Drive.

Google April Fools' Day 2016


April Fools' Day is an important day for Google because there are a lot of hoaxes and crazy features to show.

Google Japan announced a Physical Flick Bluetooth keyboard (translation). It's called Furikku and the circuit board and firmware are open source. The keyboard is actually the hardware version of Google's Japanese input software for Android.

"The device consists of a button that users can ‘push’ and also a sensor that detects ‘flick’ actions. There are 12 sensors and 8 complementary action buttons so a total of 20 sensors in the device. This device can be employed by users who are accustomed to typing letters on their smartphones, but not on their desktop keyboards," mentions Google.



TO BE CONTINUED...

Google Knowledge Graph Cards Add Share Button


Google's Knowledge Graph cards added a button that lets you share the search results pages on Facebook, Twitter, Google+ or by sending an email. You're actually sending a link to the entire search page, not just to the card.

Knowledge Graph cards include a lot of useful information extracted from various web pages and other resources: images, official homepage, social network pages, Wikipedia descriptions, useful facts, events, quotes and more.



16 March 2016

Google's Blogs Move to a Custom Domain


Last week, John Mueller announced that Google is moving all of its blogs to a custom domain: googleblog.com. For example, Gmail's blog has a new URL: gmail.googleblog.com, which replaces gmailblog.blogspot.com.

"Google is moving its blogs to a new domain to help people recognize when they're reading an official blog from Google. These changes will roll out to all of Google's blogs over time. The previous address will redirect to the new domain, so your bookmarks and links will continue to work."

A long time ago, many people thought that this is an official Google blog and I had to keep explaining that the blog is not affiliated with Google. I added more and more disclaimers, but that's still not enough for everyone. Now that Google's blogs move from blogspot.com to googleblog.com, it's much easier to tell things apart.

Smart Reply in Desktop Google Inbox


If you're getting a lot of emails and you're tired of writing replies, Google's Inbox service has a feature that suggests 3 short replies. It was first added to the Inbox mobile apps and now it's available in the desktop site. Apparently, 10% of all the replies on mobile already use Smart Reply.


Smart Reply uses machine learning to figure out if a short reply is appropriate and then predicts likely responses. "The Smart Reply System is built on a pair of recurrent neural networks, one used to encode the incoming email and one to predict possible responses. The encoding network consumes the words of the incoming email one at a time, and produces a vector (a list of numbers). The second network starts from this thought vector and synthesizes a grammatically correct reply one word at a time, like it's typing it out. Amazingly, the detailed operation of each network is entirely learned, just by training the model to predict likely responses."

{ Thanks, Jonah Langlieb. }

15 March 2016

Metronome Card in Google Search


Google shows a special card when you search for [metronome]. The default beat rate is 120 BPM, but you can change the value from 40 to 208 BPM by pressing the "+" and "-" buttons. Google plays a sound, shows an animation and changes the color of the UI, depending on the selected value.



According to Wikipedia, "a metronome is any device that produces regular, metrical ticks (beats, clicks) — settable in beats per minute. (...) The metronome is used by musicians to help keep a steady tempo as they play, or to work on issues of irregular timing, or to help internalize a clear sense of timing and tempo."

{ Thanks, Mukil Elango. }

09 March 2016

How to Track Google Spreadsheet Views with Google Analytics


You have been using Google Analytics to track visitors (or page views) on your website but did you know that the same analytics service can also be used for tracking views inside Google Spreadsheets. You insert a little snippet of tracking code inside your spreadsheet and when someone opens the sheet, that visit will be recorded permanently in your Google Analytics account.

track-google-spreadsheets.png

Google Analytics provides a JavaScript snippet that can be inserted into web templates for tracking visits. You cannot insert JavaScript inside the cells of a Google Spreadsheet but we can use the IMAGE function combined with some Apps Script to enable tracking inside spreadsheet. The visit is recorded as an “event” and not a “page view” and thus your spreadsheet opens will not artificially inflate your Google Analytics reports.

To get started, go to your Google Analytics dashboard and make a note of the Google Analytics tracking ID which is a string like UA-12345-67. This web tutorial explains how you can locate the ID inside your Analytics dashboard.

Now open any Google Spreadsheet that you wish to track and go to Tools, Script Editor and copy-paste the following code. This is a custom Google Spreadsheet function that will embed the 1×1 tracking GIF image in our spreadsheets.

/**
 * Track Spreadsheet views with Google Analytics
 *
 * @param {string} gaaccount Google Analytics Account like UA-1234-56.
 * @param {string} spreadsheet Name of the Google Spreadsheet.
 * @param {string} sheetname Name of individual Google Sheet.
 * @return The 1x1 tracking GIF image
 * @customfunction
 */

function GOOGLEANALYTICS(gaaccount, spreadsheet, sheetname) {
  
  /** 
  * Written by Amit Agarwal 
  * Web: www.ctrlq.org 
  * Email: amit@labnol.org 
  */
  
  var imageURL = [
    "http://ift.tt/1jZhjuD",
    "&tid=" + gaaccount,
    "&cid=" + Utilities.getUuid(),
    "&z="   + Math.round(Date.now() / 1000).toString(),
    "&ec="  + encodeURIComponent("Google Spreadsheets"),
    "&ea="  + encodeURIComponent(spreadsheet || "Spreadsheet"),
    "&el="  + encodeURIComponent(sheetname || "Sheet")
  ].join("");
  
  return imageURL;

}

Save the code, close the Apps Script editor window and return to the spreadsheet.

Click an empty cell and insert the following formula. The cell will be blank but it contains an embedded image. You may want to change the background color so it is easy to figure out which cell in the spreadsheet contains the tracking formula.

Google Formula

The GOOGLEANALYTICS() formula takes 3 parameters – the analytics ID, the spreadsheet name and the sheet name. This helps if you would like to separately track individual sheets inside a spreadsheet.

Now open the spreadsheet in a new browser window and go to Google Analytics, Real Time, Overview to test if the tracking is working. It may sometimes take a minute to record the visit. If you would like to see all the visits, go to Behavior – Events – Overview and click on the Google Spreadsheets category.

google-analytics-report.png

Also see: Track Gmail Messages with Google Analytics

The tracking would work even if the user has enabled ad blocking and that’s because Google Spreadsheets, like Gmail, serves images through a proxy server. The downside is that you will never know the location of the visitor since all visits will be show up as United States (the location of Google servers).


The story, How to Track Google Spreadsheet Views with Google Analytics, was originally published at Digital Inspiration by Amit Agarwal on 09/03/2016 under Google Analytics, Google Docs, Internet.

08 March 2016

How to Make eBooks with Google Docs


Adobe PDF may be the most popular document format on the web but there’s a reason why eBook lovers prefer the ePub format over PDF. PDF documents have a static layout with fixed page breaks but the layout of an ePUB document is “responsive” meaning it will automatically adjust for different screen sizes.

You can read an ePub book on your desktop or inside the Google Play Books app on your Android phone and they’ll look good. Also, since ePub files are essentially HTML5 documents under the hood, the text size and font family can be easily adjusted for an improved reading experience.

Download ePUB ebooks

How to Create your ePUB eBooks

Adobe Stanza and Calibre are popular desktop software for  creating ePub ebooks but now can now easily make one in the browser using Google Docs itself. Just write a document in Google Document, or upload an existing Microsoft Word file to your Google Drive, go to File menu and choose download as EPUB publication.

Here’s an ePUB version of this article, generated with Google Docs.

You get an ePub file that you can copy to your mobile phone or, better still, upload the ePub to the Google Books website and access the ebook from anywhere. You can even read it in the browser. To upload an eBook to Google Books, go here and click the Upload Files button. The files are only visible to you.

ePub files are readable on iPad, Nook and Google Play books. Amazon Kindle doesn’t support the ePub format but there’s an easy way to convert ePub into MOBI format that is supported by Kindle.


The story, How to Make eBooks with Google Docs, was originally published at Digital Inspiration by Amit Agarwal on 08/03/2016 under Convert, Epub, Google Docs, Internet.

22 February 2016

How to Make Org Charts with Google Sheets


Do you need a quick organization chart to show the hierarchy of employees in your business? Well, just open a blank Google Spreadsheet, put the employee names in a column and your org charge should be ready in minutes. Here’s a sample org chart created with nothing but Google Sheets.

Org Charts with Google Sheets

Create Organizational Charts with Google Spreadsheets

Here’s how you can put together an org chart in Google Sheets. It will be a live chart meaning as you update the employee names or hierarchy in the spreadsheet, the org chart would update itself. Let’s get started.

Step 1. Open a Google Sheet and put the employee names in column A and the names of the immediate managers in Column B.

Step 2. Select the cells that you’ve just entered and choose Chart from the Insert menu in the spreadsheet.

Step 3. The Chart Editor will open inside Google Sheets. Switch to the Chart Types tab and uncheck the option that says “Aggregate Column A.” Then scroll down the list of available chart types, choose “Organizational Chart” and click Insert to add the chart into your spreadsheet.

Organization Charts

Unlike flowcharting tools like Visio, you don’t have enough formatting options for org charts in Google Sheets except for changing the background and fill colors of various nodes in the chart. And if you hit the little drop-down arrow in the chart box, you’ll see an option to download the charge as a PNG image for embedding on other websites.


The story, How to Make Org Charts with Google Sheets, was originally published at Digital Inspiration by Amit Agarwal on 22/02/2016 under Charts, Google Docs, Internet.

How to Use Github for Hosting Files


Github, in simple English, is a website for hosting source code. The site is built for programmers and, if you are not one, it is highly unlikely that you have ever used Github. Repositories and Forks, the basic building blocks of Github, may seem like second-nature to developers but, for everyone else, Github continues to be a complicated beast.

Github isn’t just a place for developers though. The site can be used a writing platform. It can host HTML websites. You can use Github to visually compare the content of two text files. The site’s Gist service can used for anonymous publishing and as a tasklist. There’re so many things do on Github already and you can how use it as a free file hosting service as well.

How to Host Files on Github

It takes few easy steps to turn your Github into a file repository. You can upload files from the browser and you can add collaborators so they can also upload files to a common repository (similar to shared folders in Google Drive). The files are public so anyone can download them with a direct link. The one limitation is that the individual files cannot be larger than 25 MB each. There are no known bandwidth limits though.

Step 1: Go to github.com and sign-up for a free account, if you don’t have one. Choose the free plan as that’s all we need for hosting our files.

Step 2: Click the “New Repository” button, or go to github.com/new, to create a new repository for hosting your files. You can think of a repository as a folder on your computer.

Github for File Hosting
Step 3: Give your repository a name and a description and click the Create button. It helps to have a description as it will help others discover your files on the web. You can have Private repositories too but that requires a monthly subscription.

Step 4: Your repository will initially be empty. click the Import Code button on the next screen to initialize the repository.

Import code into Github
Step 5: Paste the URL http://ift.tt/1OpAlq3 into the repository field and click Begin Import to create your Github repository for hosting files.

Upload Files to Github

Your Github repository is now ready. Click the Upload Files files button and begin uploading files. You can drag one or more files from the desktop and then click Commit Changes to publish the files on the web. Github will accept any file as long as the size is within the 25 MB limit.

Github has a built-in previewer for PDF, text and image files (including animated GIFs) so anyone can view them without downloading the actual file. Else there’s a simple URL hack to get the raw (downloadable) version of any file hosted on Github.

Upload Files to Github

Direct URLs for Github Files

After the file has been uploaded to Github, click the filename in the list and you’ll get the file’s URL in the browser’s address. Append ?raw=true to the URL and you get a downloadable / embeddable version.

For instance, if the file URL is http://ift.tt/1OpAn0V, the direct link to the same file would be http://ift.tt/1KDmLEG. If the uploaded file is an image, you can even embed it in your website using the standard img tag.

Here’s a sample file repository on Github. The T-Rex image is here and the direct link is here. You can go to the Repository settings and add one or more collaborators. They’ll get write access to your repository and can then add or delete files.


The story, How to Use Github for Hosting Files, was originally published at Digital Inspiration by Amit Agarwal on 22/02/2016 under Embed, Upload, Internet.

19 February 2016

How to Add Speech Recognition to your Website


Open the Google website on your desktop computer and you’ll find a little microphone icon embedded inside the search box. Click the icon, say something and your voice is quickly transcribed into words. Unlike earlier speech recognition products, you no longer have to train the browser to understand your speech and, for those who don’t know touch typing, speech is often a faster mode of input than the keyboard.

Sounds like magic, right? Well, did you know that you can also include similar speech recognition capabilities to your own website with a few lines of code. Visitors can search your website, or even fill forms, using just their voice. Both Google Chrome and Firefox browsers support the speech recognition API.

Web Speech Recognition

Before we dive into the actual implementation, let’s play with a working demo. If you are viewing this page inside Google Chrome (desktop or mobile), click the voice icon inside the search box and say a search query. You may have allow the browser to access your microphone. When you are done speaking, the search results page will open automatically.

Add Voice Recognition to your Website

The HTML5 Web Speech API has been around for few years now but it takes slightly more work now to include it in your website.

Earlier, you could add the attribute x-webkit-speech to any form input field and it would become voice capable. The x-webkit-speech attribute has however been deprecated and you are now required to use the JavaScript API to include speech recognition. Here’s the updated code:

<!-- CSS Styles -->
<style>
  .speech {border: 1px solid #DDD; width: 300px; padding: 0; margin: 0}
  .speech input {border: 0; width: 240px; display: inline-block; height: 30px;}
  .speech img {float: right; width: 40px }
</style>

<!-- Search Form -->
<form id="labnol" method="get" action="http://ift.tt/1gKlIhB;
  <div class="speech">
    <input type="text" name="q" id="transcript" placeholder="Speak" />
    <img onclick="startDictation()" src="//i.imgur.com/cHidSVu.gif" />
  </div>
</form>

<!-- HTML5 Speech Recognition API -->
<script>
  function startDictation() {

    if (window.hasOwnProperty('webkitSpeechRecognition')) {

      var recognition = new webkitSpeechRecognition();

      recognition.continuous = false;
      recognition.interimResults = false;

      recognition.lang = "en-US";
      recognition.start();

      recognition.onresult = function(e) {
        document.getElementById('transcript').value
                                 = e.results[0][0].transcript;
        recognition.stop();
        document.getElementById('labnol').submit();
      };

      recognition.onerror = function(e) {
        recognition.stop();
      }

    }
  }
</script>

We have the CSS to place the microphone image inside the input box, the form code containing the input button and the JavaScript that does all the heavy work.

When the user click the mic image inside the search box, the JavaScript checks if the user’s browser supports speech recognition. If so, it waits for the transcribed text to arrive from Google servers and then submits the form.

The Dictation App also uses the speech recognition API though it writes the transcribed text to textarea field instead of an input box.

Some notes:

  1. If the HTML form / search box is embedded inside an HTTPS website, the browser will not repeatedly ask for permission to use the microphone.
  2. You can change the value of the recognition.lang property from ‘en-US’ to another language (like hi-In for Hindi or fr-FR for Français). See the complete list of supported languages.

The story, How to Add Speech Recognition to your Website, was originally published at Digital Inspiration by Amit Agarwal on 19/02/2016 under Speech Recognition, Software.

18 February 2016

Export Google Fit Data


Google Takeout has recently added support for exporting Google Fit data. You'll be able to download some CSV and TCX files that include your activities and daly aggregations.

* TCX (Training Center XML) is a common file format for fitness activity data that can be imported to many fitness tracking tools such as Garmin Connect and Strava. By default, Fit samples location data with low accuracy and frequency to reduce device battery consumption. These Activities are exported into the Low Accuracy folder. Activities recorded with Fit's active mode will contain more detailed location paths and more accurate data.

* CSV files are easily read by spreadsheet software or parsed programmatically but may not be easy to import into fitness tracking software.




Gmailify


Gmail's app for Android is more than a mobile app for Gmail, it's also a general-purpose mail client. You can add IMAP, POP3 or Exchange accounts and use the Gmail app to read, compose and organize your mail. Now Google added the option to Gmailify your email accounts, which means bringing Gmail features without having to switch to a Gmail account.

"Gmailify links your existing account to Gmail so that you get all the bells and whistles — spam protection, inbox organization and even Google Now cards based on your mail — without having to leave your current address behind. All you need to do is open the Gmail app, sign in to your email account(s), and enable Gmailify," informs Google.


Which features are available? Spam protection, automatic categorization, labels, better search with support for advanced search operators, travel and hotel reservations appearing automatically in Google Now, better mobile notifications and all the other Gmail features.

How does it work? You can link your non-Gmail address (Yahoo Mail, Outlook.com, AOL Mail, etc.) to an existing Gmail account or to a new Gmail account. "When you sign in to the linked Gmail address, you'll see your messages from the other email provider in your mailbox. You'll be able to read, reply, and organize them just like you do in Gmail." The Gmail app keeps everything in sync, so a read email will be marked as read in the original account, archived messages will be added to a new Archive folder, while Gmail labels will be treated like folders.


12 February 2016

Google Tweaks Mobile Search UI


Google tweaked the mobile search interface. There's now a menu that lets you view the original image, open the list of saved images, search by image and send feedback. There's also a redundant "visit page" link below the image.


Google brought back the title of the page and that's a good thing because you can find more details about the image. Hopefully, Google will also bring back the snippets.



You can find some screenshots for the old interface in this post.