社会人から始めたプログラミング

プログラミング、エンジニアに関することでの備忘録、シェアしたい情報などを共有するためのブログです。

excel でタイトル挿入ができるコントリビュートのコミットがマージされた!(rubyXL)

困っていたこと

excel にタイトルを挿入したいと思っていたけれど、 rubyXL にはタイトルを簡単に挿入する方法がありませんでした。

ねじ込んでみたりしたら日本語が文字化けしたり大変だった。。

ということでPRをつくってみた

こちらで、コントリビュートのコミットについて書いてます

itoshk-development.hatenablog.jp

rubyXL で excel にタイトルを挿入する方法

workbook.title
workbook.title = 'TITLE'

コントリビュートしてみて

気分は◎ みんなもなにかできることがあったらしてみると良いかと

備忘録:実装時、コードレビューする時、してもらう時に注意したいこと

なぜこの記事を書くか

検索すれば、実装時の注意、コードレビューの時の注意点は書いてあると思うので、これは完全に自分用のメモ 特に失敗してしまったこと自分の言葉で書いて、次に同じことが起きないようにする。

粒度大きめ>粒度小さめ の順番で書いていく

実装するとき
  • 仕様がある場合は仕様を把握する
  • 仕様で漏れがないか、わからない点がある場合、確認事項をリストアップし早めに確認しておく
  • 仕様がない場合は、出来上がりのイメージを確認したり、仕様を作っていく
  • 既存のコードを使う場合、既存コードが何を担保しているか、把握する
  • 一つのメソッドが何百行とかになってないか
  • 繰り返し出てくるメソッドをまとめられないかどうか
  • メソッドの変数名がわかりやすいかどうか
  • プロジェクトのコードルールに則っているか
  • コメントが分かりやすく書かれているか
  • typoがないか
  • 順番に依存したコードを書く場合、意図した順番が担保されているかを確認する

    • 例えば ruby なら rspec で順番が関連する箇所に関して specを記述する
  • 例外処理が書かれているか

  • テストをかいたか
  • テスト内容は網羅的で(抜け漏れのない)必要最小限のテスト項目か
コードレビューするとき
  • 上記のような実装の観点で実装されているか
  • リリースまでの流れの中で不安な点、明確になっていないものはないか
  • 大きな機能は実装方針など詳細設計の時点でレビューしたいと実装者に伝えておく
コードレビューしてもらうとき
  • 工数がかかる実装は特に、詳細設計、方針など早めに共有しておく
  • 何を特にレビューしてほしいか伝える

他にもいっぱいある気がするがとりあえず思いついたときに、 追加したくなったときに追加していきます。

cloud functions for firebase にて呼び出ししたときに CORS error する3つのパターン

エラー内容

Access to fetch at 'xxx' from origin 'yyy' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

可能性のある原因

1) firebase の functions のエラーログを確認。timeoutしていたり、clashしていると起きる 2) functions.https.onRequest を使っているのにcorsの設定していない 3) 謎の見えない文字がfunctionsにあるとなぜか動かないfunctionsがあるみたいなこともある(稀) それ以外もおそらくあると思うが…

解決方法

今回は1)だったので、エラーログを確認して、エラーが起きている箇所を修正。

2) のときは functions.https.onCall((data, context) にすると◎だったりする。 参照↓↓

https://firebase.google.com/docs/functions/callable

javascript - Firebase Cloud Functions: Difference between onRequest and onCall - Stack Overflow

3) のときは怪しい箇所以外をどんどん削除していって、動く箇所と動かない箇所を区別したあと、新しく書き直す。怪しい箇所を含んでコピーしていると、謎の見えない文字も一緒に含まれてしまうので注意。