スキップしてメイン コンテンツに移動

Googleのツールでタスク管理

今回も以前

スプレッドシートでタスク管理

で紹介した内容の焼き直し。

以前の記事は文ばかりで不親切だったり、管理方法を色々と模索して大分変わっていたりするので、その他のGoogleツールも交えて普段のタスク管理方法をまとめておきます。

あ。結構長いです。
なるべく章立てしてますので、暇なときとか、分けてちびちび読んでください。

1.ドキュメント

前回の焼き直し。
大本のネタはまんまJoel on Software
です。

前回書いた内容は、Joel on Softwareに載っていた内容を若干自分なりに変えて仕事で使っていた例を書いたのですが、現在は仕事外でも私生活内の様々なタスクの把握と管理に用いています。
また、文と効用ばかりであまり具体的なところが少なかった気がするので、今回は実例をメインに。

基本的にスプレッドシートを用いるところは変わりません。Googleドキュメントのスプレッドシートを使っています。

a.ファイルの生成及びシート分け

ファイルの生成

ファイルは今週使うものの名前を「TaskList」にし、週の更新時に名前を「2009.06.3_TaskList」のような形(2009年6月第3週といった感じ)で変更したのち、新しい「TaskList」を作ります。
どんどん過去のタスクリストを溜めていくことで、これだけ続けてきたという自己満足感を満たすと共に、後々見返すことで反省したり、このタスクにはこのくらい時間がかかったというように参考にしたりできると思います(まだあんまり溜まってないですが…)。

シート分け

1つのシートには1日のタスクを書き連ねるので、各曜日でシート7枚、さらにどこかに充てたいタスクリストを作成するため、計8枚のシートを作ります。


ファイルの更新

各週のファイルは、前の週の金曜日に作ります。

まず、金曜の夜に来週のタスクリストを生成(テンプレートのようなものを作ってコピーするか、今週のものをコピー)し、開きます。

次に、今週の月~金曜(及び未充て)のタスクリストを見返して残ったタスクを確認、重要度や所要時間などを考慮して土日に充て、残ったものを次の週の未充てタスクに切り貼りしていきます。後にも書きますが、見積時間とかは適当です。


最後に、来週のスケジュールを見ながら未充てタスクとスケジュールをまとめて各曜日のタスクリストにごりごりと割り当てていきます。


自己流のテンプレートを作成するのは若干時間がかかりますが、人それぞれ決まったタスクというのは固定化されていると思うので、ある程度確定すれば各週の更新時間は1時間かからないと思います。

b.行列の分け方及び記入内容

ぱっと見でわかると思いますが、大した分け方はしていません。


まず列の説明をすると、
  • プロジェクト…グループ分け
  • タスク…大まかな目的、やることなど
  • 詳細…具体的にやることを出来るだけ詳細に。コーディングの場合、「データ取得用メソッドを実装する」とか、「取得したデータをソートするアルゴリズムの作成」とか
  • 時間
    • 見積時間…最初に予測する所要時間。思いつきレベルで時間をかけずにぱっと決めます。最初に決めたらここは以後手をつけません
    • 修正時間…見積時間を決めた時点で見積時間をコピペしておき、実際にタスクをこなすうちに見積に差が出てきた場合、こちらを逐次修正します
    • 経過時間…実際にそのタスクにかけてきた実時間を記録します。最終的に修正時間と経過時間が等しくなれば、タスクが完了したことになります
    • 残り時間…修正時間-経過時間。後どの位かける予定なのかが自動的に計算されます。また、条件をつけて文字の色を分けています
      • 0と等しい:青…終わったっぽく。青ければ完遂済みのタスクです
      • 0より大きい:赤…未完タスク。やれ!という意思表示をこめて。また、結局時間が足らず残ってしまっているタスクを後から見直すときに目立ちます
    • 見積差分…修正時間-見積時間。最初に見積もった勘と実際にかかった(かかりそうな)時間の差分が自動的に計算されます。こちらも色分けしています
      • 0と等しい:紺…見事に予想通り。素晴らしい
      • 0より大きい:暗赤…見積もりより超過してしまった。次からはもう少し余裕を持とう
      • 0より小さい:暗緑…見積もりより短く済んだ。厳しく行けば他のタスクも入れられたはず
  • 備考…メモなど
といった感じです。
時間は1時間単位で書いています。細かくても15分単位の0.25レベルの細かさにしか分けず、できるだけ感覚で予想できるようにします。
また、条件による色分けをすると、一目で今の状態を確認できたり、自分の見積もりの傾向が短く設定する傾向があるのか、長めに設定する傾向があるのかというのがなんとなく色合いで分かります。

次に列は、大まかに
  • 列の説明
  • 各タスク
  • 総計…各時間の総計
  • 余暇…24-総計
といった感じです。
余暇(いい名づけが思い浮かばなかった…)を置いておくと、「その日の自由な時間がどの位残っているのか」や、「うっかり48時間分タスクを詰め込んでいた」とかいったことが少なくなる気がします。

c.その他全体の管理

こういった感じにタスクリスト、シートを作成し、管理していきます。
最初にテンプレートを作成するのは結構時間がかかりますが、それ以降は基本的に前週のタスク+追加タスクをひたすらコピペしながら数字を記入するだけなのでそれほど時間はかからないように思います。
また、ある程度の時間管理を行うことで、「今週はこれとこれとこれとこれもあれもやりたいから頑張ろう。」みたいな曖昧なことを考えて結局どれも中途半端に終わってしまうみたいなことが少なくなります。
更にはあらゆるタスクの見積もりを常に続けることで、私生活や仕事上の様々な時間の把握が上手くなっていく(といいなぁ)と思います。

2.Gmail

基本的にタスク管理のメインは1のスプレッドシートですが、それを補佐する意味で使うツールがGmailです。
ドキュメント使っていればまずGmailのアカウントも持っていると思います。

結構便利なのにあまり知られていない(ついこの間まで自分も知らんでしたが)ですが、Gmailには「エイリアス」という機能があります。

どういう機能かというと、たとえば自分のGmailアドレスが
  • hogehoge@gmail.com
だった場合、送信先を
  • hogehoge+fugafuga@gmail.com
として送信しても届きます。

ちょー便利ですね!

…。

何が便利か。というと、つまり一つのアカウントを持っているだけで無限にメールアドレスを作り、一つのGmailインターフェースで管理できるということです。
まぁ、自分も何がどうどれだけ素晴らしすぎるのかというのはまだそれほど実感できてないのですが、具体的には、色々なサイトにメールアドレスを登録する際 に、各サイトのドメイン名を+の後につけて、いらなくなったらそのアドレスはすべてゴミ箱に直行するフィルタをかける。といったことが出来たり、まとめて タグをつける。といったことが出来ます。

で、これをどうタスク管理に使うのかといえば単純な話で、あらかじめ
  • hogehoge+task@gmail.com
宛てのメールにフィルタ
  • タグ「Task」を付ける
  • スターを付ける
  • (迷惑メールにしない)
を設定しておき、出先やらトイレに居る時やらどんな時でもいいですが「あ、これやっとこう」「あ、これ実装しよう」「あ、京都に行こう」とか思ったら携帯から
  • 送信先:hogehoge+task@gmail.com
  • 件名:旅行計画
  • 本文:京都行きの旅行計画を立てる
なんて感じのメールをとりあえず送ります。
と、自動的にGmailがタグとスターをつけて目立つようにしておいてくれるので、どこかのPCの前に座ったら自分のGoogleアカウントを開き、タス クに分類されたメールの内容を今週のタスクリストの未充てタスクにコピペ。見積もり時間等適当に予想し、時間があれば更に今週の予定のどこか空いている場 所にコピペ、時間が無ければとりあえずその場はそのまま放置して時間のあるときに改めて充て直す。のようなフローを作ることが出来ます。

この準備をしておくと、思いつきのアイディアや考えが消える前にメモ感覚で記録しておけるようになるため、色々と忘れたり貴重な考えを霧散させたりしなくて済むようになり、もどかしさが解消されたりされなかったりします。

3.カレンダー

ここからの内容はTIME HACKS!
に載っている内容を大分もらっています。
他にも色々と時間活用のアイディアが載っているので興味のある人は読んでみてください。

最後にカレンダー。
ここではタスクリストに載っているタスクのうち、不可避だったり動かせなかったりするものを視覚的に把握するためにタスクの種類ごとに色分けしてごりごり登録していきます。

まぁ百聞は一見に如かずともいうので、実際自分が使っているのはこんな感じ。

大分私生活の場所が特定されちゃうのでモザイクばかりですみません…

こんな感じで大まかなタスクを色分けして登録していきます。
ちょっと見難いかもしれませんが、紫は移動時間です。

特殊なのは、「暇な時間」も色分け(灰色)して塗りつぶしていること。
これは完全にTimeHacks!の受け売りですが、これにより視覚的に「どの位自分のためにまたは細々したタスクを充てるために使える時間があるのか」、ということが把握できます。

一応タスクリストでも総計や余暇の行で数字的に把握は出来るのですが、こちらではなんとなく見た目の広さ、大きさで把握するので大まかなイメージが掴み易い気がします。

このスケジュールの「暇」時間を埋めるのはタスクリストと同様毎週金曜日です。
来週の予定を把握しつつ、タスクリストの未充てタスクにスケジュール上の大きなタスクを記入すると共に大きく空いている時間帯をまるっと暇色に塗りつぶします。

日々のスケジュール自体は日々必要な時に埋めてあるはずなので、こちらの作業は数分で完了できると思います。
ま た、グーグルのカレンダーは週表示、月表示が切り替えられたり、表示するスケジュールをカレンダー(色分け)ごとに切り替えられたりするため、毎週プリン トアウトしてスケジュール帳にはっておいたりすればスケジュール記入や更新が一括管理できて楽ができたり、共有機能を使って複数人のスケジュールをまとめ て管理できたりし、結構便利です。

先ほどのGmailのエイリアス機能を使って、タスクだけでなくスケジュールメモも送信するようにしておいても良いと思います。

4.まとめ

以上。自分が今現在も実践しているタスク管理、スケジュール管理フローを紹介してみました。

各方法の原本は色々な本によっており、完全な オリジナルではないですが、Googleツールにまとめて一括して使うようにすることで、iGoogleのガジェットに表示させてホームページ設定などし ておけば、「ブラウザ開けばとりあえずすべて把握できる。」とか、「携帯でGmailやカレンダーを開けば現在のタスクや今日のスケジュールがぱっと把握 できる」等、細かいところでストレスが軽減されたり、余計な手間が省かれたりします。

まだまだ色々な便利機能を把握しきれて居なかったり、各ツールの使い方が洗練されてなかったりすると思うのでこれからも改善予定ですが、何かアイディアや意見などあったらコメントやメールに送ってもらえると非常に助かります。

また何か進化したり思いついたりした場合、逐次報告します。

ここまで読んで頂いた方、長文読んでいただき有難うございましたm()m

コメント

このブログの人気の投稿

git を操作したい時にちょっと便利かもしれない unite-source を書いています

こんばんは。この記事は、 Vim Advent Calendar 2012 の 50日目の記事です。
49日目は、 @uryt さんの vim.orgにアップロードされていないプラグインがあるかチェックするgit-unreleased-vimplugins作った でした。

本日は、長いこと自前で作成している、 unite を利用して 簡単な git 操作を行える unite-source 、 giti を紹介します。

vim-unite-giti
https://github.com/kmnk/vim-unite-giti

これは何?初期構想としては、自分の自分による自分のための git 操作用 unite source です。
現在はドキュメントも書いたので、自分以外の方にも、お使いいただける物になっていると思います。

言わずと知れた unite のインターフェースを用いて、 git の色々な操作を実現するための plugin's plugin になります。
unite を使って git 操作をしたい気持ちになる方に、是非使ってみて頂きたいです。

普段の仕事でヘビーに使っているので、基本的な操作に関しては、この source で(多分)完結できるはずです。

何故作ったの?git の vim plugin と言えば、有名な vim-fugitive があります。

自分も、仕事で使うバージョン管理システムが svn から git に移行したタイミングで、最初は使おうとしていました。
ですが、長らく(こちらも自前の) vim-unite-svn で、バージョン管理システムを unite 経由で使うことに慣れきってしまっており、
差分をコミットするごとにフラストレーションが溜まり、限界を超えた頃、気づくと自前で作成していました。

何ができるの?(自分が仕事を使ってる分には不自由しない程度に)基本的な操作は大体出来ます。

source 名を羅列すると、以下のような物を用意してあります。

* giti/branch, giti/branch_all
* giti/config
* giti/log
* giti/remote
* giti/status

それぞれ、簡単に説明してみます。

giti/branch, giti/branch_allgit branch や git branch -a を叩いた結果を…

builderscon tokyo 2017 に行ってきた

builderscon tokyo 2017 に行ってきたbuilderscon tokyo 2017 (2017/08/03-05) の本編1,2日目に行ってきましたきっかけは rebuild.fm のスポンサー宣伝
YAPC ASIA の系統をついでいるのもあるのか、 コンテンツ はかなり幅のある内容で、誰でも興味のある内容が何かしらあるであろう。な、カンファレンスでした発表資料は既に タイムテーブル の各詳細ページに大体公開されているので、内容はそちらを参考にしていただければと思います(リンクが貼られていないものも少し有りますが、検索すればどこかに上がってることが多いはずです)このエントリでは、自分が聞きに行ったセッションがどこだったかのリストとセッション全体についてのざっくりとした感想、及び、カンファレンス自体についてのざっくりとした感想を書いておき、来年以降また開催された時の参加判断の資料にできればと思います更新履歴2017.08.07 公開聞いたセッション実際にその場に行って、聞いたセッションのリスト1日目OpeningDeepLearningによるアイドル顔識別を支える技術ランチセッション A 株式会社VOYAGE GROUPランチセッションB Momentum株式会社マイクロチームでの高速な新規開発を支える開発・分析基盤Goで実装する軽量マークアップ言語パーサー2日目静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話小さく始めて育てるコンパイラランチセッション【PR】エンジニアがkintoneを使うべき3つの理由 サイボウズ株式会社ランチセッション 【PR】検索サービス開発が絶対におもしろいと思う理由 Supership株式会社polyglot になろう !!WEB+DB PRESS 100号記念 特別企画聞きたかったセッション後評判を聞いたりして、聞きたかったかなーと思ったセッション(後でスライド読む)1日目Desktop Apps with JavaScript横山三国志に「うむ」は何コマある?〜マンガ全文検索システムの構築RDBアンチパターン リファクタリングLT全部
#builderscon TL が大分沸いていた(残っていた人全員が見ていたのもあると思うけれど)2日目Ionic 3+ではじめる次世代アプリ開発(…

のどか(と窓使いの憂鬱)のvim風キーバインド設定を書いてみた

せっかくのどかを購入したのにあんまりキーバインドの改造をしていないので、練習がてらざっくりとvim風キーバインド設定を書いてみました。

多分窓使いの憂鬱でも動きます。動作確認はしていないです。

個人的に以下のキーバインドを先に行っているので、それ前提で見ていただければ。


# CapsLock 単発だと Esc になり、押しながら何かを押すと Ctrl になる
mod ctrl += !!英数
key *英数 = *Esc

# SemiColon を Enter に
key *IC-SemiColon = Enter

# Control を押しながら SemiColon で SemiColon
key *IC-C-~S-SemiColon = SemiColon


で、以下がvim風キーバインド


### vim mode
## vim mode トグル
key C-OpenBracket = &Toggle(Lock0)

## keymaps
# 一行ヤンク
keymap2 LineYankReady
key L0-*S-*C-*A-Y = Home S-End C-C Home

# 一行デリート
keymap2 LineDeleteReady
key L0-*S-*C-*A-D = Home S-End C-X

# 一行カット
keymap2 LineCutReady
key L0-*S-*C-*A-C = Home S-End C-X

# 頑張って一番上まで戻ろうとする
keymap2 GoTopReady
key L0-*S-*C-*A-G = PageUp PageUp PageUp PageUp PageUp

# exモードセーブ
keymap2 ex_mode_save
key L0-*S-*C-*A-Enter = C-S
key L0-*S-*C-*A-SemiColon = C-S # Enter代替

# exモード
keymap2 ex_mode
key L0-*S-*C-*A-W = &Prefix(ex_mode_save)

keymap Global

## vim mode 時の挙動
# default mode (Lock0 : on)
key L0-*S-*C-*A-_1 = &Undefined
key L0-*S-*C-*A-_2 = &…