ほとラボ

It works!

Speaker Deck に乗り換えた

いままでイベントなどで発表した資料は SlideShare に上げていたけど、Speaker Deck に乗り換えることにした。

SlideShare の不満

細かい不満はいろいろとあるが、決定的だったのは「アップロードした PDF 内のマルチバイト文字がすべて消える」点。

昔はちゃんとアップロードできていた気がするのに、いつの間にかこのような問題が起きるようになってしまった。

いつか修正してくれるだろうと期待して、一時的にはスライドを画像に変換してアップロードするなどの対応をしていたが、いつまで経っても修正される気配はない。おそらく (SlideShare を運営する) LinkedIn 社はマルチバイト言語圏のユーザには関心がないのだろう。

このまま騙し騙し使うことも出来たけど、じわじわと「良くないと思っているサービスに自分のコンテンツを溜めていくの嫌だなぁ」と思うようになってきた。

Speaker Deck

Speaker Deck は昔から人気なサービスだしもちろん知っていたが、頑張って移行するほど SlideShare より良いサービスでもないかな、と思っていた。

その Speaker Deck が、先月 UI が大きくリニューアルされた。

なんか昔の味気ない感じだったのが、一気に今風な感じになった。

speakerdeck.com

埋め込んだときの UI もだいぶ良い感じ。

UI が変わっただけで「移行するほどではないかなぁ」だったのが、「使ってみたいなコレ」となった。 自分ちょろい。

ただひとつ使いづらい点があって、日本語タイトルだと妙な URL が生成されてしまうという問題。

「ここでもマルチバイト言語圏は不遇なのか〜〜〜」と思ったが、タイトルに / で区切って後ろ側に英語タイトルを入れることによって URL を制御できるということを知り、ひとまずこれでやっていけばいいか、となった。

sotarok.hatenablog.com

移行元のコンテンツをどうするのか問題

Speaker Deck に移行させたものの、SlideShare に上げていたやつを消すかどうか迷った。

ありがたいことにブクマしてくれている人がそれなりにいて、いきなり消すのも不親切かなぁと思うので、当分は消さずに残しておこうかと思う。

いつ気まぐれで古い方を消すかわからないので、できれば新しい方をブクマしておいてもらえるとありがたい。

新しい方: https://speakerdeck.com/hoto17296

食洗機設置チャレンジ

「食洗機欲しい!」ってなってから、色々と考えて、買って、設置するまでにだいたい一ヶ月くらいかかって割と大変だったのでまとめ。

食洗機を買う動機

もうすぐ子供が産まれるのでいろいろな人に話を伺っていたところ、複数の子育て経験者から「食洗機は絶対に買ったほうが良い」と勧められたため。

「子供から目が離せなくて皿洗ってる場合じゃない」とか「哺乳瓶の消毒できる」とか、そういうことらしい。

子育ての労力、金で解決できるものには積極的に金を払っていきたい。

食洗機選び

2018年現在、据え置き型食洗機は Panasonic しか選択肢がない。

Panasonic 以外のメーカーは数年前に撤退してしまったらしい。何故・・・。

Panasonic 製の新しめの製品に絞るともはや「でっかいやつ」「ちっちゃいやつ」くらいしか選択肢がないので、逆に迷うことがなくて良い (?)

サイズが違うと言っても幅と奥行きはどれも大差なくて、主に違うのは高さ。 あと値段。

今回は「高さが有効活用できるなら良いじゃん」くらいの安直な考えで「でっかいやつ」を買った。

置き場所選び

これが一番難しい。

思った以上に制約が多い。

  • 分岐水栓を設置して水がとれる場所
  • 電源がとれる場所
  • それなりの広さで安定して置ける場所

はじめはシンク横に置こうと思っていたが、フタを開けたときに蛇口にぶつかるということに気づいて置き場所を変更せざるを得なかった。 フタを開けた状態で設置可能かどうかを調べないといけない。

分岐水栓の設置

食洗機に水を送るには蛇口に分岐水栓を設置しないといけない。

分岐水栓は家の蛇口の型に合うやつを買う必要があるが、これがまぁ高い。

我が家の蛇口 (JA200LN-NNDK01) に合う分岐水栓 (JH9024) は 16,800 円した。

食洗機が高いのはまぁいいとして、分岐水栓は引っ越したらまたその家に合った分岐水栓を買い直さなきゃいけないのでつらい。

あと、この分岐水栓 (JH9024) を設置するのにモーターレンチが必要だったので一緒に買った。

トップ(TOP) ライトモーターレンチ LMW-280

トップ(TOP) ライトモーターレンチ LMW-280

買ったやつがこちら。

f:id:hoto17296:20180707104339j:plain

設置していく。

f:id:hoto17296:20180707104342j:plain

これを

f:id:hoto17296:20180707104345j:plain

こうして

f:id:hoto17296:20180707104350j:plain

こうして

f:id:hoto17296:20180707104354j:plain

こうじゃ!

説明書のとおりにやれば難しくはなかった。

あとこのブログ記事が参考になった。

JA200LN-NNBH01 適合分岐水栓JH9024の取付方法(賃貸 マンション) - きのさんの日用ぶろぐ

ところどころ力がいるのでちょっと大変だけど、全然自分で設置できる。

食洗機本体の設置

ドォ━━━(゚Д゚)━━━ン!!

f:id:hoto17296:20180707104357j:plain

デカい (デカい)。

威圧感ヤバくて「やっぱ小さい方でも良かったかもしれない・・・」ってなってる。

まとめ

  • 食洗機本体は Panasonic しか選択肢がないのでそんなに悩むことない
  • 設置場所はよく検討する
    • フタを開けた状態のサイズで考える
  • 分岐水栓は合うやつをちゃんと調べて買う

まだ設置したばかりなので、使ってみた感想とかはまた書くかもしれない。

おまけ

Panasonic が出している食洗機 AR アプリ「Home Appiance AR」で本物と並べてみた。

f:id:hoto17296:20180707112918p:plain

f:id:hoto17296:20180707112922p:plain

AR の方が少し大きい気がする・・・?

けどまぁだいたい合ってる。

ハッカーズチャンプルー 2018 感想

f:id:hoto17296:20180701122752j:plain

ハッカーズチャンプルー 2018 に参加してきたので感想。

hackers-champloo.org

「チャンプルー」は沖縄方言で「混ぜこぜにしたもの」という意味なので、「IT エンジニアのためのなんでもありカンファレンス」という雰囲気のイベント。

トークが良い

  • 「地方カンファレンスにしては」ではなく、普通にレベルが高い
  • あの豪華さのトークをあれだけの数並べられるの本当に凄い
  • 1トラックしかなかったけど移動とか考えなくていいので気楽だった
  • 特に esa の id:ken_c_lo さんには、トーク+懇親会でいい話がめっちゃ聞けたので最高だった

会場が良い

  • 自宅から徒歩圏内で最高 (私情)
  • 広くて移動しやすい
  • スクリーンがデカくて超見やすい
  • Wi-Fi が快適
    • その恩恵もあってか Twitter ハッシュタグがかなり盛り上がっていた
    • 調子に乗ってツイートしすぎたら Twitter アカウントが一時凍結された

togetter.com

運営が良い

  • スポンサー担当として運営の方とやりとりしていたが、話がスムーズに進むので非常にやりやすかった
  • タイムキープが徹底されていて、たとえスポンサーセッションであっても時間オーバーで強制終了させる無慈悲さには非常に好感が持てた
  • ドラを忘れたので指笛でカバーする対応力 ()
  • クロージングが面白いカンファレンスは初体験だった

スポンサーとして

f:id:hoto17296:20180701123424j:plain

  • 弊社 (ちゅらデータ) ではスポンサーをしていたので、ランチタイムにスポンサー LT をさせて頂いた
  • スポンサーブースに置いていたステッカー思ったよりも貰って頂けて、持っていた分がほとんど無くなった
    • 圧倒的感謝
    • ぜひ貼って!!!

PyCon Kyushu との日程被り問題

  • 福岡で行われていた PyCon Kyushu 2018 と日程がもろ被りだった
  • どっちも参加したかった・・・
  • 来年の PyCon Kyushu は沖縄で開催なので絶対に被ってほしくない

まとめ

  • 期待していた以上にかなり面白かったので、ぜひ来年も参加したい
  • 運営の皆様おつかれさまです!!

時かけスクリーンセーバーを作った

f:id:hoto17296:20180610193421g:plain

あの映画もう12年前だよ何を今更という感じだけど、Swift の練習ということで。

github.com

作ったもの

macOS 用のスクリーンセーバー。

アニメ映画「時をかける少女」を観た人はわかると思うけど、タイムリープするときの時計っぽいアレを模したやつ。

数字フォントに関しては id:kironono さん作のフォントを利用させていただいた。

ola.kironono.com

できたこと

  • Swift でスクリーンセーバーを作った
  • 画面サイズに合わせたフォントサイズで現在時刻を表示する
  • 文字の色とフォントを変える・文字をぼかす

普段 iOS アプリを書いている勢からすると楽勝な内容かもしれないが、 XCode もろくに起動したことがない全くの未経験マンがやると「画面に文字を表示する」だけで1時間以上かかったりしたので、めっちゃ大変だった・・・。

できなかったこと

フォントファイルを埋め込んで使用する

現状では、上記の数字フォントを Mac にインストールしないと使えない。 本当はスクリーンセーバーそのものにフォントを埋め込んでそれを使うようにしたい。

通常の macOS アプリでできるやり方1だと、何故かスクリーンセーバーだとできなかった。

このへんとか試してみたけど無理げ。

有識者の意見求む〜〜〜

上位桁と下位桁で 0 のフォントを変える

実際のあのシーンの時計っぽいアレは、上位桁と下位桁で 0 の形が違っているらしく、フォントにも両方の文字が含まれている。

この対応は頑張れば出来たと思うけど、ちょっと面倒だったのでいったんやらずにリリースした。

Swift 所感

  • 補完便利
    • 普段 Python とか JavaScript とかを Vim で「補完とかそんなに使わなくてもいけるっしょ」というノリでコードを書いているので、XCode のあまりの「何でもしてくれる感」にお腹いっぱいになった
  • デバッグしづらすぎワロタ
    • Swift.print() とか使ってもコンソールに何も出力されなくてデバッグが超大変だった
    • スクリーンセーバー特有なのかもしれない
  • Swift そのものはわかりやすいが API がわからん
    • macOS と iOS で使う API がゴッソリ違うので Web 上の情報があまりアテにならない
      • AppKit の情報少ない・・・
    • 親クラス ScreenSaverView がどうなってるか知りたくてもよくわからない
      • 公式ドキュメントには大した情報が載ってない
      • ソースコードは非公開? 探しても見つからなかった
      • ライブラリのコードは公開されてるのがデフォな文化圏にいるので驚きだった

まぁ総じて Swift 楽しい。

というか初めてやるなら iOS アプリ書いたほうがいいな普通に。


  1. フォントファイルをプロジェクトに追加してターゲット設定して info.plist を設定してどうのこうの

漫画村 / 漫画タウン 利用者に思うこと

うるせぇよ。

結局は金

運営は儲けたいだけ。
利用者は金を払いたくないだけ。

それだけでしょ。

それを一見それっぽい大義名分で誤魔化すんじゃねぇよ。

以下に映画「DEATH NOTE デスノート the Last name」でのセリフを引用する。
デスノートで悪人を裁く夜神月に対して、父・総一朗が糾弾するシーンのセリフだ。

確かに法律は完全じゃない
法律を作った人間が完全じゃないから完全であるはずはない
だが正しくあろうとした人類の努力の積み重ねが法律だ
お前は独りよがりだ
独りよがりで人の命を奪うことなど絶対に許されない

「人の命を奪うこと」を「著作者の利益を侵害すること」に置き換えたらだいたい同じ。

「今の仕組みが時代遅れだから勝手に壊しても良いよね」というのは、先人が積み上げてきたものを全否定することに他ならない。

それはただの独りよがりで、とてもカッコ悪いことだ。

利用者に思うこと

タダで見れるコンテンツが転がってるのに金を払えっていうのは、まぁ難しい話だと思う。

ただ、運営が騙る大義名分に安心して自分を正当化しないで欲しい。
その大義名分は、運営が儲けるための謳い文句に過ぎない。

だからせめて利用者各位には、自分は本当にカッコ悪い行いをしているのだという自負を持って、悪びれながら違法コンテンツを消費して欲しい。

GTX 1080 Ti 2-way SLI ベンチマーク

会社に GTX 1080 Ti 2-way SLI マシンが届いた。

f:id:hoto17296:20180316012155j:plain

くそデカイし、めっちゃ光る。 なぜ人類はマシンの中身を光らせたがるのか。

f:id:hoto17296:20180316012350j:plain

機械学習用マシンなんだけど、せっかくだしベンチマークとってみたいやん? ということでとってみた。

ベンチマークツールとしては定番らしい 3DMark の、Direct X 12 世代のグラフィックテスト「Time Spy」を試した結果が以下。

f:id:hoto17296:20180316011236p:plain

すごそう (小並感)

だって上位 2% ですよ。 よくわからんけどテンション上がるな。

むしろどうやったらこれ以上のスコア出るんだろう。 TITAN Xp 4枚挿しとかしないと無理なのでは???

ちなみに GPU 1枚と2枚で比較しようと思ったけど、3DMark の設定で GPU Count: 1 に設定しても何故か2枚で計測されてしまって比較できなかった。無念。

言いたかったこと (宣伝)

ちゅらデータ株式会社では、なんかすごい GPU マシンを使って爆速で機械学習したい エンジニア / データサイエンティスト を募集しています \\\٩( 'ω' )و////

churadata.okinawa

自宅の Wi-Fi 環境を改善した

沖縄に引っ越してきて一ヶ月が経ち、ようやく落ち着いてきた感がある。

今回は、新居の Wi-Fi 事情に少し問題があったのだけど、一手間かけたら改善したという話。

Wi-Fi AP の位置が微妙すぎ問題

我が家の Wi-Fi の信号強度 (RSSI level) を計測してヒートマップにした1ものがこちら。

f:id:hoto17296:20180218204540p:plain

  • 右下は寝室で、Wi-Fi AP が設置してある
  • 左上はリビングで、Apple TV や Nintendo Switch が置いてある
  • 左下は仕事部屋

もうヒートマップから一目瞭然なんだけど、一番インターネットを使うリビングと仕事部屋の信号強度が弱い!!! 寝室のベッドでゴロゴロしているときが一番良いインターネット体験が得られるという、あまり好ましくない状況になってしまっている。

これによって実害も出ていて、 「スマホアプリで再生した動画を Apple TV に飛ばすと高頻度で途中で再生が止まる」 という問題よって充実したアニメライフに支障をきたしてしまっている。 おそらく、スマホからの動画ストリーミングは [AP] → [スマホ] → [AP] → [Apple TV] とデータが二往復しているため、信号強度の強弱の影響をモロに受けているのだと思う。

Wi-Fi AP を壁に貼りつける

Wi-Fi 中継器を買おうか迷ったけども、たかだか 2LDK で中継器はさすがにやりすぎな気がしたので、シンプルに Wi-Fi AP の位置を変えることにした。 とはいえ NTT の光コンセントが寝室にしかないため、頑張って寝室から LAN ケーブルを延ばしていくしかない。

サンワサプライ カテゴリ6 フラットLANケーブル 10m ホワイト LA-FL6-10W

サンワサプライ カテゴリ6 フラットLANケーブル 10m ホワイト LA-FL6-10W

まずは長ーい LAN ケーブルを買ってくる。

我が家のルータと Wi-Fi AP は PoE 2 に対応していたため、電源のことは考えずに済んだ。

ヤマハ WLX202 無線LANアクセスポイント

ヤマハ WLX202 無線LANアクセスポイント

問題は「Wi-Fi AP をどうやって壁に貼りつけるか」だけど、賃貸住宅なのでネジ等の穴を開けることはできない。 そこで「ホッチキスの穴くらいなら許されるやろ!!」という根拠のない仮説のもと、ホッチキスで壁に引っ掛けれるやつを買ってつけた。 (真似して敷金減っても責任は負いません)

LAN ケーブルもモールで固定しようかと思ったけど、面倒くさかったのでホッチキスで壁に固定していった。(※ 危険なので、絶対に LAN ケーブルに通電した状態でホッチキスしては駄目です)

結果

f:id:hoto17296:20180218204536p:plain

リビングと仕事部屋にもちゃんと Wi-Fi 飛ぶようになった\( 'ω')/

まとめ

一般家庭でも Wi-Fi AP の位置は重要。


  1. ヒートマップの作成には Wifiner というアプリを使った

  2. PoE (Power over Ethernet): LAN ケーブル経由で電力を供給する技術