Lo-Fi Memories

酒と音楽と技術

コロナ時代におけるリモートワーク向けのチェアを選ぶ | 都内で試座できる場所は?

2ヶ月くらい前から腰の痛みを感じるようになってしまた。

会社がフルリモートを推奨するようになったので、多分毎日同じ姿勢でパソコンに向き合っているのが原因と思われる。
もともと去年の今頃からリモートワークを週2で行なっていたので、そこから腰貯金が底を尽きたのであろう・・

コーディングモードだと時間を忘れて過集中してしまう癖があるので、ポモドーロ使って意識的に立ったり座ったりするようにしてみたり接骨院に行ったり色々試してみた。
まだ劇的な改善はみられないが、接骨院の再診が保険適用で500円くらいと予想以上に安かったのもあり引き続き行ってみたいと思う。

今後もフルリモートが続きそうなので、今使っている安いリモートワーク用のオフィスチェアも見直そう!給付金入ったし!というわけで1ヶ月くらいどのチェアを買うかずっと考えていた。
最終的にエルゴヒューマン エンジョイToBe(¥38,280)と予算をかなり下回るものを購入したが、これを選ぶ紆余曲折は別記事にまとめたいと思う。

試座がしたい

Amazonとかで探してみて目星をつけることはできるが、座ってみないと不安で購入まで至れなかった。
最初はデザインと値段からエルゴヒューマン プロを買うつもりだった。

無骨な二本のフレームはやっぱり男の子なら憧れるはずwで、独立ランバーサポートも他のメーカにはないユニークなポイント。こちらもデザイン性が良いし腰も労ってくれそうだった。
値段はハイバックで10万くらいと給付金額同じくらいだし、かなりしっかり作られていそうなのでそれだけの価値あると思った。
しかし、座ったことないイスに10万円ぽーんと払える勇気がなかったので、都内で試座できるところを探してみた。

試座できる場所

試座して決めたいよね。特に高級オフィスチェア。
私は有名なチェアも座ったことがなかったので予算オーバーなやつも座りたく、色々調べてみた。

主に、以下のチェアが含まれているところを探してみた。

大塚家具新宿ショールーム SOHO GALLERY

www.idc-otsuka.jp


新宿に行けるなら一番おすすめ。SOHO GALLERYというところで、有名どころの高級チェアはほとんど置いてあり勝手に試座できた。

大塚家具というと自社ブランド製品オンリーのイメージがあったが、高級セレクトショップみたいな感じだった・・
まず入り口にアーロンチェアとエンボディチェアが置いてあったり、店員さんのホスピタリティが良く丁寧な接客だったのが印象的。

高級オフィスチェアの王道ことハーマンミラーアーロンチェアがたくさんあって何回も座った。高級オフィスチェア難民には夢のような空間なのでとてもおすすめ。


有明にもショールームがあるので、こちらでも試座できるかも。

東急ハンズ新宿店

shinjuku.tokyu-hands.co.jp

エルゴヒューマンの取り扱い店舗ということで行ってみた。
新宿に行くならついでにこちらも。あまり広いスペースではなかったがリモートワーク特集として10脚ほどオフィスチェアが展示されて試座できる形だった。

2020年6月現在で

その他ゲーミングチェアも展示されていた。



ニトリ新宿タカシマヤタイムズスクエア

shop.nitori-net.jp

東急ハンズ新宿店にいくならついでにこちらも。 隣のビルなので超近い。

ニトリのオフィスチェアってチープなやつしかないと思っていたけど、3,4万のモデルも扱っており、高級感があって試座してみると10万円レンジに匹敵しそうな座り心地だった。びっくり。
基本プライベート商品っぽいが、DUORESTのOEM製品?であるデュオレハイDXもあった。実はこれにするか悩んだ。

WORKAHOLIC

www.iamworkaholic.jp

有名どころの高級オフィスチェアが多数あって、チェアコンシェルジュの方が自分に合ったチェアをサジェストしてくれるみたい。場所は馬喰町~浅草橋の方。
2020年07月05日現在だと、リモートワーク需要からか完全予約制で2~3週間待ち。すぐに欲しかったのでこちらには行かなかったが平常時の場合はこちらで相談するのが良いと思う。

オフィスバスターズ

www.officebusters.com

会社の人が教えてくれた中古OAストア。オンラインでも購入できるみたい。
たまにセールで30%OFFとかあるらしいけど、しばらく需要がありそうなので次はもうちょっと先かも。

主に法人向けなので、店舗は基本平日しかやっていないが、池袋店は土日も9:30~17:30でやってるので行ってみた。
中はガレージっぽく、オフィスチェアでぎっしり敷き詰められて、店員さんが一人一人対応されていた。行った時はかなり忙しそうだったので試座はしなかった。
ハーマンミラーアーロンチェアオカムラコンテッサなど、中古品ではあるが気軽に試座できる形。

まとめ

すぐに座って判断したい
=> 大塚家具新宿ショールーム

じっくり考えてプロと相談して判断したい
=> WORKAHOLIC

中古品を買う前提で品定めしたい
=> オフィスバスターズ 各店舗

もちろん、ブランドが決まっていれば公式ショールームに行くのがベスト。

Real World HTTP 第2版 をよんだ

前記事から大学院経て、通信会社に就職しておったわい!ははは。。
去年、Hugoでブログ立ててgh-pagesでホスティングしてたんだけど全く続かなかったので戻ってきた。ちょっとgatsbyでやるか悩んだ。

やっぱり仕事はアウトプットしてなんぼの世界で、インプットする時間が個人的に取れずプライベートな時間でも勉強せんとな・・と思った社会人二年目が背景。使命感だけでなく個人的にも勉強したい欲がある。

プライベートでいうと、同棲からの入籍だったり充実はしていたんだけど、仕事以外はなるべく共通の時間を確保したいというのもあって全くプライベートな開発ができてなかったし1年目は慣れないことが多く、心身共に疲れてあまり能動的にインプットができなかった。

正直、同棲前の一人暮らし時代は好きな時間に開発したり、サイゼリアで安いワイン飲みながら技術書読んだりアクティブだったと思う。

今日は時間が取れたので最近読んだReal World HTTPの感想をかく。

手に取ったモチベ

HTTP(というかWeb技術)を基礎から理解したい

  • こういう基礎技術は普遍的な内容なので古い本でも事足りるはずなんだけど、HTTP2, HTTP3/QUICとかも入ったのが読む動機の要因になった

Amazonの技術書ランキング上位

  • そういうのに弱い

職場の人がすでに読んでいた

  • そういうのに弱い

所感

技術書読むのが久しぶりで、わくわくした

Qiitaのトレンドだったり、github trendingとか有名どころの技術系ブログ・アンテナサイトは毎日巡回しているんだけどやっぱり金出すコンテンツのクオリティは段違いだぜ!
紙媒体で買ったんだけど、今後もなんか書いたい。(できれば会社の金で)

四方山話がいい

今は全く聞かないニュースグループとか、そういう話を聞くとはえーってなって楽しい。
WebDAV?知らない子ですね・・

復習と新しい学び

  • キャッシュ

「no-cacheは引っ掛けで、"キャッシュしないではない"だったが、なんだっけ・・」みたいなところを補填できた。ちなみにキャッシュしないのはno-store。

あとは、Etagでのキャッシュとか

  • HTTP2

サーバプッシュって名前からしてすごそうだけど、websocket的な使い方ではなくHTMLやcssでreferしている他のリソースをサーバ側でキャッシュしておく技術であった。

  • HTTP3

なんとなくはどっかのサイトで概要を調べたけど忘れていた。そういえばQUICがTCP/UDPと同じレイヤーでそれに密接なプロトコルだった。

  • websocket

HTTP1.1だと6本使えるコネクションが1本消耗するが、HTTP/2だとそれが解決されるらしい。

知っている事柄に関しても、「もし、他人にこの技術を教えるとしたら?」と考えると面白く、意外と説明しにくかったりする。他人の表現を見て学ぶことが多かった。

そのほか

  • ほかにもGoでのHTTPサーバの実装コードがあった。Go使いではないがなんとなく読んで理解した。
  • 付録のステータスコードに`418 I’m a tea pot`がないやんけ!
  • websocket周りをもっと知りたくなったので、ハイパフォーマンスブラウザネットワーキングを読み直す。


著者の渋川よしきさんの文章が読みやすく、酔っ払いでもスラスラと読めたので次はTS入門のこちらを読もうと思うー。
future-architect.github.io

TOEIC対策のはしがき

二年前くらいに825点とった。

勉強中に気をつけたとこ、コツのようなものを友人用にメモ。

最近、形式が変わったらしいのでそこまではカバーできてない。

全般

  • 問題集いっぱいやる
  • 時間配分を秒単位で管理する。
  • 問題を捨てる勇気をもつ。

リスニング

コツ

  • Part1の絵見てやるやつは、動作動詞はだいたいフェイクなので選択肢から外す
  • 問題先読みで、選択肢をざっくり理解する。単語だけでもoK
  • 前半の会話聞いて疑問に答えるやつは5W1Hがどれなのかをチェック
  • 前の問題にはもどらない

教材

  • リスニングはESLがよかったんだけど、サービス終了したみたい。似たようなPodcastで毎日聞く。
  • TOEIC公式のEnglish Upgrader

リーディング

コツ

  • 英語を読みすぎたら負け。特に長文問題。
  • 要点だけ読む努力をする。
  • 問題集やりまくって慣れる。
  • テンプレ問題(環境問題・ネットショッピング返品問題・奨学金ほしいよ問題・ホテル・飛行機の予約問題・パーティ招待状問題)などに慣れ、話の展開をエスパーする。結構時間短縮になる。(もはや英語力じゃない)
  • 最後まで解く。絶対解く。何があろうとマークする。ので時間配分が命。

教材

  • 公式問題集
  • TOEIC至上主義の韓国は、TOEIC問題集が沢山ある(=競争が激しく、売れてるやつは問題の質が高い)のでおすすめ。安いし。解説翻訳がゴミだけど。

WordPressのREST APIにおける脆弱性をDockerを使って検証してみる

2017年2月7日にIPAからWordPressにおける脆弱性が発表された。

www.ipa.go.jp

割と簡単にポストを書き換えることができるっぽい。Wordpressってセキュリティホール多そうなイメージあるけど、ここまででかいやつは初めて?

検証している方がいたので、こちらのサイトを参考に自分もやってみる。

blog.tokumaru.org

そこらへんに転がってるWordPressによるサイトでやっちまうと不正アクセスとかなんとかでお縄になってしまうので、もちろんローカルホストにて行う。サクッと環境を作るべく今回はDockerで。

環境

macOS 10.12.2

WordPressの環境を立てる

Dockerが入ってなければインストールする。DockerはLinux系でないと動かないので、MacだとDocker for Macとかを入れVM上にて行う。

docker-machineを起動した後、適当な場所でディレクトリを作る。

mkdir wordpress
cd wordpress

Docker公式に空のWordpressを立ち上げるdocker-compose.ymlがあるので、wordpressのバージョンを4.7.0にしてwordpressディレクトリに保存。

Quickstart: Compose and WordPress - Docker

version: '2'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: wordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:4.7.0
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data:


docker-composeにて立ち上げる

docker-compose up -d

起動できたか確認

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
8378a4f3b730        wordpress:4.7.0     "docker-entrypoint.sh"   2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp     wordpress_wordpress_1
2af784067a28        mysql:5.7           "docker-entrypoint.sh"   2 hours ago         Up 2 hours          0.0.0.0:3306->3306/tcp   wordpress_db_1

あーいいっすねー。
ブラウザで確認する。VM上でやってる場合はIPが127.0.0.1localhostではなく、VMのIPなので

docker-machine ip

で得られたIPに8000ポートでアクセス。自分の環境だと192.168.99.100だったので

http://192.168.99.100:8000

にアクセス。長ったらしいIPは好きじゃなので

sudo vi /etc/hosts
#Docker
192.168.99.100 wp.docker

を追記して http://wp.docker:8000 でアクセスできるようにした。

アクセスするとWordpressインストール画面になるので、ログインID/PASSなど設定して完了。
サンプルに記事もダミーで作る。

f:id:shalman:20170210143324p:plain

かっこいいウェッブサイトができました。一番上の記事を書き換えます。

Postmanのインストール

今回の脆弱性WordPressREST APIによるものなので、悪意のあるパラメータをくっつけて改ざんするというものらしいです。
POSTするならcurlでもいいのですが、僕はカールおじさんじゃないのでGUIでぽちぽちやりたいです。ということでChromeアプリのPostmanを使います。

chrome.google.com

アイコンがイカしてるね。デイリーポータルZくんみたい。
起動し、無料会員登録すると、メイン画面が出てくる。

f:id:shalman:20170210144635p:plain


上のURL入力するフォームに該当APIのエンドポイントを入力すると

f:id:shalman:20170210150027p:plain

JSONで帰ってくる。APIだもの。

実行

参考サイトにならって、叩くエンドポイントとフィールドを伏せておきます。

これをPOSTメソッドにプルダウンから切り替えて、BodyタブのForm-dataにパラメータを突っ込んでく。
パラメータはidと、改ざんしたいフィールドを入力。

idは記事番号に適当な文字をくっつけたもの(ex. id:4の記事を書き換える→4A)
Sendボタンをクリックして帰ってきたJSONを見て、ステータスコードが401とかではないことを確認。

サイトをリフレッシュすると

f:id:shalman:20170210150407p:plain

本文が書き換えられて危険なWebサイトになってしまいました。

脆弱性の原因

参考にしたサイトでわかりやすく解説されていました。こちらを確認されたし。
WordPress 4.7.1 の権限昇格脆弱性について検証した | 徳丸浩の日記

get_post関数のラッパーを作って、invalidなパラメータが入ったらエラーを吐くようにしたようです。

所感

そもそもWordPressってAPI提供してたんすね。

updateの認証はupdate_item_permissions_check関数が負ってるっぽいけど、最初にセッションから確認しないのが違和感あるなー。

get_current_user_id関数がちらほら見えるので他はやってるんだろうけど、このcheck関数はget_postがemptyでもcheckがtrueになるのでキモさある。こんなもんなのかなあ。あと、ブラックリスト的にエラーを投げてる(原則true)のは怖いってことがよくわかった。

どの関数が今回の責任なのかと考えると、認証周りが甘いからcheck関数かなと思ったけども、int型以外許してとりあえずemptyにしてたget_postが悪いことになるんだな。なるほど。

intキャストで末尾のStringが消えるのもトリックだった。知んかった。ほえー。

セクション区切り


卒論は参加賞、修士論文は努力賞、博士論文は勲章

参加できた。

Wordは苦手だった。小学校時代からOfficeは触ってたけども教えてもらったわけでもないので、知ってる気にはなってるけど使いこなせてはなかった。今回で数式、参照リスト、目次、カスタムページ番号の挿入法とか細かいところをフォローできた。でもまだ苦手。

内容は満足できてないのでやっぱり参加賞。担当教員のチェックも参考文献リストの修正が主だったし、考察の甘さとかつっこまれず。興味がないんだろうなーと言う感じ。「卒論は4年間の集大成」と言われると懸念が残る。だからといって2年前に戻ったとしても同じ結果だったと思う。

あてもなくやる気には満ち溢れている。次なにやろうかと思っているところ、手元にあった「はじめてのパターン認識」を読んでる。
学部1,2年に受講した統計学の復習とともにやってる。実装するかはわかんない。

大学院では、機械学習をやるかわからないけども、CV系に手を出すかもしれないので、道具をあらかじめ仕入れておきたい。
技術の学習コストは大きい。一朝一夕で習得できる技術は少ないので、地味にこういった節目の時に準備しとくと後が楽だと思う。

あとはgithubに並べて、名刺代わりになりそうなライブラリを作りたいと思ってる。多分不満ドリブン開発。「これあったらいいよね」がキーワード。今の所あんまり不満がないので長期目標。

最近はWebにめっきり興味がなくなった。3年くらいインターンという名のバイトをやってて、ステップアップする感覚がモチベーションに繋がってたんだろう。今ももちろんモチベはあるけど、Webエンジニアになりたいとは強く思ってないし、修士研究と独立した勉強になってしまう。

来月からまた実家から離れて都内に住もうと思う。仕送りなんて打ち出の小槌は存在しないので、家賃ほかを稼ぐため大学院でもバイトはしないといけない。Web続投でいくか、それとも研究に寄ったバイトで運用していくか悩ましいところ。