コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

2019-06-01から1ヶ月間の記事一覧

五十六(いそろく)メソッドを自分なりにまとめる

山本五十六の名言、と語られるけどもこの呼称だと無いなと思いさらっとまとめてみる 五十六メソッドとは 山本五十六の名言 やってみせ 言って聞かせて させてみて ほめてやらねば 人は動かじ に由来し、ものごとを教える際は まずは教える側が実演する その…

MacでもWindows同様にすぐにスクリーンロックするショートカットキーがある

意外と知られていないし、カフェとかで仕事する人は覚えて置くと良いと思う。 やり方 Mac のキーボードショートカット - Apple サポート より Command + Option + 電源ボタン (余談)Windowsの場合 Windows のキーボード ショートカット - Windows Help より …

Webmockでform送信されるリクエストをモックする

割と考えればわかりそうなことだが、ピンと来なかったのでメモとして書く 環境 webmock (3.5.1) やり方 WebMockのwithに以下の記述を書き足す headers: { "Content-Type": "application/x-www-form-urlencoded" } 例 user_idの100がformでPOSTでされたときに…

CircleCI上のマシンで環境変数を扱う場合はContextsを使うと便利

デプロイのCircleCIを使っているなどの場合、結構あると便利なのでメモ 環境 version: 2 Contextとは 日本語テキストがあるので抜粋すると コンテキストは、環境変数を保護し、プロジェクト間で共有するためのメカニズムを提供します。 環境変数は、名前・値…

RSpec3の配列系マッチャを利用シーン別に逆引き表を作ってみた

RSpec3から結構選択肢があるようなので一覧表にしてみる 環境 $ ruby -v ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin18] $ bundle exec rspec -v RSpec 3.8 - rspec-core 3.8.0 - rspec-expectations 3.8.2 - rspec-mocks 3.8.0 - rspec-rails…

Rubyで初期値設定を行うときは || を使って nil 判定をする自己代入式を使うと便利

x ||= 10 みたいな形でORの仕組みを使って初回だけ値を入れるやり方を考える 環境 $ ruby -v ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18] 考え方 たとえば、インスタンス変数に 「すでに a に 値が入っていれば値をそのまま使…

RailsのActiveSupport::TimeWithZoneシリーズの利用シーンと対応メソッドをざっくりまとめる

Railsで現在時間を扱うときは設定したタイムゾーンを意識してほしいので Time.zone.now を使う、というのは割と染みて覚えるが他のケースを忘れがちなので一覧的に書いてみる 環境 $ bin/rails -v Rails 5.2.2 逆引き利用シーン 利用シーン メソッド 例 現在…

『DevLOVE X 〜 それぞれの10年、これからの10年〜』の2日目に行ってきたよメモ

DevLOVE X 〜 それぞれの10年、これからの10年〜に行ってきたので、昨日に続き 2日目のメモ 各発表の感想 ※資料スライドは見つけたら貼ります。 技術に対する愛が人生を大きく変える !! さて明日の資料はできたけど、これ発表はできるけど、資料を公開する勇…

『DevLOVE X 〜 それぞれの10年、これからの10年〜』の1日目に行ってきたよメモ

DevLOVE X 〜 それぞれの10年、これからの10年〜に行ってきたので、とりあえず1日目のメモ 各発表の感想 ※資料スライドは見つけたら貼ります。 普通のエンジニアが10年でニュータイプやスーパーサイヤ人になれるのか?カイゼンさんのジャーニーの巻 DevLOVE …

複数会社間における作業の連絡手順

自分の業務経験をテキストにするシリーズ。 複数間にまたがる会社の連絡 例えば、運用を依頼されているシステムなどの場合は、そのシステムに変更を加える場合に依頼元の会社と連携を取る必要がある。 そのような場合の連絡のタイミング、勘所をざっとまとめ…

Rubyのgem、configで使う設定値のymlには環境変数を指定することができる

erb的な書き方はできるんですよ、というメモ 環境 rails (5.2.2.1) config (1.7.1) 書き方 <%= %> の記法で書く。 キー名: <%= ENV["指定したい環境変数名"] %> 実践 以下のように記述する sample: <%= ENV["SAMPLE_SAMPLE"] %> 環境変数を指定しないとnilに…

RailsのActiveRecoedのサニタイズ系のメソッドは5.2からpublicになっている

5.0と5.2を行き来していたのでてっきりprivateだと思ってたのでメモ ネタ元 週刊Railsウォッチ(20180813)Rails 5.2.1リリース、sanitize_sql_arrayは5.2からpublicだった、Dev.toがRailsアプリのソースを公開ほか 書き方 5.2 ActiveRecord::Base.sanitize_…

RubyのCSVライブラリは header: true とすると1行目の行情報でハッシュのように扱える

トリビア風タイトルネタ 環境 $ ruby -v ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin18] 実例 例えばこんなCSVがあった場合 no,name,age 1,Taro,20 2,Ziro,31 3,Saburo,33 名前のnameだけ出力したいなぁとかなると、CSVの1行目を削ってからRea…

ActiveRecordのカラム要素の情報はハッシュ的な書き方でもアクセスできる

深くは調べてないがトリビア的なメモ 環境 $ bin/rails -v Rails 5.2.2 実例 下記のように取れる場合 user = User.last # => #<User id: 15, name: "Sato", created_at: "2019-05-28 05:03:20", updated_at: "2019-05-27 05:03:20"> 下記のようにアクセスできる。 user[:name] #=> "Sato" user["name"] #=> "Sato" もちろん代入すると保存される user["name"] = </user>…

複数タスクを並行でこなすとき、時間軸で振り分けを考える

最近タスク整理業が多すぎるのでそこで文章化したかったことをまとめる。 並行タスクの問題点 あふれるタスクを整理するときに時間軸で整理する そのタスクは依頼を必要とするものか そのタスクは期限が求められるものか そのタスクは後続のものがあるか な…

ビジネスメールにおけるインラインとは

結構無意識で使ってたけどよく考えるとこれは一般用語なのか不安になったので調べてみた メールにおけるインラインとは メールの返信において、もらったメールの本文を使って返答文を書くこと。 実例 shinkufencer様 いつも大変お世話になっております。 株…

公式で配布しているAppStoreとGooglePlayのアイコンのレギュレーションと場所

知らない人はあんまり知らない サイト Apple マーケティングリソースとアイデンティティに関するガイドライン - App Store - Apple Developer Google Google Play バッジ – Google サイトで使う際の注意 marginのレギュレーションなどがあるので守ること 解…

Faraday(にてNet::HTTPを使う場合)で証明書検証をスキップする

2日連続Faradayネタ 環境 faraday (0.15.4) 考え方 FaradayではHTTP接続のadapterが指定できるので、そちらで Net::HTTP を使えばSSLの認証モードとして証明書検証が失敗しても続ける指定ができるのでそちらを使う やり方 Faraday.new do |faraday| faraday.…

RubyのFaradayで送信するURLはURIエンコードを勝手にかけてくれる

表題の通りネタ 環境 faraday (0.15.4) 実演 下記の用にクライアントクラスを作る client = Faraday.new do |faraday| faraday.response :logger #ログが見れる用に faraday.adapter Faraday.default_adapter # デフォルトアダプタ指定 end まずは普通のパラ…

『エンジニアのためのコーチング入門』に行ってきたよメモ

エンジニアのためのコーチング入門 に行ってきたのでメモ 各発表の感想とか この会の導入説明 スライドで導入説明があったのでリンクだけ speakerdeck.com 人と話すことが苦手な人のほうが、コーチングは上手くなる speakerdeck.com 発表メモ 社内コーチなど…

環境変数にRAILS_ENVが無いときに指定しないとdevelopmentで実行される

当たり前すぎるけど直球ワードで調べると出てこないし、ガイドとかにもざっとググるに明示されていないので備忘 環境 $ bin/rails -v Rails 5.2.2 検証 $ echo $RAILS_ENV $ 何も設定されていない空文字であることを確認 $ bin/rails c Loading development …

MacでWindows向けにZipファイルを作るときに使うソフトWinArchiver

Windows向けの人が居ないと忘れがちなZipツール 紹介ソフト 「WinArchiver Lite」をMac App Storeで 何が便利か Windowsの場合、2バイト文字が含まれるファイル名の場合、MacOS備え付けのzip圧縮すると、圧縮したファイルが文字化けする。その場合ファイルに…

Intelligent Tracking Prevention とはなにかざっくりまとめる

SafariのベースになっているWebkitだけとはいえ、知識としては欲しいのでざっくり 出典 Intelligent Tracking Prevention | WebKit 何を防止する機能なのか 複数のドメインでのトラッキング(クロスサイトトラッキング)を防止するための機能。その目的とし…

ActiveModel::Attributesはプレーンな値を持つだけのオブジェクトを作るときに値をよしなに処理してくれるので便利

型が欲しい!!!とか思ったときそっと添えることのできる機能として 環境 $ bin/rails -v Rails 5.2.2 例 class NoRecordUser include ActiveModel::Model include ActiveModel::Attributes attribute :name, :string attribute :age, :integer attribute :…

ファーストパーティクッキーとサードパーティクッキーをざっくり調べる

実はこの用語は広告業界以外では使われない感があったので改めて定義をざっくり調べる Cookieとは サーバーがユーザーのウェブブラウザーに送信する小さなデータであり、ブラウザーに保存されて次のリクエストと共に同じサーバーへ返送されます。一般的には…

CircleCIで公式に使えるImageはドキュメントのページに一覧がある

dockerhubでいちいち探さなくてもいい CicieCIのバージョン version: 2 情報のあるページ Pre-Built CircleCI Docker Images - CircleCI 使いかた CircleCI2.0ではコンテナを選択する記述があるのでそれを設定する jobs: build: parallelism: 1 working_dire…

AWSで運用する予算をざっくり計算できるサイトがある

AWS

いちいちヘルプページで検算しなくてもよいことを知る サイト Amazon Web Services Simple Monthly Calculator できること 各サービスごとにどんな物を使うかを設定できる 行を追加して… インスタンスタイプを選ぶ 全部選んだあとに別タブに行くと月々のお値…

.ideaディレクトリ配下のものはInteliJ系エディタのエディタ情報

VSCode使いの人が誤ってコミットされたファイルを見て何これ感になったので 環境 RubyMine 2018.2.4 Build #RM-182.4505.55, built on October 8, 2018 gitで弾くといいもの .idea 配下をすべて、というわけではなく、公式的には This format is used by all…

FLOCSSではJavaScript由来の状態を司るのに is-* プレフィックスを使うと良さそう

CSS

ここだけコンセプト説明が手薄なので補ってみる 出典 Modifierの命名の派生パターンとして、JavaScriptで操作されるような「状態」を表すようなModifierについては、SMACSSのStateパターンの命名を拝借し、is-*プレフィックスを付与し、.is-activeというよう…

GitHubにはPullRequestの確認を再度依頼するときのためのUIがある

あんまり知られていないっぽいので どんなUIか PullRequestの右上あたりにあるReviewer欄 使うタイミング コメントでもらった部分を再度見て欲しいとき Approveをもらったけど直したことをつたえたい 参考リンク The GitHub Changelog