はい!今やってます!

Work Pertly, Live Idly

【MindMap】マインドマップで簡単思考の整理術

マインドマップって何ですか

マインドマップとはトニー・ブザンが考案した、項目をツリーのように繋げて物事を細分化する為の思考ツールです。 表現したいキーワードを中心に置いて、思いつくがままに細分化していきます。
f:id:yuji_ueda:20150820155001p:plain

クリティカルシンキングで使われるロジックツリー(WHY/HOW/WHAT)フィッシュボーンダイアグラム(特性要因図)にも似ていますが、 というか私には同じに見えますが、視覚的に思考を細分化し保存する事で思考を整理したりアイディアを生み出すのに有効です。
ちなみに"マインドマップ"という単語は商標登録されているそうです。

マインドマップの良いところ

WHY/HOW/WHATの何れもメモ帳にリストアップするのもいいですが分類がせいぜい1方向にしか保存出来ないのに対して、 マインドマップにすれば多次元的に情報を書き出す事が可能です。
情報を視覚的にまとめる事で、情報の抜け漏れが防げる事とアイディアを出す為の手助けになるというメリットがあります。 またWHATツリーにして要素を分解していく事で、リスト代わりにマインドマップを使う事が出来ます。
自分の担当している仕事のドメインを分解する事で仕事の効率を上げて、情報伝達の質も上げた同僚を見てマインドマップの良さを実感しました。 一度書いたものがあれば後々追加して成長させて行けるのは、書きっぱなしで飽き性な自分にとっても相性がよかったです。

マインドマップツールを探してみた

検索すればたくさん出てくるので、紹介するのは少数ですが

  1. iMindMap
    ひとつはトニー・ブザン公認の"iMindMap"なぜアップルの冠である"i"が付けられているのかは謎ですが、無料体験版があります。

    thinkbuzan.com

  2. XMind
    私が利用しているのはXMind。WEB版が提供されているようなツールもあるのですが、動作速度とインターフェースを重視してローカルで動作するものを選びました。

    jp.xmind.net

  3. FreeMind
    一般的な拡張子が使われるツール拡張子 : .mm

    osdn.jp

  4. MindManager
    一般的な拡張子が使われるツール拡張子 : .mmap

    www.mindjet.com

WEBサービスに必要な知識を俯瞰的に捉えてみた

f:id:yuji_ueda:20150820165633p:plain
WEBサービス開発に必要な要素を体系的に把握する為、WHATにフォーカスしてマインドマップを書いてみました。
かなり無機質な感じになってしまったけれども、ネットワークやサーバ管理に対する知識が不足している事が見えました。 開発時に利用するミドルウェアの単位で名前を上げてしまうのでは無く、そのミドルウェアが担っている事を出来るだけ概念で書き出す事で、 使い回しの効くマップを書けるみたいです。

まとめ

ロジカルに問題点を捉える為のツールとしてマインドマップですが、使う人次第でいろんな使い方が出来るようです。
オフィシャルな使い方を知りたければトニー・ブザンを追ってみるもよし、仕事の合間に自由に紙に書いて頭の中を整理するのもよし。 便利な思考ツールを使って、早く帰って遊びましょう。

【小ネタ】YouTubeの広告を自動でスキップする方法(Chrome向け)

YouTubeの広告の自動スキップについて(Chrome向け)

お正月の友達、YouTubeについて小ネタを一つ。 YouTubeの動画広告は新しくてカッコイイ広告が流れる場合もありますが、
5秒待機しないとスキップが押せない事や、押さずに放置しておくと長い時間表示されて面倒な事があります。
動画広告はYouTubeのプレイリスト機能やミックス機能とは相性が悪いので、Chrome拡張機能を使って自動的に広告をスキップする設定をします。

目次

  1. アドオン(拡張機能)のインストール
  2. 動画広告のスキップを確認
  3. あとがき

1.アドオン(拡張機能)のインストール

  • アドオンのページへ
    ChromeのウェブストアからAdblock for Youtube™という無償で提供されているアドオンを導入します。

YouTube™のための自分好み - Chrome ウェブストア

  • Chromeウェブストアからインストール

f:id:yuji_ueda:20150101232417p:plain

上記のアドレスへアクセスすると以下のような画面が表示されるので、 Adblock for Youtube™を探して+無料のボタンをクリックしましょう。

  • セキュリティの質問に回答

f:id:yuji_ueda:20150101232432p:plain

アクセスしたウェブサイト上にある自分の全データの読み取りと変更を許可するか、という質問がされます。セキュリティ的に不安がある人はインストールはやめておきましょう。

  • インストール確認

f:id:yuji_ueda:20150101232444p:plain

インストールが完了すると、最初のアドオンリストが追加済みの表示に変わります。 インストール自体はこれで完了、ブラウザの再起動は必要ありません。

2.動画広告のスキップを確認

実際にYouTubeで適当な動画を見て、広告が表示されないことを確認しましょう。

  • 適当な動画ページにアクセス
  • アドレスバーを確認

f:id:yuji_ueda:20150101232454p:plain

YouTubeの動画ページにアクセスすると、アドレスバーの右の方に右向きの矢印が追加されている事がわかります。 このマークが表示されている場合は、正常に広告のスキップが完了しています。 今後は手動で広告をスキップの表示をクリックする必要はありません。

あとがき

エンジニア的なアプローチが無くて面白く無いので、
このアドオンをインストールしてもセキュリティ的に問題がないかを検証してみました。
結論から言うと、Version 2.23に関してはGoogleアナリティクスが取得できる程度の情報は取得しているようですが、 それ以外の重要な情報の取得は行われていなさそうです。

検証方法

  • コードリード
  • パケットキャプチャ

ご利用はあくまで自己責任でお願いします。

Vagrantで始めるお手軽仮想サーバ構築 (第1回 ローカルで動く仮想WEBサーバ編)

サーバ環境の構築に関して、サービスの速い段階で冗長構成を考えながら構成管理を行う事がサービスの開発効率、強いては成長に寄与するという妄想の元、サーバプロビジョニングの最初の段階としてOSのイメージからサーバを起動する所までをVagrantを使って実現したいと思います。 ブートストラッピング(OSインストール)のレイヤーをカバーする手順として全2回構成のうちの第1回目は、ローカル環境に仮想マシンで動作するWEBサーバを構築するまでの手順を記載しています。

目次

  1. Vagrantのセットアップ
  2. Vagrant仮想マシンを起動する
  3. Vagrantの共有フォルダ

1.Vagrantのセットアップ

Vagrantのセットアップを行います。

Vagrantのインストール

公式サイトhttps://www.vagrantup.com/から、環境に応じたインストーラーをダウンロードしてインストールして下さい。 この記事を書いた時点の最新バージョンは1.6.5です。

仮想環境のセットアップ

VirtualBoxなどの仮想環境構築ツールを使って準備を整えます。(省略)

2.Vagrant仮想マシンを起動する

Box(仮想マシンテンプレート)を取得

Vagrantで仮想環境を構築する為に、Boxと呼ばれる仮想マシンのテンプレートを取得します。
公式から入門用のBoxの取得が可能です。https://docs.vagrantup.com/v2/getting-started/boxes.html
非公式ですが、boxファイルを公開しているサービスがあるのでこちらも参照して下さい。http://www.vagrantbox.es/

vagrant --version : Vagrantのバージョンを確認するコマンド
vagrant box add hashicorp/precise32 : 入門用のBoxを取得する(Ubuntu 32bit)
vagrant box list : 取得済みのリストを参照する
vagrant box -h : vagrant boxで利用可能なオプションを確認する。
vagrant box remove : 不要なBoxファイルを削除する
Vagrantで取得したBoxファイルはユーザホームの.vagrant.d/boxesというディレクトリに配置されます。

ls -la ~/.vagrant.d/boxes : 取得済のBoxファイルを確認する

仮想マシンを初期化する

Vagrant仮想マシンを立ち上げるには、1つにつき1つのディレクトリを作成する必要があります。(一つのテンプレートからいくつでも仮想マシンを作成する事は可能 )

mkdir ~/${Dir_Name} : 仮想マシン用のディレクトリを作成します。
cd ~/${Dir_Name} : (省略)
vagrant init ${Box_Name} : 指定したBoxで仮想マシンを初期化する
vi ~/${Dir_Name}/Vagrantfile 仮想マシンの設定ファイルを編集する
仮想マシンを初期化するとVagrantfileというファイルが作成されますが、このファイルが仮想マシンの設定ファイルとなります。)

仮想マシンを立ち上げる

vagrant up : 初期化した仮想マシンを立ち上げる
vagrant status : 仮想マシンの状態を確認する
vagrant suspend : 仮想マシンをスリープ状態にする
vagrant resume : 仮想マシンを復帰状態にする
vagrant halt : 仮想マシンを終了状態にする
vagrant reload : 仮想マシンを再起動する(Vagrantfileを修正した時など)
vagrant destroy : 仮想マシンを削除する(Vagrantfileは残るのでupでの立ち上げは可能です。)

仮想マシンにログインしてWEBサーバを立ち上げる

※この項で扱う内容はローカル環境で起動させる事を前提にした設定なので、 パブリックからアクセスを受け得る環境で下記の設定を使用する事は避けて下さい。

vagrant ssh : 起動した仮想マシンにアクセスします。
sudo yum -y httpd : WEBサーバをインストール
sudo service httpd start : WEBサーバを起動する
sudo chkconfig httpd on : 仮想マシンを立ち上げた時の自動起動をOnにする
sudo chkconfig iptables off : ファイヤーウォールの設定をOffにする
cd /var/www/html : ドキュメントルートに移動する(Centの場合)
vi index.html : htmlファイルを作成する
vi ~/${Dir_Name}/Vagrantfile : 仮想マシンの設定ファイルを修正する
vagrant reload : Vagrantfileの修正を反映する

3.Vagrantの共有フォルダ

Vagrantには仮想マシン仮想マシンを立ち上げている環境でファイルを共有することが可能なディレクトリが割り当てられています。

cd /vagrant : 仮想マシンで共有ディレクトリに移動する。
touch /vagrant/test.txt : 仮想マシンで共有ディレクトリにファイルを作成する。
ls ~/${Dir_Name}/ : 共有ディレクトリを参照する。