ブログ

読んで思い出す。忘れるために書く

2018-01-01から1年間の記事一覧

いつ Git にコミットすればいいのか(参考リンク)

dev.to I get asked this a lot at conferences. Enough to where I made two rules I've continually put to the test. I complete a unit of work. I have changes I may want to undo. 記事を読むまで: 基準として「ひと作業終えたとき」というのはあった…

配列から条件に合う連続した要素の最大カウント数を計算する

teratail.com 再帰で書けそうだったので書いた # 配列のデータに対して # * 符号がプラスの値が最大何回連続したか # * マイナスの値が最大何回連続したか # を計算したい def max_continuous_element_count(data, count_element, count = 1, max = 0) retur…

配列から範囲を生成する

思いついたので書く 課題設定 入力値の例 期待する出力 書いたコード 課題設定 与えられた1次元配列を順次捜査して、現在位置からひとつ前を参照しつつ、それと現在の要素とを合成した Range オブジェクトを作りたい そのとき、処理結果として見たときの範囲…

いくつかのランダムな数を書き出す

teratail.com 質問を見掛けて、コードを書いたので、こちらにメモ // Accepts size of generates and number of upto with Object function randomNumbers (params) { return ( Array.apply(null, Array(params.size)) .map(() => { return Math.floor(Math.…

キーボード操作で <input/> を"インデント"させる

前回に続き、機能を作る gouf.hatenablog.com IndentInput.vue, Editor.vue 2つのコンポーネントを作る まとめ わからなかったこと ゴール <template/> を記述する <script/> を記述する <style/> を記述する Link まとめ Vue.js 上で使える CSS の scoped はコンポーネントの中でスタイ</style/></script/></template/>…

キーボード操作で <input/> を増減させる

ゴール 前提 説明しないこと コンポーネントの作成 <tamplate/> の記述 <script/> の記述 $nextTick $refs キーコード デフォルト キーコード一覧 キーコード 一覧の拡張 Links ゴール コンポーネント、「InputEditor」を作成する 機能は次の通り実装する: ボタンクリックで要素</script/></tamplate/>…

Q. 開発環境で複数サーバを立ち上げたら CORS のポリシーで通信できない(Sinatra)

A. sinatra-cors で通信を許可する require 'sinatra' require 'sinatra/cors' set :allow_origin, 'http://example.com http://localhost:8081' # アクセスしてくる開発環境サーバをスペース区切りで追記 set :allow_methods, 'GET,HEAD,POST' set :allow_h…

テンプレート文字に沿って、文字列の合わない部分を「○」に置換する

teratail.com 回答して欲しい言語が Python だったので、こちらに書く(Ruby) 再帰楽しい 2つのテキストを渡して、条件に合致していれば両方を頭から食べてもらうイメージ # frozen_string_literal: true RESULT_TEXT = 'さて、私〇〇〇〇はこのたび〇〇〇〇…

Q. "SSL error: could not verify peer (Travis::Client::SSLError)" で travis コマンドが動かない

Q&A

A. travis が依存している gem の切り替えが --adapter でできるので、次のように Net::HTTP に切り替える travis login --adapter net-http メモ 問題発生時のエラーログ # -E : エラーをキャッチしないで落とす travis login -E ** Loading "/home/gouf/.t…

ズン ズン ズン ズン ドコ キ・ヨ・シ!(Ruby)

後で読むリストを見返してたら出てきたので、書く まとめについて: qiita.com 実装 gist.github.com そのまま実装してもおもしろくないので: 逐次「ズン」「ドコ」を出力せずに配列に溜め込むようにした (クラスの役割をデータの生成に限定した) 終了条件…

Change log を自動生成する(参考リンク)

使用してみた まとめ Link github.com 使用してみた Pull Request で変更を進めていって、バージョンタグを打って、としていると、ghch コマンドで次のような CHANGELOG.md の自動生成ができる 初回なので、ドキュメントを参照しつつ、次のコマンドを実行し…

rerun でファイル・ディレクトリを監視してコマンドを繰り返し実行する

今回は Yard に適用してみる 前提 やりたいこと 解決 Links 前提 ドキュメント記述ツール Yard を使っている 大規模なプロジェクトじゃないので、毎回最初からYard のドキュメント生成をやり直しても待てる やりたいこと 真っ新な状態でドキュメントが問題な…

日付の前後を比較するバリデーションを書く

自回答の転記 teratail.com やりたいこと テストコードと実装 テストコード 実装 Links

件数の多い処理をグループ分けして開始時間を遅らせる(ActiveJob)

「趣味プロジェクトで実装を書いたよ」というお話 github.com 説明しないこと 状況 アイディア 実装 Heroku Scheduler Links

URL にアクセスしたときのレスポンスコードをチェックする

やりたいこと テストコードを書く 実装コードを書く Links やりたいこと Ruby の標準ライブラリをつかって、URL の存在チェック (404 or not) をしたい テストコードを書く describe UrlAccessible do context 'When URL has exist' do it 'gets false (200 …

PostgreSQL のプランを Free から Hobby に移行する(Heroku)

たくさんデータ投入したら無料プランから外れちゃった 前提 状況 解決 手順 新データベースの追加 新/旧 データベース情報の確認 データベースのデータ移行 環境変数の更新 Dyno の再起動 旧データベースの削除 Links

Heroku で環境を立ち上げるたびにデータベースがなくてエラーになる(Rails)

前提 Rails アプリケーションを作っていて、Heroku にデプロイしている Review Apps 機能を利用した Pull Request ごとに新しく環境を立ち上げる仕組みを取り入れている 問題 Pull Request を受けて 新規に立ち上げられた環境にアクセスしてみると「Somethin…

Markdown 書式のリストからリンクを抜き出す

Redcarpet と Nokogiri に全力で乗っかっていく なぜ書くのか テストを書く(RSpec) 実装を書く Links なぜ書くのか 「なんとなく」が答え 普段、Google Chrome 拡張の Copy as Markdown を使っている それがあるとタブの情報(タイトル, URL)を、複数選択して…

Q. アクセス権を剥奪されたリポジトリのWatch を止めるには? (GitHub)

ちゃんと別手段が用意されてて良かった 問題 解決 Link 問題 共同開発に参加していたプライベート リポジトリのアクセス権を剥奪された Watch 状態を解除していないので何かアクションがあると通知が毎回届く しかし、当該リポジトリへアクセスして Watch 解…

Google Chrome 拡張機能の有無による GitHub の見え方の違い

導入してない状態だと、導入後と比べても見え方が大分変わる気がしたのでメモしておく 例によって詳細はリンク先参照のこと まとめ 導入したもの Before / After Links まとめ Web ブラウザの拡張機能を追加してあげると、劇的に GitHub の使い勝手がよくな…

Q. 自ブログの説明文を編集するには? (about ページの編集)

Q&A

A. 設定ページから「about ページ編集」をクリックする (何度も行ったり来たりして見逃してたのは内緒...) Link プロフィールの設定とaboutページ # aboutページ - はてなブログ ヘルプ

Slack Emoji を某スタンプの様に使う(参考リンク)

前置き 問題 128px 制限 解決 結果 Links 前置き ステキなイラストが配布されてた 【お知らせ】#エンジニアを褒めるネコ の画像を無料で配布いたしますので、slackなどでもご利用ください!▼ダウンロードはこちら。https://t.co/OZGADcFMIL pic.twitter.com/…

<label/> + <input type="radio"/> で任意の文字・画像を選択肢代わりに表示する

この記事は「口コミサイトの星(★★★☆☆)をCSSだけで実装してみた - Qiita」を見て、その中で使われているテクニックを一部解読したもの 導入 ゴール 手順 なにもない状態 ラベルと関連付ける ラベルに画像を追加 CSS でラジオボタンを非表示化 動作確認用のCSS…

CentOS 7 のシステムロケールを日本語に変更する(Vagrant)

状況 問題 解決 コマンド Links 状況 Vagrant box である centos/7 を立ち上げてみた 問題 localectl list-locales で確認してみたところ、英語系のものしかリストに挙がってこなかった 他の言語も一切ないし、何より日本語がない... 解決 locale に関わるパ…

定数を外部からアクセス不能にする(参考リンク)

方法 まとめ Links 方法 Module#private_constant を使う class MyClass MY_CONSTANT = 'Value' MY_CONSTANT_B = 'Value B' private_constant :MY_CONSTANT, :MY_CONSTANT_B end まとめ Private constants in Ruby というページを見た いろんな状況の中から…

いつもの RSpec 初期化手順

意外とタイプ数が多いし定型的なので、関数化するか こうしてコピペで済むようにしたかった 手順 初期化 Guard の起動 Links 手順 初期化 mkcd ~/rspec # mkdir + cd = mkdir; 適当なディレクトリに移動 mkdir lib git init bundle init # Gemfile 生成 cat <<EOF ></eof>…

「単語の類似性を算出する」出題を解く

teratail.com 気になったので書いてみる(Ruby, RSpec) もとの質問で話題としている言語は Java であり、穴埋め問題であり、ぜんぜん関係ないのでこちらに書き残す 今回の RSpec によるテストでは One-liner syntax を利用して、 expect を書く テストコード …

特定の Emoji Reaction でチャンネルに発言内容を集約する(参考リンク)

まとめ インストール後の設定 動作 Links まとめ /reacji-channeler をインストールして設定すると、利用できるようになる reacji-channeler.builtbyslack.com インストール後の設定 /reacji-channeler :emoji_name: #channel-name みたいに設定する 以降、…

始点終点を持つ範囲同士を比較するコードを考える

teratail.com 気になったので書いてみる RSpec の shared examples に適用できそうだったから書いたというのはナイショ 仕様 テストコードを書く 実装を書く 結果 Links

Slack で発生するちゃぶ台返しを封じる(lita-handler)

リポジトリを作った github.com 動作イメージ: 説明しないこと Lita という Ruby + Redis で動く chat bot があるということ handler に分類されるコードを書くことで機能追加ができること ほぼ全ての必要なことはドキュメントにシッカリと記述されていると…