2022年7月17日日曜日

JANOG50 Meetingに参加しました

 7/13-15に、函館で開催されたJANOG50 Meetingに参加しました。久々のオフラインイベントです。JANOGに参加するのは今回が初めてで、会社のサービス宣伝と協業先を探すために参加してみました。

日本中のネットワーク関連企業が参加するカンファレンスで、インターネットが壊れたときは大抵この中のどこかが関連していると言っても過言ではないでしょう。

飛行機の都合で前泊&後泊したので、実質7/12-16の一週間近い出張でした。

2022年7月10日日曜日

JavaScriptで配列をループ中に要素を追加したらどうなるのっと

突然ですが、以下のJavaScriptコードを実行したら何が出力されるでしょうか。

const values = [1, 2, 3];
for (const value of values) {
  console.log(value);
}

はい、正解です。1, 2, 3の3つが出力されます。

では次のコードは?

const values = [1, 2, 3];
for (const value of values) {
  console.log(value);

  // 最初のループで配列に要素を追加
  if (value === 1) {
    values.push(4);
  }
}

というわけで、本日はECMAScriptの規格の話です。

2022年7月3日日曜日

GitHubからおこづかいをもらった

 先日、GitHubが「我々の整備士達よ、感謝する」というブログ記事を公開しました。要約すると「みんなに50万ドルあげちゃうよー」ということらしいです。ちょっと要約しすぎちゃったかもしれませんが。

ほー、ずいぶんと気前ええなぁ。ワシんとこにもちょっとでいいから分けてくれんかなぁと思ってGitHubにログインしてみると・・・


!!!!????

2022年6月26日日曜日

6/25にオープンソースカンファレンス2022 北海道に登壇しました

 先週の予告通り、Open Source Conference 2022 Online/Hokkaidoに登壇してきました。

タイトル通り割と砕けた感じで、IoT開発の難しいところとそれを新プロダクトがどのように解決するかを説明したつもりです。

2022年6月19日日曜日

6/25にオープンソースカンファレンス2022 北海道に登壇します

 来る6月25日、Open Source Conference 2022 Online/Hokkaidoが開催されます。

枠をもらってちょっとお話させてもらいます。

リンク先の通り、IoT開発についてのお話なんですが、まあだいたい会社の新プロダクトの紹介です。

あまり専門的になりすぎないようにIoT開発を完全に理解した人あたりがメインターゲットですが、「開発したことないけど概要くらいは知ってる」という人でも大丈夫です。たださすがに「IoTって何?」という人は聞いても理解できないと思います。

IoT開発に興味ある人はぜひ聞きに来てください。

「パワポってデザインどうしても汚くなるんだよなー」と思いながら発表スライドを作成して、とりあえず下書きレベルで作ったものを部署内のパワポマスターに渡したら、めっちゃキレイなスライドになって返ってきました。

単にこっちのデザインセンスないだけでした。パワポごめんね。君は悪くない。

2022年6月12日日曜日

通信プロトコルのトリビア

 セキュリティ・キャンプ2022全国大会の選考が先日締め切られました。若いエンジニアのみなさんは未来のIT業界を背負うべく、こういう場所でしっかり学んでいってください。

ワシはもう若くないからええんじゃ。

さて、応募課題の中でちょっとおもしろい問題があったので考察してみましょう。

2022年6月5日日曜日

冗長化されたルーター経由のpingが通らないことがある

 最近ハマったので記録を残しておきます。まあ例によって原因は単純なミスなんですが、例によって仰々しく書いてみます。。

図のようなネットワーク構成を想定してください。

  • 2つのネットワークがある
  • それぞれのネットワーク内にはサーバーがある
  • 2つのネットワークはルーターでつながっている
    • ルーターはVyOSを使っている
    • ルーターは2台あり、冗長化されている(片方が落ちても問題ない)

この状態でA→Bにpingを飛ばすとちゃんと返事が返ってくるのに、逆方向(B→A)は返ってこないという摩訶不思議な現象が発生していました。

補足として、firewalldやufw等のファイヤーウォールは特に入れておらず、ルーティングテーブルも適切に設定されています。

なお、これはクイズではないので、唯一の正解にたどり着く情報が与えられているわけではありません。ただし、よく読めば「ここが怪しいんじゃない?」とわかるヒントは入れてあります。