長く寝たり、二度寝ができなくなってきた

我が家には猫がいます。朝になると活動開始し始めて、まだ寝ている人間に対して鳴き始めて何らかのアピールをしてきてくれます。かわいい猫ですね。このタイミングとしては8時間睡眠にはちょっと足りないくらいで且つ、Garminのスマートウォッチによるとボディバッテリーは80以上まで回復してるのでまあいいかとなります。

しかし、二度寝しようとするともう頭が覚醒し始めているので、なかなか二度寝成功しないというのが最近のプチ困りでした。

 

話が変わりますが、仕事の都合で車で新大阪駅まで行くことがありました。車で街中に行くというのは自分の両親がとても嫌がっていた(一方通行とかややこしいのが理由)ので、自分も苦手意識がありますが、無事に帰還できて安心しました。

長柄橋のあたりはちょうど伊丹空港の32L/32R滑走路へ着陸態勢にいる飛行機を見られるようで、久しぶりにちょっとしたワクワクを感じました。新大阪駅前の駐車場では、飛行機と新幹線両方が見えました。素晴らしいロケーションでした。

 

この写真は飛行機しか写ってないけど。
f:id:hokkai7go:20210410074458j:image

保険

医療保険、生命保険を契約する前のコミュニケーションが面倒くさい。まず商品についての知識が必要だし、必要な保障は何かを把握する必要もある。その上今後の生活にもある程度予想を立てて決める必要がある。

その上で保険会社や代理店の人と話すわけだけど、彼らにも思惑があるので欲しい内容がすぐに出てくるわけではない。

先のことなどわからないという気持ちで生きているので本当に困る。医療保険はもう入っているのでいいんだけど。

 

話は変わるけど、ワクチン接種がここまで遅い現状を受け入れるのに時間がかかっている。医療関係者や高齢者優先なのわかるけど、納得は全然できていない。ワクチン接種にRate Limitや、慣らし運転いらないと思うんでもっとスケールしてほしい。

1on1

これまで自分にとって1on1というのは開催してもらって参加するものでした。

立場が変わり1on1を設定するようになりました。前職のはてなのときにやってもらっていたことを参考にというかほぼそのまま利用させてもらっています。先人の知見はありがたいですね。

https://blog.shibayu36.org/entry/2018/12/17/193000

https://sakumaga.sakura.ad.jp/entry/2021/02/18/120000

 

MTGしてたら時間が過ぎていき、それだけで仕事した気持ちになると言う人の気持ちもわかってきました。そうか、自分も進捗出さなあかんのやったとなるやつ。頑張って行こうと思います。

Exchange OnlineのSMTPサーバ(587ポートTLS)にメールを送るテスト

RailsのAction MailerからExchange Onlineにメールを送ろうとしてなかなか送れない事象に悩まされました。結局の所今回大事だったことは

  • 認証情報が合っているかログインして確認してみる
  • 認証に使ったメールアドレスとメール送信時のMAIL FROMを一致させる必要がある
  • smtp_settingsの:authenticationは :login ではなく login(環境変数で設定する場合はloginでよいということなのかもしれない)
  • SMTP AUTHを個別のメールアドレスごとに有効にする必要がある

ということでした。未来の自分を助けそうなのでメモしておきます。

確認方法

smtp.office365.com:587に対して、Kubernetes上のRailsコンテナからメールを送ろうとしましたがエラーが連発していました。調査のためにSMTPを喋ってメール送信テストをしてみることとしました。 smtp.office365.com:587に接続するためにはSTARTTLSを使うのでOpenSSLが必要です。古いNginxのDocker ImageにはOpenSSLが同梱されているのでそれを使うことにしました。Kubernetesで立ち上げるならこんなマニフェストを食わせてあげれば良いですね。

kubectl apply -f openssl.yaml

apiVersion: v1
kind: Pod
metadata:
  name: openssl
  namespace: default
spec:
  containers:
  - name: openssl
    image: nginx:1.11.13
    command:
      - sleep
      - "3600"
    imagePullPolicy: IfNotPresent
  restartPolicy: Always

Podが立ち上がったらログインしてopensslコマンドでメールを送ります。自分が入力しているところは、SMTPサーバからのレスポンスと区別をしやすいように ">" と書いています。 いろいろ試してわかりましたが、SMTPサーバに接続ができたらEHLOでドメインを教えてあげて、AUTH LOGINでユーザー名とパスワードをそれぞれbase64エンコードしてあげたものを送れば認証が通りました。その後は普通のSMTPと同じでした。

kubectl exec -it openssl -- sh

> openssl s_client -connect smtp.office365.com:587 -starttls smtp -ign_eof -crlf
250 SMTPUTF8
> EHLO example.com
250-TY1XXXXXX.outlook.office365.com Hello [xxx.xxx.xxx.xxx]
250-SIZE 157286400
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-AUTH LOGIN XOAUTH2
250-8BITMIME
250-BINARYMIME
250-CHUNKING
250 SMTPUTF8
> AUTH LOGIN
334 VXNlcm5hbWU6 (base64デコードするとわかるが Username: と言っている)
> (printf 'hoge@example.com' | openssl enc -aの値)
334 UGFzc3dvcmQ6 (base64デコードするとわかるが Password: と言っている)
> xxxxxxxxxxxxxxx (printf '<password>' | openssl enc -aの値)
235 2.7.0 Authentication successful
> MAIL FROM: hoge@example.com
250 2.1.0 Sender OK
> RCPT TO: recipient@example.com
250 2.1.5 Recipient OK
> DATA
354 Start mail input; end with <CRLF>.<CRLF>
> from: hoge@example.com
> to: recipient@example.com
> Subject: test
> testmail
> .
250 2.0.0 OK

exchange online smtp starttls とかで調べたものの、意外とすぐに使える情報は出てこなかったのでブログに書きました。Gmailに送る例が多かったので、そのまま参考にならない情報も多かったというのもあります。 SMTP AUTHを個別のメールアドレスごとに有効にするために、Powershellを使う必要があるのが興味深かったです。しかもExchange Online PowerShell というものまであるとは。最近までGoogle Workspaceの世界で生きていたので新鮮に感じました。会社変わっても結局またターミナルからSMTP喋ってメール送信のテストをしていておもしろいですね。。

以下は参考リンクです。

www.workthecode.com docs.microsoft.com docs.microsoft.com docs.microsoft.com

転職エントリ

  • from: 株式会社はてな(2018年9月〜2021年3月)
  • to: 元上司が起業した会社でCTOやることになりました

新しい会社は社長含めて3名の会社でかつ、会社のWebページすら無いので書ける情報があまりありません。隠しているというわけでもないのですが。

在職中にお世話になったみなさまありがとうございました。

責務と業務の図示

責務と業務の関係性を図示しようとしている。

だいたいはマッピングできるのだが、たまにうまくマッピングできないけど現実としてはやっている業務が現れたりしてくる。ポリシーをガチガチにはしたくないからそういうものだというのはわかる。しかし、一つの責務に結びつく業務が多すぎてどう整理したらよいのかわからなくなりつつある。

うまいこと整理して仕事をシンプルにしたり、改善が回りやすいようにしたい