PostgreSQL の基本

環境は Mac でやってますが Linux でもほぼ同じです。

インストールから初期設定まで

Mac なので brew でインストールします。

$ brew install postgresql

最初にデータベースの初期化をします。

$ initdb /usr/local/var/postgres -E utf8

試しに PostgreSQL サーバーの起動を確認してみます。

Vim 小技集

自分のための覚書

編集

:%s/:\(\w\+\) =>/\1:/g  # hash の書き方を置換 #正規表現
Ctrl+v jjjj I           # 4行コメントアウト(,#)
Ctrl+v jjjj d           # 4行コメントイン(,#)
Ctrl+v jjjj c aaaa      # 4行置換
viwy                    # カーソル位置の単語を yank
viwp                    # カーソル位置の単語を yank している内容で上書き
cw                      # カーソル位置から単語の最後までを書き換える
viwu                    # カーソル位置の単語を undercase
viwU                    # カーソル位置の単語を UPPERCASE
viw~                    # カーソル位置の単語を undercase <-> UPPERCASE 入れ替え
viw!nkf -Z4             # カーソル位置の行を半角カタカナ

カーソル移動

0                       # 行の先頭へ
^                       # 行の空白以外の先頭へ
$                       # 行の末尾へ
w                       # 次の単語の先頭へ
f*                      # 次の*へ           (例 df"->"まで削除)
t*                      # 次の*の前へ       (例 dt"->"の前まで削除)
viw                     # 現在のカーソル位置の単語を選択
vi"                     # 現在のカーソル位置の"の中を選択
va"                     # 現在のカーソル位置の"の外を選択

モード

C-[                     # 挿入モードを抜ける
ESC                     # 挿入モードを抜ける

ウィンドウ

:vs                     # 垂直分割
:sp                     # 水平分割
Ctrl+w w                # 次のウィンドウへ
Ctrl+w [hjkl左下上右]    # ウィンドウの移動
Ctrl+w -                # 高さを小さく  (例 Ctrl+w 10- -> ウィンドウの高さを 10 狭める)
Ctrl+w +                # 高さを大きく
Ctrl+w <                # 幅を小さく
Ctrl+w >                # 幅を大きく
Ctrl+w =                # 自動調整
Ctrl+w r                # 左右・上下のウィンドウを入れ替え
:res 100                # 現在のウィンドウの高さを 100 にする
:vertical res 30        # 現在のウィンドウの横幅を 30 にする

特殊処理

qa                      # マクロ記録開始
q                       # マクロ記録終了 (@a で使用可能)

コマンドラインの履歴

q: または : Ctrl+f       # コマンドラインの履歴
q/                      # 検索
Ctrl+c                  # 履歴をコマンドラインに送る(編集して使えるようになる)

改行文字の変更

:%s/
/
/g                      # /Ctrl+v Ctrl+m/Ctrl+v Enter/

ファイル比較

:vertical diffsplit     # 差分を取りたいファイル
:do (diff obtain)       # もう一方のファイルから差分を取り込む
:dp (diff put)          # もう一方のファイルに差分を取り込ませる

「私は、こんな人になら、金を出す!」読了

ベンチャーキャピタル (以下VC) と一言にいっても、体系は種々あって、大きく2つに分けるとすれば会社組織と投資事業組合があります。著者の村口さんは、組織分業と会議決定を特徴とする会社組織のVCに務めた経験からダイナミックな投資事業を行うことの限界を感じ、ご自身で独立系VCである、日本テクノロジーベンチャーパートナーズを設立され数多くの企業を上場へと導いてきました。そんな村口さんの考えるVCのあり方や起業家とは何か?という問いかけに対する一つの解答がこの本で示されています。

Healthcare Hackathon in Tokyo 3rd Report @ Nov. 8

ちょっと遅くなりましたが Healthcare Hackathon に参加したのでレポートを書きます。医療健康分野というテーマに絞った珍しいハッカソンでした。第3回は 2014/11/08 HUB TOKYO (目黒) での開催です。今回は"糖尿病"をテーマに約40名ほどの人たちが参加してました。若干ですがエンジニアの方が多かったです。

高速検索の ag を入れてみた

プログラムを書いてると検索という行為一つで大きく生産性が変わることをプログラマーは知っています。僕は今まで grep を使ってた、というか grep しか知らなかったのですが同僚から ag について教えてもらったのでいれてみました。とにかく検索が爆速でびっくりです。

highlight-symbol が便利

ちょっとした事なんですが、プログラムを書いてると、「このシンボルを目立つようにマーク付けしておきたいなぁ」なんて思うことがあります。関数とか変数とか関係なくちょこっとマークしてそれを常にハイライトしておくんですね。highlight-symbol を使うとこれが実現できそうです。

Sinatra アプリを Heroku で動かすまで

環境

以下のような環境で動かします。

  • Sinatra
  • Heroku
  • PostgreSQL
  • Unicorn
  • ActiveRecord

初期設定

まず Ruby と Git などの環境を整えます。環境が構築できたら Sinatra で作るアプリ用にディレクトリを作ります。そこで $ bundle init して Gemfile を作成します。

&lt;unknown&gt;:0: error: the SDK &#8216;MacOSX10.9.sdk&#8217; does not support Swift

Xcode6-beta6 にて swift をコマンドラインから起動するとタイトルの通りのエラーがでます。

<unknown>:0: error: the SDK 'MacOSX10.9.sdk' does not support Swift

MacOSX 10.9 というのは Mavericks ですね。どうやら最新の Xcode は古い sdk はサポート対象外ということで起動すらできません。さすが Apple 切り捨て方が潔い。さてどうやって起動するかというと、Xcode6 に付随している最新の sdk を使うように swift の起動オプションに渡してあげたら大丈夫です。以下コマンドです。