Wednesday, September 21, 2011

Organize life with Gmail, Calendar and your mobile

Gmail is more than just email, it can be a powerful way to organize your life if you know how to use it.

In this blog post, I explain how to handle a few common tasks in order to be kept organized:
  • Let's assume you have a quick idea while you are away from your computer and want to make sure you don't forget it. How would you do that?
  • You want to postpone an email with a few days in your desktop computer or on your mobile.
  • You want to get a notified that someone did not reply your email in a certain amount of time while you expected a reply.
  • You want to have reminders of periodic events so that you don't forget birthdays, to put out the garbage, file your tax return, etc.
The main tool to organize your life around

That would be Gmail. Every task can be expressed as an email which shows up in your inbox. The solutions which I want to show you all based on the assumption that you read emails often and you can schedule your life around email. You can argue with this approach, there are pros and cons, but I leave it to the end of the post.

Smartphones are getting popular recently, they are part of the daily life of more and more people. I will show you how to use Gmail successfully (primarily Android, but an iPhone will work, too) on them.

Use stars to mark tasks

Gmail has a powerful and easily accessible function: you can mark an email starred with just a single click (on the star icon), a key press ('s') or a tap (on mobile).

This makes the star very useful to denote tasks to work on.

Use Priority Inbox

Now that you decided to use stars (at least I hope you did :) ), you probably want to show them in the most prominent place in your mailbox: in your Inbox page. With Priority Inbox, you can set it up easily.
  • Go to the Inbox settings by clicking the cog icon at the top right, then select "Mail settings", then select "Inbox".
  • Select "Priority Inbox" in Inbox type.
  • Set "Unread" as the first section.
  • Set "All Starred" as the second section. You can do it by selecting the dropdown menu at the second row, then select "More options...", then select "Starred".
  • You will see a similar screen if you did everything as I said (check the arrows): 

  • Save the settings if everything is OK.
With this setup, the first section of your inbox will be "Unread", here you can see all your incoming mails. The next section is going to be your task list (with the starred emails) and at the bottom, you will see the rest of your inbox.

Learn and use keyboard shortcuts

This step is not necessary, but it makes email handling much faster. You can turn on keyboard shortcuts in the mail settings main page (general). Here is the list of all keyboard shortcuts Gmail uses: Gmail keyboard shortcuts. You should learn at least the basics (navigation, compose, send), those are very useful.

Use Gmail Snooze

Ok, you have the daily tasks (starred messages) visible in your inbox, but you suddenly realized that you have too many things to do and you won't be able to get done everything today.

This is when the Gmail Snooze script is found to be useful. Once you set it up, you'll have 30 new labels under the "Later" label, one for each day. If you label an email with the "Later/3 days" label, then it will show up in your starred list 3 days after you put it there.

Here are the setup instructions: Gmail snooze.

Adding snooze labels to emails with the keyboard is very fast: press 'l' ("label"), then type the number of days you want to postpone the email to. If you don't have other labels with that number, then the first label will be the "Later/... days" label which is exactly what you want, and it will be selected. So you just need to press Enter and you are done. Otherwise you have to scroll down a little, find the label and then press Enter.

You can do the same on mobile as well. The Android Gmail client supports adding/removing labels. Press the "Menu" button on your phone and select "Change labels".

Track sent emails

One more use case for Gmail Snooze is to track the sent emails: when you send an email to someone to request something or expecting an answer, you can put a snooze label on it, so that you don't forget that you sent it. If the email ends up unanswered in your starred list, then you know that you have to ping that person again, or try another medium (phone, SMS, etc.).

Use drafts to create tasks

Ok, by now you are starting to get organized. Let's see how would you jot down a quick note on your mobile what just came into your mind but you don't want to forget until you get back to your computer?

Just open your Gmail app on your smartphone, hit Menu and then "Compose". Write your stuff into the subject line, then click "Save". Make sure you don't fill the recipients field so that you don't send out the email accidentally.

You can do the same at your computer as well: you can create messages, write a quick summary in the subject line, maybe a longer explanation in the message body.

Make sure that after you are ready with the new email, you either star the message or put a snooze label on it.

Use the Star Drafts script


What if you forget to apply a star or put a snooze label into a draft message? I've hidden my drafts folder from my main Gmail view (it always counts the messages and I don't like to see it), so it is possible that I just write a draft and I forget to star it.

Fear not, the "Star Drafts" script is to the rescue. If set up correctly, it runs every night and stars your forgotten draft messages (the ones which don't have a snooze label).

Here is how you can set it up: Star Drafts script.

Now you can forget starring your drafts messages if they are not urgent, which makes these things very fast.

Use Calendar to send periodic reminders about repeating tasks

Do you usually forget birthdays? Create a yearly repeating event in Calendar and set an email notification for it for 7 days. Then you have a week to prepare for that. You can handle a notification email as any other task you get in your inbox.

Tax return deadline? Other repeating tasks? Handle them the same way.

Handling emails on the Deskop

Now you are set up to handle emails effectively, here is how you use them when you are at your computer.

Your "unread" section is at the top of your Priority Inbox, so you won't miss new emails when they come in. When you handle a new email, you should do one of the following with it:
  • Handle immediately: you should do it if it only if it can be done fast. New emails can come any time and interrupt your work, so if you want to focus on what you are doing, don't start acting on each of them.
  • Star it when you plan to act on it through the day.
  • Add a snooze label to it if you want to postpone acting on that task with a few days. As I described earlier, it is just a few keypress.
  • Leave it if the email is not actionable.
  • Add a note to it by just forward the email without filling the recipient field (keyboard: 'f', then use Tab to go to the body).
Handling emails on Mobile

Your mobile phone has a smaller keyboard and screen, and it is harder to type a reply email than at your desktop, so the chance that the email is not handled immediately is larger.

Everything is possible on the mobile Gmail that I described above at the desktop section (starring, adding a snooze label, adding a note), but it is a little more cumbersome: you cannot use the very fast keyboard shortcuts. I propose using the mobile mostly to read and star things instead only rather than really acting on the items unless they are urgent. The good news is that all changes are synchronized, so you can use all your devices and your web browser together.

Other solutions

There are a lot of other task handling or note taking applications out there for desktop, web and for mobile as well. They might be easier to use, nicer, etc, but I still prefer this solution, and here are the reasons why:
  • Gmail has a super usable web UI with keyboard shortcuts, themes, etc. (believe me, we worked on it a lot to be that usable), a decent mobile app (on Android, but it is not hard to set up on any other platform either). These two work very nicely together.
  • You can use all of them offline (the offline webapp is launched recently), they sync when they are online again.
  • Gmail being an email application is very tightly integrated with the email, which is the main communication platform and thus, there is no faster way to create a task from an email in either of the platforms.
  • You just need one place to manage your tasks and all your incoming communications. Every other communication system sends you a notification by email.
Summary

Now you have my version of a full blown workflow on handling tasks on a personal level. This might not be the best and probably not perfect, but I think that is good enough and scales pretty well with the tasks you need to handle and it works pretty well with a moderated number of incoming messages.

Btw if you have suggestions for a Gmail feature which can improve this workflow, don't hesitate to comment on this blog post or on the G+ post about it.

Enjoy and be productive!

Sunday, September 11, 2011

"Star Drafts" script

This script is a productivity tool which I use to make me remember that I forgot to send an email or just started a draft message to note something down and did not act on it yet.

If it is set up properly, then it runs once a day, and stars your draft messages which do not have certain labels.

Here is how to install the script:
  • Create a new spreadsheet in Google Docs: "Create new" / "Spreadsheet".
  • Create a new script: "Tools" / "Script Manager" / "New...".
  • Copy-paste the following code into the editor:
    // Config
    var MAX_DRAFTS_PER_HOUR = 30;
    var LABELS_PREFIXES_TO_SKIP = ['Snooze/', 'Later/', 'NoAction'];
    var MOVE_TO_INBOX = false;
    
    function starDrafts() {
      var drafts = GmailApp.search("in:drafts", 0, MAX_DRAFTS_PER_HOUR);
      for (var i = 0; i < drafts.length; i++) {
        if(needsStarring(drafts[i])) {
          starThread(drafts[i]);
          if (MOVE_TO_INBOX) {
            drafts[i].moveToInbox();
          }
        }
      }
    }
    
    function needsStarring(thread) {
      // The thread does not need starring if it already has a starred message.
      if (thread.hasStarredMessages()) {
        return false;
      }
      // If the thread has a snooze label, we don't need to star it either.
      var labels = thread.getLabels();
      for (var i = 0; i < labels.length; i++) {
        if (labelNameToSkip(labels[i].getName())) {
          return false;
        }
      }
      // Ok, here is something to star.
      return true;
    }
          
    function labelNameToSkip(labelName) {
      for (var i = 0; i < LABELS_PREFIXES_TO_SKIP.length; i++) {
        var l = LABELS_PREFIXES_TO_SKIP[i];
        if (labelName.slice(0, l.length) == l) {
          return true;
        }
      }
      return false;
    }
    
    function starThread(thread) {
      var messages = thread.getMessages();
      messages[messages.length-1].star();
    }
    
    
  • Save the script with the Disk (save) icon.
  • Try to run it once. Select the "starDrafts" function in the "select function" dropdown, then press the "Run" (play) icon. You can check how it works if you have a draft message in Gmail.
  • At the first run, you have to authorize the script to access your Gmail account. Just click through it once and then try to run it again, next time it would work.
  • You can tweak the script if you want in the config section.
  • If you are happy how it works, set it up to run every day: "Triggers" / "Current script's triggers" / "Add a new trigger". Select "starDrafts", "time driven", "Day timer", "4am to 5am" (or any other unlikely time you are up).
Now you are ready, happy starring!

Tuesday, September 6, 2011

Gmail Snooze - updated

The Gmail Snooze script was introduced about two months ago in the Gmail Blog. I had a very similar script for mutt about 4 years ago (just before I moved to Gmail), and I was very happy to see the Gmail version coming, this is an essential part of being productive.

I extended a script a little, so that it have the following functionality also:
  • It is extended to 30 days, so that you can postpone emails up to a month. Now that the label names are sorted numerically, these label names are in the proper chronological order.
  • It allows you to star the messages which are returned to the inbox. Only the last email will be starred in each conversation.
To install the script, follow the video tutorial in the official announcement, except that you should paste the script below the video instead:


The modified script is the following:
var PAGE_SIZE = 100;  // Don't use more than 100 because thats the max you can write
var MARK_UNREAD = true;
var STAR = true;
var DAYS = 30;

function getLabelName(i) {
  return "Later/" + i + " days";
}

function setup() {
  GmailApp.createLabel("Later");
  for (var i = 1; i <= DAYS; ++i) {
    GmailApp.createLabel(getLabelName(i));
  }
}

function moveSnoozes() {
  var oldLabel, newLabel, page;
  for (var i = 1; i <= DAYS; ++i) {
    newLabel = oldLabel;
    oldLabel = GmailApp.getUserLabelByName(getLabelName(i));
    page = null;
    while(!page || page.length == PAGE_SIZE) {
      page = oldLabel.getThreads(0, PAGE_SIZE);
      if (page.length > 0) {
        if (newLabel) {
          newLabel.addToThreads(page);
        } else {
          GmailApp.moveThreadsToInbox(page);
          if (MARK_UNREAD) {
            GmailApp.markThreadsUnread(page);
          }
          if (STAR) {
            var messagesToStar = [];
            for (var i = 0; i < page.length; i++) {
              var messages = page[i].getMessages();
              if (messages.length > 0) {
                var message = messages[messages.length - 1];
                messagesToStar.push(message);
              }
            }
            GmailApp.starMessages(messagesToStar);
          }
        }     
        oldLabel.removeFromThreads(page);
      }  
    }
  }
}
In the next blog posts I will write some more about how to use this for being productive (and not just procrastinate). :)

Thursday, August 11, 2011

Earphone test (Sony, Shure, Ultimate Ears, etc.)


The Sony earphones

The story started when I've tried out my girlfriend's brand new earphones (Sony MDR-EX50LP). I was very much impressed how these small devices fit into the ear and how clear the bass was. I had good headphones by that time (Sennheiser HD 25-1 II), but the bass in my ears sounded way better, so I immediately wanted to have good earphones for myself.

I naively thought that if the cheap Sony is good, then a more expensive one is good, too, so I bought a pair of Sony MDR-EX510s. I did a side-by-side comparison with the EX50s, and it turned out that these earphones have much better characterized highs and mids, but the bass is almost non-existing. Not to mention that the fit is less good than the EX50s even with the same tips.

Basically the EX510 was a deep disappointment, which actually led to a research for good earphones. I started by browsing web forums about these topics, and sought help from my colleagues.

What did I test?

My tests were entirely subjective. For the earphones which I had access just for a short time, I usually listened some of my favorite songs: Like a G6, Crash, Threshold, On the floor, God save the foolish kings, etc. After listening for these songs, I was able to decide whether they worth more testing with other kinds of music or not.

The songs had to sound good on two devices:
  • On my MacBook Pro, in iTunes through Airfoil, with the equalizer set to enhance the bass and the highs.
  • On my Nexus S in the built-in Music app with some tuning in the CyanogenMod DSPManager: extra bass set to Medium and the equalizer set to enhance the bass and the highs.
On the Mac side, there was no problem with the volume for the earphones. On the Android side, the extra bass setting usually limited the maximum volume, because the distortion level became very high when I turned the volume up. I really like the punchy strong base, but I also like the clear mids, highs and the clear separation of the different instruments. This requirement actually very much limited the range of earphones (see below the results).

The devices which I did not manage to get hold of

I've read some earphone reviews, especially on head-fi.org, and based on that, I wanted to try out the following earphones, but I did not manage to get them: Tested, but failed

These are the earphones that I managed to test but I did not find them particularly good. Most of them failed at the first criteria, the volume. I could not make my Android loud enough to have a decent base (with a WOW! factor) and have the rest of the spectrum sound well.
  • Etymotic ER4 PT: I tested it only for a couple minutes in k55. It failed with the volume.
  • Sennheiser IE8: I did not find its sound particularly good. In my short test it had a little bit of a washed out sound, nothing spectacular, I expected much more. The bass was pretty strong, but the whole spectrum was not clear enough, I missed the good separation which I had in my HD-25 headphone. The idea of the bass fine-tuning looked like a good idea for me first, but the fact that you need to use a screwdriver for it made the whole thing useless (it is very hard to do it when its in your ear).
  • Monster Turbine and Monster Turbine Pro Gold: I listened them once only for a short while. Their volume was not particularly good and their quality did not seem to be that great either. On the other hand they are the best-looking earphones I've tested.
  • Shure SE310: The smaller sista' of the SE530. It was not too bad, but the difference between the 530 and 310 was very obvious.
The winners
  • Ultimate Ears Super.fi 5 Pro: This is a pretty nice earphone with a lot of volume and a lot of bass. I even think that the bass is too much and the treble is not that super clear, but this earphone is definitely one of the best. On the aesthetics side, I think this is the most ugly of all I've tested (I tested the white one), but I think this is something which people can live with. Note, that the fit of the earphone can be problematic for some people, because the tube is pretty wide. I still did not find the perfect tips for this earphone, but so far the Sony's standard medium size tips are the best.
  • Shure SE530: The best of my tests. With 3 small speakers (2 bass and 1 treble), the sound of this earphone is wonderful. After using it for 2 days, I just fell in love with the clarity of the sound and the bass is exactly what I imagined: very strong, powerful but clear, and not too much in quantity. And it has a WOW! factor. The foam tips were also very comfortable, the most comfortable tips I've ever worn. Another thing which is interesting with Shures is that you can buy a PTH (push-to-hear) module for them, which allows you to listen in to the environment when you pushes a button. It is very useful with this level of sound-isolation that these kinds of earphones have.
  • Shure SE535: This is a newer model of the SE530. I did not manage to directly compare them, but I could say similar things about the sound quality. I tested it only for a few hours, but I did not find the fit as good as the 530: the medium foam is smaller and it is too small for me, the large one is too big. I also like the outside look of the 530 better than this. On the positive side, the replaceable cable makes the 535 less prone for cable errors.

I decided to buy an UE Super.fi 5 Pro as a secondary earphone, and I'm still trying to get a Shure SE530 for a primary one.

Other qualities

I did not test other qualities of the earphones, like sound isolation and cable noise, because I've found the winners pretty good in them. Some of my colleagues mentioned that these can be real issues with some earphones, but I did not have this experience with any of the winners.

To be continued?

There might be more tests following this one, because I've ordered a very small amplifier (FiiO E5), and I might rethink testing the low-volume earphones, including my own Sony SE510. I'll also get a Head-direct RE0 in the next days, which I've read very good reviews about.

Stay tuned, send feedback!

Monday, August 1, 2011

Google+ startup guide

New week, new blog entry. In the future, I try to post some interesting stuff on a weekly basis in the topic of photography, technology, or something else that comes into my mind.

Google+ is the new hotness in the social network scene. It is just a few weeks old, but it is growing very rapidly. According to Paul Allen, it reached 18 million users in the first 2 weeks.

Why it is interesting? Watch the following video, and you will see it:



The conclusion of the video is that if you are a Google user already (Blogger, Gmail, Search, Maps, etc.) then Google+ will make your experience better in the long run in these products.

Ok, but how can I know more about it? How can I start?

Here is a very nice presentation for this. Click through and see how to set up your circles and how to start a video chat with friends. If you want to see it in a bigger resolution, click here.



Now you know how to set up circles, you just need some friends. The following article will give you a nice overview on how to import all your data (friends, photos, videos) from Facebook to Google+. I migrated my friends this way, but I did not bother migrating other things, because I can always re-upload my photos from my computer and my videos are already in YouTube.

How to Migrate Your Facebook Account and Data to Google+


Now you have your friends invited and you are ready to socialize. Until they join, you can try something: find a Hangout (a group video chat) that you are interested in in the global list of hangouts. Everyone can register his own hangout there, you can browse them and join if something looks interesting. There are also scheduled hangouts in the list:

Where to hangout at Google+


To get some more information about the project:
  • Here is my profile, you can follow me if you found this tutorial interesting. You can find some interesting people to follow there, too.
  • Vic Gundotra and Bradley Horowitz are good to follow if you want to know what are the latest informations in Google+.
  • There is also a webpage with the latest changes: What's new in Google+.

If you use Google Chrome, then you can find useful helper extensions in the following article:

Top 15 Chrome Extensions For Google Plus | 15 Most Used Chrome Extensions For Google Plus


I personally suggest the following extensions from the list:
  • SGPlus - Allows you to share to Facebook (and Twitter) directly from G+. A must have if you did not convince all your friends to go to G+ yet. It can also merge your Twitter and Facebook stream into G+, but it caused a slowdown, so I turned it off.
  • Usability Boost for Google Plus - Changes the layout of Google+, for example the top notification bar is kept always visible so that you can share even when you are in the middle of the stream and you will never miss a notification. It is also makes you be able to star posts to read them later, which is very useful.
  • +Photo Zoom - to enhance your photo viewing experience in Google+.
  • Helper for Google+ -Multifunctional extension. I use it for the Translate link only, because it slowed down G+ very much if I used the other features.

If you went through this article by this far and went through all the links, then you are a Google+ expert now, you can probably get more information about the project yourself.

For technically and business oriented people, there is an interview with Vic Gundotra and Bradley Horowitz in TechCrunct TV when they talk about Google+, the past, present and the goal of the project. Worth watching.

I hope this link collection was useful, and, as usual, feedback is always welcome!

Sunday, July 24, 2011

Flyin' on Business Class

Last month I had an opportunity to try out how flying on business works. I flew a few times back and forth to the US earlier, but I always took the Economy seats. It is possible to survive such a travel, but usually hard to sleep on the not too comfortable seats and the space is not really much for a 1.93m tall person with long legs like me. Not to mention the amount of attention you get from the flight attendants throughout the flight.

This time I did not complain about the available space, food, nor the service.

I flew from Budapest to San Francisco, through New York and from Los Angeles to Zürich through Atlanta. These 4 flights were all operated by Delta this time.

The check-in experience was not that really great in Budapest: I had to wait for about 10-15 minutes in the priority check-in line. Well, there were a lot of people even for Business class. The security was fast and when I arrived to the gate, I took the priority line to the airplane, so I could settle very fast.

Leg space: more than enough. There were a lot of thing stuffed into the back pocket in front of me. Menu, blanket, pillow, magazines, headphones and a nice small bag of useful stuff for a long flight:


The stuff in the bag were the following:
  • Socks: the A/C was on full throttle of course, so it was pretty useful.
  • Eyeshade: I think I've used it, pretty practical.
  • A Delta discount flyer: useless.
  • Toothpaste and toothbrush: nice touch.
  • A pen: well, good for a swag.
  • Earplugs: practical for someone who needs these kind of things.
  • Tissues.
  • Various creams: my girlfriend liked them, she told this is a good brand. I am not a cream-geek, so I don't know.
  • HintMint: I did not really like it. :)
Nice pack, I kept it.

I could not complain to the menu either. There were 4 courses, the main course could be chosen from a couple options. I chose some chicken. The portion was big enough. The last course was the dessert. This time, it was a chocolate cake:


In this photo, you can also observe the amount of leg space available...

But back to the desserts. This was the selection:



Cheese-cake, ice cream sundae, chocolate cake, fruits. Not bad. :)

30 minutes after I finished with my portion, the flight attendant asked if I asked for strawberries. She was very sorry to forget who was it. I said to not worry I could take it, so she left it to me:


I expected to have a plug for my laptop, but unfortunately it was not working. First of all, it was very hard to plug the Apple charger to the socket due to the limited space around it. After I managed to force it in, it turned out that there is no power in my seat. The flight attendants couldn't help. Argh! Next time I'll bring an extension cable which will eliminate at least that part of the problem.

The seat was very comfortable, though. The economy seats usually have one button to change the tilt of the back, but here there were about 20 different buttons to change everything: the tilt of the back, the feet position, the length of the footrest, etc. It was definitely more comfortable than the economy ones.

The headphones were noise-canceling ones, watching movies was nice with them. My program was: Adjustment Bureau, Unknown, and the first half of Hall Pass.

After the movies, I made some work in the computer (until the juice lasted), and then got some food before landing, then we arrived in NY in time. I tried not to sleep on this flight, because this was an in-day flight (from noon to afternoon).

Oh, btw, there was Rene Russo on the plane. She looked much younger than she is.

At JFK, I was the second person out of the airplane and I had 0 waiting time at the immigration office. The luggage waiting time was slightly longer, but there were no real issues, I managed to catch my next flight to SF.

In the JFK - SF flight, there were no "Business" class, just "1st" class. Fancy! At least the plug worked there, and I could use the interwebs for a $10 fee. It was funny posting to FB in 30k feet high. Well, this is not really a Business Class benefit, everyone could do that, only they did not have power plugs or just on selected seats. The leg space was big enough here as well, though no stuffed bag this time. The noise-canceling headphones were there as well.

The food was really good this time, too. I was really tired this flight (it was 4am in Budapest time when we took off), so that after doing some internet browsing and finishing Hall Pass (it was not that bad as I expected), I got some sleep. It was around 11:30pm local time by the time I arrived to SFO.

The way back was similar, with minor changes: internet in the first flight, sleep on the second. They asked me if they would wake me up for breakfast. After consuming the dessert (cheesecake), I managed to sleep about 6 hours.

So this was my "Business experience". I was appreciated it, I can tell that the seats were much more comfortable. It is also true that the ticket was not cheap.

As a side note, the best economy experience I had was in a flight from Zürich to Sydney through Dubai. Can you guess which airlines? Yes, Emirates. I flew on the Airbus A380 between Dubai and Sydney. There was an on-demand video with all the new titles, slightly bigger legroom than the usual economy standard, and I got two stickers which I could stick into your seat to indicate whether or not you wanted to get woken up for breakfast. The linked video introduces the first and the business class in the A380, I suggest taking a look at it. Pretty funny. Well, one time, maybe...