コード日進月歩

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

雑記

Railsにおけるto_jsonとas_json

真面目に調べたことなかったのでメモ 環境 $ bin/rails -v Rails 5.2.2.1 違い as_jsonはJSONに近いハッシュに変換してくれる、to_jsonはその更に先で完全に文字列化してくれる 例 対象となるハッシュは以下 demo_hash = {hoge: "huga"} #=> {:hoge=>"huga"}…

ActiveRecordの強みと弱みを見つめ直す

RailsのActiveRecordってなんでいいんだっけ?ということを見つめ直す。 そもそもActiveRecordパターンとは Martin FowlerのPatterns of Enterprise Application Architecture(通称 PofEAA)にて紹介されたデザインパターン An object that wraps a row in a …

非エンジニアの人にも教えておくと文章表現の幅が広がるSlackの記法

主にSlackでこれだけは使い方を覚えておくと文章表現に幅が出るよねっていう雑なメモ バッククォート(`) MarkDown記法ではおなじみ```の記法 長文とか 要点とか で使うとかなりメリハリがでる。 ただしモバイルだと残念な見た目になるのがたまにキズ 大な…

スクラム用語としてのユーザーストーリーとプロダクトバックログの違いを自分なりにまとめる

なんかスクラム畑の人がプロダクトバックログって言葉を使わないので自分の知識が間違っているのかも…という観点での再整理 プロダクトバックログとは プロダクトを作成するにあたっての要求事項を順番に並べたリスト。 - 5分で分かるスクラム用語集 | Ryuze…

Slackでランダムに返事するだけのBotだったら簡単に作れる

めっちゃ簡単だったのでお茶濁しメモ(令和ネタもエイプリルフールもない平常運用です。) やりかた ワークスペースのカスタマイズから選択ができる 改行するといずれかの行をしゃべる 謎の仕様 !や。など記号は無視される、ので反応してしまう 参考リンク …

GitHubを使うのであればコミットメッセージの3行目以降を使ってWhyを表現するといいうかもという話

2日連続でGit運用系の話。 つらいコミットログ 意図がガチでわからんのコミットメッセージ wip review fix bug fix これだと、「何のための」WorkInProgress(wip)なのか「どの」Review fixなのか、「どんな」Bug fixなのかがわからない。 そのため、「コミッ…

PullRequestを出したブランチにそのままブランチを切ってを繰り返して開発すすると、PRがのマージ順番をしくじると偉いことになるので控えてほしい

あんまり得策でないのでやめてほしいということと、しくじると偉いことになるということを書きたかった雑記。なおこの文章内でのPRとはPullRequestの略。 やめてほしいこと こんな流れ ブランチtopicを切って開発開始、すべての機能が整うまでここにマージす…

MacOSのExcelは図形の範囲複数選択(オブジェクト選択)が無い、がフェンリルさんが似た機能のマクロを配布している

タイトル出落ちメモ記事 今回対象のExcel 無い機能 図形の複数選択、Windows版のアイコンは下記のようなやつ Excel200x系から奥まった位置に動いたりと何かと見失いがちな彼なのですが、シーケンス図とかをExcelで用意されたりすると改変するときに欲しくな…

QCDと荒ぶる四天王

QCDと荒ぶる四天王を比較で書いてみただけのメモ QCDとは 生産管理のQCDとは英語の「Quallity」「Cost」「Delivery」の3つの言葉の頭文字をつなげたものであり、日本語にすると「品質」「コスト」「納期」となります。 これらは製造業において最も重要な概念…

Webアプリにおけるエイジングテストを考える

「エイジング」って言葉がとっさに出てこないので調べた結果と、ぼんやり考えてみたことをまとめた小ネタ的雑記 起源 エージング(エイジング)とは - IT用語辞典 e-Words エージングとは、機械や電子機器などの出荷前に行われる稼動試験、または、使用開始…

マジックナンバーの起源をざっと調べてみた

英語のWikipediaに書いてあったので雑学的なメモ 出典 Magic number (programming) - Wikipedia Wikipedia曰く 詳しく理解できていない部分は多分にあるが、Unixの第6版のときにヘッダの分岐構造における定数値において、理解しづらい定数値の値をセットして…

よい当たり前を維持する努力

日曜日なのでちょっとポエミーな雑記です 急場しのぎのコード 「リリースを急がなければならない」 この言葉が免罪符となり、分割がちゃんとなされていないロジック、そばしのぎのマジックナンバー、再利用性を無視しした同一意義のメソッドの乱立、そしてか…

アプリケーションプログラミングインターフェースの使い心地

APIを考えるときはインターフェイスの使い心地がよくなるように考えましょうという話。 使い心地の良いインターフェースとは きのこ本に以下のようなことがある 良いインタフェースとは次の2つの条件を満たすインタフェースのことです。 正しく使用する方が…

何故コードレビューはするといいのか、何故コードレビューは難しいのか

日曜なのでポエミーな雑記です。 何故コードレビューをやるのか 大きくは2つある 機能的な仕様を満たせているかのチェック そもそもの機能要件を満たしているかのチェック 書いたコードが要求仕様に沿ってなければ意味がない。 機能要件におけるバグの有無も…

Googleの検索をアテにしているサイトの開発者なら一度は見てほしい『検索エンジン最適化(SEO)スターター ガイド』

みんな意外と知らないのでメモ サイト 検索エンジン最適化(SEO)スターター ガイド - Search Console ヘルプ なんで一度は読んでほしいのか 大前提の部分が大体補完できる感じで 基本的な用語 Googleのサーチエンジンに見つけてもらう方法 Googleのサーチエ…

世にあるBOK(Body of Knowledge)をざっくり調べてみた

なんたらbokと呼ばれる知識体系の本多すぎなのでまとめる そもそもBOKって? Body of Knowledge の略で日本語だと「知識体系」と訳す。 BOKシリーズ PMBOK(Project Management Body of Knowledge) プロジェクトマネジメントにおける知識体系。おそらく一番有…

ソフトウェア品質の大きな2分類に関してざっくり書いてみる

Wikipediaを適当に噛み砕いてみるコーナー 出典 Software quality - Wikipedia 2つの異なる品質 機能品質(Software functional quality) 予め定められた機能要件に対して、どれだけ満たせているかという品質。機能要件をどれだけ満たしているか、また過不足…

アジャイル開発に関してIPAがまとめた資料がある

ググったらめちゃくちゃ精度高い資料が出てきたのでメモがてら 出典 プレス発表 第4次産業革命に向けたスキル強化の指針“ITSS+(プラス)”に新たに「IoTソリューション領域」「アジャイル領域」を策定し、公開:IPA 独立行政法人 情報処理推進機構 「アジャ…

システム開発における「信頼しても信用するな」

ビジネス用語であるよねー、というのをシステム開発的に噛み砕いてみる雑記 各言葉の意味 この場合における「信用」と「信頼」を噛み砕く。 信用 主に実績や成果物に則して使われることばで、過去の実績などを伴って信じることに関して「信用する」という言…

サーバアプリケーションのトラブルシュート時の心構え

自分が普段思っていることを明文化する系雑記です。 トラブルシュート時の心構え アプリケーションサーバという共有の資源に関して複数の開発者が入るような環境でのトラブル発生時に、気にかけておきたいことが3つほどある トラブルが起きているサーバには…

出典元のリンクも作ってくれるフリー写真サイト『Unsplash』

写真バーン!みたいなスライドを作る時に便利なサイト サイト Beautiful Free Images & Pictures | Unsplash 使い方 検索をすると該当する写真が出てくる 写真をクリックすると右上に「Download free」というボタンがあるとダウンロードできる ダウンロード…

rspecのbeforeでインスタンス変数を使いたくなったら、letを使うことを考えたほうがよさそう

letを使ったほうがいいはあるが、インスタンス変数を使うデメリットに関してはあんまりないので書いてみる。 環境 $ bundle exec rspec -v RSpec 3.8 - rspec-core 3.8.0 - rspec-expectations 3.8.2 - rspec-mocks 3.8.0 - rspec-rails 3.8.1 - rspec-suppo…

変えられること変えられないことを度合いとして仕分けする『ニーバーの仕分け』をざっくりまとめる

問題解決大全より引用。開発現場風にアレンジ。 「ニーバーの仕分け」とは ニーバーの祈りの一節にこのようなものがある 神よ、変えることのできないものを静穏に受け入れる力を与えてください。 変えるべきものを変える勇気を、 そして、変えられないものと…

tailのよくつかうオプション早見表。

感覚値で tail -f は打つんだけど他がいつも覚えられないのでアウトプットしてみることで頭に染み込ませる本当に自分向けの雑記 環境 $ sh --version GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18) 早見表 オプション 説明 例 -f 対象ファイ…

Zoomは無料版でも固定のURLを降り出すことができる

ただの豆知識、固定のURLとかではないしググりにくいのでメモがてら。 やり方 Zoomのアカウントを取るとログインできるようので、ログインすると「個人ミーティングID」というものがある。 これをつかうとアカウントに紐付いたIDを降り出すことができる。こ…

Rubyなど ; で区切るワンライナーを作る時はブラウザのURL欄を使うと楽

何を言っているんだというタイトルだが今日は生活の知恵ぐらいの話です。 やりたいこと 例えばこんなコードがあるとする a = 10 x_list = [1,3,5,7,11] x_list.each { |x| p "#{a * x} is number" } これをファイルを作らず実行したい。 やりかた セミコロン…

GoogleスライドでUnicode絵文字をきれいに出す場合はオフラインにする

実はオンラインだと出ないという話。 事象 作成時の状態でやるときれいに絵文字が出るが 編集時 プレゼンテーション状態になると出ない 解決策 オフラインにする ※おそらくインターネット接続状況が変化する契機っぽい 補足 ただしpdf書き出しはどうにもなら…

多層アーキテクチャが生まれた利点を考える

資料集めついでの雑記です。 層の訳としてのTierとLayer 多層アーキテクチャ、層の部分が、Tier と Layer で書かれることが多い。 この2者の違いは物理的な層、例えばクライアントマシンと、サーバーマシンが異なる場合を Tier で表記し、ソフトウェアや概念…

AmazonSNSをPush通知で登場する言葉たちの関係性をまとめる

種類が多くて混乱するのでまとめる 登場する言葉 AmazonResourceName(arn)が存在する単位で記載する Application iOS(AppleのAPNs)、Android(GoogleCloudMessaging)などの粒度の配信先プラットフォームを指す。 EndPoint Applicationに対して、発行され…

Unity系の更新量がすごいブログ紹介

年始のゆっくり運転なので、畑違えど目指したいブログたちのご紹介です。 コガネブログ 平日ほぼ毎日更新、しかも下手すると1日に2記事とか出てくる。そしてスクリーンショットを交えてた丁寧な説明。業務時間に書いている感じするけどそれだとしてもすごい…