理系学生日記

おまえはいつまで学生気分なのか

「AWS IAM のマニアックな話」を呼んだ

AWS 初心者なんですが、今後 AWS とガチで向き合う必要が出てきました。 AWS といえば、まず押さえるべきは IAM でしょうということで、「AWS IAM のマニアックな話」を読みました。 全体的な感想 IAM の運用 踏み台アカウントという概念 今後 全体的な感想 …

curl で telnet を代替する

TCP レベルの疎通確認のときにはよく telnet を使っていたのですが、最近いろいろな OS で telnet が入っていません。 こういうときに、実は curl で telnet を代替できます。 telnet をプロトコルとして指定するだけです。 以下の例では、google に 80 番ポ…

jq を使って CSV を出力する

jq

Qiita は API を提供しており、そこで抽出できるデータを Excel 化したかった。 これは jq の @csv を使うと容易に実現できます。 たとえば、ぼくの 9 月から今までの投稿のうち、興味がある部分を JSON Array として引き抜いたとします。 $ curl -sH "Autho…

なぜ仮想プレスリリースを書くのか、何を書くのか

新しいことを始めようとしていて、仮想プレスリリースを書くことを求められています。なにぶん初めての経験ではあるので、なぜ仮想プレスリリースが必要なのか、今後の自分のためにきちんと明文化しておきます。 仮想プレスリリースを書く目的 仮想プレスリ…

vscode 上での Ricty のバッククォート文字の表示がおかしい

vscode 上で Ricty のバッククォート(backtick)文字がおかしい vscode で Ritcy フォントを指定してバッククォートを入力すると、以下のように後ろの文字が重なってしまうという問題があります。 例えば、以下の文字列を入力します。 `hoge` `fuga` vscode …

DevOps はじめました

業務で DevOps を本格的にしかけていくことになりました。 こういったことに手を付けるには、どれだけ自分の中にその概念を腹落ちさせるのかが重要だと思っています。 DevOps とは何か 各種資料・文献での定義 DevOps とは何でないのか DevOps は何で評価さ…

はてな Blog 用リポジトリを Public 化しました

本 Blog は GitHub 上で管理していたのですが、Public Repository に変更しました。 Private Repository で運用していた理由は API キーが設定ファイルに記されていたためです。Blog エントリを GitHub Actions にてはてな Blog へ投稿するときに使用してい…

textlint で特定の箇所をチェック対象外にする

問題 特定の箇所を textlint のチェック対象外にしたい 問題 この Blog エントリは textlint でチェックしたあとで投稿するようにしています。 しかし、ここで問題となったのが、以下のようなクエリパラメータ付きのはてな記法でした。 [https://speakerdeck…

研修を受講して認定スクラムマスタになりました

随分前になってしまいますが認定スクラムマスター研修を受け、その後の Web テストを経て、無事に認定スクラムマスターになりました。 なぜ認定スクラムマスターを取得しようと思ったか 認定スクラムマスター研修 品質の低いベロシティは存在しない 実績がな…

「自己組織的な開発チームを如何にして作り上げるか」というテーマで発表してきた

Developers Summit 2020にて、 自己組織的な開発チームを如何にして作り上げるかというタイトルで発表させていただきました。 これくらいの人数の前で話をするのって随分久しぶりでしたが、ほとんど緊張することもなく、とても楽しく良い経験になりました。…

おいしい珈琲を淹れる旅

妻とともにコーヒーがとにかく好きなのでコーヒーの味には気を使っているのですが、コーヒーメーカーでドリップしてもイマイチな味で何とかしたいと思っていました。 具体的な不満点は、ドリップのスピードが早すぎて、どうにも味が薄くなるという点になりま…

Dash を VS Code から使える拡張 Visual Studio Code Dash

VS Code を使用しているんですが、今の今まで知らなかった拡張が Visual Studio Code Dash です。 Dash プログラムを書いている際リファレンスを探すことも多いですが、そういうときに使用するアプリケーションとして Dash があります。 Java や Golang を始…

GitHub Actions・blogsync・textlint で実現するはてなブログ投稿のオートメーション

以前、blogsync と textlint を使ったブロク投稿について書きました。 そこに登場したのが、GitHub Actions です。 そこでぼくは考えました。おや、エントリを GitHub のリポジトリで管理しておきさえすれば、以下のようなエントリの PUSH による自動投稿が…

tar ボールの中から特定のファイルのみを抽出する

tar ボールの中から特定の「ファイルのみ」を抽出したいケースがあります。 たとえば、GitHub Releases で公開された tar ボールから、シングルバイナリのみを抽出して PATH の通った場所に置きたいケースです。 これをシンプルに行う方法についてです。 フ…

Macでのアプリケーションインストールの自動化

先述の通り、新年を迎えたことをきっかけに Mac を初期化しました。 面倒なのは、使っているソフトウェアのインストールなのですが、皆さんと同様 homebrew を使っています。 そういえばと思い立ったのですが、この homebrew で各種 CUI アプリケーションと…

英語キーボードでGoogle日本語入力を楽に使いたい

新年なので、自宅の Mac を完全初期化しました。新年になるとこういうの整理したくなるよね。そうだよね。 そういうわけで、毎年のように Mac を完全初期化しているわけなのですが、そこで毎回問題になるのが IME です。 もともと僕は AquaSKK を使っていた…

「エラスティックリーダーシップ -自己組織化チームの育て方-」を読んだ

「エラスティックリーダーシップ」を読みました。 前書きの言葉を借りれば、この本は、リーダーシップを取る立場を引き受けようと考えている人、あるいは、実際にリーダーシップを取る立場にいる人を対象にしていて、 自分の仕事に行き詰まってしまっている…

json schema を jq で再帰的に処理し、省略されている `"type": "object"` を付与する

jq

Qiita の json schema に"type": "object" がない "type": "object" の付与 jq での再帰的な処理戦略 参考文献 Qiita の json schema に"type": "object" がない Qiita の API レスポンスは json schema で表現されています。 https://qiita.com/api/v2/sche…

PRへの修正内容をReviewer側で提示できるsuggested changes

Github で上で PR をレビューしている方も多いと思います。 その中で、よくあるのが typo への指摘です。 Typo を指摘する際、 `type` は `typo` の誤りではないでしょうか? というような形で指摘することになると思うのですが、これをやっていると reviewer…

「進化的アーキテクチャ」を読んだ

今年もあまり本が読めなかったけど、それでも今年に読んだ本の中でピカイチのものでした。 進化的アーキテクチャ ―絶え間ない変化を支える作者: Neal Ford,Rebecca Parsons,Patrick Kua,島田浩二出版社/メーカー: オライリージャパン発売日: 2018/08/18メデ…

merpay Backend Engineer Meetup #6~技術的負債について~

現在のプロジェクトでも様々な技術的負債が出てきていて、出るだけならまだしもなかなか返済を計画化できず、どうしたものかと思っています。 そんなとき、 merpay Backend Engineer Meetup #6~技術的負債について~ - connpass が開催されるというのを目にし…

散骨について

実は親族が海への散骨を希望してます。切羽詰まった状況ではないのですが、一体散骨ってどう進めれば良いのだろう、という点がわからなかったので、一応調べてみた次第です。 法制度 散骨自体は法律的でどうのこうの定義されているわけではありません。1991…

携帯・スマフォに送信される緊急速報通知の仕組み

台風19号、そして一昨日の関東圏での大雨等で、最近はスマフォに緊急速報が届くことが多くなりました。 PUSH 通知とは異なる仕組みで届いていることは明らかなのですが、イマイチきちんと理解していなかったので、今日はそのあたりを調べてみます。 緊急速報…

Gitでの各種操作の取り消し・修正方法

VCS を使ったときのメリットは多々ありますが、そのうちの一つは、いつでも修正内容をもとに戻せることだと思います。 ローカルで修正した内容をもとに戻したい git checkout git restore 直前の commit の内容を変更したい commit を取り消したい git reset…

LinuC 303 Security

昨日 Linuc 303 (Security) を受験してきました。いわゆる資格試験はかなり久しぶり、特に Linux 系の試験となると 5 年ぶりになります。そう、なぜ 5 年ぶりに Linux 系試験を受けたのかというと、ぼくの LPIC Level 3 の有意性期限が迫っているためでした…

「Kubernetes 完全ガイド」を読んだ

k8s を本格的に使うことになり、プロジェクト内でも、Helm Docs | Helm だの Spinnaker だの Kustomize - Kubernetes native configuration management だの Skaffoldという言葉がどんどん slack 上に登場してきています。 しかしですね、ぼくは時代を読み間…

EC2 Instance Connect とは何なのか

通常のプロジェクトにおいては踏み台サーバを用意するのが一般的だと思います。 この踏み台サーバにおいて面倒なのは鍵の扱いです。多くの場合、公開鍵認証を用いると思いますが、ユーザを追加する都度、当該ユーザの公開鍵を踏み台サーバに登録するのは面倒…

はじめての ISUCON 体験記

先週の日曜日、ISUCON の予選に@kkasai さんと @hondaYoshitaka さんと参加しました。 記憶が確かなうちに書いておきたかったのですが、なかなかそういうわけにもいかなかったので、記憶とログを頼りに記載します。 当日 サーバ構築とログイン システム構成…

非JSONの文字列が含まれるファイルに対してjqを使いたい

jq は CLI で使用できる JSON processor でみなさんも日々お使いのことと存じます。 stedolan.github.io 問題 解法 解説 問題 jq は標準入力に対して様々なフィルタや加工を行えるわけですが、基本的にはその入力フォーマットが JSON になっていることがベー…

logrusでナノ秒まで時刻を出力したい

golang の構造化ロガーのうち有名なものの一つに logrus があります。構造化ログとして JSON フォーマットを指定するとするとだいたいこんな感じになります {"level":"info","msg":"hello world","time":"2019-09-01T06:56:59+09:00","user":"kiririmode"} …