世の中にはいろんな沼がある。
それぞれ特徴があるように思えるのでメモっておく。

  • レンズ沼
    沼の中では王道だと思う。
    カメラを買ったら望遠レンズをいくつも買いたくなる人が一定数いるみたいで、ニョキニョキ生えている画像が定期的にSNS等にアップされている様子をよく見る。
    沼にハマったことがきっかけでイベントごとに撮影班に派生するパターンもあり。(私の父がそうだった)

  • サウンド
    購入するものが多岐に渡るイメージ。
    イヤホン、ヘッドホン、自室のTVシステムなどお金をかけるところはいっぱいある模様。(私の父がそうだった)
    タモリ倶楽部でやっていたけど、電柱立てる人もいるとか。

  • アウトドア沼
    大別して、登山派、キャンプ派に別れるイメージ。
    どちらも金がかかる。(私の父は登山沼にハマってた。)
    最近は、ゆるキャン△の効果がキャンプ沼が流行っているように感じる。

  • コーヒー沼
    好みのコーヒーを見つけるとスーッと引いて行くが、好みのコーヒーを見つけるまでは試行錯誤でお金がかかるイメージ。
    ドリッパー、ケトル、水、豆、交通費が主な費用だが厄介なのは交通費。
    ハマった人で海外まで豆買うために飛んでる人を見たことがある。沼怖い。

    父はハマらなかった。いや、親父、コーヒーの木を自宅で育ててたな。
    ハマっているじゃないか。

  • 自転車沼
    東京付近で多発しているのをよく見かける。
    1日で200kmぐらい移動することが平気な種族。
    最近は Zwift とかシミュレータがあって楽しいそう。

    お金をかけるのは自転車本体の以外にローラー台、ウェア、サイコン等だが、圧倒的に本体が高い。車買えるぐらい高いものを知っている。

    実家が山の中腹にあるため、父はハマらなかった。

  • F1沼
    30代より年上の人たちが多いイメージ。
    車好きという種別の中でも特別なカテゴリーなのかもしれない。
    レースの内容やレーサーの人物像について語るひとが多い。

    放送が深夜だったためか、朝型の生活リズムの父はハマらなかった。

  • キーボード沼
    20代〜40代のITエンジニアの中に多い。
    コーヒーと同じで試行錯誤しているときの浪費が激しいイメージ。
    打鍵感についてひたすら試す感じになるが、最終的に自作キーボード沼という途方も無い沼に浸かる人もいる。

    世代的にあまりキーボードが必要無い歳のため、これも父はハマっていない。

 

エンジニアがプライベートで勉強した結果って何ですか?

 

事を書く動機

axia.co.jp

これを見て気持ち悪いとしか思わなかった。権力を持っている側が個人の価値観を否定をしていると見えたからだ。

個人がプライベートな時間を使って勉強すると言うのは尊い好意であるが、エンジニアだからと言って強制されるべきことではないと思う。

  • 事前に勉強しててよかった!
  • 隣の人が詳しくて助かった!
  • 私も詳しくなろう!役に立ててよかった!

という前向きな記事ならいいな。私も勉強したい!という気になるが、例の記事では、経営者が労働者に対して対価を払っていない時間を使って、勉強することを強要しているように見えるんだ。

 

エンジニアが勉強するということはどう言うことか(個人の感想)

個人で勉強すると言うのは、以下の内容を個人で「投機」することになる。

  • 個人のプライベートな時間
  • 個人が稼いだ金額(開発環境・教材への投資)

これらは本来使い方を誰かに言われる筋合いのないものだと思うし、これらを使って自分の家族(本人を含める)を幸せにするのが、本来の生き方だと思う。 

 

正直、ソフトウェア業界は勉強することが多すぎる気がしていて、人として幸せになることが難しい業界だと感じている。3年もすれば、新しいことが生まれて、古い技術が消えて、その都度、勉強するという技術を使う前のオーバーヘッドが生まれるからだ。


ビジネス的には難しいと思う。1つの技術に対するライフサイクルが短すぎるのだ。

このオーバーヘッドをなくす為に、ソフトウェアのエンジニアは仕事を続けるための生存戦略として、勉強することが前提になりがちなのがここだと思っている。

 

あくまでソフトウェアエンジニアが勉強することは、個の生存戦略として投機的にやることであると私は思っているし、ライフステージに合わせて無理のない生存戦略をとることは重要かと思う。

#ママ、パパ エンジニアの皆さん頑張って。。。

 

ンジニアがプライベートで勉強した結果って何ですか?

楽しい!やって役に立ててよかった!良い環境に転職できた!という成功体験をするためのものであって、会社のためにやっているわけじゃない。

 

みんなで幸せになろうよー。 

 

 

 

睡眠障害を治す

そろそろ睡眠障害が治りそうなので、やったこと、避けた事、助かったことの3つを書く。

やったこと

  • 睡眠導入剤の利用
  • バナナ、豆乳を摂取する
  • 朝、太陽の光を5分は浴びる
  • 午前中、図書館に徒歩または自転車で通い3時間ほどPC作業を行う
  • Pokemon GO に課金して遊び、夕暮れを待って就寝する
  • ふらっと映画館によって新作の映画を見る
  • 高専時代からの友人とモンスターハンターワールドしながらボイスチャット
  • インテリアフレグランスのリラックスを寝室におく
  • 自分の意識とは別に強烈に眠くなったら眠く無くなるまで寝る

避けたこと

  • 職場環境
  • 電車での長距離移動
  • スーツ
  • ツールドフランス、W杯など時差のあるスポーツ中継の観戦
  • ごろ寝しながら iPad を使うこと
  • 夕方以降のコーヒー摂取
  • アルコール

助かったこと

  • 友人、知人との食事や会話があったこと

助かった事以外の中で一番効いたと思われるのが Pokemon Go 。特に昼から夕方にかけてやることで、意識を強制的に起こすことができた。 二番目は図書館に通う事。図書館に行った先で何かやるわけでもないけど、朝、日光浴びて歩くだけで、大分、生活リズムは整うようだった。

まだ自律神経は自分の意識とは関係ない動きをしていることがあるので、完治まではもう少しかかりそう。 これみると普通のサラリーマンの生活していると睡眠を阻害しそうなので、自衛のため転職した方が良さそうだなーと感じる。

テスト駆動開発 第3章、第4章 覚書

3章
  • CHFはスイスフラン
  • Value Object パターンではコンストラクタを固定する制約をつける
  • 制約の確認のためのTodoを追加
  • 追加した制約の確認のため、equals()メソッドを使ったテストを書き、デバッグ失敗→空実装
  • コードを一般化できるのは2つ以上の実例がある場合のみ。今回の例 equals で2つ以上実例をテストケースで実行し抽象化する例。
  • 空実装に対して2つ以上の実例を同時に満たすように抽象化。今回の例は、equals メソッドで受けた変数を Dollar 型にキャストし、コンストラクタの値と比較した結果同じであれば真、違っていれば偽を返すロジックに書き換える。

4章

  • 手続き型になっていたテストを、一つの関数にまとめることでテストの意図を見いだせるようになった。
  • Javaは同一クラスであれば別インスタンスの private フィールドにアクセスできる。
  • テストケースを書き換えたことにより、元あったテストの内容は担保されなくなるので、そのリスクは理解しておくこと。

テスト駆動開発 第1章、第2章 覚書

1章
  • 実装しなければいけない内容はTODOリストに書いておく。
  • assertEqualsは実行結果と期待値を比較するメソッド。
  • 空実装から始める。
  • 小さいテストと失敗を重ね、修正を繰り返す。
  • リファクタリングを行い、繰り返しを取り除く。
2章
  • テストを書く、動かす、正しくするの1サイクルで繰り返す。
  • 設計の問題点をテストコードに書き起こし、仮実装→明白な実装へ徐々に変化させていく。
  • 仮実装ではハードコーディングされた値を使い、実装を進めるにあたり徐々に変数に改修していく。あくまでコンパイルを通すところが入り口。その後、変数にしても動くようにテスト実施する。

 

ネットワークプログラマビリティ勉強会 #14 に行ってみた。

会場

東京都品川区東五反田2丁目10−2(東五反田スクエア13F)

CTCさんの設備でDEJIMAというらしい。すごくきれい。

スタートアップのエンジニアや大手企業のエンジニアの方々向けだそうな。

イベントページ

network-programmability.connpass.com

発表内容に対する雑感

  1. 動的なVNFの性能調節フレームワーク開発とそれを用いたNFV基盤の開発
    パケットのプロによるVNFの性能調節フレームワーク開発の説明とデモ。
    通信量の増減によって使うリソースを調整するフレームワーク作ったとのこと。すごすぎて鼻血でそうだった。
    そして10GのNICが欲しくなった。
  2. SDN 環境の BUMトポロジーを可視化する
    SDN 環境で保守するときに、通信経路を可視化してないと辛い。だから、可視化するんだけど、そのときにプログラムが使えるのでみんな使おうぜ。てな感じ。たしかneXt だった気がする。
  3. ご注文はパケットですか?? ~Dear My Router~
    Scapy でお手軽パケット生成。これは明日から使えるので使ってみたい。
    やり方を考えれば、障害が発生した環境のパケットを箱庭環境で実施するみたいなことが気軽にできそう。
  4. ルータのコマンド実行結果をCSVに変換してみた by TextFSM
    これも明日からやりたい。ルータのコマンドの実行結果をCSVで吐かせることを、いっぱい手でやると大変だから便利なライブラリ使って処理するよ!
  5. Puppet本にはCisco NEXUSを制御する章があるよ
    本買ってね!Puppet 解説してるよ!
  6. Rustでパケットと戯れる
    発表者のキャラが濃すぎて内容覚えてない(すまぬx2

東京は気軽にすごい人たちの話が聞けて良いなぁと思う。