IT機器について、「相性が悪い」という言葉は使うべきではない

お久しぶりです、ゆうきです。今はIT関連の特にインフラと呼ばれるネットワークやサーバなどの設計・構築で仕事をしています。

題名の「『相性が悪い』という言葉が使うべきではない」ですが、これは僕が一番最初に入った会社で教わったことです。

IT機器(PC, サーバ, ネットワーク機器含む)は当然、他のIT機器と接続します。その時に通信がうまくいかないからといって、「相性が悪い」の一言で片付けるのはいかがなものかという疑問提起です。
確かに、IT機器によってA社とB社の機器を接続すると、思っていたよりうまくいかないケースがあります。でもそれって相性の問題じゃなくて、機器同士の通信方式だったりで、つまるところ技術的に解説が出来ることなんですね。
それを、相性が悪いで済ませてしまうのはプロとして失格です。技術的な差異を把握した上で、「AとBを繋ぐ際は○○を考慮する必要がある」と言えるのがプロだと思っています。

相性が悪い。人間同士ならそういった微妙な感情がありますが、機器同士に感情はありません。技術的な理屈のみです。そこを突き詰めない姿勢を批判したのが、この記事のタイトルになっています。

たとえ不具合が発生しても「相性が悪い」という言葉は使わず、XXとYYが原因のため、接続が出来ませんと言えるエンジニアになりたいものです。

絶対音感は衰える

突然ですが、僕は絶対音感があります。いや、正確にはありました、が、衰えてきました。
絶対音感と言っても全ての音が分かるわけではなく、楽器のような安定した音なら分かるレベルです。救急車のサイレンが音に聞こえるとかは無いです。
およそピアノの常用範囲(88鍵あるうち、中央からの50鍵くらい)なら他の楽器でも音を当てることが出来ます。もちろん、間違えることもあります。

中学生の時に吹奏楽部に入ったのですが、唇が薄くて向いてるであろうという理由でトランペットを吹くことになりました。でも、その時のトランペットってB♭ 管だったんです。楽譜にドって書いてあって、トランペットでドの音を出すとピアノで言うところのB♭ =シ♭の音が出るのです。これが気持ち悪すぎてやばい。
最初のうちは楽譜をわざわざ半音落とした自作の譜面を使ってましたが、パート練習でトランペットを集めた練習になると、音の認識に齟齬が生じるんですよね。
結局それが嫌で、吹奏楽部を退部してしまいました。今思えば、フルートとか楽譜と実音が合った楽器に変えれば良かったなと思ってます。

あと、カラオケは原キー以外で歌うと違和感があるので、自分の声に合わない曲は歌えませんでした。脳内転調出来る人もいるらしいですが、神ですね…。

時は経って30歳を超えた今、そこまでの絶対音感がなくなりました。ピアノの音ですら間違えることもあるくらいです。長らく音楽から遠ざかっていたのもあると思いますが、絶対音感って消失していくものなのかなぁと感じてます。

最新の気温情報をアメダスから取得し、Zabbixに取り込んで、Grafanaで可視化する

概要

  1. 気象庁が発表しているアメダスの情報から最新の気温を抽出する
  2. 抽出した気温データをZabbixで収集する
  3. Zabbixで収集したデータを可視化する(上記画像の緑の数値がアメダスから取得した外気温です)

取得対象

気象庁が発表しているアメダス(表形式)の気温のうち、最新のものを対象とします。
なお、この情報は1時間ごとに自動更新されると公式サイトに記載されていますが、実際はn時ピッタシに更新されるわけではないようで、熊谷市の場合は10分程度のタイムラグがあります。

スクレイピング行為について

今回は上記の通りタイムラグがあるため、1分に1回のアクセスで最新の気温データを取得します。過去にLibrahack事件などもありましたが、この程度のアクセスは問題無いはず。
ちなみに、気象庁がこの「表形式」のデータをWebで公開してから10年以上経ちますが、テーブルの構造が全く変わっていません。あくまで推測ですが、気象庁が暗に自動収集している人や団体を認めているのではないかと思っています。構造を変えるとスクレイピング出来なくなってしまうので。もちろん、現状の表形式で十分だからという理由もあるとは思いますが。推測です、推測。

気象庁が発表しているアメダスの情報から気温のみ抽出する

[arkey22@zabbix4]$ cat outside_temp.sh
#!/bin/bash

temperature_c=`curl -s 'https://www.jma.go.jp/jp/amedas_h/today-43056.html?areaCode=000&groupCode=29' | grep 'block middle' | tail -n +2 | tr -d '\t' | grep -oP "^<td class=\"block middle\">\-?[0-9]?[0-9]\.[0-9]" | grep -oP "\-?[0-9]?[0-9]\.[0-9]" | tail -n 1`

/usr/bin/echo ${temperature_c} > /tmp/outside_temp
[arkey22@zabbix4]$
[arkey22@zabbix4]$ cat /tmp/outside_temp
7.4
[arkey22@zabbix4]$
[arkey22@zabbix4]$ crontab -l | grep outside_temp.sh
*/1 * * * * /usr/local/src/outside_temp.sh > /dev/null 2>&1
[arkey22@zabbix4]$

さて、対象と頻度を決めたところで、データを取得していきます。いつものごとくbashです。肝心の気温が掲載されている表のHTMLを見ると、読みにくいです。パイプをつなぎまくって最新の気温を取得してみましたが、可読性がクソを極めています。ここに時間をあまりかけたくなかったので今回はこれで良しとしますが、もっとうまく書けないもんかと、ちょっと落ち込みました。
取得間隔はcronで設定し、1分ごとにスクリプトを実行して取得します。
さて、上記スクリプトですが、気温の出力先として/tmp/outside_tempに上書きしています。/tmp/outside_tempに吐き出された値をzabbixの vfs.file.contents を使って数値を収集します。

抽出した気温データをZabbixで取得する

スクリプトを作成したサーバ(Zabbix的にはホスト)で新しくアイテムを作成します。キーがポイントで、以下の値を設定しています。
vfs.file.contents[/tmp/outside_temp]
zabbix-agentが動いている必要があるので、要注意です。
データ型は、小数点以下も取得しているので「数値(浮動小数)」に設定します。
監視感覚はcronと合わせて1分にしています。
アプリケーションでilo4を選んでるのは特に意図ありません…新しくtemperatureとでも名付けてアプリケーションを作っても問題ありません。

値が正常に取得出来ると、このような感じに1時間ごとの気温がZabbixで収集されます。

Zabbixで取得したデータを可視化する

いつものごとくGrafanaを使います。

Grafanaの導入方法とかGrafana-Zabbix間の連携方法は省略します。
今回は最新の値のみを表示したかったのでこんな感じで設定しています。

あとは適当にダッシュボードに配置して、完了です。
余談ですが、横の2つは室温とサーバ周辺の気温を表示させてます。室温はRaspberry piのTemperを使って取得しています。その話はまた今度。

お疲れさまでした。

航空無線通信士の試験を受けてきました(令和2年2月)

航空無線通信士の受験記ってあまりネット上に転がってないんですね。先駆者ではありませんが、今後受験される方のご参考になればと思い、記事として残しておこうと思います。

僕の本業はシステムエンジニア(サーバ・ネットワーク)で航空従事者ではありません。昔から飛行機が好きでFlight Simulatorをやり込んでいたのでILSやDMEなどの知識はありました。(FSXやPrepar3DはPMDG使ってBoeing飛ばしてます。737-800が好きです)
英語についてもTOEICで700点程度を取得しており、またエアバンドを聞いていた時期もあり、ATCについての基礎的な知識もあります(DEP, TWR, GND, APPの違いとか、ですね)
アマチュア無線4級、3級を取得しており、無線について完全な無学状態ではありません。
以上のことから踏まえ、僕にとっては比較的ハードルの低い試験かなと思ったのと、普段は仕事でデジタル無線(無線LAN, Wi-Fi)を扱っているので、そちらの勉強の息抜きにアナログ無線の試験でも受けてみようかなと思って受験した次第です。

埼玉県在住ですが、受験地は東京(晴海にある無線協会本部)でした。
なお、年齢は32歳です。
以上を踏まえた上でお読み頂ければと思います。

無線工学・法規

過去問からの出題がほとんどでした。無線工学に至っても過去問からの出題が多く見られました。
無線工学は計算問題を全て捨てても過去問からの暗記だけで合格基準点は超えられると思います。アンテナの種類とか指向性とか、電波の特性とか、覚えるだけの内容も盛りだくさんですので。
法規は言うまでもなく国が定めた法律に関することの暗記なので、過去問さえやってればクリアできます。だいたい3年分くらいをやれば合格範囲に届くかなと思います。遭難通信と緊急通信についてはほぼ確実に出題されてるようで、今回も出題されました。

法規は一夜漬けである程度なんとかなったのですが、無線工学に手が回らず、、、ちょっと厳しいかな…。

英語

まずリスニングがありました。全部で7問あり、全て4択です。各問題についてネイティブの方が3回、問題を繰り返し発音します。1回目はゆっくり丁寧に、2回目は少し早く、3回目はネイティブ会話と同等の速度で発話されてました。
問題と問題の間に1分間の時間が与えられるので、その間に次の問題の選択肢を読んでおくと、次の問題が解きやすくなるかと思います。

リスニングでちょっと気になった点が一つあります。確かにネイティブの発音なのですが、アメリカ英語でもなくイギリス英語でもなかったことです。シンガポール訛りでもインド訛りでもありませんでした。オーストラリアかニュージーランド辺りかなと思うのですが、僕の場合はアメリカ英語に慣れていたので少し聞き取りにくい印象でした。

次に筆記ですが、過去問を見て頂ければ分かると思うのですがA4用紙いっぱいの長文の後に設問があるスタイルです。英検準2級レベルの内容らしいですが、準2級より少し難しい内容かなと思いました。法律に関わる難しい文法・単語もありますし、カンマを多用し一文辺りの単語が多いので、文法がある程度出来ていないと難しい印象です。
設問に関して、またTOEIC比較となってしまい申し訳ございませんが、特段ひねくれた問題は無かったです。明らかに間違っている選択肢は間違っている内容でした。

実技(フォネティックコードの受話・送話)

アマチュア無線4級を中学の時に取得して、その際にフォネティックコードは暗記していたので、全然問題ないと思って無勉強で臨んだのですが、受話が思ってたより早くて死にました。
受話に関しては、CDの音声が流れてから終了まで訂正してる時間的余裕は一切なく、一度頭が真っ白になると終わります。常に書いてる状態で、2分間の集中力が必要です。
試験が終わってから知ったのですが、誤字は3点減点なのに対して脱字は1点減点なので、受話で分からなくなってしまったら、あえて書かずに呼吸を整えたほうが懸命かなと思いました。
なお受話の際のフォネティックコードは完全な日本語発音でした。

次に送話ですが、これはさすがに問題ありませんでした。練習方法としては、日常生活の中で目に入った英語を全てフォネティックコードで暗証する方法です。電車に乗って見かけた英語、商品名などなど、とにかくアルファベットを見つけたらフォネティックコードに変換していました。
送話もそこそこの速度が求められるので、英単語を見てスラスラ言えるレベルまでのレベルまで到達してないと合格基準に達するのは難しいかなと思いました。

その他

  • 受験者の9割は若い男性で、0.5割が若い女性、残り0.5割が僕のような趣味受験って感じでした。
  • 東京会場では100人かそれ以上の受験者がいたように思います。
  • 無線工学と法規は途中退室する方がほとんどでした。英語は途中退室者が少ないように感じました。
  • 実技は受験番号順に実施されました。実技が終わったらそのまま帰宅なので、受験番号が始めの方の方と最後の方の方で1時間くらいは時間差があったんじゃないかと推察します。今回僕は始めの方だったので、あくまで推察です。
  • 英語と実技は無勉強で臨みました。またまたTOEIC換算で申し訳ございませんが、TOEICで600点を超えてたら過去問をさらっと読むだけで大丈夫だと思います。航空関連の専門単語は和訳があったりしますし、前後の文から類推出来るところも多々ありました。
  • 実技は、練習していないと難しいです。フォネティックコードは受話も送話もマスターレベルまでやり込みましょう(自戒)
  • 全てを総合した勉強時間は15時間くらいです。さすがに勉強不足ですね。
  • まだ発表されていませんが、たぶん法規と英語はpassしているので、無線工学と実技を受験し直すことになります。次の試験は夏なので、今はとりあえず忘れてデジタル無線の方の勉強に戻りますw

追記(2020/03/04)

実技以外の解答が正式に公開されたので自己採点しました。

  • 無線工学 33/70(fail)
  • 法規 79/100 (pass)
  • 英会話 20/35 (pass)
  • 英語筆記 62+20=82 (pass)
  • 実技(フォネティックコード受話・送話)…おそらくfail

予想通り、無線工学が壊滅的でした。実技もおそらく落ちていると思われます。航空無線通信士は科目別の合格が認められているので、次回は無線工学と実技だけ受け直すことになると思います。次の試験は8月なので、しばらく忘れます。。。