UKSTUDIO

特定のコミットが含まれるGitHub Pull Requestを開く

今日たまたまあるコミットが含まれているGitHubのPull Requestをサクッと探したい事案が発生した。というのも自分が以前書いたコードがどうしてこうなっているのかというのを知りたかったんだけど、commit messageだけじゃよくわからんかった(〜を実装したみたいなことを英語で書いてあっただけ)。

Pull Requestは割と丁寧に説明を書いているのできっとPull Requestのdescriptionを見ればわかりそうという感じはしたのだけれどパッとそれを開く手段がわか...

Vue.js便利

今のプロダクトにちょっと前からVue.jsを採用しているんだけど、少しずつうまく使えるようになってきていてすごく便利だなーと感じる。コンポーネントについても大体わかってきた。

RailsアプリケーションにVue.jsを採用してどう変えてきたかみたいな記事をそのうち スパイスな人生 の方に投稿したいと思う。お楽しみに。

TEX Yodaが届いたので使い始めた

TEX Yoda TrackPoint Keyboard - Massdrop

一部で話題のTEX Yodaが先週の金曜日に届いたので今週から使っている。

とりあえずできた

AKAMATSU Yukiさん(@ukstudio)が投稿した写真 -

ハンダ付け

久々のハンダ付けだけど、MXスイッチの足と基板をつけるだけだし、オフィスに先に組み立て済みの同僚もいたのでそんなに難しいこともなく終了。といっても幾つかミスもあったわけだけ...

株式会社spice lifeに入社しました

あけましておめでとうございます。今年もどうぞよろしくお願いいたします。

さて、タイトル通りではありますが、本日2015年1月1日から株式会社spice lifeに入社しました。社員です。

なので2010年(だったかな)から続いていたフリーランス業も一旦終わりになります。フリーランスの時には様々な人にお世話になりました。本当に感謝の言葉しかでてきません。一部の方々にはご迷惑をお掛けしてしまった...

esaのストックとフローの絞り込みで(俺にとって)なにがうれしいのか

そもそもesaのストックとフローの絞り込みってなに?っていう人は以下のリンクからどうぞ。

release_note/2014/12/13/検索結果の絞り込み(Stock or Flow) - docs - esa.io

簡単に説明するとesaではカテゴリに日付が入っている記事はフロー、入っていない記事はストックとして扱いそれらを分けて検索できるようになった。

結論から

たまには長い話をすっとばして結論を書く。簡単に言ってしまうと

  • yy年mm月dd日にAの仕様を変更したよ
  • 現時点...

spotlights.jpが本日10時にリリースされました

みんなで贈るソーシャルギフト・プレゼント \SPOTLIGHTS/(スポットライト)

今日の10時より株式会社spice life(スパイスライフ)からSPOTLIGHTSがリリースされました!!

ここ2ヶ月弱の追い込みにプログラマとして開発に関わらせて頂いてます(今後も関わっていく予定です)。実は自分のブログで関わってます!って言えるサービスは初めてだと思うので、期間はまだ短いですがちょっと感慨深いものがあります。

結婚式や誕生日のお祝いや日頃の感謝などにご活用くださ...

RSpecでPower Assertをやるには

RubyKaigi 2014でpower assertの話を聞いてrspecでどうにかならんかちょっと考えてみました。まず結論だけ書くとrspecでpower assertを使いたければ以下の様に書けばOK。

require 'rspec'
require 'minitest'
require 'minitest-power_assert'

module Minitest
  module Assertions
    prepend  Minitest::PowerAssert::Assertions

Arelあれこれ

Model.arel_table を読みづらいと感じる

例えばこういうコード。

Post.joins(:comments).order(Comment.arel_table[:created_at].desc)

発行されるSQLはこんな感じ。

SELECT "posts".* FROM "posts" INNER JOIN "comments" ON "comments"."post_id" = "posts"."id"  ORDER BY "comments"."created_at...

Vim(TagBar)でRSpecのctagsを扱う

rspec ctags

unite-outlineとかを使う人には不要なのかもしれないけど、あいにくuniteユーザではないのでctagsでなんとかできないか調べてみた。

まず、Funtooで入るctagsではrspecのタグは生成できないのでforkされたctagsを使う必要がある。

fishman/ctags

インストール場所はお好みで。個人的には手で入れる系のものは$HOME/localにインストールするのが好きなのでそこにインストールした。あとはTagBarの方でこのctagsを使うよう設定する...

lsと間違えてerutasoを打ってしまうGentoo/Funtooユーザーのみなさまへ

ebuildを作ってみましたのでご活用ください。初めてのebuildなので不具合・不都合あればpull-reqを。ukstudioというoverlayを作りましたのでそこからインストールできるはずです。

https://github.com/ukstudio/ukstudio-overlay

curl https://raw.github.com/ukstudio/ukstudio-overlay/master/profiles/layman.xml > /etc/layman/overlays...

BitlBeeでHipChatに接続する

HipChatのLinuxクライアントは残念ながら日本語入力ができないのでかわりにIRCを使ってみる。 HipChatはJabberが使えるのでBitlBeeを使ってJabber経由でIRCと繋ぐことにする。BitlBee自体の設定はなにもいらないので各環境にあわせて適当に入れて起動する。

sudo emerge bitlbee
sudo /etc/init.d/bitlbee start

次にIRCクライアントでBitlBeeに接続する。BitlBeeはlocalhostに6667ポー...

BitTorrent SyncでQNAPとFuntooで同期する

QNAPの一部のディレクトリ(主に電子書籍)とローカルのマシンで同期を取りたかったのでBitTorrent Syncで同期を取ってみる。NFSでもいいんだけど、電子書籍ぐらいならローカルにおけるぐらいのストレージ容量はあるので。

QNAPにBitTorrent Syncを入れる

基本的にはQNAPのドキュメントを参照すれば問題ないと思う。簡単に説明しておくとQTSにBitTorrent Syncを追加し、BitTorrent SyncのWebUIを起動する。WebUIのアクセスユーザは...

FuntooからQNAPにOpenVPNでつなぐ

まずはFuntooにOpenVPNを入れる。

sudo emerge openvpn

次にQNAPからOpenVPNの設定ファイルをダウンロードする。場所は「コントロール・パネル -> アプリケーション -> VPNサービス -> 設定ファイルのダウンロード」にある。(QTS 4.0.3)

zipが落ちてくるのでunzipするとca.crtとopenvpn.ovpnが展開されるので/etc/openvpnにmvする。他にOpenVPNで接続するところはないのでそのまま放りこむ。openvpn...

Kensingtonのslimbladeを導入

ちょっと新しいマウスを捜してたのでこの機会にトラックボールに移行してみた。購入したのはKensingtonのSlimBlade

昔はLinuxで使うと上の2つのボタンが使えなかったみたいだけど、今はパッチがあたったようで問題なく使える。なぜか右奥がバックボタンなのに左奥がミドルボタンだけど。この辺のリマップはxorg.confあたりでいいのかな。あまり困りはしないのでとりあえずは特に設定を変えずに使ってみることにする。

GentooからFuntooに移行しました

GentooからFuntooに移行した。Funtoo Linux インストール講習会から大分日が立ってしまった。

インストール自体はFuntoo Linux Installationをそのまま実行。boot-updateのビルドだけ失敗したが、texinfo-5.1以上をmaskしたら解決。

ネット関係はNetworkManagerが妙に不安定だったのでwicdを使うことにした。wicd-cursesがいい感じ。今のところ接続も安定している。

X環境まわりは例のごとくXmonadで。GNOMEも...

ブログをWordPressからmiddlemanに移行しました

今まで当ブログはWordPressでブログを書いていたけれど、今回middlemanを使うことにした。特になにかが気に入ってmiddlemanを選んだわけでもないのだけど、しばらくはこれで運用してみようと思う。

運用はGithub Pageで行なうことにした。これで今まで中途半端に保持していたVPSを解約することができる。最近はIRCを全然使ってないからいいけど、なんかの機会に使うようになったらtiarraとかをどう運用するか考えなくちゃいけないなぁ。

デザインやその他足りない機能は追々増やし...

validates :foo_id, :presence => trueを追う

チームメンバーから「validates_presence_of :user_idはそのuser_idが存在するか確かめてくれる」という情報を得て、そんな隠れ仕様あんの?とおもってちょっと調べてみた。 結論だけまず言うと
validates :user_id, :presence => true
validates_presence_of :user_id
ではなく、
validates :user, :presence => true
validates_presence_of...

GentooでCDをリッピングして聞く

メモ CDをwavで一旦取り込んでflacに変換。
$ sudo emerge cdrtools
$ sudo emerge flac
$ cdda2wav -H -B
$ find . -name "*.wav" -print0 | xargs -0 flac
# /etc/security/limits.conf
@audio - rtprio 99
@audio - memlock unlimited
@audio - nice -10
...

TDDカンファレンスでLTしてきたのでその補足

4月の6日のTDDカンファレンスに参加&LT発表してきた。参加といっても遅刻していったのでほとんど話を聞けていないのだけれど。 とりあえず資料はこちら。読み直してみたら途中の話の飛躍がこれはひどい。当日もかなり短い発表の上に色々内容を省いてしまったので色々と補足しておく。(当日聞いていただいた方に申し訳ないし、あまりこういうのはよくないね。パブリックスピーカー読んででなおします。) 今回の内容の発端は「TDDはテストではない」という言葉の暴力性というか、言い切りに何となく違和感...

結婚いたしました

この度4月1日付けで結婚いたしました。 Facebookには届出を出した時点で結婚したことを書いたんですが、たくさんのイイネ!とおめでとうのお言葉ありがとうございます。書類をだしただけで特に何もかわっていないので今だに結婚した自覚がないんですが、そのうち自覚するものなんでしょうか。 今のところ式は予定していないので、近いうちにパーティ的なことはしたいなと考えています。その時は改めて近しい皆様にはご招待させていただきます。 以上、簡単ではありますが結婚のご報告でした。 ...