matobaの備忘録

育児しながら働くあるエンジニアの記録

DjangoのDBトランザクションの話

移動中ですが、先日、Djangoトランザクションについて調べたので簡単に紹介します。

まあ、ドキュメントを読めば解決する話です。

Database transactions | Django documentation | Django

とは言え、簡単に概要を書くと以下のような感じです。

レビューは怖くない。どうするかを考えよう。

朝に以下のブログを書いたのですが、ブログをちら見した id:haru860 から有り難いアドバイスをもらったので紹介します。

blog.mtb-production.info

以下の辺りの話が関連します。

自分のアウトプットに対して『筋が悪い』と言われると、『君の考え方が悪い』って言われてると感じて嫌な気持ちになっていました。

筋が悪い。という言葉の意味 - blog.mtb-production.info

上記の話に対するアドバイスとして、

  • 仕事のアウトプットに対して、受けたレビューはあくまで成果物に対する指摘であって成果物を作った人への攻撃ではない。
  • レビューアは、成果物を良くするためにレビューをしているし、レビューイを攻撃しているわけではない。
  • レビューイが、レビュー指摘を成果物を作った人への指摘と受け取ると、レビューイが精神的に辛くなる。
  • レビュー指摘を攻撃と受け取ると、仕事が辛くなるので切り離して考える方が良い。

という話でした。

なるほどー。そう言えば、入社当時はレビュー指摘をたくさんもらえて嬉しいと思ってたのに、たくさんのレビューを貰いすぎて、いつのまにか『レビュー辛い、、ふぅ、、』ってなってたことに気づきました。

あと、精神的に辛くなったときにハマりやすいパターンも合わせて教えてもらいました。

パターン1『俺は悪くない』

  1. 精神的に辛くなると、これ以上辛くなりたくないので防御の姿勢に入る
  2. 防御の姿勢に入ると、自分の責任ではないことを主張したくなる。
  3. 誰の責任かを話しても建設的ではないので、周りがめんどくさいと感じるようになる。
  4. 誰も指摘をしなくなる。
  5. 一人で孤立して、さらに精神的に辛くなる。

パターン2『自分の何が悪かったんだろう』

  1. 失敗するのが嫌なので、原因を探ろうとする。
  2. 原因を探るために、経緯や過去の話を考え始める。
  3. 考えるためのリソースは有限なので、現在から未来にかけてどうするかを考える時間が減る。
  4. 現在から未来のことを考える時間が減るので、失敗する確率が上がる。
  5. 失敗が増えるので精神的に辛くなっていく。

『あー、僕は、このパターン1も2も、やったことあるし、今でもそういう話しちゃう時もあるわ』と思ったりもしました。

こういう風に考えたりするのは思考の癖だったりするので、意図的に避けるのが良いよ。とも聞きました。

とは言え、前向きに考えると、こういう話を聞けてよかったと思います。 こうやってパターンとしてみると、自分で意図的に回避できそうな気がしてきます。

というわけでまとめとしては、

  • レビューは怖くない
  • これまでの事より、これからのことを考えよう
  • 負のループを理解して、意図的に回避しよう

でした。

では。

筋が悪い。の意味

本を読んでいて、気になった話があったので紹介します。

それは『筋が悪い』という言葉の意味です。

僕はこれまで人に『それは筋が悪いなあ』と言われると、自分自身の人格を攻撃されてるような感覚になっていました。

自分のアウトプットを出した時にそれを作ったのは自分です。自分のアウトプットに対して『筋が悪い』と言われると、『君の考え方が悪い』って言われてると感じて嫌な気持ちになっていました。

それで、『筋が悪い』と言われると気持ちが落ち込んでいだのですが、ある本を読んでいる中で、関係する気づきがありました。

その文章が以下です。

ある企業からこの問題を解決してほしいといわれたとき 、それが非常にむずかしい問題だったり 、目をつぶって針の穴に糸を通すような成功確率しかないときに筋が悪いという 。 引用: 論点思考 内田和成の思考

これを読んで、あの時に言われた"筋が悪い"は、"難しい問題を選んでる"みたいな意味で、問題設定を見直す事を提案されてたのかな、と思いました。

lessでgz形式のファイルを見るときに使えるコマンドのメモ

ログファイルをgz形式で圧縮しているけど、その中身を見たい。というときがあったりします。それで、lessでgz形式のファイルを見るときに使えるコマンドを手元にメモしていたので、ここで紹介します。

例えば、こんな感じです。

$ zcat file_name.gz | less

zcatのドキュメントはこれです。zcatは圧縮形式のファイルの中身を表示できます。

Ubuntu Manpage: gzip, gunzip, zcat - compress or expand files

zcatを使ってlessでファイルを見ようとすると、メモリ上に一旦ログを展開してしまうので、でかいログを開けるのは危険。というのをどこかで読んだ気がします。

2020-06-08追記

「lessでgz形式のファイルを見るときに使えるコマンドのブログが参考になった」と言う話を聞いて、久しぶりに記事を見ました。

この記事を書いた時は知らなかったのですが、 zlesszgrep というコマンドもあります。

gz形式で圧縮してるファイルを見るときはおそらくそちらの方が適切かと思いますので、本記事で紹介したコマンドより、zlessやzgrepを使う方が良いでしょう。

JupyterでDocstringを確認する

Jupyter実践入門を改めて写経してて、便利だった話を書きます。

PythonユーザのためのJupyter[実践]入門

PythonユーザのためのJupyter[実践]入門

それは、JupyterでDocstringを見る話。

? でDocstringが見れる。めっちゃ便利でした。

こんな感じです。

f:id:mtb_beta:20180303224724p:plain

今まで使えてなかったーーーーーー!!!!!!

これでもっと捗りそうです。