ゆるふわ技術日誌

エンジニア見習いの悪戦苦闘日記

Mac壊れたり本を読んだり #235

バイト先はまだ年末年始休業中なので、久々に何もない連休を過ごしています。

Macが壊れた

壊れたと言っても、今のところ特に実害は出ていないのですが、本体を揺すると明らかにおかしいカタカタとした異音を立てるようになってしまいました。なんかのパーツが外れてるような、そんな音。

僕はこれがメインマシンなので、急に壊れたりすると結構深刻なのでとりあえず修理するかどうかは別としてGenius Barに持って行って見てもらうことにしました。

明日の昼頃の予約が取れたので行ってきます。

しかし何が外れてるのかなぁと思って、iFixitのMacBookのページを見ていたのですが、中身ほとんどロジックボードとバッテリーだけなので、そんな外れたりしそうなパーツが見えないですね。

jp.ifixit.com

すでに保証は切れているので、あまりにも高額だったら諦めることにします。続報を待たれよ…。

WEB+DB Pressを読んだ

今月号を研究室で見かけて、きになる特集が複数個あったので買ってきました。

WEB+DB PRESS Vol.102

WEB+DB PRESS Vol.102

もともとReact Nativeのところが一番興味があったのですが、特集2の「サービス改善ノウハウ大公開」がすごく面白かった。

ちょっと前に話題になった日経電子版の高速化の手法とか、Yahoo!の地図アプリのUX改善的な話とか。

あまり普段は技術系の雑誌買わないのですが(高いから…)、最新の手法とか流行りとかを知るのにはもってこいだなと感じました。

肝心のReact Nativeのところはまだ読み途中なので、これから…。

雑談

連休だと思って遊び呆けてるといろいろとマズイので、ちゃんとやることやろうと思います。

特に今期は期末テストがやばそうなのでそろそろ勉強始めていこうと思います。今回で単位を取り切れば、(ほぼ)学生生活最後のテストになるのかなぁー。落とすとシャレにならないのでちゃんとやろうと思います。

デザインパターンの勉強がしたい話/ネットワークがやっぱりご機嫌ななめな話 #234

デザインパターンの勉強がしたい話

今日から大学でした。

以前からやっている学内のシステムのAPI作りの続きを講義後に作業してたのですが、年末年始挟んで2週間ぶりくらいに見ると自分の書いたコードのはずなのに何が何だかわからなくてびっくりした。

一応、僕が作り上げて、卒業後誰かがメンテナンスすることになってもいいように可読性高く書くよう意識しながらかなーり丁寧に書いたり、メソッドはなるべく小さく保ったり、命名には気を配ったりはしてたのですが…。

なんでこうなったか自分なりに考えた結果、定石を知らないのが原因なんじゃないかなと。

たとえばデータベースからユーザーに関する値を取ってきてそれをモデルに変換?するクラスにUserDAOって名前をつけて、DAOのインスタンスを返すファクトリーを作ったり一応してたんですが、どれもどっかで若干聞きかじっただけの知識で、なんでDAOが必要なの?とか似たような言葉にDTOとかあるけどそれは違うの?とか言われると黙りこんじゃう感じ。

「データベースからユーザーに関する値取ってきてUserクラスのインスタンスを作って返す」なんて、どんなアプリケーションにも大抵存在する動きだし、こういうのに対する定石を知らなすぎるのがちょっとよろしくないなーと思ってます。この課題感でいいのか知らんけど……。

何を読んだり、書いたりすればこれは身につくんでしょうか………?

ネットワークがやっぱりご機嫌ななめな話

昨日、わざわざ大学まで訪れて、結局ルーターの再起動で直った拠点間VPNですが、今日大学から帰ろうとしたらまた切れているのを発見してしまいました…。

気がつかなかったら、放置して帰ってたんだろうけども気がついてしまったのでわざわざサーバールームまで行って再起動かけてから帰りました。

この頻度で切れられるとちょっと流石に困るなぁという感じが否めない。

原因さえ分かれば対処するし、なんならルーターを新しいのにしたりとかも可能ではあるんだけれども「なんとなく切れて電源を入れなおすと急に直ったりする」じゃ流石に手の出しようがなくて困っちまうなぁ。

雑談

眠いけど1日よく頑張りました。

明日から3日間稼働フリーなので進捗バリバリバリ太郎になりたいと思います。

大学初めをしてきた。学校のネットワークと戦った。 #233

大学初めをしてきました。

なにをやってたか列挙

今日やったこと

学校のサーバールームにあるはずのmavenリポジトリに接続できなくなってしまって困っていたので直すためにいろいろやっていた。

  • 構成が複雑なんだが、要は研究室のサーバールーム(≠学校のサーバールーム)から学校のサーバールームにあるmavenリポジトリに接続できればOK
  • とりあえず研究室のサーバールームに行って学校のサーバールームとの拠点間VPNが切れてないか確認した。
    • ルーターはRTX1200とRTX810の組み合わせ。
    • 管理画面にログインしたあと管理者用の画面に入るのか〜という感じ。こういうちょっとハイエンドなやつになると設定が一気に難しくなるけどやりがいがある。まぁ本当にハイエンドなやつはGUIとか付いてないんだろうけど…。
    • どうやら切れてなさそうということがわかった
  • mavenリポジトリがある方のサーバールームに行った。
    • 当然mavenリポジトリは上がっていた
    • 管理者パスワードがわからなかったのでルーターの管理画面は見ることができなかった
    • サーバールームのネットワークに直接参加したら繋がるのでやっぱり拠点間VPN周りが怪しそうということがわかった
  • 再び研究室のサーバールームに戻ってきた。
    • RTX1200とRTX810の組み合わせがいけないのか、起動順によって拠点間VPNが死ぬことがあるっぽい。という噂を先輩から耳にした。
    • ボスに聞いたら学校のサーバールーム側にあるRTX810を再起動するとうまく動くことがある、という話を聞いた。
  • 学校のサーバールームに行った。
    • 電源を入れ直した。
    • しかし直らず

という感じでうだうだと「なんもわからん」とソファーで叫んでいたら、いつの間にか直りました。

電源入れ直してしばらくすると復活するらしいです(謎)

結構時間を食ってしまって今日はこれしかできなかった…。

雑談

しかしなんで研究室がRTX1200使ってるのにサーバールームがRTX810なんだwとか思ったり。

RTX1200か1210買ってくれ〜〜〜〜

ちょっとネットワークいじったりするのは楽しかった。

Macを大掃除しました #232

クリーンインストールしました。

クリーンインストール&HighSierraへのアップデート、ずっとやりたかったんですけど、ついにやりました。

とりあえず以下の手順でバックアップ。(本当はTime Machineバックアップ取っておけば楽なんだろうけど、そんなに大きい容量のハードディスクが手元になかったので諦めた)

  • .ssh以下のバックアップ
  • keychainsのバックアップ
    • 結局iCloudキーチェーン使ってるから不要だった
  • dotfiles(vimや.bash_profile等)のバックアップ
  • ダウンロードフォルダ以下等のクラウドの配下にない部分に必要なファイルが無いか確認
    • なかった
  • itermの設定のバックアップ
  • インストールされているアプリケーションの一覧を出力しておく
    • brew list
    • ls -l /Applications
  • iTunesの認証解除
  • Sketchの認証解除
  • ピクチャのバックアップ
    • と思ったけどなんも入ってなかった。

これ終わったら、HighSierraへアップデート。

ファイルシステムの変更があるからか結構時間かかった。

それがおわったら、バックアップの最終確認して、クリーンインストール

これは、OSのイメージを落としてくるのでめっちゃ時間かかった。(当方ADSL)

終わったらバックアップを元に戻したりソフトウェアを入れたり。

今回のこだわりとしては、GUIアプリケーションもbrew caskを使って入れました。

スクリプト書いて自動化とかするとなお良さげなんでしょうが、そうでなくても圧倒的に楽です。楽。(これだからMacやめられない)

雑談

スッキリしました。TeXの環境も復活させなければならないんだけど何かと面倒ですよねぇ…。回線遅いし。

学校でやるのが吉かもしれない。

あけおめ #230

今年も毎日ちまちま更新していきます。

今日やったこと。

開発環境立ち上げに一苦労

年末の停電でサーバーを止めて以来動かなくなってしまった大学のテスト環境をなんとか立ち上げようと格闘してました。

午前中はなぜか木更津アウトレットにいたのですが、案の定私のほしいものなどなかったので外のベンチに座ってiPhoneSSHしていました。

我ながら新年から意味の分からない行動だったと思います。ちなみに、ポートフォワードとかできないとなかなか動作確認が厳しかったので断念。

帰宅後、先輩の助けを得ながらなんとかうごかしました。

結局いろんなミドルウェアを再起動したりしたら直ったのでどれが原因だったのかわからないという…。

またサーバー止めたら詰むやつだなぁと思いながらも今は進捗第一で…。

エリック・エヴァンスのドメイン駆動開発を読んでいます

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

これです。

インターンのときにDDDの思想に触れたのをキッカケに買った本で、途中まで読んで放置してたのですが、サーバーサイドのプログラムを書くようになって、いろいろと悩むところが多かったので参考にしようと最初から読み直しています。

DDDはちゃんと思想を理解しながら進めると絶大なリターンを得られると思っているのでちょっとお硬い文章ですが頑張って読破していきたいなと思います。

雑談

2018年は時間を有効活用して、浅く広い知識を付けるのではなく、一つ一つを深く学んでいける一年にしていければいいなと思っています。

自分に甘えてしまう癖をなんとかするところから始めたい。あとね、病まない…!

開発環境が立ち上がらず格闘 #229

格闘なう

2017年も終わってしまいますなぁ。

朝8時頃にライブの余韻に浸りつつ、帰宅。風呂に入ってそのまま午後まで寝てしまいました。

今紅白を見ながら大学のポータルサイトの開発環境が500を返すのをなんとかしようとターミナルを叩いています。

進捗を出してから2017年を終えたかったよぉ…。

雑談

長かったような短かったような一年でした。

来年は散財しない。技術力爆上げな一年を過ごしていきたいです。