モスバーガー不調の理由について私見

職場にモスバーガーが傍にあるため、一時期は結構な頻度でランチにモスバーガーを通っていましたがあまり最近は行ってませんでした。ところで、モスバーガーの不調についてこのような記事が出ていたのを見ました。
headlines.yahoo.co.jp

要するに完全禁煙されていないのが高級志向とミスマッチしているというのが理由だと。それ自体のちぐはぐさについては同意なんですが、不調の理由がそれなのは何か私の感覚とは違うと思ったので、あまり行かなくなった理由についての私見を書いて見ようと思います。なお私はモスのバーガーについては大好きですが、昼食としてはあんまり行ってないなあという状態。

理由1: 新商品があまり出なくなった

個人的には最大の理由はこれ。私は「新商品出て食べに行く」→「普通のも食べなくなってもう一度行く」というコンボでよく通っていたのでご当地バーガー以来なんか目新しい新商品が出てないのが厳しい。とびきりハンバーグサンドのベーコンのやつはあんまりにも王道すぎて私には魅力いまいちでした。。またスパイシーカレーバーガーが食べたい。

理由2: セットやサイドメニューがいまいちで高い

恒常的にあんまり行っていない理由としてはこちらがでかい。バーガー一つだけだと食事としては足りないのでサイドメニューを付けたくなるんですがこの選択肢が厳しい。モスのサイドメニューはマックと同じく、ポテト・ドリンク・チキンが主なんですがどれもこれもいまいちなのと微妙に値段が高いのがきつい。
ポテトについてはあまり好きなタイプの味ではなく、せっかくの美味しいバーガーがなんとも虚無る味です。むしろマックの安っぽいポテトの方が好みであります。チキンは油抜きすぎていまいち口に合わず、そもそもバーガーに上乗せで肉の揚げ物とるのもなんだかなあという思いもあり…
またドリンクがSでも190円と高いためにセットを頼むと+400円以上の結構なお値段取られてしまうのが厳しいです。ここらへんはマクドナルドの方がよく出来てて、バリューセットなら単品+300円でポテトSにして+250円で済むのでついついそれを選びます。

結果として

「バーガー + 何か + ドリンク」でランチにするという選択肢がモスでは取りづらいです。というかその選択をすると非常に損した気分になります。なので私の場合はバーガー2つ+水でモスのランチとしているんですが、やはりバーガー+バーガーっていうのはなんか微妙な気分になります。いやとても美味しいんですが。
マーケティング的には800円〜1000円出していいから美味しくて満足感のあるランチが食べたいという層にいまいちリーチ出来てないのでは?という感じを受けます。対してマクドナルドは最近のジャンキーでデカイ新商品とバリューセットという組み合わせがこの値段帯のランチとしては少なくとも腹が膨れて満足できるセットになっているのが強いと言わざるを得ません。

最後に:モスバーガーへの意見

とりあえず期間限定の新商品くださいというのと、何かポテトでもチキンでもない、セットの新機軸を出してほしいなあと思います。それこそバーガー2つのセットでもいいんですけど、バーガー + Somethingで腹に溜まって美味しいバーガーの余韻を壊さないようなのを頼んます。

2017年冬クソアニメの感想

2017年もほぼ終わり、今期のクソアニメ二TOPだったDYNAMIC CHORD王様ゲームが終わってしまったのでそれら二つの感想を簡単ながら残していこうと思う。ワグナミックコードがまだ終わっていない気がするが、二強ほどではないのでまぁいいだろう。

DYNAMIC CHORD

全てのクソアニメを過去にした異世界スマホを過去にしたと言っても過言ではない本作の感想を一言で言うと、pan・間・回想・SEの芸術だった。低予算かあるいは逼迫したスケジュールの中で作画の枚数は減り、絵の出来も悪くなっていくものだが本作はそれらを見事にシュールな笑い、シリアスな笑いにまで消化した作品だった。
特に見事だったのが二話で、異様にまでに多いpan、逆に異常なまでに少ない台詞、台詞があっても「あっ」「んっ」「ハッ」という台詞なんだかなんだかよく分からない声というべきもの、台詞やシーンシーンで挟まる妙に長い間、それら全てが渾然一体となってシュールな笑いを提供してくれて、何度もみたがその度に腹筋が痛くなるぐらいに笑ってしまった。DYNAMIC CHORD二話にはクソアニメ・低予算映画に大切なものが全部詰まっているんだ。
まだダイナミックしていない方々も一話と二話を是非見て欲しい。クソアニメの歴史に大きくその名を刻んだであろう本作で大いに笑って欲しい。
anime.dmkt-sp.jp

王様ゲーム

こちらは低予算の芸術を見せたDYNAMIC CHORDの対局にある本格派、あるいは正統派のクソアニメだった。とにかく本当にストーリーが酷くて見てるこっちに対するダメージが酷い。視聴にはアルコールとTwitter実況が必須の作品だったと言っていいだろう。(実はあんまり実況できていなかったんだが)
何が酷いって王様ゲームのルールと中身が酷い。とにかく指定される命令の内容が理不尽すぎる。「サイコロ降って人数分指名しろ」というものもあったが、駆け引きも何もあったものではなく、翻弄される被害者達の死に様を無の表情で眺めるしかないものだった。また、最終話まで見ても王様ゲームそのものに勝つ方法は結局見つけられずじまいで初手で全員死ぬのが最適解のようなオチで終わってしまう。ホラーとしてはそれでいいのだろうがゲームとしては最悪ではなかろうか。
本作を見るとよく似たシチュエーションであったAnotherという作品の凄さがとてもよくわかった。Anotherも大変理不尽な状況ではあるものの、それから逃れる方法は死者の発見であると最初から明示されている。物語も死者の発見に向かってずっと進んでいき、最後には解決のカタルシスを迎える。そこには物語全体を貫く駆け引きがあると思う。王様ゲームは解決の方法が示されないために物語全体における駆け引きが存在せず、主人公たちはただただわけのわからない命令に翻弄されていくだけである。視聴者である私も無の表情で王様の命令に困惑させられた本作は一級のクソアニメであり、イセスマ以上のツラさがある作品だった。最大MPを上げる修行をしたい人にオススメの作品である。それ以外の人はやめた方がいい。

anime.dmkt-sp.jp

anime.dmkt-sp.jp

末文

イセスマ以上のものは当分来ないだろうと思っていたら、DYNAMIC CHORDという予想外もいいところからの襲撃に大歓喜した冬だった。来年もまたクソアニメを追いかけていきたい。

HTML/CSSコーディングをやって気づいた勘所

バックエンドのサーバーサイドプログラマにして、インフラエンジニアやってましたが、ここ最近はフロントエンドというかHTML/CSSコーダーもやっている自分です。そろそろ勘所というか既存資産に対して愚痴を言うべき箇所が分かってきましたので書いてみようと思います。中上級者には釈迦に説法の内容なので温かい目で見て頂ければ。。なお、SPAはやってないので一項目からSPAのことガン無視してますのでご容赦ください。

初期状態表示にJavaScriptを使わない

ブラウザはDOMとCSSを完全に読みこんだ後にレンダリングを始め、しばしばJavaScriptの実行はそのレンダリング後(よくあるのはDOMContentLoaded後)になってしまいます。結果として、JavaScriptで画面のデザインをやると以下のような順序でレンダリングが行われ崩れた画面が表示されます。
1. HTMLとCSSによる中途半端なレンダリング結果がユーザに見える
2. JavaScriptのロードが開始され、この間中途半端な状態が表示され続ける
3. JavaScriptが実行され完全な画面が表示される

崩れ方にもよりますが、2の状態の間の見栄えがとても悪い上に、2から3に移る時に画面が高速に変動するため目に負荷を与えるので避けるべきなんでしょう。特にファーストビューに該当する部分はCSSのみでデザインして2が発生するのを防ぐことができます。ファーストビュー内でJavaScriptによる初期状態のデザインが避けられない場合は、ローディング画像や適当な枠を用意して2から3に遷移するところで画面が大きく動くのを防ぐという対策はありますが、これを綺麗にやるのはなかなか難しく、いいライブラリを探すなりvisilibity: hiddenを信じるなりが必要でしょう。

この問題については、デザインを外注した画面と言えど注意が必要と思われます。特に発注先で、ローカルのサーバを使い、デザインに関係ないJavaScriptを消している状態でコーディングしている場合には、ネットワーク遅延や他のJavaScriptによる遅延がほとんど発生しないため初期崩れの問題が見えづらくなっている可能性があります。 受取後も注意して見る必要がありますし、発注段階で注意点にあげておいていいと思います。

仕組み上この手の問題を回避しやすいAMPの採用も検討するのもいいと思います。というか、フルAMPしたい。怪しいJavaScriptレンダリングが遅くなる地獄から解放されたい。。。

floatよりflexboxを使う

要素を横に並べるためによく使われてきたfloat属性ですが、改修を続けていくうちにワンオフの技巧的なCSSになってしまいがちに思われます。floatでやりたいことはだいたいflexboxで出来てよりシンプルに書けるのでそっちに置き換えていくべきです。flexboxは横に並べた後の整列もやってくれますのでCSSを大きく削減できますし、場合によってはデザインのためのJavaScriptをなくすこともできて、パフォーマンス問題から解放されるかもしれません。また、flexboxには整列のためもオプションが多く、margin・paddingをあまり調整せずとも機械的にきれいな整列をできる場合もままあります。研究すると救われることも多いでしょう。

DOM構造を安定化させる

これはサーバーサイド(つまりPHP)やってる自分だから悩まされるポイントだと思います。例えばボタンの長めのものと短めのもの、onとoffのものでHTMLのDOMの構造をほいほい変えるのは本当に止めましょう。divタグがliタグになってたりするだけでも大概面倒なことになるのに、divとaタグの順序が入れ替わってたりして更にCSSがその順序に依存してるともう発狂します。

こうなるとPHPのテンプレート側でDOMの違いを吸収するしかないのですが、いちいちパターンごとに完全に別のテンプレートを作れば管理性が失われますし、一つのテンプレートでif文で吸収していくのも中々大変です。(JavaScriptで吸収するという手もありますが、初期状態表示の問題を引き起こす可能性もあります)DOM構造はそのままにパターンごとにクラス名だけを書き換えるのが理想ですね。。

深いセレクタを持つCSSを作り込まない

散々言われている話ですが、やたら深いレベルのセレクタを持つCSSを作ると苦しみます。セレクタが深いというのはつまり画面のDOM構造に強く依存しているということであり、そのままでは他の画面に適用できず、コンポーネントの再利用性が低くなります。また単純に同画面内でコンポーネントを移動しただけでもCSSの適用が失われることもあり、デザインの修正をおいそれとできないことにもなってしまいます。BEM等々のネーミングルールやgrepなどのツールを活用してクラス名の衝突を避けつつ、深いセレクタを回避していきたいところです。

また、どちらかというとマルチクラスでCSSコーディングしているときの問題なのですが、重要度を高めてデザインを切り替えるということをやる時もレベルが深すぎるセレクタがあると苦しみが発生します。5段のセレクタを6段で殴るというようなことが何度も起きてCSSに手が付けられなくなっていきます。思うに人間は2段を超えるCSSセレクタを完全には把握しきれないのです。3段目に到達したらもう増やせないということを意識して、段を下げ、それ以上段を増やさない努力をするべきでしょう。

余談

これを書いていた頃に二つ驚かされたことがありました。
一つはHTML5カンファレンスが開かれたらしく、はてぶホットエントリーでもスライドが流れてたので見ましたが、自分と見てる世界の違いに愕然としました。SPAだのReactだの全くやらないのでSSRだのなんだの言われても「何だこの異世界人…」みたいな気分になりました。
もう一つは、新しいスマホの性能についてです。最近スマホを新調したのですがこれでウェブを見るとJavaScriptで表示や反応が遅かった画面が一瞬で表示されてしまいました。おかげでチマチマした最適化を行っていた自分が馬鹿馬鹿しくなってきましたが、低性能スマホは世にも自分の手元にも溢れているのでこれからもデザインのためのJavaScriptの抹殺を続けていきます…

打ち上げ花火、下から見るか 横から見るか(2017)の感想(ネタバレあり)

感想ブログがちらほら上がっているのに刺激されたので私も感想を残す。
なおネタバレありなので嫌な方は回避されたし。
















まず本作はジェネリック化物語であり、怪異を宿した美魔女たるヒロインが主人公たる中学生男児を誘惑し迷宮に絡め取っていく話だったと強く感じた。化物語との違いは、忍野が存在しないために怪異の解説や救済が存在せず、正体不明の怪異に飲み込まれたのか脱出したのか不明なまま終わる。。というのが本作が狙っていた余韻なのだろう。

が、正直あまり成功しているとは思えず、金を掛けたクソアニメと化しているというのが私の感想だ。
何と言ってもループあるいは迷宮を作り出している怪異(あるいは魔具)の説明がほっとんど無かったのはキツイ。
ファンタジーにせよSFにせよ、非日常の現象を生み出す道具の背景が物語に深みを与えるものだが、本作ではそこがヒロインが海で拾ったということくらいしかわからず、何故その力が得られたのかという部分が雲散霧消してしまっている。ある意味パズル問題のように、鑑賞者はそういう道具が存在するのだから無条件に受け入れて解答を考えろと言われてるようだ。
また、本作の魔具はタイムリープを引き起こすだけの存在に留まらずに願望器へとなっているのも厳しい。
タイムリープものの醍醐味である、過去のルートをどう書き換えていくかの部分がほとんど魔具の力で達成されてしまうため、この部分を楽しむことができなくなってしまっているのだ。
総じて魔具を面白くストーリーに組み込むことに失敗しているように感じた。

なればキャラクターや演出で楽しみたかったところだが、そちらも本作は私には厳しかった。
ヒロインたるなずなの美魔女っぷりは私も興奮したのだが、ぶっちゃけ中学生という設定を完全に無視した色気を出しているため、怪異に取り憑かれているようにしか見えなかったのだ。逆に主人公はヒロインに対して幼すぎる上に吃りが非常に多く、リアリティがあるといえばあるが面白みに欠けており、両者ともにイマイチだった。
演出面については、今のシャフトの化物語そのものであり、尾石達也のキレッキレの演出大好きな私にはあまり響かなかったがまぁこれは好みだろう。

「文学的な作品なのにエンタメ作品として広報してしまったので失敗した」という擁護をちらほらネットで見るが、正直これは外れではないかと思う。
エンタメ作品として売る以上はエンタメ作品らしい作りをするべきで、新房昭之のシャフトはそのための原作改変や演出をよくやってきた組織だ。
本作も怪異の正体についての言及をもう少し入れて物語に入り込みやすくするとか、エンディングについても主人公がたどり着いたルートをもっと示唆するギミックを入れるとかをやって良かっただろう。

総評としては、金を賭けたクソアニメ感のあるパッとしない映画であると主張する。
ハンターの皆様はおそらく楽しめると思うので見に行くべき映画ではなかろうか。
あるいは蠱惑的なヒロインを楽しみに見に行くのもいいかもしれない。
点数は… 100点満点中50点ぐらいとしておこう。

時間の支配者に心奪われた

2017年夏アニメ一覧を見てる限りはクソアニメ成分が全く足りないなあと思ってたんですが、まぁそんなものを一気に忘れさせてくれるクソアニメが来てくれました。「時間の支配者」です。
anime.dmkt-sp.jp


何が凄いってこの作品、Kやハンドシェイカーのオサレ系アニメテイストに、ハオライナーズの中華系アニメのギャグテイストを混ぜ込んで、さらに日本のテンプレクソアニメの文法が入っているんです。結果として出来上がったのが、オサレ系バトルアニメシーン、中華系のクソださギャグ台詞回し、ゲストヒロイン相手へのクソアニメ的説教。エースを投げるからACE SHOTという直球極まりないクソださネーミングという四連コンボですよ。石鹸枠の延長にあるクソアニメを見た感じの、胸を掻きむしられる痛みが本当に心地良いものでした。この三ヶ月は金曜こそがもっともテンション上がる日になっていきそうです。

AMP loginをちょっとだけ試したときのメモ、あるいはAMP loginのレスポンスの注意点

私が期待知続けているAMP技術のlogin周りを試してみました。まぁ試しただけで殆ど何もできてないんですがメモ。


www.ampproject.org

AMPのlogin機能でできることの大体は、HTMLの特定の要素の表示非表示のようです。やるべきことはampのログイン機能用のスクリプトのimportの記述、ログイン機能用の設定の記述、そして何よりもAuthorizationのレスポンスを返すサーバの用意です。

まぁimportについては適当にコピればいいです。認証やらログインやらの設定周りをscriptタグで記述します。localhost:8080を認証サーバとして適当に建てた時の適当なサンプルはこんな感じです。

<script id="amp-access" type="application/json">
        {
            "authorization": "http://localhost:8080/authorization?rid=READER_ID&url=CANONICAL_URL&ref=DOCUMENT_REFERRER&_=RANDOM",
            "noPingback": "true",
            "login": {
              "sign-in": "http://localhost:8080/login?rid=READER_ID&url=CANONICAL_URL",
              "sign-out": "http://localhost:8080/logout"
            },
            "authorizationFallbackResponse": {
                "error": true,
                "loggedIn": false
            }
        }
</script>

scriptのid部分がまずamp login機能を使って表示非表示にする要素の属性の名前になるみたいです。中身は色々書いてますがかなーり適当で、authorizationとauthorizationFallbackResponse以外実質つかってないです。あとauthorizationのurlもhttp://localhost:8080以外意味ないです。すんません。

この設定でamp-access属性を記述した要素をログインの成否で表示/非表示できるようです。例えばこんな感じ。

<span amp-access="NOT loggedIn" role="button" tabindex="0" amp-access-hide>
  <h2 class="m1">Please login to comment</h2>
   <button on="tap:amp-access.login-sign-in" class="ampstart-btn mx1 mt1 caps">Login</button>
</span>

上の例ではログインできていない状態だとspan要素が非表示になります。

これでページを開くと、設定のauthorizationのURLにリクエストが走り、返ってきたJSONの中身を見て、loggedIn: trueが入っていれば認証が成功したとみなすようです。

そこでとりあえず必ずloggedIn: trueを返す鯖を用意したんですが、わりとUndocumentedなことが多かったというのが今回のメモの本題です。

今回は直接ファイルを開いたときに認証させてみたので、CORSの設定が必要でした。実際にAMPを使う場合はampproject.comから開くことが多いでしょうから結局CORSの設定は必要になるでしょう。ヘッダーに、

Access-Control-Allow-Origin: "null"
Access-Control-Allow-Headers: "Origin, X-Requested-With, Content-Type, Accept"

を付与します。注意点は、Access-Control-Allow-Origin: "*"は使えないということです。ampのスクリプトがセキュリティ的に駄目だということで弾いてしまいます。

で、ドキュメントだけ見ればこれでいいんですが、実は他に色々とヘッダーが必要です。以下のように。

Access-Control-Allow-Credentials: true
access-control-expose-headers: 'AMP-Access-Control-Allow-Source-Origin'
amp-access-control-allow-source-origin:  'file://'

まず、Access-Control-Allow-Credentials: trueが必須です。単純に認証を行うAPIであることを示すのにこのヘッダが必要なようです。その他にAMP用のヘッダがまだ2つも必要です。
1. access-control-expose-headersで AMP-Access-Control-Allow-Source-Origin を指定して該当ヘッダを見るようにする
2. amp-access-control-allow-source-originで認証元のhtmlファイルのoriginを指定する。

これらを経てようやく認証が成功し、要素が消えることを確認できました。
gistはこちらです。

gist.github.com


AMPは色々と夢が広がるんですが、まだまだドキュメントが少なくて色々厳しいんですよねえ… はよう本なりなんなり出てくれると嬉しいです。

2017春アニメ総論

2017年春アニメも終わってしまいましたので総論的な感想をば。

当期は一言で言うとクソアニメと工業製品的アニメの大豊作で、私としてはとても楽しい3ヶ月でした。放送前からロクアカ、マキャベリズムとタイトルからしてラノベテンプレクソアニメ臭あるいはトリニティセブン臭に溢れる作品に大期待しておりました。

 

その中でも当期最高のクソアニメはなんとも言ってもクロックワークプラネットでしょう。ストーリー・話のテンポ・謎の演出と三要素合わさった正統派クソアニメで、私の木曜日最大の楽しみになってくれました。とにかく雑としか言いようの無いストーリー展開がほんと楽しかったです。あと11話〜最終話の謎空間での裸シンクロダンスはなんですか。ぼくらクソアニメ愛好家を笑い殺す気ですか。腹筋は引きつりっぱなしでしたよ。

anime.dmkt-sp.jp

 

ロクデナシ魔術講師と禁忌経典はまた大分違った展開を迎えました。前半ではテンプレアニメと見せかけてテンプレらしい部分を外しに来てくれていたんですが、リィエル(青髪の娘)編に突入したあたりからはテンプレ展開というかクソアニメ展開満載になりましたね。特に最終回は見るからに「卒業」っぽいなあと思ったら本当に卒業式に乱入するわ、お前誰だよってキャラとの因縁が述べられるわ、取り逃がしてなんか良い話っぽいENDで終了するわで虚無アニメの領域に突入してました。最初三話だけでは判断できないものですね。

 

放送前はトリニティセブンライクなクソアニメじゃろ〜と予想していた武装少女マキャベリズム。金髪チョロイン亀鶴城メアリに心おられて私は原作買ったわけですが、原作だと女帝こそが真のヒロインであり萌えキャラなんすねえ。さいしょっからデレッデレで最初に制服でノ↑ムラとあった後に胸を押さえて過呼吸に陥ってた女帝がアニメでも見たかった作品でありました。個人的には原作を先に買ってしまったので失敗したなーっていう作品です。大変おもしろくはあったんですが原作のが好きねえってやつでした。

 

当期最高の工業製品アニメはなんといってもエロマンガ先生でしょう。ぶっちゃけ原作では俺妹をかなーり薄めて万人受けするようにした作品と感じており、あまり楽しめなかったのですが映像化でとんでもない作品になりましたね。今度の妹ヒロインたる紗霧の臆病さ・赤面・桐野から遥かにマイルドとなった怒りの表現・随所に出てくるデレの面、工業的な萌えをがっつり詰め合わせたものがここまで良いものになるとは。メディアの違いというものを完全に活かしきった作品でした。まぁ僕ら木戸衣吹愛好家的には木戸ちゃんがおちんちんと叫んでるだけで相当満足しましたが!!

 

他にも、別々の方向性のクソアニメを示したつぐもも七つの大罪美少女アニメでありつつもクソアニメの文脈を取り入れたフレームアームズガール、物語の面白さを示そうとしたID-0正解するカドなどなど、見るべき作品がてんこ盛りだった三ヶ月でした。おかげで私の睡眠リズムは崩壊し、肉体的には大ダメージを受けているときもありましたが、精神的には救われ続けておりました。

2017年夏アニメもこのように楽しめるものが満載であることを期待しております。