作業記録
今年の3月にピアノを習い始めました。 自分の成長の過程を残しておきたくて時々録音をしていたのですが、知り合いがピアノの練習動画をインスタにアップロードしているのを見て、自分も動画を撮りたくなりました。 動画を撮るまでに色々やることがあり、少し…
TL;DR # from .circleci/config.yml - restore_cache: name: 'parallel spec runtime log' keys: - parallel-spec-runtime-log-{{ .Environment.COMMON_CACHE_KEY }}-{{ .Branch }} - parallel-spec-runtime-log-{{ .Environment.COMMON_CACHE_KEY }}- - run…
先週仕事でやったのをメモします。 CI力が低いので、記事を公開することでツッコミをもらうのが目的です。 モチベーション 弊社ではCIの実行が1回あたり20分ほどかかっています。 これはわりとストレスなので速くしたいです。幸いにも削れそうなところが2つ…
備忘録 前回までのお話をだいたいそのままやっている。 https://pocke.hatenablog.com/entry/2016/06/18/180914 wifi Wifiに接続 wifi-menu SSH server を起動 SSH server を起動して、外からSSHしてインストール出来るようにする。 コマンドのコピペが効く…
本日、Itamae v1.10.4がリリースされました。 Itamae v1.10.4 released! thanks @p_ck_ !https://t.co/rcUOukG0Ag— うなすけ (@yu_suke1994) May 10, 2019 このリリースには私のPull Requestがいくつか含まれています。 この記事ではそのうちの1つのPull Req…
rbenv global trunkしていても気が向いた時にしかRubyをビルドしていなかったので、trunkと言いつつ結構古いRubyが動いていることが多かった。 そのため毎日Rubyをビルドして、trunkとしてインストールするようにした。 環境 Arch Linux systemdが動いている…
for v in $(rbenv versions | ruby -ple '$_ = $_[/[* ]+(\S+)/, 1]'); do alias "ruby-${v}=RBENV_VERSION=${v} ruby" done $ ruby-<tab> external command ruby-build ruby-parse ruby-rewrite alias ruby-2.3.1 ruby-2.4.2 ruby-2.5.0-rc1 ruby-system ruby-2.</tab>…
github.com github.com TL;DR rubocop-rspecにCopを追加する時も、rake new_cop[RSpec/NewCopName]でCopの雛形を作ることができるようになった。 Cop Generatorとは RuboCopにはrake new_cop[Style/FooBar]などとすると新規Copのテンプレートを作れてしまう…
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0506 久しぶりにゴルフをやりたくなったのでやった。AOJの仕様上、コードを短くしても自分の他の解答より実行時間が速くなければランキングにのらない様で、悲しかったのでブログ記事にした。 な…
peco を使って tmux の session にいい感じにアタッチ出来るようにした。 想定する tmux の使いかた セッションを沢山生やす 私は、だいたい1 git repository 毎に tmux の session を生やしている。 仕事だとメインで 4 git repositories + 色々 の為に tmu…
なにそれ RuboCop には Lint/UnreachableCode という便利 Cop がある。 その名の通り、unreachable な code を検出してくれる。 def foo do_something return do_anything # このコードは絶対に実行されない! end 上記のような絶対に実行されないコードをつ…
問題 以下のようなコードは、恐らくバグになります。 json = users.each do |user| id = user.id full_name = user.full_name { id: id, full_name: full_name, } end render json: json これはidとfull_nameをもったオブジェクトの配列をjsonでrenderするよ…
github.com 先程、RuboCop にパフォーマンス改善の Pull-Request を投げました。3%ぐらい速くなります。 この Pull-Request の効果を検証する際に用いたベンチマークの方法が、わりと面白くて便利(自画自賛)だったので、紹介します。 そもそもの問題 Gem で…
bacon-cannon.herokuapp.com bacon-cannon で試した。 該当の Pull-Request はこれ。 github.com 環境 Ruby 2.4.1 Ruby on Rails 5.1.0.rc1 Webpacker 1.1 capybara-webkit 1.14.0 Travis CI やったこと Pull-Request に書いてあるけど、その背景とかの補足…
先日、Bacon Cannon というアプリケーションをリリースしました。 bacon-cannon.herokuapp.com 一言で説明すると、Ruby のオンラインパーサーです。アプリケーションについては以下の記事をご覧ください。 pocke.hatenablog.com この記事では、Bacon Cannon …
TL;DR Add let g:go_gocode_unimported_packages = 1 to your .vimrc 欲求 通常、gocode ではインポートしていないパッケージの関数等は補完されない。 例えば、strings.Spと打ってstrings.Split()が補完されるためには、import "strings"が必要である。 git…
目的 Heroku を使いたい 同じコードを複数のバージョンの Ruby で実行したい そのためにバージョンの数だけレポジトリを作るとかはやりたくない 解決法 手順1 Gemfileに以下を追記する if v = ENV['CUSTOM_RUBY_VERSION'] ruby v end 手順2 Heroku の管理画…
やりたいこと :something: を解釈しないサービスでもこの形式で Emoji を入力出来るようにする。 こんな感じ 最高に便利なものが出来たぞ pic.twitter.com/Apbeoc1XPA— Pocke (@p_ck_) 2017年3月5日 やりかた IME のローマ字テーブルを書き換える 環境 Mozc …
TL;DR git blame しない人は読まなくていい。 nnoremap <F3> :silent! !tig blame +<C-r>=line('.')<CR> %<CR>:redraw!<CR> .gvimrc では nnoremap <F3> :silent! !sakura -x 'tig blame +<C-r>=line('.')<CR> %'<CR> sakura は適当なターミナルエミュレータの名前に置き換える。 <F3> は完全に趣味なの</f3></cr></cr></c-r></f3></cr></cr></cr></c-r></f3>…
あけましておめでとうございます。 id:Pocke です。 今年の目標は、人の顔を覚えることです。人のことを服の色で覚えてしまうので、この季節はコートを脱ぎ着すると人の判別ができなくなってしまうのを今年こそは直そうと考えています。 昨年末、Shibartとい…
github.com TL;DR StackProf でボトルネック検出 String#present?は遅いから使わない。 何度も呼び出される毎回同じ値を返すメソッドをメモ化 上記により3~4倍のパフォーマンス改善 はじめに Rails Best PracticesはRailsに特化したコードメトリックツールで…
先日、Railsのマイグレーションファイルをもっと便利に生成するGem、miのバージョン1.0.0をリリースしました。 github.com pocke.hatenablog.com このGemではRailsの4と5両方に対応しており、また4と5では挙動が異なります。 このため4と5両方のバージョンで…
最近、rails-apiでcookieを使うような機会が何度かあったので、その方法をメモしておきます。 tl;dr rails-api with cookie · pocke/rails-api-with-cookie-sample@11ccaf1 前置き rails-apiのデフォルトでは、cookieが無効化されています。 そのため、セッ…
こんにちは。私は現在 bearfruits という GitHub と連携した就活支援Webサービスを作成、運営しています。 bearfruits はRuby on Railsで開発しています。 エラーページがRailsデフォルトのままだったのを改善したので、手順をまとめます。 環境 Ruby on Rai…
mikutter とは、Ruby で書かれた Linux 向け Twitter クライアントです。 というのは表向きの顔で、実際は Plugin で高度に拡張可能な Twitter アプリケーションフレームワークです。 ともなれば、mikutter で Web アプリケーションを作りたくなるのは必然で…
動機 最近PCを組みました。 そこそこ性能のいいやつです。 (PC を組んだ時の記事はこちら パソコンくんだ - pockestrap) 当然の如くノートPCよりもデスクトップのスペックが高いので、出先で作業するのがつらくなってきました。 ノートPCは RAM が 8GB しか…
Arch Linux でパッケージをビルドする際、makepkgしたら-> Compressing package...で永遠に待たされた経験のある人は多いと思います。 android-ndk とか最悪ですね。何であんなに遅いんだろう… これはxzコマンドがシングルスレッドで動いているのが原因なの…
メモリ8GB環境に嫌気がさしたのでPCを組みました。自作PCは初めてです。 いろいろ書いておかないと多分忘れるので書いておきます。 パーツ CPUとマザボはツクモで、ほかはドスパラで買いました。 画像がババーンって出てわかりやすいのでAmazonのリンク載せ…
買いました。 PHILIPS(ディスプレイ) 40型4K対応ワイド液晶ディスプレイ 5年間フル保証 BDM4065UC/11出版社/メーカー: Philips(フィリップス)発売日: 2014/12/27メディア: Personal Computersこの商品を含むブログ (4件) を見る 環境 OS: Arch Linux PC: Thi…
pocke/lemonadegithub.com 作りました。 Lemonadeといいます。 Go言語で書かれています。 インストール go getでインストールすることが出来ます。 go get github.com/pocke/lemonade また、リリースページから圧縮ファイルをダウンロードし、PATHの通ったと…