Macのキーボード掃除補助アプリKeyboard Cleanerが良かった

キーボード掃除補助アプリって?

Keyboard Cleaner はアプリを起動するとキーボード入力が反応しなくなるので、その間にウェットティッシュなどでお掃除しましょうというアプリです。(←掃除まではしてくれませんw)

会社のデスクにウェットティッシュを常備して、このアプリを使ってたまに掃除しています。

今までは類似アプリの KeyboardCleanTool を使っていたのですが、macOS Sierra にアップデートしたら動かなくなってしまったので、代わりに Keyboard Cleaner を入れてみたら問題なく動くし、むしろ便利だったので紹介します。

類似アプリ「KeyboardCleanTool」との違い

KeyboardCleanTool はキーボード掃除補助専用のアプリなのですが、Keyboard Cleaner では更に以下の様なことができます。

画面の掃除に使える!

アプリを起動している間は画面全体が真っ黒になるため、画面についている指紋や埃が分かりやすくなります。
一緒に掃除してしまうといいと思います。

トラックパッド掃除に使える!

アプリを起動するとトラックパッドの入力も無効化されるので、トラックパッドも掃除できます。

アプリのダウンロード方法

Keyboard Cleaner のダウンロードページ からダウンロードできます。

アプリの終了方法

起動すると何も操作を受け付けなくなるのでアプリを終了できないと大変です。

通常のアプリと同様、Command キーを押しながら Q キーを押すと終了できます。(⌘+Q)

ClipMenuがCPU使用率100%以上になる場合

ClipMenu を使用していると稀に高負荷状態に陥り CPU 使用率が100%を上回る状態が続くことがあります。CPU ファンがうなり続ける状態です。

大抵の場合はアプリを強制終了し再起動すれば治るのですが、アプリを何度再起動しても高負荷状態が続く現象に遭遇しました。

これはクリップボード履歴データが怪しいということで、初期化を行ったところ解決しましたので方法をメモしておきます。

クリップボードデータの初期化方法

ClipMenu は操作不能のため、アプリを終了した状態でターミナル上で以下の操作を行い初期化しました。

cd ~/Library/Application\ Support/ClipMenu/
cp clips.data clips.data.bak
:> clips.data

最後のコロンコマンドの意味は シェルスクリプトでset -eしているときに処理を中断せずエラーを扱う方法 で少し触れています。何もしないコマンドですが、リダイレクトするとそのファイルが空になります。

~/Library/Application Support/ClipMenu/clips.data がクリップボードデータの実体ファイルパスになります。履歴データは消えてしまいますが、同様の症状の場合は試してみるといいかも。

アプリ開発スケジュールの立て方

最近とあるスマートフォンアプリの開発をしていまして、その開発スケジュールを立てることになりました。

ただ開発スケジュールについては今まで立ててもらってばかりで、自分で立てた経験が無いなーと思ったので、立て方について色々と調べたり経験者の方に聞いたりしてみました。

その内容のまとめをちらっと会社の日報に書いていたのですが、あとで見返せるようにブログにおこしておくことにしました。

マイルストーンを明確に設定すること

  • そもそもマイルストーンとは?…
    • 道路に1マイルごとに置かれた標石のこと
    • スケジュール上の「重要な節目」となる日
  • 設定しておくことで…
    • スケジュール遅延を早期に認識することができる
    • 目標が出来ることによるチームメンバーのモチベーション向上

スケジュール、コスト配分の目安

  • 目安となるスケジュール、コストの配分としては、設計:3分の1、開発:3分の1、テスト:3分の1 程度
    • この配分は従来のシステム開発の場合の配分なので、あくまで参考
    • アプリ開発の場合は体系立てて設計やテストの期間をきっちりと取らずに、開発と並行してそこら辺をカバーしていくことも
    • 品質を重視するなら、テストの配分をもっと増やす
  • バッファも含めて余裕のある開発期間を取るよりは、テスト期間やバッファのための期間を作るようがよい

スケジュールの引き方の手順

  1. 大枠のマイルストーンを決める(リリース日など)
  2. 各開発者の稼動日を分かる範囲で明らかにしておく
  3. 必要なタスクを洗い出す
  4. タスクの作業工数を決定する
    • 開発者を含めた複数の人が複数の視点で決定することが望ましい
    • マイルストーンに作業が収まり切らない場合は人員投入や複数人での並行作業も検討
    • 全てのタスクの工数を出した時点で現状の人員で大枠のマイルストーンを達成可能か確認する
  5. タスクの優先度を決める
  6. タスク間の依存関係を明らかにする(あれが終わってないとこれが出来ないとか)
  7. タスクの担当者を決め作業工数を元にスケジュールを引いていく
    • タスクの対応順番は依存関係や優先度を考慮して決める
  8. プロジェクトの重要なポイントとなる節目を決め細かいマイルストーンを追加する(○○機能完成など)
  9. 出来上がったスケジュールを見直し確認する(ウェブ管理の場合はガントチャートを見るとよい)

Backlog や Redmine などの Web ツールを用いる場合もエクセルを用いてスケジュール管理する場合も同様です。

出来上がったスケジュール確認で見るべきポイント

  • スケジュールの実現性や余裕感
    • 多少のことが起きてもリスケしなくても大丈夫なスケジュール
  • 作業間の依存関係が正しいかどうか
  • 担当者が同じ期間に複数の作業をしていないかどうか
  • タスクの人員アサインが最適かどうか
    • タスクの難易度に対しての開発者の技量の考慮
    • 開発者の得意分野の考慮

プロジェクトの中心はやはり人

  • 最も忘れてはならないこと

ついでに最近の創作メモ帳について

開設当初はPHPやウェブ系技術のことばかり書いてたのに、最近は上流工程のことやらMac設定云々の話題やら、幅広くなってます。。

だんだん内容がブログ説明文にそぐわなくなってきて、方向性が迷走してるような気がしますが気にしないことにしますw

たぶんまたPHPに戻りそうなので。たぶん。

2014/11/11: スケジュールの引き方の手順など少し更新しました。