hotoolong's blog

RailsやVim、業務で気になったことを綴ってます

GoogleMapsの地図表示がおかしくなる。

はじめの数秒は地図が表示されるが、その後すぐに地図が表示されなくなる現象が度々起きている。画面は以下のような状態になってしまう。 HTTPステータスが400が大量に出ているのでなんだろうかとおもってGoogleさんに確認してみたのですが、返事がなく。。 …

MacのDockerもVersion 18.06.0-ceになってdocker buildが改善

github.com 7/18に先行してリリースされていたDockerの18.06.0-ceですが、 for Macにも対応されました。 今回の改善でかなりbuild速度が改善されているということで今後もDockerがコンテナ技術を引っ張っていきそうですね。 dockerjp.connpass.com Docker Me…

orderで特定の文字列順に並び替える

数字順で昇順、降順で並び替えるのはよくありますが、 カラムに文字列を設定してしまっていると、並び替えたくなったときにすこし不便ですね。 そんなときにはfieldを使うとうまく並び替えれます。 select id, name from items order by field(items.size, '…

G Suite の最新便利機能 がかなり便利そう

cloudonair.withgoogle.com G Suiteを使うことで社内ミーティングの調整が楽になったり、 簡易チャットですばやく打ち合わせできたり、 動画の音声をCloud Searchを使って検索できるのはかなりの効率化ができそうで未来を感じますね。

WWDCがあったけどこのタイミングで新しいMacBookProが発表されたよ

www.apple.com サプライズ!?なのかこのタイミングで新しいMacBookProが発表になりましたね。 私としてはスペックが上がって嬉しいところではあるものの価格とキーボードが気になるところです。 私のほしいスペックで見積もり見てみたのですが、税別で27万5…

Railsのmigrationでchange_columnを利用する

change_column change_column_null change_column_comment change_column_default change_column Railsのmigrationでカラムの情報を変更したい場合によく使うchange_columnですが、 change_column(table_name, column_name, type, options = {}) と変更した…

mysqldumpでテーブルを対象、対象外にする

mysqldumpを定期的にするのですが、 対象外にしたいテーブルが複数でてきたときの対応方法をメモしておきます。 ダンプファイルと取るときには直接テーブル名を選択すればいいケースもあります。 以下のコマンドですと一番上を選択してデータベースを指定し…

Ruby2.6が早くもpreveiw2をリリース

今年のRubyKaigiは少し大きめのリリースがあったので残念ながら会社でお仕事してました。 Ruby 2.6.0-preview2 Released preview2がリリースされたということで早速インストールしてみました。 brewからruby-buildを入れているので以下のように設定して置き…

ActiveRecordでOR文を作るときのエラー対処

少し複雑なSQLのOR文をActiveRecordで作るときにはすこし億劫になりますね。 ArgumentError: Relation passed to #or must be structurally compatible. Incompatible values: [:joins, :references] とエラーが出てしまったのでいろいろ調べてみました。 今…

Unicode エンコードの競合 というファイル名になってしまう

20180419_プロダクションレディマイクロサービス.txt というテキストファイルをDropboxのディレクトリに作っていたのですが、 20180419_プロダクションレディマイクロサービス (Unicode エンコードの競合).txt という名前に変換されてしま…

fish shell の時に プロセスを起動し直す

source ~/.config/fish/config.fish でconfigファイルの再読込はできるようなのですが、 bash や zsh のときのように exec -l $SHELL を使いたいなと思っていましたがそのままではできないようです。 $SHELLがそのままでは実行できないようで exec fish する…

Nodeのバージョンが10.0.0に

Nodeが早くも10.0.0です。 パフォーマンス改善も著しく注目も高いですね。 以下、CHANGELOGの内容です。 github.com ちょうどNode学園の30時限目がありお邪魔してきました。 speakerdeck.com speakerdeck.com Nodeの改善に取り組んできた内容や今回の改善点…

tmux が 2.7 にバージョンが上がっていたので brew で アップデートする。

⋊> ~ brew info tmux 21:47:47 tmux: stable 2.7 (bottled), HEAD Terminal multiplexer https://tmux.github.io/ /usr/local/Cellar/tmux/2.3_2 (10 files, 651.9KB) Poured from bottle on 2017-01-04 at 10:50:53 /usr/local/Cellar/tmux/2.5 (10 files, …

brew で MySQL8.0をインストールする

MySQL8.0がリリースされましたね。 MySQL8.0の機能 MySQL :: MySQL 8.0: Up to 2x Faster 新機能と以下が上げられています。 Document Store Transactional Data Dictionary SQL Roles utf8mb4 character set が Default に 共通テーブル式の追加 Window関数…

vim-gitgutterでGitコマンドを使う

以前から行単位で変更箇所を戻すのにGitGutterRevertHunkを使ってたのですが、 vim-gitgutterのバージョンを上げるとコマンド名が変更になっていました。 github.com .config/nvim/init.vim には以下の用にGitGutterRevertHunk だったのを GitGutterUndoHunk…

誤って git reset --hard HEAD^ してしまったので取り消したい

Git

表題通り git reset --hard HEAD^ を取り消したくなったので調べてみました。 以下のreflogコマンドで実行履歴を確認できます。 git reflog -n 5 戻したい場所を確認して、以下のコマンドで指定します。 HEAD@{1}に戻す場合は以下の通り git reset --hard "H…

今更ながら「20年目のRubyの真実」を読んだ

2015年の話なんですね。 ちょっと長いですが楽しく読めました。 個人的に以下が面白かったです。 驚き最小の法則が逆にめんどくさい 次の言語来てほしいけど誰も載ってこない Rails、Rubygemsなどのコミュニティが果たす影響はすごく大きい プロモーションが…

CIでbundle install するときには --clean をつけると無駄にキャッシュされない

タイトルどおりなのですが、 目からウロコだったので、メモとして残しておきます。 Circle CI 2.0 でstore_cache、 restore_cache を使って、Bundler の gem をキャッシュしていたので、 とても参考になります。 ローカル環境でも --clean を付けてもいいの…

MySQLのgroup_concatをつかって複数の項目を1行に並べる

1対多のテーブル構成を多になっているテーブルの情報をgroup_concatを使って表示したくなるケースがあったのですが、 単純に1カラムのデータだけを表示する場合はそのまま使えばいいのですが、 複数を一気に選択することができず、副問合せして取得しました…

Capybaraでselect時に同じ名称のvalueがありエラーになってしまう

RspecでCapybaraのテストをしてたのですが、 select '東京都', from: '都道府県' と記載している箇所で Capybara::Ambiguous: Ambiguous match, found 2 elements matching visible option "東京都" within #<Capybara::Node::Element tag="select" path="/html/body/div/div/div[3]/div[2]/div/div/form/div[8]/select"> のようなエラーが出てしまいました。 FactoryBot</capybara::node::element>…

imagemagickのエラーでRspecが落ちる

Rspecに画像アップロードのテストが含まれているのですが、 軒並みバリデーションエラーになってました。 ActiveRecord::RecordInvalid: バリデーションに失敗しました。 プロフィール画像MiniMagickがファイルを処理できませんでした。画像を確認してくださ…

Slackのバージョンアップ情報が面白い

女の人が書いたんですかね。 記述の端々の言葉遣いに好感が持てます。 面白い取り組みですね。

awscli再インストール時のエラー対応

前回の記事でbrewでpythonを入れ直したのが影響なのか、awsコマンドが使えなくなりました。 /usr/local/bin/aws: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory というエラーが出ていました。pipでコマンド確認したとこ…

MySQLでユーザ定義変数とcountを組み合わせて失敗した

MySQLでユーザ定義変数を使っていたときのお話です。 ユーザ情報に紐づくアカウント数に合わせて出力する形式を変更して解析しようとしてたのですが、 MySQLのユーザー定義変数をcase文で判断させようとしたところ挙動がおかしくなってしまいました。 ユーザ…

Amazon Musicが固まる

仕事しながらAmazon Musicで音楽聞いていますが、 MacBook Proで会社と自宅を行き来してるとスリープ起動、スリープ起動を繰り返すことになります。 なぜかCPUを食って固まることになってしまいます。 バージョンは以下の6.3.4.1269です。 随分前のバージョ…

brew install で Warning: python is outdated になり、nvimでWarningが発生する

Macでgawkのインストールを行いたくなり brew install gawk したときに ==> Deleted Formulae python3 ✔ llvm@3.8 mal4s mimetic nazghul picolisp ufoai voltdb ==> Processing python3 formula rename to python ==> Unlinking python3 ==> Temporarily un…

neovim(nvim)でescの効きが悪いと思ったらtmuxの設定が影響していた

お題の通りですが、 以前からvimのInsert mode から抜けるのがすこし待つのが煩わしいと感じしていたのですが 何が原因でそのような症状になっているのかわかっていなかったのですが、 tmuxの影響だとわかりました。 tmuxのescape-timeがdetfault 500msにな…

vimのxpは有効にしたいけどxでコピーは無効にしたい

Vim

かなり久しぶりのブログになりました。 ブログやめようかと思っていたのですが、続けることにしました。 どこまで続くのかわかりませんがよろしくお願いします。 日頃からvimというかneovimを使っています。 init.vimには set clipboard+=unnamedplus クリッ…

Re:dashをAWSに構築してみた

最近まであまりRe:dashのことを認識してなかったけど、結構使われてるのですね。 会社で入れてみたら?という話になり、構築してみました。 Qiitaなどの過去記事が散乱してるので、、 古いAMIから作ってしまったりしてしまったけど、 結局はhelpから探して最…

fishシェルでnvmをインストールするときにはomfで

あっと言う間に4月ですね。 ブログに書いてなかったのですが、転職しまして4月からスタートアップ企業で働くことになりました。 最近すこし怠けてるので、新しい会社で少し不安です。 それはさておき、 fishシェルにして初めてnvm をインストールして少しハ…