Translate

2017-01-29

iTermの使い方 便利に。美しく。

iTermのスクリーンキャストに刺激を受けて

iTermのカスタマイズを少しまとめてみます。

ターミナルが進化するなんて考えませんでしたが、iTermを使い始めるとまだまだ道具として進化の途中なのだと感じます。開発者に敬意を評します。ありがとうございます!
また、「iTerm」をwebで検索すると、たくさんのテキストによる情報を得ることができますが、YouTube等によるスクリーンキャストがオススメです。
動いているiTermは何と言ってもカッコいいですよ。
iTermは設定項目も多いので、全てを覚えるのは大変です。スクリーンキャストで刺激を受けて、取り入れていくのがよいと思います。

iTermのインストール

ややこしいのですが、正式な名称はiTerm2で、現在のバージョンは3.0.13です。
つまり、iTerm2 3.0.13となっています。Googleなどで検索する際は
iTerm2 3
とすると良いみたいですね。
ダウンロードはこちらから。インストール方法は省略します。


iTermのちょっとこれいい

基本的な使い方は、検索すれば色々ありますので、この記事では「ちょっとこれいい」をセレクトして紹介します。

Cursor Guide

この機能は現在のカーソル行をハイライトしてくれる機能です。
メニュー View > Show Cursor Guide 
ショートカット ⌥ + ⌘ + [
トグルon/offです。

Find Cursor

画面を暗くして現在のカーソル位置以外をぼかし、カーソルを探してくれます。
メニュー View > Find Cursor
ショートカット ⌘ + /
これはショートカットが便利そうです。


Shell Integration

iTermがshellの情報を取れるようにします。まずはインストール。
メニュー iTerm2 > Install Shell Integration
bashを基本に情報がありますが、zshでも問題なくインストールできました。
これをインストールしておくと、iTermの持つshellとの連携機能のいろいろが有効になります。例えば、iTerm Badge機能などです。
このShell Integration機能はボリュームがあるので、今回はインストールするだけにして、数回に分けて記事にします。

Inline Image (imgcat)

Shell Integrationをインストールするとユーティリティもインストールすることができます。その一つがインラインイメージを可能にするimgcatコマンドです。

> imgcat
Usage: imgcat [-p] filename ...
   or: cat filename | imgcat

Auto Complete

コマンドの履歴を表示してオートコンプリートしてくれます。
メニュー Edit > Open Autocomplete
ショートカット ⌘ + ;

Timetamps

コマンドの履歴に対して右端にコマンドを送った時刻の表示をしてくれます。
メニュー View > Show Timestamps
ショートカット ⌘ +⇧+ e

Undo Close Session

誤ってウィンドウやタブを閉じてしまった場合に、時間内にアンドゥをすれば復帰します。これはとても便利で安全な機能です。5
メニュー Edit > Undo Close Session
ショートカット ⌘ +Z

 これらの他にも色々な機能がありますが、少しずつまた紹介していきます。
ところで、、、

一体、何が持っている機能なの??

こういう機能の説明をする際に、実はそれが何の持つ機能なのかわからなくなることが多々あります。
ターミナルの機能なのか?
zsh等のシェルの機能なのか?
またまた、zshのプラグイン機能なのか?
その他、インタラクティブフィルタ(peco・fzfなど)の機能なのか?
今回は、iTermの機能の中でも、ターミナルらしい機能を紹介してみました。


2017-01-24

Google Analytics API / PythonでGAのレポートを取得する

Google AnalyticsのReporting APIを使って、Pythonでアナリティクスのデータを取得してみます。
Googleの準備しているページを参考にして作業を進めます。

はじめてのアナリティクス Reporting API V4: サービス アカウント向け Python クイックスタート
https://developers.google.com/analytics/devguides/reporting/core/v4/quickstart/service-py?hl=ja

作業フロー

  1. anacondaで仮想環境を作る 
  2. 必要なライブラリ(モジュール)をインストールする 
  3. サービスアカウントを作成する(認証情報を作成する) 
  4. GoogleAnalyticsの管理画面でサービスアカウントの追加 
  5. サンプルコードを作成する(修正する) 
  6. 実行

2017-01-22

anaconda Python仮想環境のつくりかた

仮想環境ゼロから

anacondaでpythonの仮想環境を作ります。まず、anacondaの環境を確認してみましょう。
> conda info
Current conda install:

               platform : osx-64
          conda version : 4.3.6
       conda is private : False
      conda-env version : 4.3.6
    conda-build version : 2.1.1
         python version : 2.7.13.final.0
       requests version : 2.12.4
       root environment : //anaconda  (writable)
    default environment : //anaconda
       envs directories : //anaconda/envs
          package cache : //anaconda/pkgs
           channel URLs : https://repo.continuum.io/pkgs/free/osx-64
                          https://repo.continuum.io/pkgs/free/noarch
                          https://repo.continuum.io/pkgs/r/osx-64
                          https://repo.continuum.io/pkgs/r/noarch
                          https://repo.continuum.io/pkgs/pro/osx-64
                          https://repo.continuum.io/pkgs/pro/noarch
            config file : None
           offline mode : False
             user-agent : conda/4.3.6 requests/2.12.4 CPython/2.7.13 Darwin/16.1.0 OSX/10.12.1
                UID:GID : 502:20


anaconda インストールとアップデート




以前からanaconda環境で使っていたのですが、うまく動かないものが出てきたので、思い切って アンインストール > 再インストールしました。その記録です。


アンインストール

> sudo rm -rf /anaconda
これはsudoでの作業のため注意!!!!!取り消し不可。
正しいアンイストール方法はこちらです。


インストール

ダウンロードはこちらのページ
コマンドラインによるインストール方法とpkgファイルを開くだけのグラフィカルインストーラがあります。


condaのアップデート

anaconda本体のアップデート方法
> conda update conda


condaのパッケージ一式のアップデート

パッケージのアップデート方法
> conda update --all
OKならば[y]を入力

condaとpythonの確認

場所を知る
> which conda
/anaconda/bin/conda
> which python
/anaconda/bin/python


zsh Prezto など。コマンドプロンプトを使いやすく

Customizing Your Prezto Prompt

使いやすいpromptにカスタマイズします。
シェルから、ブログ記事にコピペする際に綺麗なわかりやすい形で表現できるように。
参考:http://mikebuss.com/2014/04/07/customizing-prezto/

> ls
Applications
Desktop
Documents
Downloads
Library
Movies
Music
Pictures
Public

テーマ(THEME_NAME) を walters にしました。
手順
  1. ~/.zpreztorcをエディタで開く
  2. エディタで下記の場所に記述する
zstyle ':prezto:module:prompt' theme 'walters'

Google Tag Manager (GTM) をBloggerに導入しました。

GoogleAnalytics と GoogleTagManager

この記事はGAIQ再試験二日前に書いています(^_^;)
タグマネージャの概要は理解していましたが、実際に使用したことがなかったのでアカウントを作って、試しにこのブログに導入。記事にしました。
Google Tag Manager(グーグルタグマネージャー)は、実はGAIQの試験勉強中にもちらっと出てきます。詳細な機能を知識として求められているのではありませんが、Googleアナリティクスと切り離して考えられないことなので、このタイミングで理解を深めようと思います。
タグマネージャはGoogleTagManagerのほかにもYahoo!タグマネージャーなどがありますが、対応していないものもあるので、Googleアナリティクスとの親和性を考えGoogleTagManagerを選択します。

比較記事はこちらのブログ記事にくわしくありました。※他のサイトへジャンプします。
ANAGRAMSタグマネージャーの重要性と用途で使い分けるYahoo!タグマネージャーとGoogleタグマネージャ

タグマネージャは何をするものか?

例えば、一般的にGoogleアナリティクスでwebサイトの解析をしようとした場合に、各ページにトラッキングコードを埋め込まなければなりません。CMSなどを利用することが多いと思いますが、その場合はテンプレートのHTMLファイルをエディタで開いて<head>タグ内などにトラッキングコードを書き加えます。そうすることで、そのテンプレートを利用したwebページ全ての<head>内にトラッキングコードをもつことができます。
しかし果たして、この大事なテンプレートファイルを書き換えることは、運用管理として正しい方法なのでしょうか?もしくは安全な方法なのでしょうか?

今回はbloggerに導入するのですが、注意点があります。日本語による情報があまりなかったので、英語のQAサイトをいくつか見て回りました。こちらのサイトを参考にしました。
一部、埋め込みコードのエスケープをしなければなりません。
dl=l!='dataLayer'?'&l='+l:'';j.async=true;
dl=l!='dataLayer'?'&amp;l='+l:'';j.async=true;

& → &amp; です。

Prettify対応言語 A List of Google Prettify Language Codes

Google Code Prettify
https://github.com/google/code-prettify

このblogでは、コードハイライトにGoogle Code Prettifyを利用しています。
たくさんの言語に対応しています。htmlで記述の際、言語名コードをclass名に記述するだけです。
テーマも変えることが可能です。bloggerの場合、設定のアドバンスCSSに記述すると捗ります。

3日間4日間でGAIQチャレンジ その12 再々試験 〜合格

やっと合格できました。

再試験まで7日間あけなければ受験できないので、試験勉強開始から4+7+7 の計 18日もかかってしまいました。

認定証に恥じないよう、精進させていただきます。

2017-01-09

3日間4日間でGAIQチャレンジ その10 補習2

ソーシャルインタラクション
https://support.google.com/analytics/answer/6209874?hl=ja

多くのソーシャルネットワークはユーザーによるウェブやアプリのコンテンツの共有を容易にするための埋め込み可能なボタンやウィジェットを提供しています。こうしたボタンの一例としてはGoogle+の「+1」ボタンやフェイスブックの「いいね!」ボタンなどが挙げられます。こうした埋め込み型のソーシャルボタンを使ったユーザーインタラクションは、そのコンテンツに対するソーシャルインタラクションです。ユーザーエンゲージメントの貴重なデータであるこうしたソーシャルインタラクションは、アナリティクス測定可能です。


クロスドメイン トラッキングの一般的な使用例
https://support.google.com/analytics/answer/1034148

クロスドメイン トラッキングを設定すると、複数のウェブサイトから 1 つのアカウント プロパティにデータをまとめることができます。これにより、複数のサイトに分散するデータを同じレポートビューに表示できるようになります。

この方法は、サードパーティのショッピング カートを使用しているような場合に最適です。それ以外の場合は、複数のビューを設定することをおすすめします。つまり、クロスドメイン トラッキング設定を使って収集するすべてのトラフィック用のビューを 1 つ作成し、個々のドメインのデータのみを表示するためのフィルタを適用したビューを個別に作成します。これにより、さまざまなドメインのトラフィックをすべて 1 つのビューにまとめて分析できます。さらに、必要な場合は、フィルタを適用したビューを使って個別のレポート セットで各ドメインのデータを分析することもできます。



2017-01-08

3日間4日間でGAIQチャレンジ その9 補習1

試験に不合格で明日再試験を頑張るぞ!と思ったのですが、再試験までは7日間あけなければいけないようです。
次回、必ず合格するように補習します。

このブログの最初の記事に書いた通り、このGAIQの取得の目的は分析解析等のデータサイエンスの概要を把握することです。ここで、つまづいてしまって大変恥ずかしいのですが、まだスタート地点にも立てていないことを自覚しました。GoogleAnalyticsはとても便利なツールです。学習(試験勉強)を通じて痛感したのは「何を何のために測定するのか」ということを常に意識することの大切さです。それを考えずにオペレーションだけを習得するのはあまり意味がありません。学習をすることによって日々のルーチンワークの中にも新しいものを発見することができると思います。
実際に試験を受けてみて、頭の中が整理できていないことに気づかされました。
「どこから何をみるか」が整理されていないと目的に到達できません。解答するのに混乱も招きます。
「なぜそんな測定ができるのか。またできないのか」これも意識する必要があります。トラッキングコードを埋め込む。このトラッキングコードが何をしているのかということも漠然とでも構わないので把握しておくと、それによって得られるデータが「どこからどのようにやってきた」ということがわかりやすくなります。
Googleのすごいところはこの学習教材(GoogleAnalyticsAcademy)をみてもわかります。整理された状態で解説されています。たとえば「接触」という言葉が出てきますが、Webの中で「接触」って何だよ。と思ってしまいますが、コンタクトやアクセスとも微妙に違う意味を考えさせられるきっかけになります。(マーケティング用語の接触とは微妙にニュアンスが違うと感じます。)また、逆に英語での解説と翻訳での解説は違う言葉を利用されることも多々あります。これは日本語でよりわかりやすくするための工夫だとは思いますが、実際には混乱もします。この辺りは英語と日本語を頭の中で上手に切り替える慣れが必要なのでしょう。

さて、具体的にどのように再試験のために補習をするかですが。

2017-01-06

3日間4日間でGAIQチャレンジ その8 試験

寒い時期ですから、90分の時間を寒くならないよう防寒対策をして、こぼさないようにお茶の準備もして、集中できる環境をつくって試験に臨みます。お手洗いも済ませて起きましょう。

試験はここから受けます。(GooglePartnersアカウントを取得しておくこと。詳しくは、過去記事ココにあります。)

Google アナリティクスの個人向け認定資格試験
https://www.google.co.jp/partners/#p_analyticscertification

時計、タイマー、ストップウォッチは準備しましたか?

90分 70問 1問あたりの解答時間は約77秒(1分17秒)です。また、次の問題が出るとさかのぼって解き直すことはできないようです。
合格点 80%(56問正解)を目指して、頑張ります。٩( ᐛ )و



ーーーーー 試験中 ーーーーー



結果

がーん不合格お恥ずかしいです。
時間は20分ほど余ったのですが、
70%(49/70問)しか正しく解答できませんでした。
復習して、明日再チャレンジします。
UserIDなどの細かい部分も理解しておく必要があります。
あーーーーε=ε=ε=ε=ε=ε=┌(; ̄◇ ̄)┘

3日間4日間でGAIQチャレンジ その7(デジタル アナリティクスの基礎 ユニット6)4日目

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その7。
3日間でチャレンジしてみようと思っていたのですが、、、、

厳しいです、、。

3日目にユニット5〜6を学習する予定でしたがユニット5がボリュームがありすぎました。
なので、
3日目 ユニット5 + 4日目 ユニット6
とさせていただきます。(^◇^;)

正確には、3日目にユニット5〜6を流しでさっと視聴しました。1.5時間くらい。
試しにステップ2の演習問題も解きましたが半分くらいしか正解しませんでした。
その後、メモを取りながら、手を動かしながら(実際に操作しながら)視聴しました。
再度ステップ2の演習問題。正答率は上がっています。

2017-01-04

3日間4日間でGAIQチャレンジ その6(デジタル アナリティクスの基礎 ユニット5)3日目

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その6。
3日間でチャレンジしてみようと思います。

ユニット3〜4では、アナリティクスの仕組み、重要な指標metricsとディメンションの設定を学習しました。アカウントの作成とアカウントの構造について、基本的なフィルタの設定〜キャンペーンデータの収集まで学習しました。残り1日でレポートに関することを学びます。

3日間4日間でGAIQチャレンジ その5(デジタル アナリティクスの基礎 ユニット3〜4)2日目

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その5。
3日間でチャレンジしてみようと思います。

昨日学習した
ユニット1〜2は、デジタルアナリティクスの概要や測定計画の作成について学びました。これらは特にGoogleAnalyticsに特化したことではなく、一般的な解析の基本となることです。また、これらにはビジネスの視点が必要ですが、経営者、マーケッター、技術者が知識と技術を集結して測定計画をつくります。
本日は、ユニット3から学習を始めますが、具体的にGAの仕組みなどを学べるようです。
頑張ります


2日目の学習内容

ユニット3 - レッスン1 - Googleアナリティクスの仕組み
5:40【完了】
GoogleAnalyticsの仕組み
GoogleAnalyticsによるデータ収集、データ処理、レポート作成の仕組みを理解する

アナリティクスで扱うデータを十分に理解するには、レポートに表示されるまでにデータがどのように収集・処理されるか知っておくことが重要です。(仕組みの理解)
アナリティクスのシステムは

2017-01-02

3日間4日間でGAIQチャレンジ その4(デジタル アナリティクスの基礎 ユニット1〜2)1日目

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その4。
3日間でチャレンジしてみようと思います。


1日目の学習内容


ユニット1 - レッスン1 - コースの概要

2:06【完了】
コースの概要
楽しみつつ学習

ユニット2 - レッスン1 - デジタルアナリティクスの重要性

9:29【完了】
デジタル アナリティクスの重要性
あらゆる規模の企業に影響する3つの大きなトレンド
  • webの普及で世界の情報やメディアを誰でも手軽に利用できるようになったこと
  • モバイル機器の普及で世界中の人々が24時間つながるようになったこと
  • クラウドコンピューティングでほぼ無限の処理能力を安価に利用できるようになったこと(大量のデータ分析)
デジタルアナリティクスとは自社及び他社の質的・量的データの分析を通して顧客及び見込み顧客に提供するオンライン環境を絶えず改善しオンライン・オフライン両面で成果を高めることである。 Avinash Kaushik

3日間4日間でGAIQチャレンジ その3(全体把握・デモアカウント取得・Google Partners プログラム)

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その3。
3日間でチャレンジしてみようと思います。


学習内容全体の把握

デジタル アナリティクスの基礎
GoogleAnalyticsAcademyのよくある質問のページを参考にしました。
(自動翻訳後、抜粋)


22 の動画レッスンで構成され、各動画の再生時間は 3~10 分


3日間4日間でGAIQチャレンジ その2(時間割・記事を書きながらアップデート)

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その2。
3日間でチャレンジしてみようと思います。

記事を書きながら進めていきます

時間割
1日目
  • GAIQ取得の手順の確認(その1
  • 時間割作成(その2)←イマココ
  • 学習内容全体の把握(その3
  • GoogleAnalytics デモアカウントの取得(その3
  • Google Partners プログラムへの申込(その3
  • 学習開始〜1日目
  1. 映像教材でDigital Analytics Fundamentals(アナリティクスの基礎)1〜2
  2. 学習ガイドをさらっと読む
映像教材はオリジナルが英語版なので、日本語字幕を表示しながら。メモを取りながらブログ記事化する。演習には答えるが、記事には書かない。

2日目
  1. 映像教材でDigital Analytics Fundamentals(アナリティクスの基礎)3〜6
  2. GoogleAnalytics プラットフォームの仕組み、、、、あれ?これはどこで読めるのだろう
  3. 用語集を読む

3日目


3日間4日間でGAIQチャレンジ その1(チャレンジ理由・教材・手順)

GAIQ(GoogleAnalytics個人認定資格)にチャレンジする記事です。その1。
3日間でチャレンジしてみようと思います。

チャレンジする理由

アクセス解析のデファクトスタンダードであるGoogleAnalyticsを学ぶことで、

  • PCを使ったデータ解析とはどういうものなのか
  • そもそもアクセス解析の目的は何なのか

これらを理解したいということです。
ひろく浅くデータ解析の基礎を知り、ビジネススキルとPCのスキルと統計学のスキルの基本を応用することで新しい視点を得ることを目的とします。
3日間と期限をつけた理由は、集中力を高めるためです。
GoogleAnalyticsは、これまでも利用してきましたが、体系的に学んできたわけではありません。おそらく、ぼんやりと数字やグラフを眺めていただけです。

GoogleAnalyticsを学ぶ教材と手順

GAIQというキーワードで検索すると、情報がたくさんあるので、詳細は省略します。
Googleは、このツールの学習のためにとても丁寧に資料を準備しています。無料です。

GoogleAnalyticsAcademy
https://analyticsacademy.withgoogle.com/

英語が中心ですが様々な言語で学ぶことができます。こういったチュートリアルに力を入れることがこのツールのスタンダード化に繋がっているのでしょう。

手順
GoogleAnalyticsAcademyで下記を受講する
  • Digital Analytics Fundamentals
  • GoogleAnalytics プラットフォームの仕組み
■Analytics IQ 試験の学習ガイドを読む
  • 試験時間 90分
  • 合格点 80%以上
  • 有効期限 18 か月
詳細はこちらをご覧ください


また、このGoogleAnalyticsを学んだ後は、GoogleDataStudioなどの学習に繋がっていきます。楽しみですね。
https://datastudio.google.com


2017-01-01

データって何??2016年の「データの出来事」

2017年あけましておめでとうございます。
昨年2016年は選挙や投票というニュースをきっかけに色々と考えさせれました。
いや、考えたというより混乱しました、、、。

  • イギリスのEU離脱投票
  • 東京都知事選挙
  • アメリカ大統領選挙
  • ・・・etc


世界中日本中の「知」が、より高精度なデータを集めながらも正確な結果を予想できませんでした。我々は、基本的にマスコミや識者から出てくる情報を参考にしなければなりません。複数回のサンプリング調査など素人では出来ないからです。もちろん、各国、各局、それぞれの思惑があるのでしょうから、鵜呑みにすることもできないのですが、心構えや論点の参考にはしています。昨年の投票前の報道と結果を見る限り、私は一体なんのデータを見ていたのだろうと思ったのです。
見過ごし、聞き流した部分がたくさんあるはずです。
出てきた予測の根拠(データ)をちゃんと理解していない。極端に言えば、私は思いつきの予測をしていたのでしょう。
投票結果の政治的な面やどちらに国益、私益があるということは関係なしに、データに基づく予想というものに関心を持ちました。

また、昨年は人工知能、ビッグデータ、機械学習、、そういうキーワードを毎日のニュースの中に見つけることができました。また、それらを一個人の開発者の方々がブログ等で記事を書き、それらを読ませていただき、身近に感じることができるようになったのです。
果たして、本当に個人でも関われることなのかどうかは、これから検討するのですが、興味深い分野であることには間違いありません。
データを上手に扱う。データを正確に扱う。単純にそれだけのスキルでもビジネスで役立つことも多いでしょう。それら分野と親和性の高いPythonを使うことが多いようですが、私がこれまでMVCのWebアプリをPythonを使って開発してきた経験が少しは役に立つかもしれません。

これまで、漠然と取り組んできたWebやアプリ開発ですが、「データサイエンス」「データエンジニアリング」「統計学」といったキーワードを中心に据えて、様々な方向の切り口から見ていこうと思います。
苦手な数学ももう一度やり直さなければならないですが(笑)
また、出遅れているという気持ちもあります。ただこれに関しては何をやっても出遅れているのでしょうから、追いつけ追い越せでやるだけです。

ではまず手始めに何をやるか。
Excel基礎!
いやいや、そういう巨大なアプリは苦手です。
また作業の手順を記録できないので、基本的にはテキストエディタを使ってかけるプログラムになると思います。それだけでなく、数学なんかも基礎からやり直していきます。
次回の記事から数回、GAIQにチャレンジする記事を書いていきます。
GAIQとは、Googleが認定する「Google アナリティクス個人認定資格」のことです。
これを学ぶことで具体的に数字やグラフを見る訓練をしていきます。