読者です 読者をやめる 読者になる 読者になる

Wakotech Blog

技術的にポエムっぽい内容とか他の人のためにならなそうなやつを書きます。役に立てたいのはQiitaに書いています。

4Kディスプレイを購入して困ったこと、購入前に注意しないといけないこと

Philips の42.5 型4K ディスプレイ BDM4350UC/11 を買いました。

最安値より値上がりしちゃってるなあ……55k 切ったら買おうかなあ……と思っていたのですが、NTT-X ではここの価格よりさらに1万円引きクーポンで販売していたので、55,000 円で購入できました。

(NTT-X のクーポンとかひかりTV ショッピングのポイントとかは価格コムに反映されないことがある上に割とちょくちょく大きな値引きしている印象があるので要チェックです。)

製品自体はいい感じなんですが、現状で感じた困ったところを書きます。

ケーブルの対応規格

家に転がっているケーブルだと4K解像度や60Hzに対応していない場合があります。特に、Mac 用に買ったMini-DisplayPort ケーブルなんかでありがちです。

ケーブルを買えば解決するのですが、正しく4K時に60Hz 対応しているケーブルを買う必要があります。

自分はElecom のケーブルを買いました。少し高いですが、対応規格がしっかり買いてあったので安心して買えます。今の所問題もなさそうです。

www.amazon.co.jp

調べただけの素人知識なんですが、どうやらDP1.2 に対応していないといけないようです。

マシンの対応規格

特にノートパソコンによっては4K を出せない、4K は出せるが60Hz でない、等があるようです。

自分はMacbook なのでMacbook しか調べていないのですが、Pro Retina 13インチやAir はだいぶ新しいモデルでないと4K 60Hz に対応していないようです。

また、HDMI で出力する場合には30Hz までしか出力しないため、DisplayPort で出力しないと60Hz にならないようです。

デスクトップでもHDMI 出力しか無い、空いていない場合はダメなので、GPU を買い替えるなどを検討する必要があります。

などなどマシンによって問題があるので、購入を検討している方は事前にご確認ください。

30Hz しか出なくて非常に焦りましたが、自分のMacbook Pro Retina ‘15 Late 2013 のGPU 搭載モデルはギリギリ大丈夫だったので大丈夫でした。

買い替え前のMacbook Pro Retina ‘13 Mid 2014 ではアウトでした。ちなみにこのマシンは買い手を募集してます。

電源

4K モニタは電源を食います。なので、分配ケーブルでたくさん刺している箇所に刺すと、電力が足りず画面がチラつきます。

自分はデスクトップマシンとサーバがあるので、電源を食いまくって非常に辛いです。配線を整理してどうにかするしかないです。

引っ越し前の人は、コンセントの数にも注意する必要があります。

総評

  • マシンの対応出力規格をちゃんと調べましょう。最悪泣きを見ます。
  • ケーブルは買い足す覚悟を持つこと
  • GPU は買い足す覚悟を持つこと
  • 電源周りの配線を整理しなおす覚悟を持つこと
  • 最悪引っ越す覚悟を持つこと

docomo のシェアパックはMVNO と比較して妥当な金額なのかの検討記録

格安SIM からdocomo に乗り換えた以下のブログが話題になった。 格安SIM(MVNO)で消耗するのが面倒になったので回線を全部ドコモにした – でこにく

自身も最近、総合的に得だろうという判断して家族全員docomo でシェアパックの運用にしたので、金額面からの考察を記録する。

結論

まず先に結論を言うと、人数が多い場合、各種割引を受けられる場合、ハイエンドの端末を使いたい場合、複数回線持ちたい場合に、妥当な金額、もしくはMVNO より安い金額になる。

docomo のプラン

現在docomo で回線契約する場合、最低維持費のプランは以下になる。

1人の場合

2GB プラン

基本料 1,700 円 + spmode 300 円 + パケット(3,500 円/ 2GB 〜) = 5,500 円〜

※ 端末の実質価格を低くするために割り引かれる月々サポートの額が432 円 /月減少

5GB プラン

基本料 1,700 円 + spmode 300 円 + パケット(5,000 円/ 2GB 〜) = 7,000 円〜

※ 20GB: 6,000 円、30GB: 8,000 円

パケットパック(データパック) | 料金・割引 | NTTドコモ

家族でパケットをシェアする場合

代表回線: 5GB プラン

基本料 1,700 円 + spmode 300 円 + パケット(6,500 円/ 5GB 〜) = 8,500 円〜

※ 月々サポートの額が432 円 /月減少

代表回線: 10GB プラン

基本料 1,700 円 + spmode 300 円 + パケット(9,500 円/ 5GB 〜) = 11,500 円〜

※ 15GB: 12,500 円、30GB: 13,500 円、50GB: 16,000 円、100GB: 25,000 円

パケットパック(シェアパック) | 料金・割引 | NTTドコモ

子回線

基本料 1,700 円 + spmode 300 円 + シェアオプション 500 円 = 2,500 円

格安SIM の場合

参考に、格安SIM(MVNO) の大手であり多くの料金プランを兼ね備えているOCNモバイルONE の料金を以下に示す

3GB

1,800 円〜

6GB

2,150 円〜

10GB

3,000 円〜

20GB

4,850 円〜

30GB

6,750 円〜

OCNモバイルONEでおトクに格安スマホに乗り換えよう!

何人でどれくらい使う場合にお得になるのか

これは全てのプランに言えるが、docomo の契約年数が長い、ドコモ光を使っている、等の割引によってはこの限りではないが、ここでは一旦無視する。

2人の場合

上記の料金表を参考に、2人で5GB の場合から計算すると以下のようになる。

(8,500 + 2,500) / 2 = 5,500 円

1人で最小用量で使う場合と変わらないが、小容量の場合はこれで十分だろう。

逆に容量を増やす場合であると、1人15GB 使いたい用途で30GB パックを選ぶと、

(15,500 + 2,500) / 2 = 9,000 となり、1人で20GB のプランを契約した際の8,000 円より高くなってしまう。

=> 2人で大容量使うのには不向き

3人の場合

上と同じように計算してゆく。

5GB: (8,500 + 2,500 + 2, 500) / 3 = 4,500 円

確かに安くなったが、3人で5GB では些か窮屈なので、10GB プランに上げてみる

10GB: (11,500 + 2,500 + 2,500) / 3 = 5,500 円

1人で2GB の場合と同じ金額になった。容量は少し多いし、月々サポートの減額もない。この辺りから恩恵を得られ始めてくる。

ヘビーユーザーの場合でも3人で30GB あれば十分だろう。20GB と1000 円の差しかないのでコスパが良い。

30GB: (15,500 + 2,500 + 2,500) / 3 = 6,833 円

1人で5GB のプランにするよりも明らかに安いことがわかった。

=> 3人の場合小用量でも恩恵あり。大容量でも安く使える

4人の場合

4 人で5GB は人権が無さそうなので計算しない。4人家族の場合、大抵若い人がいて、若い人はもっと通信するだろうし。

10GB: (11,500 + 2,500 + 2,500 + 2,500) / 4 = 4,750 円

30GB: (15,500 + 2,500 + 2,500 + 2,500) / 4 = 5,750 円

50GB: (18,000 + 2,500 + 2,500 + 2,500) /4 = 6,375 円

1人で使うよりも確実に安い。 だいたいMVNO の2倍くらいの価格になってきた。

=> 4人で使えば確実にお得

5人の場合

10GB: (11,500 + 2,500 + 2,500 + 2,500 + 2,500) / 5 = 4,300 円

30GB: (15,500 + 2,500 + 2,500 + 2,500 + 2,500) / 5 = 5,100 円

50GB: (18,000 + 2,500 + 2,500 + 2,500 + 2,500) /5 = 5,600 円

均等に分けたとして、10GB のMVNO が3,000円、

偏りがあったとして、20GB のMVNO が4,850円。

品質差を考慮すれば、価格面で見ても十分検討できるくらいになっている。

=> 5人で使うとMVNO と比較しても十分検討できる価格に

各種割引

上記の計算に使用している基本プランは、5分以内の通話が無料になるカケホーダイライトである。この部分がまずMVNO に比べ利点となる。

2017年6月より980 円のシンプルプランが使用可能になる。通話を全くしないのであれば、700円安くなる。

また、現在では学割(25歳以下対象)を実施しており、対象者は基本料金が1000円引きとなっている。

基本料金意外にも、docomo の継続年数が長ければシェアパックに割引が入る。

自宅のインターネットをドコモ光にすることでも割引が入る。(ドコモ光の評判はよくわからないが……)

利用者によるが、上記の計算結果よりもいくらか安くなるケースがあるだろう。

本体価格と割引

キャリア(MNO) とMVNO の大きな差は端末本体の価格や売り方にあると言える。

キャリアのスマホはオーバースペックだ、MVNO で安めのものを使えば良い、という意見もあるが、

実質価格でみるとキャリアの端末の方が安くなるケースも十分にある。(その上、高性能。)

この実質価格と言う仕組みが難しいのに対してMVNO はシンプル、という話なのだが、MVNO は分割で買っているだけなので、端末代は普通に満額払っていることになる。

(実質価格と言うのは、本体代金は普通に払うが、端末ごとに設定された月額割引を受けることで、合計の負担額が小さくなる仕組みである。)

上記の例で、特に4人以上の家庭の場合、月々サポートを含めた実質価格と、MVNO のミドルエンド端末(5万円程度) を上乗せすると更に差は縮まる。

また、日本国内で利用者の多いiPhone となると、Apple 直販では10万円近くになる。24回分割したとしても、毎月4000円近くになる。

一方docomoiPhone は実質価格が2万円程度であり、毎月1000円に満たない。

過去既に何度か言われているが、「MVNO + SIMフリーiPhone は安いのか?」と言う問題について、特にシェアパックを複数人で使う場合には明確にNo であることがわかる。

回線の追加について

昨今、スマートフォンの複数台持ちや、タブレット持ちのユーザが増えてきているように見える。

サブの回線をMVNO で契約した場合、データプランのみであれば安いものの、通信容量の上限が低く、特にタブレットの用途でも代表的な動画との相性が悪い。

かといって大容量のプランを契約しては、2,000円、3,000円、とかかってしまう。

一方、既にシェアを組んでいる場合、新しく回線を追加した場合にかかる最低コストは、

基本料 980 円 + spmode 300 円 + シェアオプション 500 円 = 1,780 円

となり、音声契約のMVNO とほとんど変わらない契約で、シェアパックの容量分まで使用できることになる。

これが非常に安く、このことが私が家族全員docomo 化を決定したもっとも大きな動機となった。

現在は通勤時や昼にも詰まることのない、高品質なdocomo 回線を持ち歩きの2台で使えており、非常に満足している。

価格差はやはり品質に現れるもので、通勤/昼の時間帯はMVNO はやはり遅い。今まで5社使ったが、

Twitter に少し大きな画像が流れてくると読めない、大きめなWeb ページの読み込みが遅い、等が気になるレベルだったため、この差は大きい。

まとめ

  • 3人以上で使うと安い
  • 3人以上の場合、大容量になるほど相対的にお得になる。
  • 学割を受けられるならば更に安くなる。
  • 使う機種によっては、本体代の総額がMVNO より安くなるケースもある。
  • 2回線目を追加契約する際に追加でかかる費用が非常に安い。

最後に、docomo 回線は通勤時や昼等、通信量が増える時間帯であっても快適に使える部分が大きいと感じる。

価格差と品質差を判断した上で使えば、MVNO と比較する際に言われる「高い」「賢くない」使い方に必ずしもならず、むしろ「高品質」で「安い」可能性さえあるため、十分に検討したい。

キャリア各社のプラン体系は非常に難しいが、この情報が少しでも役に立てば幸いである。

isucon6予選に出場した感想

isucon6 予選に参加した。1日目に、LINE社にお邪魔しました。

準備

isucon は初参加だったが、昨年にisucon4 予選の過去問をやっていたので、引き続き勉強っぽい感じで行っていた。

スコア出した記事を事前に読んでいたので、なんとなくやればいいことは以下の感じで想像してた。

  • MySQL(innodb)の設定をパワーを使うように書く
  • 静的ページをnginx で配信する
  • アプリケーションとUNIX domain socket で繋ぐ
  • テンプレートエンジンをやめる
  • 明らかに悪手っぽい処理をやめる(言語ごとの慣習に倣うとか)

参考にさせて頂いた(理解できた/記憶に残った)情報は主に以下。

パフォーマンス測定が大事だというのは分かっていたし、先輩からpprof 使えるようにしておいてと言われていたのだけど、パフォーマンスを見てどうこう、というのができなかった。

業務でパフォーマンスが求められるシーンがあったので、その時からDBとか計算とかは少し意識するようにはなったけど、ボトルネックを探すというところまではできなかった。

当日

当日の試験問題は近いうちに出るだろうので割愛する。

アプリケーションが3つ立っていた。

UI と基本機能を提供するサーバ、json を返すAPI サーバ、アプリケーション内部からのみアクセスされるAPI サーバ、と、マイクロサービス?っぽい感じだった。

isucon 慣れしていなかったので、構築がどうとか、リポジトリがどうとか、my.cnf 書き換えるスクリプトとかは、チームの先輩にやって頂いていた。(ふがいない……)

自分は以下の内容に着手したが、手間取ってしまったり、うまくいかずやめてしまったりした。

  • UNIX domain socket に書き換える。

nginxとアプリケーションをUNIX domain socket で繋ぐのだが、アプリケーションが別のアプリケーションを呼ぶので、その部分で戸惑ってしまった。

完全に準備不足なのだが、sock の所有者を誰にするかで悩んでしまった。結局nginx をアプリケーション起動ユーザで動くようにしたが、良くなさそう。

struct のタグを取り出すのはreflectを使っているので遅い、と聞いていたので、これを外そうとした。

DB から引いてjson にして返す部分はハードコーディングでできたのだが、全件取得して別のマイクロサービスに渡す辺りで設計が分からなくなってしまった。

時間もあまりなかったので、他にできることをやるために断念。

できることがなくなってしまったので、まだされていなかったことをした。

  • Golang アプリケーションからMySQLUNIX domain socket で接続する。

やることが分からなくなったので先輩に指示を仰いだ。業務じゃないんだから……という感じ。

アプリケーションからMySQL への接続をUNIX domain socket に変えてみたが、接続はできるようなのに、Query の処理(database/sql/sql.go のdb.mu.lock() )でnil 参照になってしまった。

パーミッション等かと思ってみたが動かず、時間がないのでできないままになってしまった。

この挙動は謎なので、後日また確かめる。(今日は疲れてよく寝ていたし、掃除をしていたら終わってしまった。)

感想

自分でなくてもできるような変更しかできなかった。非常に悔しい。

準備不足というのもあるし、普段意識していない内容というのもあると思う。

Golang でアプリケーションを作る知識というより、サービス全体の設計の知識が足りないと感じた。

特にパフォーマンスを見てやるべきことを考えられるよう、復習したい。

自作PCのパーツを変更しながらにWindows10をクリーンインストールする

Windows10をアップグレード無しに直接クリーンインストール可能な話を見るが、ほとんどがメーカ製のPCの話が殆どである。

Windows10のライセンスが自作PCとあわないという話を見ましたが、問題なかったので手順を記述する。

私の環境では成功したという例です。自己責任にてお願いします。

手順

  • パーツを新しいものに交換する。(GPUはドライバが必要なので後から取り付ける。)
  • 起動ディスクにWindows7をインストールし、ライセンス認証を行う。(自分はクリーンインストールした。)
  • この時点でライセンス認証ができない場合、MSに問い合わせる。
  • https://www.microsoft.com/ja-jp/software-download/windows10からメディア作成ツールをダウンロードし、インストールメディアを作成する。
  • PCをシャットダウンし、インストールメディアからブートしてインストールを開始する。問題なければ、インストール先のディスクをフォーマットする。
  • インストール後にWindows7のライセンスキーでオンライン認証を行う。
  • システム情報(Windows + Pause)からライセンスが認証されていることを確認する。
  • GPUのドライバをダウンロードしておき、GPUを取り付けて再度起動し、インストールする。(GeForcehttp://www.nvidia.co.jp/download/driverResults.aspx/87933/jpからDL可能。)
  • すべてのパーツを付けた状態でライセンスが認証されていることを確認する。

補足

  • パーツ構成の軸はマザーボードのようである。
  • パーツの構成とライセンスを関連付けて記録するとのことで、一旦新しい構成でWin7を認証した。

参考

YAPC::Asia Hachiojiに行った&LTした

※LTは社名を出してしまいましたが、こちらは個人の感想としてポエムを書きます。


YAP(achimon)C::Asia Hachioji 2016 midに行ってきました。品川に。2日目だけですが。

どう略すのが正しいのかわからないのでリンクを貼ります。

yapcasia8oji-2016mid.hachiojipm.org

エンジニア経験も浅いので参加した勉強会も多くはないですが、YAPCははじめて。特にperlも書かないので。


以下感想。

設計的なトーク(MVWとか)では深い話が聞けて非常に良かった。設計力は全く高くないのだが、心当たりのある部分や、なるほどとなる部分が多かった。

取り組み方、意識的な話も、あるあると思いつつ楽しく聞けたのでよかった。

全体的に1ジャンルでなかったので幅広く話がきけたが、自分が初心者すぎてついていけなくなる部分もあったので精進。

LT枠では、「ES6の現場でjs初心者が どうにかキャッチアップできた話」というタイトルで話させて頂いた。

内容的にも高度でもなく、エモ寄りになってしまった。見返してみるとどうにも微妙な資料で、これもまた精進。

テンパって自己紹介もしっかりできなかった気がする。人が多くて緊張した。

終えてみて、まずは自分のこと名で人に話せるほどの技術力をつけるために修行するのが第一だな、と感じた。

とはいえ、非常に良い経験ができたと思う。LT枠をもらうことの重み?も少し感じることができた。次の機会では良い発表をする。

登壇資料は以下。

speakerdeck.com


トークで学びを得られ、LTをしてみることもでき、非常に楽しい1日だった。

主催のuzullaさんをはじめスタッフの皆様方には感謝の限りです。

来年も楽しみにしています。ありがとうございました。

ErgoDox EZのキーマップを変更して1週間程度使った

到着まで

購入概要については前回の記事を参照。

yutaszk23.hatenadiary.jp

106円/ドルのタイミングで購入したのと、カード会社の上乗せ分(2円程?)が入り、35,000円程度での決済だった。

到着までだいたい2週間。関税の支払いを受け取り時にするので、対面受け取りが必要。(1300円だった)

台湾から発送で、海外購入の業者から来ますが、土日の再発送だったのでクロネコヤマトに引き渡してくれた。便利。

リマップ

jackhumbert/qmk_firmwareからcloneなりforkなりする。

元のキーマップはkeyboard/ergodox_ez/keymaps/defaultに存在するので、これを元に自分用のディレクトリを切る。

keymap.cに配置情報が書かれているので、これを編集する。当然ながらコメントを実装コードの両方の編集が必要。

引数をいい感じに改行してわかりやすくなっているので、これをなるべく崩さないようにするのが良い。

特殊な挙動を当てるキーコードについては、主に以下を参考にした。

qiita.com

リマップしてからしばらく使っていると、主に親指まわりが納得いかず何度も修正することになる。

1週間経った現在でも安定していないので、結構長い戦いになりそう。

なお、半角/全角切り替えは、OS側でのリマップが必要だった。

モディファイアキー/任意のキーでのMod/Tapを設定し、任意のキーをOS側でIME制御に割り当てた。

残念ながら、この任意のキーは殺すことになる。自分はF15/16に死んでもらった。

OS XならばKarabinerのprivate.xmlでKeyToKeyを書く。WindowsIME設定から設定できる。

(この時代にXMLを真面目に書くの、つらい気持ちがある。)

現在の自分の配置は以下の通り。

github.com

感想

  • 元のキーボード(HHKB)を使った時に肩がきついことを感じるようになった。
  • 小指を酷使しないようにリマップしたので、指の負担が減った気がする。
  • 親指を変に動かすとこちらが疲れるので、意外と親指で色んなことはできない。
  • レイヤー機能でメタキーをOS上のソフトウェアに頼らず実装できるので、安定する。
    • 特にWindowsのリマップが貧弱だったのが解消されたのは嬉しい。

練習にe-typingをやったが、はじめはE評価だった。脳に指がついてくるようになるには、慣れが必要。

ErgoDoxを注文した

注文について

  • ErgoDox EZを買えば完成品で届くらしい。
  • Tilt/Tentキット、リストレストはほぼ必須らしい。
  • Ergo Dox EZ Bundleを選択すれば上記2つとのバンドルになる。
  • 基本的に初期の配列から大きくキーマップを変更するらしいので、無刻印(Blank)にするのが無難そう。
  • 本体$295 + 日本への送料$30 = $325での注文となる。この他に関税がかかる。(報告を見る限り1000円程度とからしい。)
  • 「軸の色は後で確認のメールを送る」、と書いてある。(デフォルトは赤軸?)
  • 決済はクレジットカードのみで、paypalは使えない。為替レートは手数料込のレートがあるらしく、決済までタイムラグもあるため、注文時の円ドルレートにならない点に注意。
  • 最近は2週間程度で届くとの話もある。(量産体制が整ったとか。)

購入背景

  • 小指が痛い。
  • 親指が痛い。
  • 肩幅が広いタイプの人生なので、キーボード入力中の息苦しさや肩の調子の悪さを解消したい。
  • キーボード側で配置変更やSandS実装ができるので変なリマップをしなくてもどのOSでも使えるのが良い。
  • 右下のカーソルキー遠いけどWindowsだとemacsキーバインドとかうまくできないのでつらい。
  • リマップに起因する競合っぽいアレソレが解決されるので色々幸せになれるはず。
  • そもそもモディファイヤキーが簡単に届く範囲にあれば問題が全部解決されるはず。

参考

まだ注文しただけなので、この文章はReafforceで書いている。