31 October 2015

How to Get SMS Alerts for Gmail via Twitter

How do you get SMS notifications on your mobile phone for important emails in your Gmail? Google doesn’t support text notifications for their email service but Twitter does. If we can figure out a way to connect our Twitter and Gmail accounts, the Gmail notifications can arrive as text on our mobile via Twitter. Let me explain:

Twitter allows you to follow any @user via a simple SMS. They provide short codes for all countries (see list) and if you text FOLLOW to this shortcode following by the  username, any tweets from that user will arrive in your phone as text notifications. For instance, if you are in the US, you can tweet FOLLOW labnol to 40404 to get my tweets as text messages. Similarly, users in India can text FOLLOW labnol to 9248948837 to get the tweets via SMS.

The short code service of Twitter can act as a Gmail SMS notifier. You create a new Twitter account, set the privacy to private and this account will send a tweet when you get a new email in Gmail. Follow this account via SMS from you main Twitter account and the SMS notifications will start pouring in.

gmail messages in twitter timeline

Use Twitter as a Gmail Notifier with Google Scripts

Here’s a step by step guide on how you can use Twitter to get SMS notification for important email in your Gmail account. It will take a minute to setup and, internally, there’s a Google Apps Script that’s doing all the magic. It monitors your Gmail mailbox in the background and as soon as a new message arrives in your account, the script sends out a tweet.

  1. Log out of your existing Twitter account and then go to twitter.com/signup to create a new Twitter account for your Gmail account.
  2. Confirm your email address, then open the Twitter settings page and check the option “Protect My Tweets.” This will make your Gmail notifications private and neither search engines nor other Twitter users will be able to see tweets generated through Gmail.
  3. Click here to copy the Google Sheet and choose Authorize under the Gmail to Twitter menu (near Help). Remember to authorize with your new Twitter account.
  4. Once authorized, choose Start from the Gmail to Twitter menu and enter your Gmail search query. For instance you can say is:important is:unread in:inbox newer_than:1d to only receive notification for new, unread and important emails in your Gmail. Click OK.

That’s it. The Gmail notifier is running and it will tweet when a matching email is found. It runs every 10-15 minutes and will only work on incoming email, not the old message. The messages will also be logged in the Google Sheet so you know what’s happening behind the scene.

Get SMS Alerts for Emails at Gmail

Open a new browser session in Incognito mode, log in to your old Twitter account and send a follow request to your new Gmail account on Twitter. Approve the new follower request and you should now see tweets for new Gmail messages, as they arrive, in your main Twitter timeline.

Should you wish to receive SMS alerts on your mobile phone for new Gmail messages, just open the Twitter profile page of your Gmail bot and turn on Mobile Notifications. This will obviously work only if you have connected (and verified) your mobile phone with your main Twitter account.

Also see: How to Write a Twitter Bot

The story, How to Get SMS Alerts for Gmail via Twitter, was originally published at Digital Inspiration by Amit Agarwal on 31/10/2015 under GMail, Sms, Twitter, Internet.

How to Get Things Done with Trello

My work involves prioritizing, organizing and managing tasks, information and ideas. I have tried hundreds of todo lists and project management tools to get the job done but finally settled on using Trello. It is now my swiss knife where I do everything from collaborating with my wife on shopping lists to building products for my company to teaching students to writing a book.

Trello provides a very flexible way to do this all and it has a whole ecosystem of apps and extensions to make your life simpler. If you are new to Trello, here’s a getting started guide that will help you understand the basics of Trello and how you can use the service to manage work and get things done.

Trello Card

What is Trello and why I need it?

Trello is like a todo list on steroids. At the core of it is a card which is the fundamental unit of information and it can be around lists. Here is a simple Trello card. It has a title with something I plan to do in the near future.

What follows is more complex Trello card containing a title, description (optional), file attachments (you can even pull files from Dropbox or Google Drive), comments from other people and a variety of things including checklists and tags. Each card as a unique email address and you can add comments to the card by simply sending a message to that address.

Trello Card

Product Management with Trello

You can make a card as simple or as complex as you want. The cards are then organized into flexible lists. The lists show a preview of various cards and you can click on them to view details. The list stores all related cards.

In this example, each card in the Trello list corresponds to a feature I was building for a product. The lists are then grouped into boards. The board is effectively a project. If you take a look at my product board below, you’ll see lists like Backlog, In Implementation, QA, Questions and Finished.

Product Development with Trello

I see this as an assembly line to make products. I create a Trello Card for each feature or idea and add to the Backlog list. The team would discuss and add further details to each card. Then the developers would drag individual cards to the In Implementation list and once the task is complete, it is shifted to the QA list. The testers would then move it to Finished once it has passed all the necessary checks.

Each of my projects would have a board like this and you can do a lot of cool things with that. For instance, I use the Pomello extension to pick up a task from Trello and start working on it. It will calculate the time taken and prompt me to take a break every, say, 25 minutes.

The cards work great in team settings and help the whole team to understand who is working on what and they can also keep a track of the status of tasks. Of course, there are more powerful project management tools out there, but none as simple and as extensible as Trello.

Getting Things Done with Trello

I’m a fan of the Getting Things Done method and here’s how I manage my time with Trello using GTD approach. You can download my Trello template for the GTD board here.

Trello - Getting Things Done

Whenever an email arrives, or there’s a task I need to complete or when an idea pops up in my mind, I create a new card in the “Inbox” list of my Trello board. Once a day, I “triage” them (decide the priority) to move into one of the 4 buckets.

  • If it is something I’m waiting for someone else to do, I will move it to the “Waiting” list.
  • If it is something that is not mandatory or urgent, say I want to read the new GRR Martin’s novel or call my uncle, I move it to the “Someday/Maybe” list.
  • If there is a set time for a task, like tax filing or submitting a paper to an event, I move that card to “To Calendar” and assign a due data to the card. You can easily link Google Calendar to your Trello list using the iCal feed.
  • If a card doesn’t fall in any of the above buckets and I really have to do it, I move it to the “Need to do” list.

Every morning, I take the most important cards from the “Need to do” list and move it to the “Today” list. These are the things I plan to get done today. If the “Need to do” list is clear, then I move a couple of pending cards from the “Someday/Maybe” list at the end of the day and handle those cards. Any unfinished task at the end of the day must be moved back to the respective lists.

If you can dump your mind into the “Inbox” list, you can have much better clarity in what you do.

Trello for Book Writing

Here is a partial view of my Trello board of my book on Indian history – “From Tryst to Tendulkar”. I use the board to organize my chapters, ideas, references and everything else.

Book Writing with Trello

Trello for Teaching a Class

I teach classes for entrepreneurs, product managers, business school aspirants and civil participants on various methods to study. Here is a screenshot of my Trello board for a class for business school aspirants.

Class Teaching with Trello

Trello for Shopping

My wife and I share a Trello card with all the things to buy. Either one of us puts stuff there and when one of us goes shopping, the card becomes our shopping list. As I pick up stuff in the supermarket, I also check the item in the Trello card. When my wife needs that stuff again, she simply unchecks the checked item. Thus, we don’t need to keep adding existing stuff to the card.

Balaji Viswanathan is a product manager by profession, he writes a blog, created Be Limitless (a popular Chrome add-on), wrote a book on Indian history and is considered a rockstar on Quora. His favorite GTD tool is Trello.

The story, How to Get Things Done with Trello, was originally published at Digital Inspiration by Amit Agarwal on 31/10/2015 under Productivity, Internet.

30 October 2015

Google to Merge Android With Chrome OS

Wall Street Journal reports that Google works on integrating Chrome OS into Android and will release a unified OS that runs on phones, tablets, laptops and more. "The company plans to unveil its new, single operating system in 2017, but expects to show off an early version next year."

So why kill Chrome OS and switch to Android? Chrome OS has a small desktop market share, while Android is the dominant mobile OS. There are a lot more apps in the Google Play Store than in the Chrome Web Store and Google had a hard time convincing developers to build Chrome apps. Google even ported the Android runtime to Chrome, so that you can run Android apps in Chrome OS.

Google's CEO, Sundar Pichai, has recently said that "mobile as a computing paradigm is eventually going to blend with what we think of as desktop today". Most likely, Google wants to bring Android to the desktop and provide a coherent experience. This solves some of the issues with Chrome OS (the lack of apps, low market share), but brings more challenges (Android is less secure than Chrome OS, it's updated less often, has a more complicated interface, it doesn't have a windowing system, apps aren't optimized for desktop).

I like Chromebooks because they're simple devices that require no maintenance. There are few things you can change, few things that can go wrong. It's easy to share them with other people, you don't have to worry about backups or saving your data.

Pixel C's announcement makes more sense now. It's an Android tablet developed by the Chromebook Pixel team. “We think the Pixel C’s tablet and keyboard experience really unlocks new ways to both play and be productive on one device,” mentioned Google.

Google has a lot of work to do. Android's tablet interface is pretty poor, there's no native multi-window support, Chrome for Android doesn't support extensions, apps and themes.

29 October 2015

YouTube Red Launched

As promised, YouTube Red was launched today in the US. If you use the mobile apps for Android and iOS, you probably noticed that the title changed to "YouTube Red" and there's a new "YouTube Red" section in the settings. YouTube didn't even update the apps: the changes were probably triggered automatically.

The desktop site has a new logo:

"With a YouTube Red membership, you’ll experience YouTube without video ads, be able to save videos to watch offline, and play videos in the background on your mobile device, all for $9.99 a month. And just like with our advertising revenue, the majority of revenue we get from YouTube Red memberships will go to our creator community," mentions YouTube's blog.

YouTube Red is free for Google Play Music subscribers and there's a free 30-day trial for US users.

New Google Calendar URL

Daniel Fletcher, a reader of this blog, noticed that Google Calendar's URL changed from http://ift.tt/f1vjMt to calendar.google.com. This seems to be a recent change, even though the Google Apps Blog announced it back in September.

"In an effort to further increase security, in the coming weeks we'll be changing the main Google Calendar URL from 'http://ift.tt/f1vjMt' to 'calendar.google.com.' Following the launch, the old Calendar url will simply redirect to the new one, so the overall impact of this change on Google Apps customers should be minimal," informed Google.

Browsers like Chrome and Safari will ask you for permission again to show notifications. Greasemonkey scripts and extensions that use the old URLs will probably stop working, so developers will need to update them.

Daniel Fletcher wonders why "Maps is now google.com/maps, when it used to be maps.google.com and Calendar seems to have gone the other way". Maybe Google Maps will go back to the old URL.

28 October 2015

How to Create RSS Feeds for Google Search Results

Google Alerts, you probably know this, offer an easy way for you to create RSS feeds from the Google search results of any query. This is a good option if you are looking to monitor when new web pages are indexed by Google that match your search query.

Google Search RSS Feed

If you have never created feeds with Google Alerts earlier, here’s a quick primer. Type your search keyword, expand options, choose “Automatic” for sources, choose “All Results” for “How Many” and set “RSS Feed” as the Delivery Method. Google will create an RSS feed of web search results that you can subscribe in Feedly or another RSS Reader.

Please see the Google Alerts tutorial to write more advanced search queries.

Better RSS Feeds for Google Search

A big limitation with feeds created using the “Google Alerts” approach is that you’ve limited control over the feed and it won’t include search results from all over the web. In fact, the first time you create a feed, it is likely to be empty and results would be added as Google discovers and indexes new content for that search query.

There’s an alternate method for creating RSS feeds for Google Search results and, though the initial setup takes few extra steps, you’ve enough options to fine tune the search query and have more meaniningful search results in the feed. You can even have RSS feeds for Google Images.

  1. Go to Google Custom Search and create a new search engine. If you would like to search the entire web, just like Google search, put *.com as the site to search, edit your CSE and under Sites to Search section, select the option that says “Search the entire web but emphasize included sites.”
  2. Make a note of the Google CSE id which will be something like xxxx:yyy – click the Search Engine ID button under Details to know your CSE ID.
  3. Go to Google Developers Console, sign-in with your Google Account and create a new Project. Give your project any name – like Google Search RSS Feed – and click the Create Project button.
  4. Next go to the API & Auth link in the sidebar and click on APIs. Here search for “Custom Search API” and enable the API.
  5. Under the same API & Auth group, click Credentials – Add Creditials – Browser Key and click the Create button. You’ll get the API key now.

Google Search API Credentials
Now we have all the ingredients required to create our RSS feed for Google Search. The basic feed URL will be something like this:


Replace xxx:yy with the Search Engine ID, abc with the API key and query with the actual search query. If your query has multiple words, separate them with a + symbol (like Digital+Inspiration). There are tons of other search parameters to the Feed URL. For instance:

  • googlehost=google.de (to return results from Google Germany)
  • searchType=image (search images only, the default is web pages)
  • safe=high (filter adult content from search results)
  • dateRestrict = d10 (return results published in the last 10 days)

To give you an example, the following feed URL will fetch family safe pages from Google India, published in the last 2 weeks for a query “Make In India”


Advanced users can create simple web apps that use the Custom Search API to monitor search results by email or they can scrape Google search in a spreadsheet. The only limitation is that the Search API has a daily quota (100 requests per day) so you should not share the feed or the API key with other users. However, if you enable billing inside the Google API Console, the free limit will be upgraded to 200 search queries per day.

The story, How to Create RSS Feeds for Google Search Results, was originally published at Digital Inspiration by Amit Agarwal on 28/10/2015 under Google, RSS, Internet.

Android Auto Backup

One of the best features from Android Marshmallow is auto backup for apps. Android used to have a backup feature that only worked for system settings and a few apps that enabled it. Now Google saves the settings and data for all the apps and backs it up to Google Drive, so you can quickly restore it when needed.

I've checked the Android section from Google Dashboard and noticed the difference between Nexus 7 running Android 4.3 and Nexus 5 running Android 6.0. While Nexus 7 only backed up system settings, the wallpaper and some data for Gmail, Google Calendar and Google Keyboard, Nexus 5 backed up the data for almost all the apps: from QuickPic Gallery to MyFitnessPal, from Firefox to Opera Mini and Angry Birds 2. There are still some apps that don't support auto backup, but at least the feature is now opt-out instead of opt-in.

The Android section from Google Dashboard shows a lot of useful information about your Android devices (IMEI number, registered date, last activity date, carrier) and it also lets you delete backup data. "Please note that new backup data will be created if backup is enabled on any of your Android devices," informs Google.

The list of apps backed up to Google Drive is also available in the Settings section of the Google Drive app for Android. You can enable or disable the backup feature, automatic restore, reset network settings, add backup accounts. The nice thing is that all this data doesn't use your Google Drive storage quota, but each app is limited to 25MB.

"Apps running on the new backup system aim to save their data every 24 hours, but there are a few requirements for the backup system to trigger automatically. The new backup system uses the JobScheduler API introduced in Lollipop and only triggers a backup if the device is connected to power, on Wi-Fi, and has been idle for at least an hour. The data then gets encrypted and uploaded to Google Drive," reports Ars Technica.

The new backup service is powered by Google Play Services, so it can be improved without updating the operating system. Hopefully, Google will allow users to disable backup for certain apps, remove the 25MB limitation and backup even more data.

Make your WordPress Website More Secure with Single Sign On

Your WordPress website has a public login page, often found at http://ift.tt/1FGSnly, and it is possible for someone to gain access to your site by guessing your password through repeated trial and error method. To harden your WordPress security, it is therefore recommended that you password-protect the WordPress admin folder and also use 2-factor authentication.

WordPress Login Screen

Secure WordPress with Single Sign On

WordPress Single Sign On offers an even more secure option for protecting your website from brute force attacks as you ‘outsource’ the authentication part to WordPress.com. Once enabled, the login screen on your WordPress website is disabled and you are required to sign in to your WordPress.com account in order to access the admin dashboard of your own self-hosted WordPress blog.

There are several advantages here:

  1. Since WordPress.com accounts support 2-factor authentication, the the same level of security is now enabled for your blog as well without requiring another plugin.
  2. All login requests on your site, including the malicious login attempts, are now automatically redirected to WordPress.com and thus it reduces the load on your server and database.
  3. If you manage multiple sites, you can log into them all with a single WordPress.com account and no longer have to remember multiple usernames and passwords.

How to Implement WordPress Single Sign On with Jetpack

Here is a step-by-step guide that explains how you can enable Single Sign On for your WordPress website:

Step 1: Create an account on WordPress.com using this link. Skip this step if you already have an account. You may be required to create a dummy blog on wordpress.com as part of the registration process.

Step 2: Once your account is created, click here to enable two-factor authentication. Specify your phone number, WordPress will send a verification code via SMS and you need to type the same code to verify your number.

Step 3: Go to your WordPress blog, install the Jetpack plugin, activate the plugin and then click the green button that says “Connect to WordPress.com” to link your blog to  your WordPress account.

Step 4: Once the connection is established, go to Jetpack settings and activate the “Single Sign On” module.

Step 5: Go to your WordPress installation folder via FTP or SSH, switch to the current theme folder (wp-content/themes/theme-name) and edit the functions.php file. Here copy-paste the following line of code after the first line:

 add_filter( 'jetpack_sso_bypass_login_forward_wpcom', '__return_true' );

Step 6: Go to Users – Your Profile and, at the bottom of the page, click the button that says “Log in with WordPress.com” – this will essentially link your WordPress.com account to the username that you’ve used to log into the site.

WordPress Profile Link

This will completely disable the login form of your WordPress site and instead forwards the user to the login screen on WordPress.com. Once you login through WordPress, you are immediately redirected to the admin dashboard of your self-hosted WordPress blog.

Also see: How to Improve WordPress Security

The story, Make your WordPress Website More Secure with Single Sign On, was originally published at Digital Inspiration by Amit Agarwal on 28/10/2015 under WordPress, Internet.

ASUS OnHub Router

For many people, routers are an afterthought. Stuck in a closet, out of sight and out of mind, regular users only think about their routers when something is wrong. Dealing with routers is frustrating: they usually have poor user interfaces, buggy firmware, annoying lights and most people don't know how to change their settings, update firmware or improve their performance.

Google hopes to solve these issues with OnHub, a series of routers designed by Google and manufactured by third-party companies. After launching a TP-LINK router, Google announced a second router with similar specs, this time from ASUS. The new router is even more expensive ($219.99) and can only be preordered in the US.

OnHub routers are designed to be fast, secure, easy to use and to look good. "Like our first router, the ASUS OnHub comes with faster Wi-Fi, easy set-up, and simple management with the Google On app. With the ASUS OnHub, we're also introducing Wave Control, which lets you boost the Wi-Fi speed for a particular device by simply waving your hand over the top of the ASUS OnHub - great for busy houses," informs Google.

It's worth pointing out that OnHub routers run Google's software and they're automatically updated, without having to be restarted. That's an impressive achievement. No other router can be updated without disrupting your Internet connectivity for a few minutes and most users don't bother updating their routers.

Both OnHub routers have powerful specs and they're designed for the future. That's why they only have a single LAN port, they support Bluetooth and Weave and have many other features borrowed from smartphones. They're supposed to be smarter, just like all the other smart devices they enable.

27 October 2015

7 Years of Google Chrome

A lot has changed since Google launched Chrome back in September 2008. Chrome's popularity has been growing ever since then and all the other important browsers became more like Chrome. Google focused on the things that mattered and transformed the browser from a simple application into a "modern OS" for web apps.

While there are many services that claim to measure the market share for browsers, I tend to think that StatCounter is the most accurate. StatCounter's stats for 2008-2015 show that Chrome's market share grew from 0% to 53% in 7 years, while IE's share declined from 67% to 15%. According to StatCounter, Chrome is now the dominant browser, while IE and Firefox are continually losing market share.

It's clear that Google did a lot things right when it launched Chrome, but few people anticipated that Google's browser will take over the world. Most people didn't know what's a browser and only knew that they were supposed to click on the blue E icon to go online. Google changed this by promoting a constantly evolving browser, which was faster and more secure.

RankBrain Helps Google Understand Queries

Google's search engine hasn't always been very smart. In its early years, Google only tried to find the pages that matched the words from your query and ranked them. It's hard to answer a question without understanding it, but that's what Google did.

Google constantly improved its algorithms, added personalization options, started to match synonyms and expand abbreviations, but Knowledge Graph and Hummingbird were the greatest leaps that put machine learning to work and made Google smarter. Google started to understand the meaning behind a question, to disambiguate words and to find answers, not just pages that include the words from the query.

Bloomberg reports that Google uses even more artificial intelligence to answer questions and rank results. RankBrain is a new AI system that has been used for the past few months to improve search results. "If RankBrain sees a word or phrase it isn't familiar with, the machine can make a guess as to what words or phrases might have a similar meaning and filter the result accordingly, making it more effective at handling never-before-seen search queries."

15% of the queries Google gets every day are new and RankBrain helps Google understand them. Here's an example of complicated query: "What's the title of the consumer at the highest level of a food chain?" RankBrain finds words and phrases that have a similar meaning and highlights them (for example: predators). "In the few months it has been deployed, RankBrain has become the third-most important signal contributing to the result of a search query."

Google's CEO, Sundar Pichai, says that "machine learning is a core transformative way by which we are rethinking everything we are doing". Machine learning has already helped Google improve image search, automatic translation, speech recognition and deep learning is already showing some promising results: smarter photo search with object recognition.

"In tandem with other researchers at Google, Andrew Ng is building one of the most ambitious artificial-intelligence systems to date, the so-called Google Brain. This movement seeks to meld computer science with neuroscience — something that never quite happened in the world of artificial intelligence," reports Wired. "Deep Learning is a first step in this new direction. Basically, it involves building neural networks — networks that mimic the behavior of the human brain. Much like the brain, these multi-layered computer networks can gather information and react to it. They can build up an understanding of what objects look or sound like."

Newer Is Not Always Better

With all this talk about Android and software updates, I realized that one of the biggest Android advantages is that you can install custom firmware or downgrade to an old Android version.

My old Nexus 7 tablet from 2012 doesn't support the latest Android release. Instead of installing custom firmware from some independent developers, I decided to go back to the smoothest Android version I can find. Asus skimped on quality storage and Nexus 7 was pretty slow and laggy, especially when using Android 5.x.

Google has a page with factory images for Nexus devices and it's pretty easy to install any Android version that's officially available. You have to backup your data, enable USB debugging and run some scripts.

I've installed Android 4.4.4 and Nexus 7 was much smoother, but there was still room for improvement. Android 4.3 was even better and I decided to keep it. It's like having a completely new device, even if it runs some outdated software released 2 years ago.

It's difficult to optimize new software for old hardware, especially if manufacturers don't care about quality, cut costs and ship poorly made devices with obvious design flaws. On there other hand, Google has its own issues with software optimization, memory leaks, battery draining software and other bugs. When properly optimised, Android runs well and users are happy, but this doesn't happen often. With so many devices to update, manufacturers and even Google take shortcuts when it comes to old phones and tablets. Some stop updating them, others release unfinished software, hoping to encourage users to buy new hardware, while others spend more time improving the software for the latest flagships.

Thankfully, you can downgrade and go back to a software that actually works well. Apple devices rarely allow you to downgrade and usually for a limited time, so you're stuck with phones and tablets that are suddenly slow, laggy and crashy.

This post was written on my Nexus 7 running Android 4.3.