感情的ドリル

Ruby県から関西に進出してもまだRuby書いてるオタク

何をやっても使う開発環境

なにするひと?

Railsを中心にRubyで開発をする人です。普通の人間。
2ヶ月〜半年スパンで案件が変わりつづけて6年目、決まり切った開発環境があるので晒す。きっかけはこれ。

開発周り

一番最初に入れるもの

zsh

bashより馴染んだコマンドシェル。ここは個人の自由だと思うけどzshrc(設定ファイル)の例がアホほど転がっているので便利だと思う。多分魚(fish)も便利だと思うけど知らない。最近Macのデフォルトがzshになったのでzsh公用語なのでは?適当言ってます。
ディレクトリ名でcdできたりブランチ名の表示がなんかあったりとか便利なので便利だと思います。

gitの一番新しいやつ

大抵「開発環境のOSはなんでもいいです」って言われて「じゃあCentosいれますね〜」ってやるのでyum install -y gitしてその後新しいgitを入れ直す。手順に関しては毎回ggrか自分の構築ログ見てやる。
数年前作った構築ログはQiitaにある。

peco

ちょ〜〜〜〜〜便利なやつなんですけど正式名称? 分類は知らない。上司が最初のbox(開発環境をVagrantで作ってboxにして配布する現場にいた)にしれっと入れていたので知った。適当なショートカットにインタラクティブサーチ的ななにがしをブチ込めるので便利。最後の方に汚いコードを晒す。

そのほか

案件によってDB入れたりRuby入れたりgemいれたりする。rails sが無事に動いてrails dbでDB見れてrails cでレコード操作できるようになったらもうなんでもいい。

設定周り

設定ファイル

.zshrc

デフォルトは少し凝ったzshrcでdifffにつっこんで出てきた設定はこれ。

# 好きな見た目にする
export LSCOLORS=cxfxcxdxbxegedabagac

# 覚えてないし何をしているのかも知らない(上司が突っ込んだ説がある)
autoload -Uz history-search-end
zle -N history-beginning-search-backward-end history-search-end
bindkey "^o" history-beginning-search-backward-end

# set rbenv for ruby(まあないと死ぬので)
export PATH="$HOME/.rbenv/shims:$PATH"
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init - zsh)"

# キーバインド
typeset -fuz zkbd

if [[ -f ~/.zkbd/$TERM-${DISPLAY:-$VENDOR-$OSTYPE} ]]; then
  source ~/.zkbd/$TERM-${DISPLAY:-$VENDOR-$OSTYPE}
    [[ -n ${key[Left]} ]] && bindkey "${key[Left]}" backward-char
    [[ -n ${key[Right]} ]] && bindkey "${key[Right]}" forward-char
else
  echo "Key definition not found."
fi
[[ -n "${key[Home]}"   ]] && bindkey "${key[Home]}"   beginning-of-line
[[ -n "${key[End]}"    ]] && bindkey "${key[End]}"    end-of-line
[[ -n "${key[Insert]}" ]] && bindkey "${key[Insert]}" overwrite-mode
[[ -n "${key[Delete]}" ]] && bindkey "${key[Delete]}" delete-char

# 起動した瞬間からRailsのプロジェクトに移動する
cd ~/xxxxxxxxx

zshがなんかいい感じにdelete認識してくれなくてストレスなのでキーバインドの設定をしている。
その他pecoの設定がわんさかある。後述。

alias

alias edit="vi ~/.zshrc"
alias update="source ~/.zshrc"

alias rails="bundle exec rails "
alias rake="bundle exec rake "
alias migrate="bundle exec rake db:migrate "
alias rs="rails s"
alias bi="bundle install"
alias pj="cd ~/xxxxxxx"
alias be="bundle exec "
alias rspec="bundle exec rspec "

be全然使ってないな。けそう。pjは~/.sshとかに行って迷子になった時にシュッとプロジェクトのディレクトリに飛ぶ時に使うけどほとんど使ってないです。
editとupdateは散々設定ファイルをいじくりまわしている時に最終的に気が触れて設定したalias。
ちなみにaliasコマンドで今現在のaliasの設定が見れます。便利。

function

function setcom(){
  if [[ -n "$*" ]]; then
    eval "__precmd_for_subsh() { print -z '$* ' }"
  else
    eval "__precmd_for_subsh() { print -z '' }"
  fi

  autoload -Uz add-zsh-hook
  add-zsh-hook precmd "__precmd_for_subsh"
}

これはどこかでみた必ずgitが入るって言うやつの派生系でプロセスに限り必ず冒頭になんかをセットするって言うやつです。
何をやってもgitが入る。これはひたすらbundle exec ...とかgit cherry-pickする時とかにも使う。便利。
名前がクソなのは自分で作ったからです。これは自分で環境を作って配布する時にしれっと入れるけど同僚が一回しか使ってくれなかった。でも便利です。
git専用のターミナルとかを作る人には便利です。便利でしょ?stとかaliasはる必要なくなるから便利でしょ?

.gitconfig

[alias]
    st = status
    ls = status
    dd = diff upstream/master HEAD
    fu = remote update
    d = diff
    co = checkout
    git = !git
    ds = diff --staged
    l = log --oneline --decorate -15
    po = push origin HEAD
    cb = checkout -b
    re = rebase upstream/master
    bals = reset --hard HEAD
    coa = commit --amend
    pof = push origin +HEAD
    pop = stash pop
    rollback = reset --soft HEAD~
    m = checkout master
    save = commit -m 'save'
    br = branch
    ref = reflog --oneline
    bn = branch --no-merged
    fixup = commit --fixup
[pager]
    log = diff-highlight | less
    show = diff-highlight | less
    diff = diff-highlight | less
[interactive]
    diffFilter = diff-highlight
[diff]
    compactionHeuristic = true

変なやつについて解説すると以下。

  • git dd
    リモートのmasterブランチとのdiffをとる。便利。
  • git ls
    ひたすらsetcom gitした後にlsを打ってしまう時期があって、無駄すぎたのでstatusを見れるようにしたらgit stをつかわなくなった。git lsを見ています。
  • git fu
    fetch upstreamが面倒になってfuにしてた時期があったけど複数remoteをfetchする必要が出てきてあ〜〜〜〜ってなってremote updateに中身を変えた。
  • git po, git pof
    push origin HEADをいちいちやりたくなかったので略した。
  • git bals
    バルス!!!!!!!する
  • git save, rollback
    ゲームのデータみたいにsave してrollbackしたかった。
  • git !git
    setcom gitの副作用で必ずgitが含まれてしまうので、丁寧にgit statusとか打つ時にgit git statusとかみたいになってバグるのを回避するやつ。日本語が変。
  • git fixup, git pop
    頻出サブコマンドをaliasシリーズ

  • diff-highlight
    使ってないの?便利だよ?文字単位でdiffがハイライトされます。
    私の説明よりこちらが詳しい。diff-highlightでGitのdiffを見やすくする
    最近はそのまま使えるわけではないのでこちらを参照してなんかいい感じにコンパイルしてほしい。 Ubuntu 18.04 で git diff-highlight へのパスを通す(リンク)

peco(.zshrc)

ヒストリ

pecoの王道の用途。ヒストリをいい感じにするやつ。

function peco-select-history() {
    local tac
    if which tac > /dev/null; then
        tac="tac"
    else
        tac="tail -r"
    fi

    BUFFER=$(\history -n 1 | \
        eval $tac | \
        peco --query "$LBUFFER")
    CURSOR=$#BUFFER
    zle clear-screen
}
zle -N peco-select-history
bindkey '^r' peco-select-history

cd

なんかディレクトリとかに移動できるやつ。上司が作って上司が設置して上司しか使っていなかったのがかわいそうで消していない。

########################################
# Peco with find file or cd
# http://hotolab.net/blog/peco_select_path/
export EDITOR=vim # 好きなエディタ

function peco-path() {
  local filepath="$(find . | grep -v '/\.' | peco --prompt 'PATH>')"
  [ -z "$filepath" ] && return
  if [ -n "$LBUFFER" ]; then
    BUFFER="$LBUFFER$filepath"
  else
    if [ -d "$filepath" ]; then
      BUFFER="cd $filepath"
    elif [ -f "$filepath" ]; then
      BUFFER="$EDITOR $filepath"
    fi
  fi
  CURSOR=$#BUFFER
}

zle -N peco-path
bindkey '^o' peco-path # Ctrl+o で起動

+ git コミットハッシュをシュッととる

git fixupする時に使う。Ctrl+gで現在のブランチのコミットハッシュをシュッと取れるので便利。(fixupの良し悪しについては不問)

function peco-git-hash() {
    local commit_hash="$(git log --oneline | peco | awk '{print $1}')"
    BUFFER="$LBUFFER $commit_hash"
    CURSOR=$#BUFFER
}

zle -N peco-git-hash
bindkey '^g' peco-git-hash # Ctrl+o で起動

+git ブランチ名を取得するやつ

ブランチをいい感じに取得するやつ、自分で適当に書き直しているので辛い。
いい感じにcheckoutできます。便利。

# https://qiita.com/sachaos/items/34946c0085e4e391628c
function peco-git-branch() {
    local branch="$(git branch --no-merged | peco | tr -d ' ' | tr -d '*')"
    if [ -n "$branch" ]; then
      if [ -n "$LBUFFER" ]; then
        local flbuffer=$(echo $LBUFFER | sed -e 's/[ \t]*$//' | sed -e "s/.*/'&'/g")
        if [ ${flbuffer} = "'git'" ]; then
          local new_left="${LBUFFER%\ } co $branch"
        else
          local new_left="${LBUFFER%\ } $branch"
        fi
      else
        local new_left="$branch"
      fi
      BUFFER=${new_left}${RBUFFER}
      CURSOR=${#new_left}
    fi
}
zle -N peco-git-branch
bindkey '^B' peco-git-branch # Ctrl+o で起動

ルーチン

3つくらいvagrant sshして1つ目にsetcom git, (git )fu、2つ目にrs、3つ目は放置って感じにする。
こうするとgit専用、rails server専用、遊撃手(必要な時にrails cする)が生まれて便利。

Vagrant upでNS_ERROR_SOCKET_FAIL (0xC1F30200)

vagrantなんですぐ壊れるん?わからん。何もわからん。

$ vagrant up

There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["showvminfo", "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]

Stderr: VBoxManage: error: Failed to create the VirtualBox object!
VBoxManage: error: Code NS_ERROR_SOCKET_FAIL (0xC1F30200) - IPC daemon socket error (extended info not available)
VBoxManage: error: Most likely, the VirtualBox COM server is not running or failed to start.

あーはいはいいつものやつねーって思いながらVirtualBoxを立ち上げたらこれ。

f:id:ayakufe:20191119100311p:plain
NS_ERROR_SOCKET_FAIL (0xC1F30200)

えっvagrant upが死ぬ時ってVirtualBox立ち上がるもんじゃないっけ、と思いながらエラーメッセージを確認する。

tmpが悪いんですか?確認します。

ls -la /tmp
lrwxr-xr-x@ 1 root  wheel  11  7 15 17:18 /tmp -> private/tmp

private/tmpですか。VirtualBoxもなんかそういうエラー吐いてましたね。

ls -la /private/tmp
# なにかあるファイル

.vbox-*-ipc 的なファイルは存在してないですねー。じゃあtmpの権限ですかねー。何が正しいんですかねー。と調べつつ ターミナルでvagrant upの実行ができない。VirtualBoxを起動しようとするとVirtualBox COMオブジェクトの確保に失敗しましたと出る。ドンピシャなQAにたどり着く。

$ sudo chmod 1777 /tmp

無事解決。

RubyWorld Conference2019参加ログ

転職して初めての帰省となったのでメモでも残しておく。
そもそもルビカンに対してはtechよりgeekなイメージがあり、大抵間違っていなくて、仕組み作り頑張りましたとか、こういう研究しましたとか、そういう発表が多い。 なのでグッとくるタイトルか知り合いじゃないと割と真面目にみないので不良参加者の感想だと思って欲しい。

0日目

移動→後輩とご飯 話の途中で店を予約する必要があるのを思いだして電話した。眠くなったので解散した。

1日目

ホテルで自転車を借りて松江城へ。亀田山喫茶室で朝ご飯。

そのあときたがきでコロッケたべた(ここまでがテンプレート) f:id:ayakufe:20191110013416p:plain

中ホールで社の朝会に出て、そのまま基調講演を聞く。県知事そういえば溝口さんじゃなくなったんだな~と思うなどする。
前職同僚各位に絡みにいったりブースを回ったりする。
silverの模擬試験に燃えて何度もやる、はい、優勝しました、よかったよかった。2日目も記録は破られなかったみたいでちょっと嬉しかった。うそ、結構嬉しかった。

f:id:ayakufe:20191110013958p:plain

1度不合格点で1位になってしまって悔しかったので2回チャレンジした。これは1回目のやつ。

やっぱりSilverはArrayとHashとIOとDirとFileさえ覚えておけばあとはなんとかなるな(なんとかならないから不合格点を取るんですよ)

DIVE INTO CODEさんありがとうございました!初心に帰れました。楽しかったです。 f:id:ayakufe:20191110020433p:plain

オフィシャル飲み会でRuby柄の日本酒を買わされる(これがのちの悲劇を巻き起こすことを誰も知らない)
天穏の冷やばっかり頼んでたらお兄さんに「冷やですよね?」って注がれるようになった 冷や好きです。
オフィシャルパーティのあと遊山に行きたいと言われていたので、0日目に予約をしていた。上司とか社長とかと行く。

そのうちRubyistに囲まれていたらしいが破滅していたので酒の味しか覚えていない。あとそば美味かった。角谷さんご一行が来たのは覚えてる。

→飲みすぎる
→父の友人の店にいく
→父が迎えに来た
→記憶がないので破滅確定
気がついたらホテルで寝てたし化粧落としてたの、破滅でしかないんだよな…(確認したところすごい酔ってたとのこと)(吐いた記憶はある)(全部の記憶消えててほしかった、酔ってた時の会話も覚えている…)

2日目

4時に覚醒して二度寝を決意、上司に最悪朝会に出ない旨を伝えたものの起きれたし化粧も間に合ったのでオシャンなホテルのラウンジの背景とともに参戦
ホテルのコインランドリーで服を洗濯したりしてから、昼前に会場入りしてお友達とカレー🍛

会場ふらついたりホテルに戻って荷造りして自転車を借りて近くのゲーセンとスーパーとかを回ってクロージングに間に合うように行く。間に合った。
そのあと、さくらいさん主催の地ビール館に行く集いに紛れこんでタクシーに乗る。開場待ちのところで同世代の集団を見つけて飛び込んだところ、大変良い出会いがあった。同世代っぽいというか同世代だったし0日目にご飯食べた後輩の同級生だったりしたので世間の狭さを痛感した。

これは肉。

ビールの写真がねえな!!!おいしかった!!!
ビール飲んだあとホテルに帰ってキャリーバッグを開くと酒臭くて????って顔をしながら会場限定のルビーラベルがアレしており洗面所にアレする羽目になった(悲劇)
一応飲もうと思ったけど、飲もうと思ったけど、瓶の中に破片が混じってて「喉~」みたいな気持ちになって厳かに酒を流すしかなかった。ほんとに申し訳ないしキャリーバッグの中の治安が悪すぎる。
折角洗濯した各位もお酒の匂いが染みており、その流れでホテルの領収書も紛失して踏んだり蹴ったり。

まあそんな感じで正気を保ったまま就寝――

3日目

――寝れなかったんだなこれが。寝れないので色々ゴロゴロしたりプロット練ったり最終的に欲鬼読んでた。落ちに色々あるけど関西弁の美人が好きなのでまあ何でも良いかなと思った。一番好きな女は死んだ。
スケートリンクに行って友達と遊び、その後昼ごはんを食べる。親と合流して眠気の限界を向かえて仮眠したあと、松江駅まで送ってもらって帰宅!

帰宅するとなんと生臭い匂いが漂っており、よくよく確認すると冷蔵庫のブレーカーが落ちて冷凍されていた肉が全部…こう…ぱぁに…ごめんな鳥さん…。

あと、いつのまにかスマホのフィルムが割れたので張り替えたり、酒臭くなった各位を洗ったり乾かしたりしている内に日が変わった。

総括

腕の拘束感がなんとなく苦手で避けてきてたんだけど、スマホで時間確認するのかっこ悪いなと思って腕時計していったら結構便利だった。
ホテルにレンタサイクルがある+土地勘があると超楽しい。
ルビカン、某校の学生とかがよくその辺で寝てるんだけど見ていて気持ちが良いわけでもないので、ちゃんと聞くか、下のブースを回って将来の就職先の目星をつけたりしたら良いのになあとは思った。サボるなら景気よくスーパーに調味料を買い出しに行くくらいが派手で良いと思う(よくないですね)(自分のことです)

全体的に踏んだり蹴ったりだったんだけど、再会した人や面識はあるけど初めて話をした人とか、そのお友達とか、いろんな出会いがあって楽しい。ルビカンってみんな酒飲みに来てるんじゃないのか?って錯覚するくらい飲み会が盛ん。

だれも「炬燵さんか~」って言わなかったから識字率的な心配をする羽目になった。

親譲りの無鉄砲で

自分に無頓着。

つい先日「カッターが!動かねえ!刃が!」と呻きながらガッとカッターの刃を外そうとしたら勢いよく「カッターの刃の背中部分」から飛び出てきて指先をなぞって行きました。
残っている記録からするとこんな感じ。

  • 22:25
    • まだ無事
  • 22:28
    • 🐤「カッターで指先行ったなあ〜」
    • この辺はまだ血がめっちゃ出るという認識しかない
    • 多分この辺は輪ゴムで血を止めている。よくないらしい
  • 22:38
    • TLの相対時間の表示を見て「えっ10分も止まってないのこわ〜」と思って調べ始める
  • 水道水の方がいいと知り台所へと戦場を移す
    • ラップをしたり絆創膏を貼って速攻でにじむ血にビビる
  • 22:42
    • 🐤「おわー見えたらダメなとこ(肉)までみえる」
      • 血を止めた結果肉が見えた世界
  • 23:00
    • 収まる様子がないので流石にビビって調べる
    • 「○○市 夜間病院」などで調べたもののいい感じのが出てこなかったので「問い合わせ」みたいな感じで調べている
  • 23:03
    • 7119へ電話(携帯なので番号は地方自治体のサイトで確認した)
    • 7119は「救急車呼ぶほどでもないかな、でもこれ自分じゃ対処できないし病院に行きたいけどどうすれば…?」みたいな場合にかける番号
    • 「血が止まんないんですけど〜」「外科だね。四つほど教えますから自分で確認していってね」
    • 4件ほど病院を教えてもらい、それぞれの場所を確認し、その後通いやすそうな病院を検討
    • 徒歩16分は無理
    • 車も土地勘もないので無理
  • 23:12
    • 目星をつけた病院に電話
    • 「血が止まんないんですよ〜カッターで二センチくらい切ってて〜」「何分ぐらい止まってないですか?」「ちょっとまってくださいね(ツイートを確認する)30分は止まってないですね〜」
      • 自分で言っててビビった
    • 早めに来ること、ざっくり1万円あれば足りるであろうことを聞き出して病院に向かった
      • 金額については無理やり聞き出した
      • 「だいたいいくらかかるんですか?」と聞いていた金額より高かったらクレーマーが発生するので、確かに受付さんが「私の口からなんとも…」というのは正しいリスク回避なので、「怒らないので想定でいいのでざkkkっくり教えてください」って言うしかない、いい例ではない
  • 23:18
    • 出発
  • 23:23
    • 🐤「1時間経っても血が止まらないので〜病院いきます〜」
      • 呑気なので終電がないなあとか考えている
      • 親譲りの自分に対する無頓着さが顕著
  • 23:40
    • 到着
    • 問診票記入(手が震えて字が下手になった)(いつも下手)
    • 看護師さんの血圧測定と問診
    • 「血止まりました?」「わっかんないすね」
    • 救急医の登場
  • 時間不明
    • お薬手帳を見せて「ああ〜まあ縫っても大丈夫ね」と判断される
    • 傷口を見せる際に絆創膏を力任せにはいだらやんわり「ハサミとかで切ってね」と怒られる
    • わたわたする看護士さんを見守りながら先生とおしゃべり
    • 止血処理をしてたけどどうにも止まらない
    • 「縫うかな〜いやでもね、テープで止めてれば止まるんだよね」「圧迫的な」「そこまではいかない」
    • 「そろそろ、うん、絆創膏貼ろうか」「はーい」「あっ貼った瞬間出るね、縫おうか、どうせ家帰っても張り替えるしかないし」「は〜い」
    • 「メスみたいにきれ〜〜に切れてるから簡単に縫えるね」「あっはい」
    • 「仕事、毎日キーボードカタカタやってんですけど日常生活に問題ないです?」「ないない。大丈夫」
      • 大丈夫じゃない
    • 指に麻酔を受ける
      • 感覚としては整骨院の電気治療で調整ミスってめっちゃ強くなって筋肉の自由が効かなくなった感じ
      • 「なるほどねえ確かに強ければ体に毒だねえ」「そうなんですよあれ肩だと呼吸しんどくて〜」
    • 1針1針糸結んで切っていくんだなーこうやって結ぶんだなーと思いながら見ていた
    • 傷口は見るタイミングがなかった
      • 写真を撮りたかったな〜という気持ちはあれどやんわりたしなめられて倫理観疑われそうだったのでやめた
      • 看護士さんがあたふたどたばたで先生がちょっといらついていたのもある
    • 三針
      • 「ふた針でたりそうだけどねえ」「もうひとこえ行きましょ」「いこっか〜(ブスッ)」
  • 0:18
    • 🐤「縫いました😋😋😋」
  • 0:20
    • お会計
      • 樋口さんほどですんだので、無理やり聞き出した1万円…というのはめちゃくちゃ保険を持ったお言葉だったのだと知る
      • 優しさを感じる
      • カルテ投げたのは見えたけどなお兄ちゃん…
  • その後
    • 帰宅
    • 使い捨てのビニール手袋+軍手で傷口を保護し何が起きても絆創膏を寝ぼけて取らないように対策

その後の影響(〜3日程度)

  • 箸が持てない
  • しばらくキーボードを打つのに違和感がある
  • 痛い
    • いたい
  • 血が出る
  • 抜糸まで1週間、絆創膏を張り替え続けるのがしんどいし周囲の肌がべたべたになってきた
  • 一針解けた
    • 最終的にこいつの端に触れるのが一番痛かった

抜糸

  • 普通に外科で抜いてもらって、布テープで保護してね〜って言われた
  • 「布テープで保護ね、絆創膏はもういいよ」「濡れたら拭けばいいしね」
    • とはいわれても濡れたら剥がれて落ちる運命なんだよなーと思いながら退室

布テープ

これ布テープっていうの?なに?わかんない。絆創膏だと、でかいやつだと指先で余ったのが汚れて行って気持ち悪い問題があったけど、布テープでも変わりはない。
指先ってどうして綺麗な円柱じゃないんだ。テープ貼りにくすぎるだろ。
あと先生の貼り方だと炊事洗濯水場の掃除してたら全部禿げたわ〜〜〜〜〜ちくしょう一人暮らしの苦労を考えろ〜〜〜〜〜って思いながら生きてる。
RWCで右手の中指テープ巻いてたら私です。よろしくね。

esaとメモ帳とpplogとTwitter

転職して1月がたちました。炬燵です。
人間、一人暮らしをしていると話し相手がいないのでインターネットに話し相手を求めるものですね。しかたがない。実家にいてもそうだったんだし、もうこれはしょうがない。人格の半分くらいはインターネットで形成された。
ということで、最近pplogを始めました。正確には6月時点で登録していたらしいんだけどpplogに軽依存し始めたのは10月に入ってからなので、「最近」であっていると思う。

ブログは状況まとめとか参加ログとか、pplogはブログにして恥部を晒したくないものやTwitterでフォロワーになんか反応してほしいわけじゃないもの、みたいな感じで使い分けていて、それとは別にMacのメモ帳(iCloud)、esa.ioを使っていて、その辺りについてまとめたいと思う。
なお、私は検査の結果、「まあADHDだね」との言葉を頂戴していて(ワーキングメモリが使い物にならないのと聴覚情報を全く理解できない)忘れっぽい人間のやることなんだなと思いながら読んでほしい。忘れっぽい人はもしかすると参考になるかもしれないので読んでほしい。別に読まなくていい。

メモ帳

前職では分報チャネル、いわゆる*_timesが存在していたのですわTwitterかというほどに近況報告したりレス遅いお客さんの話をしたり人の様子を伺ったりストレス指数をなんとなく把握したりしていたんですが、転職先にはそういう感じがなくて、Slackが動くのは、遅刻報告と出張申請と勤怠申請くらい。インターネットで人格形成された人間であるところの私は感情を文章にして放流する悪癖があって、まあ突然入社してきたやつがtimes作ってもな、そういう文化ないよな、と思いながら支給されたマックのメモ帳におきもちを綴っていた。

以下イメージ。

8:30
出勤

10:00
実装してたらこんな時間である
そも仕様が足りない わからん

11:30
なにもわからない

12:00
昼飯がうまい 今度から通う

14:30
完全に理解した

現状のファイル一覧 https://img.esa.io/uploads/production/attachments/12128/2019/10/31/55753/4b7416b5-0433-47c4-8267-a5813ef05ab3.png

1日1ファイル、ワーメモが極端に少ない人間なので思いついたことをひたすらメモしてメモして、TODOリストをその度に作って、チケットの仕様を読み解いてタスクリストにして、マージされないMRのリストと対応ブランチ、概要とか思いつくままになんでも書いて、見れば思い出せるようにしてあるんですね。
1日の終わりに丸っとコピペして新規ファイル作って、次の営業日の日付にして、やることを残して、日常系のタスクはesa日常/徒然/yyyy/mm/ddに移行して、業務終了とする。
ここに書くのは、基本業務に関連することばかり。esaに書いたら規約的にアウトなものばかりなのでここでいい。というか個人esaに仕事を持ち込みたくない(本心)

esa.io(日常/徒然/yyyy/mm/dd)

基本的には会社のサブディスプレイの端っこと、スマホで見ている。esa.io、大好きなんだけどスマホだともにょることが多いのでまたラブレターと言う名のクレームを送りたいところ。

何もなければ本当に寝て過ごすだけの廃人になってしまうので、テンプレートを作って日々のタスクを追加している。  
目次

https://img.esa.io/uploads/production/attachments/12128/2019/10/31/55753/c59a992a-7ed5-4879-bf53-555b62d455f3.png

タイトル〜日々のTODO

- [ ] 
- [ ] ドクターウォレット
- [ ] ソシャゲ
    - [ ] fgo
    - [ ] とうらぶ
    - [ ] A3
    - [ ] ザゲ
    - [ ] 姫麻雀
- [ ] 風呂
    - [ ] ぬるま湯をはる
    - [ ] 長風呂
- [ ] ストレッチ
    - [ ] 首〜肩甲骨
    - [ ] 股関節
- [ ] ドライヤー
- [ ] 寝る

これがあることで、「あれなんかやり残している気がする、なんか寝ちゃいけない気がする」という脅迫観念から逃れられるようにしている。
デフォルトがこれで、あとは日によって「洗濯」「洗濯物干す」「掃除」「猫のトイレ掃除」とかを増やす。予約取らなきゃいけない系のタスクが脳内にずっといると邪魔なのでTODOリストに追加して忘れることにしている。1つめが空なのは、スマホからだとチェックボックスリストを死ぬほど作りにくいからです。例のアレのアレが狭い画面でも出たらなあ…、はい、ラブレター送りましょう。
あと、一人暮らしなので「そろそろ洗濯しなきゃな」とか「そろそろ作り置きしなきゃな」みたいな習慣や、「お金使った分だけ記録しよう」みたいなやっておきたいことも含めておくことで、毎日無理なくこなせている。

ちなみに、ソシャゲはログボ忘れを防ぐためというのが一番。1つのゲームでイベントが始まると他のゲームがおろそかになるので、esaで管理するようになってログボ忘れが減った(無くなったわけではない)

Twitter(@sakahukamaki)

あまり用事はないので放置している。Twitterでしか繋がっていないえんじにゃー界隈の人々の観測をしたりするくらいで、自発的な発言はあまりない。

pplog(@sakahukamaki)

pplog-logを作りたいくらいにはエモい文章を書いていて自分最高だなって思う(自分の文章が大好きで何度も読み返すタイプの同人作家です)
本当にプライベートなポエムばかりで、「よんだよ」と、それだけを残し残される関係性って最高。過干渉すぎるインターネットよりこれくらいが好き。

腕は二本脳味噌は一塊私は一人

なのに左手にお湯が入ったマグカップを持ち右手でリモコンを持ち左脇にスマホを挟み扉を開けようと手を使い足で蹴り出すみたいなことを何度もやっていて、「いやスマホとマグカップ置けばいいじゃん」と思うんだけどその時は気づかない。

寝れない お腹減った

お腹減ったとかそう言う可愛いレベルじゃなくて「腹を満たしたい」そんな願望に襲われてサバの水煮缶とカロリーメイト一袋平らげた懺悔 睡眠に向かうべき欲のエネルギーが全て食欲に向かってしまったお腹減った

定食屋が休みだった

職場から程よく近く、ふっくらつやつやほかほかのご飯おかわりしほうだいで、揚げ物の衣は薄くてさっくりしていて、お味噌汁が美味しくて、野菜も美味しくて、七百円の創作和食ランチの店が休みで、雨の中向かったのになあと隣のタバコ屋の軒先でのんびりかなしみに浸って、そのあと職場のロビーにやってくる弁当屋さんのお姉さんを待つことにした。お姉さんが持ってきたオムハヤシ弁当はとても美味しそうだったのだけど、先客に負けてしまったので八宝菜にした。美味しかった。どう転んでも美味しいご飯なんだけど、やっぱりお店に行き損ねたのが悔しくてたまらないのと、無駄に雨に濡れてしまったという事実に耐えられないので、70点の昼食だった。お姉さんが「今度またオムハヤシ持ってきますね」と申し訳なさそうに愛想よく言ってくれたので80点かもしれない。320円浮いたから90点かもしれない。雨なので0点でいいや。

esaで日記とTODOログを書いている

脳みそのワーキングメモリが極端に死んでいるので五分前に依頼されたことを忘れてしまう。最近になってTODOリストに速攻で追加する習性が宿ったので随分助かっている。TODOリストをみればどうやって生きていけばいいのかわかる。 esa.ioが好きなのでうわーーっとTODOリストやらなんやらかんやら入れているのだが、そろそろ定期的に買い物に行くたびに「野菜〜肉〜あとなんだっけ〜」となるので買い物メモのテンプレートを作って週次で買い物に行くときに利用したい。台所の水切りネットがない、そうだ思い出した、あと何がないんだっけ、忘れた。忘れたままでいる。 台所の水切りネット、関連してあとなんだっけ、コンタクトがそろそろ切れるな、あとなんだっけ、うーーーーーん、うーん、とおもってesaの今日の日記TODOリストをみたら絆創膏と書いてあった。そうでした。

最後のはこの記事の原型。買い物のテンプレートも作ったし、実際便利だった。

その他

このブログがあるくらい。tumblerのアカウントがある気がするのでどうにかまとめたいけど、まとめるほどの文章でもない気がするのでさっくり消してしまう方が早そう。SHIROBAKOアドベントカレンダーの記事があるのでそれだけサルベージしたい。

メモ帳とesa.ioを使い分ける感触

個人esa.ioにはカードのサービスのログイン情報とか色々アウトな情報が混ざっていて、本当に個人情報の塊みたいなものにしておきたい。仕事の情報まで混ざると純度が下がる。
仕事の情報を会社の許可を得てないサービスにシュッて書き込むのも気分が悪いし、私の倫理に反するのでこの分け方がちょうどいい。
仕事をしながら「あっ帰ったらご飯つくらなきゃ」「猫の病院行かなきゃ」みたいなことを思いついてはメモをするので、そのメモがesa.ioにTODOとして移植されて、帰ったらesaを見れば今日のやりのこしたことがわかる、みたいな状況になっていて便利。とにかく情報を1箇所に集めるのが一番なんだなって思う。
ひとまずこの状況に落ち着いたし、esa.ioには順調に依存しているので、今後も元気に課金していきたいですね。

私から見た桐生あんずと就活本

私が彼女を初めて見たのは仙台のとある居酒屋だった。
東京出向の時に飲んだくれてた時の友達と話をしたり、その場で隣の人と話をしたりしている中で、彼女は大人に挟まれて楽しそうに日本酒を飲んでいた。自分のことを棚に上げて、若いのに日本酒か〜珍しいな〜と思っていたらバッチリ目があって、いわゆる人見知りであるところの私は逃げ腰になった。酒が入った時の同世代への絡み方がわからない。大人への絡み方はわかるけれど、同世代は酒が入っていてもいなくても関わり方がわからない。だからちょっと、本当にちょっと逃げた。(いや多分何回も逃げた)
そしてもう一度目があった時、「あのあの!」と話しかけられたのである。一巻の終わりだ。観念して彼女の近くに行って名刺を渡し、側にいた大人たちにも適当に名刺を配って飲んでいるお酒を教え合ってお代わりをしにいった。
それが、私と桐生あんずの初めての出会いである。


いや酒の場が初対面とか辛すぎでは? せめてホールの移動間とかお昼ご飯の時に隣り合ってわ〜同世代だよろしくね〜くらいがよかった。その場合絶対話しかけないけど。
あとかなり酔っ払ってTwitterの鍵垢速攻で教えてたの今思い出しても穴掘って埋めて無かったことにしたいレベルなので私は酒の飲み方を覚えてください。上限が適当に高いだけに突破するギリギリを見極められないの本当にダメ。人と話すの楽しいけどね。
はめつタイプの桐生あんずと仙台で知り合い、博多で中を深めたはめつタイプの炬燵です。

極道入稿(割増入稿)

私は年2〜8冊くらいのペースでここ何年か同人誌を刷っては即売会で手売りする、いわゆる同人作家をしています。(読みたい人はメロンブックスの通販サイトを教えるのでDMしてください)
自分で言うのもどうかとは思うんですが、基本的に早割入稿・入稿開始日入稿のいい子ちゃんです。極道入稿する人の気持ちがあんまり分からない。
自分がどれだけのペースでかけるか分かっていないならタスクと同じくバッファを持つべきだし、自分のペースが分かっているならちゃんとスケジュール切ってください。もし万が一あなたがクオリティのために締め切りをジリジリと伸ばしているのであれば、「出ない神本より出るクソ本」という狂気の格言を胸に刻んでさっさと入稿してください。
そもそも、極道入稿とは締め切りギリギリを突破して割増の領域に達した、印刷所の人いじめだと認識してください。あなたの極道入稿は、あなたのプロジェクトのバッファを食いつぶして訳のわからん大型タスクが降ってくるようなもんです。印刷のフローには詳しくないのですが、「ページ数の確認」「金額計算」「原稿チェック(印刷したら文字が消えないかなど)」が存在するのは確かです。あなたが深夜に入稿して、明け方には「データチェック完了しました。印刷します」などのメールが来ていたことはありませんか? 今すぐ「金で解決する」とか言ってないで印刷所の方々の健康を気遣ってください。
本は金で解決しても健康と疲労は大抵金では治らないんですよ。

本文

前置きは長くなりましたが、これは極道入稿だった「なれる!? Webエンジニア 〜文系2留大学生のWeb業界就活記〜」の感想です。
私は桐生あんずをコミュ力の塊だと思っています。私が知り合い伝手にしか友達を増やせない人間であるのに対し、酒飲みで溢れる怪しい空間で突然声を掛けるなどの行動を選択できる時点でコミュ力は高いし決断力も勇気もある。羨ましい。そう、私は桐生あんずを羨ましいと思っています。本来ならば「羨ましい」ではなく「すごい」とするべきなのでしょうが「羨ましい」と思っています。
「そうだ沖縄に行こう」と沖縄に出かけるし、「そうだ仙台にいきたい」と仙台に行くスポンサーを見つけて応募するし、「博多にも行こう」とやっぱりスポンサーを見つけて応募するし、行動力のステータスが鬼なんですよね。
私は島根県からホイホイ毎月(ひどい時は毎週)東京や大阪に遠征していた人間なので、「そっか沖縄行くのか〜」と何も感じていなかったのですが、ただ感覚が狂っているのでよくよく考えれば行動力の鬼だと思います。
アウトプットは行動についてきている付属品だし、行動しないとそもそも何も生まれないので、行動力って大事だなーと思いますね。そう思わされる本です。
要するに行動力は正義です。わかりやすいですね。

桐生あんずが就活に失敗して成功するまでの本なんですが、そもそもどうしてその業界を選んだのかとか、アルバイトをしていてどう思ったのかとか、そのあたりもきっちり書かれているので元々彼女を知らない人でも楽しく読めたんじゃないでしょうか。私も私の知らない彼女を知れたので楽しく読みました。
仙台で知り合った後、彼女のブログをざっと全部読んだんですが、前より仕事のスピードが早くなったらしいので以前の自分と比較しながら考察してみるなどなど、他者からの評価を自分で改めて分析する姿勢が凄いな~と思いました。(ここまで1章)
会社訪問とか、面談対策とか、一般的な就活として必要な対策をきっちりとやったうえで第一志望に落ち、一度19卒を諦めて20卒に切り替える判断が出来たのもすごい。自己分析やってきた成果がここでも出てるし今後も出るんだろうなと思う。
この辺り、自分では「分かってるけど適当に解釈して結論を出さない」みたいな、あいまいにしがちなところとちゃんと向き合っているのが凄い。
いったんメンタルコントロールをしたという意識があるし(3章)、企業に求めるモノや感情を殴り書きして整理しているのもまず自分では思いつかないので、伝手を辿って就職や転職を決めた人間としては「ちゃんとやりすぎると人間こうなるんだな」と思った。あとiPadとか使えるものは使うべきなんだな。ちょっと買おうかな~~みたいな気持ちになってしまった。

曖昧な認識や信条をきちんと文章に仕立てて読み物として提供するのは簡単なことではないし、(あんだけ〆切破滅しながら)無事に本を出して本として売り上げを出してるのすごい。100冊超えたらしい。私は物理本を貰ってしまったのでお代?お礼?として普段おろそかにしがちなアウトプットをしている。

Re:VIEWよしあし

Re:VIEW、めっちゃ手軽ですよね。でも注釈がないと「小口とノドが逆」に見えて気持ち悪いからテンプレートいじれる人はいじった方がいいです。
私は普段Wordと一太郎と気合でPDFにしているんですが、技術書展みたいな、同じテンプレートにみんな乗っかりがちなジャンルで本を作る場合、本文の余白の取り方やフォント、見出しの装飾が完全に同じになってしまうんですね。GitとRubyの本を買いあさったけど中身一緒に見える、わけがわからん、みたいなことになってしまう(なった)。
書いて印刷所に投げるだけの人はいいけど、買って読む人のこともちょっと考えて個性を出してみるのもいいんじゃないかなあと常々考えています。
同人誌だと、あたまゆるい系のえろ本は行間広め文字大きめにするし、ちょっと純文学み出したければ外の余白大きくとって文字小さくしてぎゅっと詰めたりもするし、技術書展勢もオリジナリティや本の中身に合わせたお顔作りをしてはいかがでしょうか。はい。
感想からはみ出た感想でした。

おしまい

ということで、イベントから大分経ったけど感想を書きました。
読み返したら極道入稿とどんぐりテンプレートに対しての言及が多かったので追記。

「なれる!? Webエンジニア 〜文系2留大学生のWeb業界就活記〜」は、就活でもなんでも当てはまることばっかり書いてあります。プリパラとかiPadとかの話じゃなくて。新境地に踏み込む理由を自分で再認識したり、相手に認識を共有したり、どうすればいいのか考え続けた過程がきっちり書いてある。
就活に挑む人も転職に挑む人も、一人の人間の苦しみが言語化されているので、自分のやり方を模索するためにも読んでみるといいかもしれない。

こちらからどうぞ。
なれる!? Webエンジニア(BOOTH電子版)

kiryuanzu.booth.pm

奥付には印刷所と連絡先も書きましょうね。以上!

退職して無職を満喫して転職した

台風も迫る中皆様いかがお過ごしでしょうか。私は猫のトイレを洗って洗濯物を干した所です。
タイトルの通りなんですが退職して無職を満喫して転職して出社初日を無事終えました。
(退職した瞬間のツイートは観測できなかった)

以上。あとは蛇足です。

ついでに、あと10日寝ると誕生日なので合わせて祝ってください。誰だって祝われたい。 欲しい物のリスト ※銀盤時計は同人活動のサークル名です


オフだとよくネタにするんですけどオンラインでちゃんと文章にしたことはなかった&干支が二周するので厄落としみたいな気持ちで過去を落としていきますね。本当に酒が入るとよく話す内容なので覚えがあったら飛ばしてください。
前職に入社したのが19の頃なので(まだ忘年会で酒を飲めなかった)大体5年くらい同じところで働いていたことになります。
基本的に精神に波がある人間なんですが、昨年末から今年の頭にかけて、気温が下がると共に精神の波が不調にガンガン振れていたんです。その頃入っていたプロジェクトでは毎日朝夕会で進捗を共有していたんですが、2年目氏のクソコードをあげつらって笑い合う会も同時開催されていて、あ~~~不快不快とか思っていたら体が反応して会社に行くと気分と機嫌と体調が悪くなるようになって三ヶ月くらい休職しました。
休職期間に10年弱付き合いのある関西圏のフォロワーと飲むべく神戸に行って、三宮で飲んで、Fateの聖地巡りもして、「あ~~~楽しいな~~~~よし関西引っ越そう三宮に行こう」くらいの気持ちで転職を決めました。
一月後RubyKaigiに行きました。エモリハウス体験(初日の夜の記憶が無い)も美味しいお酒もその辺に転がってるRubyコミッターの存在も本当に楽しかった。これ元々は仕事行きたくない一心で遊んで美味しいもの食べてお酒を飲むために旅行として行く予定だったんですけども、転職の意思が固まっていたので「RubyKaigiに出展している or 参加する金を補助してくれる・関西で働ける」会社を探すのが第一目標になりました。
RubyKaigiは沢山のすげー人が居て、島根県でぶつくさいって職場で重宝されているだけの自分なんてその辺掃いて捨てるほどいるくらいなんだなって安心して、自分の特殊なところは経歴くらいかな~よっしゃ同人がんばろう~仕事辞めよ~みたいな気持ちになれます。
「地元で転職しないの?」って意見も頂戴したんですけど、知りうる限りの島根県Rubyやってる同業他社は大抵給料がアレか条件がアレか同僚予定がアレか実妹が働いているか親父が働いているかのどれかに当てはまってしまうので無理だったんですよね。ご縁がなかった。縁結びの国だけに。はい。結ばれる縁はなかった。私の掲げている希望条件だと難しかった。むしろスキルがあってIターンしたいですって人には島根県のアドバイザーと私の知る限りのおすすめの会社をお伝えするのでDMください。
そもそもオタクなので東京に近ければ近いほど良いし、新幹線が停まる世界に行きたかったし、インターネット経由で知り合った友人は大抵東京か関西にいるのでやっぱりそのあたりに行きたかった。だから地元からは出たかったし、そもそも地元にいても希望の金額貰えないしな~みたいな感じです。金額は大事。オタクだもん。

閑話休題(それはそれとして)

皆さんプログラミング教育についてどう思います?
島根県島根県松江市は教育事業として「中学生Ruby教室」と「高校生Ruby教室」と「Ruby合宿」ってのをやっていて(主催が全部島根県だったのか松江市が混ざっていたのかは忘れてしまった)、私はその3つを綺麗に経由しました。教室系の2つはあの…覚えてるor知っている人が居るのかは分からないんですけど…DxRubyでシューティングゲームを作る課題だったかな、林檎とか蜜柑とか、判定位置とかXとかYとか座標を指定して当たり判定をガバガバにしたり即死ゲーにしたりする自由工作の時間だったんですけど、要するに自由度の高い体験をそこでしていたんですよね。Ruby1.8とかで。
Ruby1.8とかだったので、高校生になって教わりながらRubyの環境を自分で作ってさあ動かそうと思ったらRuby2.0だと動かない。エンコード違うからね。あとマジックコメントの扱いとかまあ色々違ったので、今思えば「私Rubyバージョンアップ問題に直面してたじゃん!!!!」みたいな感じです。当時は「えっなんか動かん」みたいな感じだった。


切欠はこれと、あとオタクなので自作HPとかに手を出してHTMLとCSSに触れていて、触れた結果どうなるかというとWP的な闇のバイトを斡旋されるようになります。
これは両親に恵まれていたの一言に尽きるんですが、私をRuby教育事業のイベントに放り込んだ父と、変数の概念を教えてくれた父と、CSSで要素を横並びにする方法を教えてくれた母と、floatプロパティを教えてくれた母と、闇のバイトを引き継がせやがった母のお陰でRuby on Railsでお仕事をする下地が出来上がっていたんですよ。やばくないですか? 恵まれすぎじゃない? なので調子に乗ってこういうことを言います。

結構な頻度でルビカンに参加しておいてコミュニティに属してないとかよく言えたなこいつ。それはさておきこうして下地が出来上がったらあとは職安のIT系の養育コースを通って就職します。
まあ簡単ではないし、プログラミング教育の質にもよるし、本人が創作するタイプのオタクじゃなかったらHPを作ろうとも思わないし、両親がオタクで家にクッキングパパ超人ロックと怪盗アマリリスとエトセトラが並んでいなければオタクになっていないし、そもそも島根県東部じゃないとそれなりの教育を受けることは出来ない。(最近は島根県出雲市の方で西部まで足を伸ばして教育イベントをやっているのでこれはそのうちなくなる垣根のはず)

長くなってきたので疲れましたね。5000文字を超えました。pixiv(リリース)の文字数検索なら短編の分類に突入します。

就職してどうなったかというと普通にrails newしました。合間にオブジェクトパスカルなるなんかをコピペしか能がない頃に経由したけど本当にコピペしか能がなかったので記憶が無い。コピペの勘所が良いねって言われたの当時イラッとしたけど今思えばまあ許せる範囲の皮肉ですね。勘所が良いのは自分の才能だと思っているんですけど、もうちょっと対無能人間に対するコミュニケーション能力のパラメータも欲しかった。今から増やしていきましょう。
Railsのなんかいろいろを覚えて、ActiveRecordにじわじわ詳しくなったり、CSVを延々とエクスポートする人間になったり、ApplicationRecordに喜びつつ扱いに困ったり、Thinreportsをガンガン使い込んだり、1~4ヶ月のスパンでプロジェクトが変わる受託気質の会社だったのが幸いしていろんなことをいろんなタイミングで吸収できました。これも恵まれている。
まあガンガン新技術や知らない枯れた技術に触れるのは良いことだったんですが、3年目後半にもなると「CSV?もうやったな」「Devise?もうマニュアル読んだな」「STI崩れてんじゃねえか誰だよ変なことしたの」「PDFはThinreportsがお好みですか?可変ならPDFKitですね」「CSSはSass?SCSS?それともless?」みたいな感じで大抵のことはやってて大抵のことは飽きます。業務じゃなくて利用するサービスに執着したり、エディタのカスタマイズに走ったり、延々とログインシェルを直したりとかそういうことをします。社内のGitおじさんにもなって、右に壊れたリポジトリがあればindexを確認し左にpushできない人が居れば一緒にsshの設定を確認したりとRubyとかRailsじゃないところのスキルを磨き始めるんですよ。飽きてるから。だからなんとなく退職したいな~転職したいけど別にやりたいことないしな~って感じになります。
転職とか退職とか向上心の欠如とかが重なって、精神の波が不調に振れているときに休職して、三宮があんまりにも楽しくて「関西に行くぞ!」って思わなかったら多分まだ精神すり減らしながら働いてたんじゃないですかね。
長いな~~~~。とにかく私は両親にも友人にもフォロワーにも恵まれていたので! 今日までこうしてRuby on Rails周辺の技術でお金を貰っているし社会で動くサービスの一部を作っているし! オタクも元気にやっている! 経済も回せる範囲でガンガン回している! ここまで読んでいただいてありがとうございます!

今度会ったらお話ししましょう! 


干し芋の再掲と一緒に肉を焼きたい人の募集です。 欲しい物のリスト

以上