Rustを書いている話とmqtt

 今年こそはRustを身につけるかと思い、the rust programming languageを通読を終えた。

 ここ数年、Goや、typescriptを使うことでチームで開発する際の型のありがたみが身に沁みるように分かってきたので、その理解の延長線上としてRustの言語としてメモリ安全性を考慮した仕組みを取り入れてることに私の理解が追いついて来た感じはする。the rust programming languageの終盤で、TCP streamを扱いHTTPサーバを実装する内容のチュートリアルがあり、「mqttサーバも実装できるのでは?」と思い今年の年始にtokioを使ってるtcpからmqttを解釈するサーバアプリケーションの作成を始めた。mqtt仕様とニラメッコしながら、Rustのコンパイルエラーと格闘しながら、1ヶ月深夜にパソコンに向かう日々を過ごすとpaho libraryからコネクションを受けてパブリッシュとサブスクライブのパケットを受けれるようにまで成長した。

 フル機能を実装しようとするとこれは大変そうだ、というのを感じた。また、すでにmqttブローカーは広く普及したものかあるのでフル機能を実装することを目指すのではなく、これをベースにして尖った内容で遊びたいと思った。

 

作ったもの

 

 

 

 

直島に訪れた

児島から船に乗り直島に渡ってベネッセの美術館まで歩いた。

途中、「パン トコリ」というパン屋が気になり食べたら美味しかった。冷えてこそモッチリ歯切れ良く小麦の冷たい香りがとても良かった。

 

ベネッセの美術館はところどころ思想強めの展示あるが、作者と意思疎通できたと感じた作品もあり、美術品からそのようなことができるということ自体が自分にとって新たな発見だった。ほぼ写真可の展示ばかりだったが、気に入った作品(ジェニファー・バートレット「黄色と黒のボート」)の撮った写真を見ても現地で絵を前にしたときと同じ感情にはならなかったので足を運ぶことに価値があることを理解した。

 

 

2023年の目標、振り返り。

  • 積読を無くす。= 本を読む, レビューを書く

⇒読んで書いたを実行できた。積読は減らないが。iPadじゃないとKindle意味ないと思ってたけどスマホで読むのも良いね。スマホならいつでも持ってるし。

  • 資格を取る、IPAの高度資格 SA and/or ES もしくはクラウドベンダ系のなにか

⇒SA and ESを取得した。

⇒未だけど、OSS活動できたので良し(๑•̀ㅂ•́)و✧

【合格】エンベデッドシステムスペシャリスト試験

午後Ⅱが書けてないとか思ってけども、蓋を開けてみると合格していたので、思っていたよりもハードルは低かったのかもしれない。普段組み込みのことやってなくてもなんとかなった。

syurecat.hatenablog.com

『世界一流エンジニアの思考法』を読んだ

  • 根本を理解して実践可能にしていればChatGPTに聞く必要すらない、ゆえに技術のコンテキストや本質、基本と構造、メンタルモデルの理解に時間を掛けるべき
  • うまくいっていないことは、わかっていないと同義
  • マルチタスクは脳の効率が落ちる、会議を聞きながら何かをするということでも、それはマルチタスク
  • なにか変えたいときは「住むところ」「付き合う人」「時間配分」を変える