hotoolong's blog

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

Nvim起動時にdeoplete failed to loadが表示されてたので対応する

nvimで変なエラーが表示されるようになった [deoplete] Failed to load python3 host. You can try to see what happened by starting nvim with $NVIM_PYTHON_LOG_FILE set and opening the generated log file. Also, the host stderr is available in mes…

ソフト404をRailsで対応する

Search Consoleのエラーでソフト404が表示されることが度々あり、対応方法を考えてみました。 support.google.com 本来であれば、sitemap.xmlで送信しているURLから削除するなどの対応をすべきです。 ただ、検索ページなどで動的に変化する場合、 ページ内も…

「ゼロからわかる Ruby 超入門」を読んでみて、自分の勉強方法を振り返る

新年あけましておめでとうございます。 2019年ももう4日です。 年始から昨年読んだ本を見直していたのと、 積読本の整理に勤しんでいました。 なかなか読む時間を作れてないなと実感するばかりです。 読まなさそうな本はどんどんmercariに出品しています。 …

年末になってAdventCalenderが充実してて見てるのが楽しいですね〜

年末になるとAdventCalenderが盛んに行われますが、 Qiitaがまとめてくれていて見ていて楽しいですね〜 qiita.com js周りの情報が多いのが今年の特徴ですかね。 参考になる情報が多くていいですね。 カテゴライズされているのもいいですね。 カテゴリ別に流…

atama+ のサービスを受けてみたい

www.atama.plus WBSで取り上げられていたので、調べてみたのですが個人向けではないのが残念です。 中高生向けに、一人ひとり100%カスタマイズした学びを実現ということで、C向けにサービスを展開してくれるのであればやってほしい。 受けてみたい。

最近Vivaldiをつかってます

Vivaidiのシェア、IE6に迫る | スラド IT と記事にあるように徐々にシェアを増やしてるようです。 まだまだ業務で使うには支障があるのですが、 使い勝手がいいところもあるので今後に期待してます。 VivaldiはOperaを作っていたエンジニアが作っていること…

2018年12月31日までのAppleバッテリー交換プログラムに行ってきた

以前から実施されていた バッテリー交換プログラムが12月までということで交換してきました。 今なら3,200円+税で交換できるということで実施してきました。 まずはAppleのサポートページの以下からバッテリー交換を申し込むのボタンを押すことで 近くの持…

Mojaveにバージョンアップしてみた

Mac

フリーランスを初めて1ヶ月ほどが経とうとしています。 とてもいい条件で働いている状態ではあるのですが、 いろいろ悩ましいこともあり、それは別途アウトプットしていこうかと思います。 思ったよりもいろんなところでお仕事の話をしていただける機会があ…

新しいMacの環境を構築するときにbrew bundleが便利

新しい職場でMacを借りることができたのですが、 開発環境の構築に戸惑ってしまったので、githubにdotfileなどをまとめてしまったほうが移行が楽だなとおもいリポジトリを作りました。 github.com ここを今後更新しておこうかと思っています。 他の人の設定…

フリーランスになりました

10月からフリーランスとして働くことにしました。 フリーランスは厳しいとか甘いとか言われていますが、 置かれている環境やその人のスキルセットによってはいい環境にもなるのかなと思い、 私の場合は提示された条件が良かったのでしばらくはフリーランスで…

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>…