はてなキーワード: POSとは
暗号通貨のコンセンサスアルゴリズムには大きく分けてPoWとPoSという二種類がある。保有するコイン数に応じて報酬を得られる確率が決まるPoSは、大量の電力を消費するPoWに比べてエコで優れていると思われがちだが、実は深刻な問題点があり、その価値は0に収束することが示せる。
暗号通貨は誰でもHF(ハードフォーク)によって複製を作ることが可能である。例えば昨年はビットコインからビットコインキャッシュを始めとする様々なHFが生まれた。元のコインを所有しているものはHF先のコインも手にすることが出来る。これは暗号通貨の世界だけを見た場合には錬金術のように見えるかも知れないが、外の世界を含めて考えてみるとマイニングによる改ざん検証能力が分散する(二つのコインを同時にマイニング出来ない)ため本質的な価値は増加していないと言える。つまり、HF前のコインの価値をA、HF後のコインの価値の和をB+Cとすると、A=B+Cが成り立つ。
一方でPoS型のコインの場合、HF後の二つのコインを同時にマイニングすることが可能であり、またそれが最も経済的に合理的である。従って、HF後の二つのコインはHF前のコインと同じ改ざん検証能力を持つことになる。つまり、HF前のコインの価値をA、HF後のコインの価値の和をB+Cとすると、A=BかつA=Cが成り立ち、HFによって価値の総和はAから2Aに変化することが分かる。ここで、A>0を仮定すると、HFを繰り返すことにより無限に価値が増え続けることになり矛盾。従ってA=0が導かれる。
何で一括置換機能消えたん……
VERSION BUILD=1001 RECORDER=CR SET !REPLAYSPEED MEDIUM SET !ERRORIGNORE YES URL GOTO=http://b.hatena.ne.jp/username/OKIKAE/ TAG POS=1 TYPE=A ATTR=CLASS:js-keyboard-entry-page-openable TAG POS=1 TYPE=IMG ATTR=ALT:ブックマークを編集 TAG POS=2 TYPE=LI ATTR=TXT:OKIKAE TAG POS=1 TYPE=LI ATTR=TXT:オキカエ TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/my/bookmark ATTR=* WAIT SECONDS=20
ユーザ名usernameで使用してる「OKIKAE」タグを「オキカエ」に一括置換する場合。Chrome版で実行済み。最後に20秒待ってるのは、置換後に一覧ページへ反映されるのが遅れる為。
ただ自分でやった時(当然ユーザ名・タグは別の名前)に、2013年11月頃の分で一向に置換されないままループしたりで安定しない。
レジ打ちの人が商品の金額をどんどんPOSに登録した後、支払は機械相手にやるってやつ。支払方法は現金でもクレジットでもポイントカードでもOK。
これ読んで思い出した。
近くのスーパーが長年、現金のみ支払だったのが、この前レジシステムの改修を行った。
「おお、いよいよカードが使えるようになるか?」と期待したら
支払は機械相手にやるように変更されただけで、支払方法は相変わらず現金のみだった。
んで、タイトルの通り。
勝手な推測だけど、クレジットカードにしろ、電子マネーにしろ手数料的なものがかかってしまって、それが商品価格に転嫁されることを店が嫌ったのだろう。
コンビニとか駅の売店とか、少額の買い物で小銭ジャリジャリやりたくないときは確かに電子マネー便利だと思うけど、個人経営の小さなお店とか電子マネーに対応してないところがまだまだたくさんあるんだからしょうがないじゃん。
あと、電子マネーとかクレジットって、お金使ってる実感が薄くなりがちだから節約には向いてないと思う。物理的に財布からお金が出ていって、「残りが少ないからピンチ!」みたいな実感がないと金銭感覚の甘い人はどんどん使ってしまうと思う。っていうか電子マネー・クレジット推進派って、店員の手間を省くだけでなく、客の財布のひもを緩めるためにやってるんじゃない?あと、クレジットは店側も手数料取られるし、現金が入ってくるまでに時間がかかるので、ある程度の高額商品で使ってもらわないとあまり喜ばれないのではないかと思う。
個人的に最強だと思っているのはデビットカードと自動精算機。デビットカードだとクレジットカードと違ってリアルタイムで口座からお金が引き落とされるので、残高を意識しやすいし、残高以上の金額は使えない(担保定期預金とかあれば別だけど)。自動精算機ってのは、私がよく行くスーパーで採用されているんだけど、レジ打ちの人が商品の金額をどんどんPOSに登録した後、支払は機械相手にやるってやつ。支払方法は現金でもクレジットでもポイントカードでもOK。店側では釣銭を用意したり売上金を回収したりする手間がかかるけど、おそらくその作業ごと精算機を管理している業者にやらせてるんじゃないかと思う。特にレジに行列ができてるときに、時間かけて小銭を探したりする客待ちをしなくていいのは素晴らしいと思う。
iPod Touch (6th generation) が好きすぎる。
なんといっても軽い。
だから手に持っていても疲れない。
小さいのはよいことだ。
カードのように、2本の指でつまんで持ち歩くことができる。
むしろ、これでよいと思っている。
電子書籍を読んでいると、画面が小さければ小さいほど視線の移動が小さくて済むので、楽だと感じる。
Kindle Paper Whiteも持っているが、もうiPod TouchでしかKindle書籍は読まなくなってしまった。
軽いので、立ったまま片手で物を書きつづけることができる。
フリック入力に慣れると、キーボードを使って各スピードとそれほど変わらなくなった。
8000字ほどのテキストをiPod Touchだけで書くことも最近はよくある。
安いので、壊れたり失くしたりしても、緊急の時はその辺の電器店に行けば代わりが買える。
難点は、ウェブブラウジングがもっさりしているように感じること、バッテリーがすぐなくなることなど、あげればきりがないが、これくらいの価格で、こんなに小さい端末なら、しょうがないかなと思っている。
iPod Touchの「本来の使い方」なるものがあるかどうか知らないが、音楽用のデバイスとして使われているのを街中でかなり見かける。
POSシステム用のサブディスプレイとして使われていたり、サイゼリヤ等のファミリーレストランの注文管理用端末として使われていたりする。
iPod Touchがなくなると困る企業が結構あるのではないだろうか。
iPodはすでに終了したビジネスだといわれて久しいが、どうかiPod Touchは退役させないでほしいなと切に思う。
バラ売りの米ナスを一本買った。
確か100円くらい。
PP袋(訂正)ポリ袋に入れてバスケットに放り込み、他の買い物と合わせてレジに持っていく。
レジ打ちの(多分)高校生の子が、米ナスを手に取ったところで一瞬フリーズした。
あれっ?と思ったけど、すぐに作業を再開したので、その場はそのまま見守ることしかできず。 ※失敗1
会計が終わって、しかし先程のフリーズが引っかかったのですぐさま確認すると、案の定、嫌な予感は的中していた。
値段は米ナスの約半分。
たかだか差額50円程度の話だし、バラ売りの野菜なんて在庫をPOS管理している訳でもないだろうから、余程スルーして帰ろうかと数瞬悩んだ。
もしも話が逆で、50円損をするのが自分であれば間違いなく帰っていたと思うけど、たかが50円でも不当利得を放置するのは気持ちが悪いし、厳密には犯罪だ。
意を決してレジに並び直し、数分前レジ打ちをした当人に、会計が間違っていたことを話す。
その場で処理を訂正してもらうか、それがシステム的に面倒なら、追加でナスを買い、会計は米ナスで切って貰って相殺してもいいかなーと考えていた。
返品処理をするならサービスカウンターだろうけど、自分としてはレジ打ちの子のところで話を収められればベストだと思っていた。
ところが、いざレジで話をすると、レジ打ちの子は慌ててバックヤードに駆け出していってしまったので、詳しい話をするタイミングを逃してしまった。 ※失敗2
結局、奥から出てきたベテランの店員さんにサービスカウンターで上記の相殺処理をしてもらい、私はナスと米ナスを一本ずつマイバックに入れて、悶々としながら帰途に就いたのだった。
振り返ってみて、思い付く私の失敗は概ね2つ。
一つ目は、レジ打ちの子がフリーズしたときに、さり気なく「米ナス、一本ね」と伝えることができなかったこと。
二つ目は、訂正を求めてレジに並んだときに、最初からナスを持っていって相殺を提案しなかったことだ。
そもそも、高校生ぐらいの子であれば、ナスと米ナスの見分けがつかなくても仕方がない。
米ナスは定番商品というわけでもないし、学生バイトにすべての商品を把握しろというのも酷な話だろう。
はたして私は正しいことをしたのだろうか。
自分の罪悪感を軽くするために、ベテラン店員さんの手を煩わし、店には50円程度しか得をさせず、バイトの子にも嫌な思いをさせることが、はたして正義に悖る行為ではなかったと自信を持っていえるのか。
例え犯罪者の汚名を受けようとも、50円をネコババすることこそが、神の御心に適った行いであった可能性はないのだろうか。
正義の在り処ついて、未だ答えは見えない。
それが私にとって何よりの慰めになったことは言うまでもない。
clang: warning: argument unused during compilation: '-I .'
clang: warning: argument unused during compilation: '-I proto'
clang: warning: argument unused during compilation: '-U _FORTIFY_SOURCE'
screen.c:1513:17: warning: self-comparison always evaluates to true [-Wtautological-compare]
if (curwin == curwin)
^
screen.c:5676:19: warning: self-comparison always evaluates to true [-Wtautological-compare]
&& Columns == Columns)
regexp.c:3790:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:3790:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:3790:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:4052:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:4052:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:4052:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:5276:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:5276:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:5276:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:5337:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:5337:24: note: remove extraneous parentheses around the comparison to silence this warning
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
~ ^ ~
regexp.c:5337:24: note: use '=' to turn this equality comparison into an assignment
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
^~
=
regexp.c:5355:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:5355:24: note: remove extraneous parentheses around the comparison to silence this warning
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
~ ^ ~
regexp.c:5355:24: note: use '=' to turn this equality comparison into an assignment
{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };
^~
=
regexp.c:5516:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:5516:22: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:5516:22: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6213:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6213:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6213:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6266:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6266:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6266:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6294:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6294:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6294:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6325:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6325:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6325:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6341:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6341:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6341:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:6363:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:6363:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:6363:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:7711:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:7711:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:7711:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
regexp.c:7740:23: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
regexp.c:7740:23: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
regexp.c:7740:23: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
In file included from regexp.c:8043:
./regexp_nfa.c:3995:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:3995:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:3995:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4014:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4014:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4014:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4036:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4036:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4036:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4055:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4055:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4055:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4086:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4086:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4086:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4227:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4227:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4227:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4609:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4609:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4609:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4670:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4670:22: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4670:22: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4733:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4733:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4733:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4767:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4767:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4767:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:4954:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:4954:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:4954:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5106:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5106:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5106:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5120:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5120:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5120:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5144:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5144:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5144:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5231:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5231:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5231:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5486:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5486:25: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5486:25: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5608:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5608:21: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5608:21: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5897:23: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5897:23: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5897:23: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:5987:26: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:5987:26: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:5987:26: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:6873:26: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:6873:26: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:6873:26: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:6997:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:6997:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:6997:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
./regexp_nfa.c:7095:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((rex.reg_match == ((void*)0)))
~~~~~~~~~~~~~~^~~~~~~~~~~~~
./regexp_nfa.c:7095:24: note: remove extraneous parentheses around the comparison to silence this warning
if ((rex.reg_match == ((void*)0)))
~ ^ ~
./regexp_nfa.c:7095:24: note: use '=' to turn this equality comparison into an assignment
if ((rex.reg_match == ((void*)0)))
^~
=
ポイ捨てされてる飲み物の空き缶やペットボトルって、何か偏ってない?
続いてファンタ、コーラー、アクエリアス等コカ・コーラ社製品のペットボトル
この辺が大半だと思うのだけど、コンビニとかで一番売れるのってお茶なんだよね。比率で言えば、お茶のペットボトルポイ捨てが一番多くないとオカシイ気がする。
コカ・コーラ社の物が目立つのは自販機の多さが原因だろうけど、お茶のペットボトルポイ捨て比率が低いのは何でやろ?(無いとは言わない、実際見る事は有るので)
明らかに体に悪い砂糖大量のコーヒー、紅茶、ジュースを飲む層と、お茶を飲む層の知的レベルや羞恥心の違いなのか?
それとも他に理由が有るのか?
詳しいひと教えて。
資料が出てきて嬉しい限り。
コカコーラの資料( http://www.ccwest.co.jp/download.php?key=54&func=4 )によると、綾鷹・爽健美茶・アクエリ・いろはすを足してもジョージア単体に及ばないので、そもそも「お茶が一番売れてる」という前提が間違ってるかもね。
コーヒーは圧倒的に多いので納得出来るのだが、この資料だとコーラやファンタが多い理由に説明がつかないと思います。
世に出てすでに3年近くが経過しようとしているブラウザゲーム「艦隊これくしょん ~艦これ~」。
ここ最近は、ローソンやすき家とのコラボが行われたり、本家ブラウザ版ゲーム以外にもPS Vita版やアーケード版のゲームが発売あるいはロケーションテストが実施されたりと、その人気は未だ衰えを見せていないように思える。
しかしながらその一方で、Twitterや匿名掲示板などでは「艦これの人気はピークを過ぎた」という発言も見られ、首を傾げるような思いをした方は私以外にもいるのではないだろうか。
いわゆるアンチ層の発言ならばともかく、個人の区別が可能なTwitterなどで熱心なファンからもこのような声が聞かれることもあり、ファンの間でも何らかの認識の違いが生じているように思える。
例えば、新規参入層と古参層との間の単なる感覚的なずれなのか、それとも何らかの指標として数字に表れてくるものなのか。
そう思って艦これの人気動向を分析していったところ、艦これの人気はある種の「二極化」が進んでいることが判明した。
・主として艦これの版権を持つ版元が関わる公式関連(ゲーム、書籍など)
・主にファンが中心として活動する二次創作関連(pixivやニコニコ動画など)
の動向を分析する。
公式関連の動向を分析するにあたり、まずはブラウザゲーム本編を取り上げる。
猫予報官氏(https://twitter.com/nekoyohou)による「艦これ」登録者数の推移を表すグラフが公開されなくなって久しいが、現在の登録者数は2016年1月時点で約370万人程度となっている。
要所ごとに数字を取りだして見ると、
となっており、2014年~15年の平均月間増加数は約8.3万人/月、アニメ放映期間中の3ヶ月は倍の約16.6万人/月、その後から現在に至るまでは約7.7万人/月と、増加量はやや落ち着いたとはいえ、今なお新規登録者数は増加していることが確認された。
このペースを維持した場合、登録者数は2016年5月にも400万人を突破するものと見込まれる。
次に、DAU(Daily Active User:日間の総ユーザーログイン数)とMAU(Monthly ~:月間の総ユーザーログイン数)の検証に移る。
DAU、MAUともに運営公式からの発表は昨年以降発表されていないが、有志の検証結果(http://togetter.com/li/933974)を元に算出すると、MAUがおよそ35万~40万人/月と推定できる。(つまり、毎月40万人程度のユーザーが少なくとも1日は艦これで遊んでいる)
最盛期のMAUが100万人、DAUが50万人程度だったことに鑑みれば大分落ち着きを見せたともいえるが、絶対数として未だ40万人規模の人数が少なくとも月に1度はゲームにログインしている以上、ゲーム本編の人気はなお高いと言えるのではないかと考える。
また、このMAU:40万人という数字は、2015年に検証されたMAU:40万~45万人と比較しても大差なく、現状は新規参入と引退者の割合は拮抗してある種の平衡状態を保っているものと推測される。
一方でDAUの算出は困難であるが、ゲーム内イベントの開催頻度に大きな変化もないため、最盛期のMAU/DAU比と同一の比率を維持していると考えるならば、おおよそ18万人程度と予想できる。
しかしこれは算出根拠としてはあまりにも推測根拠に乏しく、この予想DAUは信用ある数字とは到底言えないことを記しておく。
延期に延期を重ね、2016年2月についに発売となったVita版「艦これ改」は、累計販売数が20万本を突破した。
Vita発売ソフトの平均販売数が2万程度であることから、当初経済アナリストに予想されていた50万本には届かないものの「艦これ改」はVita発売ソフトの中でも屈指のヒット作となったと言える。
○50万本台
・マインクラフト(約59万本)
○30万本台
・ゴッドイーター2(約35万本)
・ペルソナ4(約30万本)
○20万本台
・SAW -ホロウ・フラグメント-(約24万本)
となっており、DQやFFなどの息の長い人気シリーズにも次ぐレベルのヒットであったと言える。
2015年以降に発売した書籍について、POSの情報から推定累積販売数を掲載している情報サイト(http://book-rank.net/rank/rank.cgi?mode=find&word=%8A%CD%82%B1%82%EA&booktype=2)のデータを用いて検証する。
いくつかの書籍を取り上げてみると、
・ 9巻:40,650 (初週販売数:24,400 2015/03/14発売)
・10巻:34,300 (同18,150 06/15)
・11巻:37,150 (18,050 09/14)
・13巻:24,300 (10,050 2016/03/14)
・ 5巻:45,300 (29,000 2015/05/15)
・ 6巻:32,450 (22,800 10/15)
・ 7巻:24,300 (10,050 2016/03/14)
○艦々日和
・ 3巻:11,350 ( 6,250 2015/03/20)
・ 4巻: 8,150 ( 4,150 09/26)
・ 2巻:18,450 (10,250 2015/07/09)
となっており、初週販売数、累積販売数ともに下落傾向にあることが判明した。
(発行日が新しい書籍ほど累積販売数が少なくなるのは時間経過という観点から当然であるが、このような書籍は大体発売後2~3週が売り上げのピークとなる傾向にある)
2014年以前の情報をまとめているサイト(http://note.chiebukuro.yahoo.co.jp/detail/n338043)も確認したが、この傾向は当時からすでに緩やかに始まっていたことが分かる。
一般に巻が進むほど購入者は少なくなること、また艦これは書籍の種類が豊富で人気が分散しやすいことを考慮すればある程度の販売数下落は容易に想定されうることではあるが、果たしてそれだけに帰結できるかと問われると、大いに疑問の余地はある。
・ 4巻:33,050 (13,150 2015/08/07)
・ 5巻:29,500 (14,150 2014/12/27)
・ 6巻:26,350 (11,100 2016/01/27)
・ 6巻:28,850 (13,150 2015/08/07)
・ 7巻:22,220 (22,200 2016/3/25)
・ 1巻: 5,550 (5,550 2015/01/24)
・ 2巻:12,350 (6,250 2015/04/25)
・ 3巻: 8,450 (5,050 09/26)
・初陣:53,700 (15,000 2015/06/01)
となっており、現在の書籍販売数は東方シリーズやFateシリーズに近い数字となっていると言える。
その他、特筆すべき事項としては
・「ローソン」とのコラボにおいて、首都圏を中心にコラボグッズが配布期間の終了を待たずして配布上限に達した店舗が多数見られたこと
・「すき家」とのコラボにおいて、コラボ初日に20人程度の行列が形成される店舗があり、一部店舗ではメニューの一部が売り切れになったこと
・3周年記念オーケストラコンサートの一般発売分が、初日に完売したこと
などを挙げておく。
これらは定量的に扱うことは困難ではあるが、定性的に見てもなお客観的に検証可能であることから列挙した。
(その②に続く)
私、気付いちゃったの。
まあ、常識的に考えれば当然と言えば当然なんだけど。
寝る前に、たくさん食べたり飲んだりしない方がいいじゃないかってこと。
だって、寝てる間に、
食べたものの消化や、お酒飲んだらアルコールだのの分解をしなくちゃいけないじゃない。
その、消化や分解に使ってるエネルギーを体力回復にすべてまわせば、
今までとは、128倍違う上質スーパーリッチに最強に強まった睡眠がとれるんじゃない?ってわけ!!
と、なるとそもそもとして、
たくさん食べなくてもいいんじゃないか?という超飛躍する理屈にもなるんだけど。
まあ、ここだけの話だけど。
もちろん、育ち盛りの増田のお友達はしっかり食べて大きくなってね!
もりもり食べやさい。
素敵な増田を。
なんで、いつもここのコンビニは私の好きなタマゴサンドが品切れなの?
オレンジとベリー、最近はちょっとマイルドにとハチミツを少々。
冬になってきたら、
しょうがないわね。
あと、デトックスウォーターはあくまで水分補給が一番の目的だからね。
すいすいすいようび~
今日も頑張りましょう!
いい本を見つけると、その場では読む気まんまん。これを読んだら俺は更に進化できるぞ、とやる気満々でレジに持っていく。
決して安くない額がPOSに表示されると、これも成長の糧よ……こんな高い本買う俺ってちょっと格好いい……などと思ったりすることもあるが、
家に帰るとPCデスクの上だったり、すぐ近くのメタルラックに置かれる。本棚に置かないのは、少し離れたところ(といってもワンルームなので数歩)にあって、そのまま読まなくなりそうだから。でもそんな抵抗は空しく、結局は読まない。
本を買うペースだけは一丁前だ。でも読むペースはひどい。書評やブックフェアがホッテントリ入りする度に、興味と不安が沸き起こる。
ドキュメンタリーやニュースに比べ、お笑い番組の制作費は恐ろしく"安い"らしいです。
でも、放送インフラの整備・維持には多額のカネがかかっていて、それらバックヤードコストを考えるとくだらないバラエティーはカネをドブに捨てるようなものだと。
へぇ、そういう見方があるのかぁ…… やっぱ頭いい人は違うなぁ。
そんなことを思い出しながら今日、私は2円切手を買うためだけにコンビニへ行ったのです。
コンビニまでの往復、私に対応する店員の人件費、POSシステムで管理される売上(2円)、レシート。
店員「袋に入れますか?」
私「お願いします!」
まとめて買えよっていう話なんですけどね。郵送料の先払いが嫌なんですよ。
でも、2円切手の購入を『無駄』って言って切り捨てるなら、たぶん郵政事業そのものがなくなりますよね。
少なくとも過疎地へ葉書・封書を届けるなんていうことはできなくなるでしょう。
え? 論点のすり替え? めんごめんご。