リンク
(公開終了のためなし)
リリース
2017/03/21
概要
ソロシンガー、朱南レイ様のオフィシャルサイト。
担当領域
ディレクション / 開発・運用面のすべて
システム開発の場面などで使われる、「運用でカバー」という言い回しがあります。
簡単に説明すると、
事情はお金がないとか、時間がないとか、上層部がアレとか、社会がわるいとか。
検索したほうがよりよい説明が出るでしょう。
ゲームにたとえると、普通に歩いてカボイの村に入ろうとするとフリーズしてしまうけど、走りながら村に入ると問題が起きない。説明書に「カボイの村には走って入ってください」と書いて発売しよう!みたいな話。
ヤバイ。
「顧客管理システムに名字が1文字だけの人を登録するとエラーになるので、後ろに『〇』を付け足すようにしてください」みたいな、初見殺しの独自ルールを追加することによって、いまのままのシステムでなんとかやっていきましょう。システムの欠陥を運用でカバーしましょう。という言い回し。
この「運用でカバー」とまったく同じ構造の言説が、世の中で頻繁に使われているのです。
「マナーの改善を」
「ひとりひとりの意識の問題です」
プログラムを書いてつくられたシステムだけでなく、世の中の人間がつくったシステムは、人間が便利に過ごすためにつくられたはずです。
そのシステムを使うために人間側に工夫が必要なのは本末転倒であり、それは欠陥のある未完成なシステムです。運用ルールを意識しないといけないことと、「マナー」や「ひとりひとりの意識」が必要になることは、まったく同質の問題なわけです。
「マナーを守りましょう!」
「みなさんひとりひとりの意識の問題です!」
じゃない、みなさんひとりひとりの意識で解決をするな。意識しなくても問題が起こらないシステムをつくれ。
運用でカバーすることが絶対悪ではないのと同じく、「マナー」や「意識」によって目の前の問題へ一時的に対処することも絶対悪ではない。やむを得ない事情はあるものです。そう簡単に直せないものだから、運用でカバーしているわけで。
だから、それらを守らなくていいって言いたいわけではないんです。そうしないと回らないからしかたない。
だけど、本質的な問題の解決のためには、延々と啓蒙活動を行うよりも、そのシステムの欠陥を改修したほうが話が早い。「マナー」や「意識」といった運用ルールを守りながらの作業が恒常化し、目的化し、絶対正義となってしまうのは明らかにおかしな状況なわけです。
たとえば。
電車で足を大きく開いて座る人がいると迷惑なのは、そういう人がいると座れない人が出てくる程度に電車が混んでいるからです。それでも誰もが座れる程度に電車が空いていれば、誰も困りません。本質的な問題の解決のためには電車を空かせるべきです。
他に「自然と小さく座ってしまうイスを開発する」といった手法も考えられますが、この電車の混雑が常態化していることによる問題は数多いです。ベビーカー論争, 席を譲る譲らない問題, 痴漢被害と痴漢冤罪被害、数多のコストを使用者側に強いています。
イヤフォンから音が漏れるのは、そのイヤフォンの遮音性能が使用者の音量に耐えられないからです。
飲酒運転による事故が起こるのは、車が飲酒して操縦すると事故が起こる仕様の道具だからです。
エスカレーターの正しい乗り方をさせたいなら、自然とそういう乗り方をしてしまうような形状・デザインにすればいい。
チケットの高額転売をやめさせたいなら、自然と転売する気持ちがなくなるようなシステムを構築すればいい。
説明書を読まずになんとなくで使っても正しい使い方ができるのがよい製品です。
人間が便利に過ごすためにつくられたシステムに不満があるのなら、それがどんなに些細なことでも不満だと言っていい。だって不満なく過ごすためにシステムがあるはずなのだから。
そしてその不満と不便さを減らすべく、少しずつでもシステムを変えていって、文明は前に進んでいくのです。
「マナー」や「意識」が必要になるのは、そのシステムに欠陥があるためです。やむを得ず必要になるものです。システムの持つ穴は放置して、ルールだけが偉そうに正義として振りかざされるのは、明らかにおかしなものです。
ところで、人間が快適に過ごすためにつくられたはずのシステムなのに、そのシステムに適応し従うことこそが絶対正義の必須要項であるとの風潮が蔓延し、なぜかむしろ人間を苦しめている。そんなシステムがあることにお気づきでしょうか。
なにが社会に適応だ、人間のために社会があるんだから社会が人間に適応しろ。
社会がわるい。
基本自分中心でしか物事を考えていないし、たいていの判断の基準はコストパフォーマンスだ。
まず「コスパ」って単語の認識を合わせないと話が伝わらないと思う。
「コスパ」って言うと金銭面でしか計算しない人がいるけど、そうじゃない。「コスト」にはお金の他にも、時間とか、手間とか、精神的負担とかがある。「パフォーマンス」にはお金とかどれくらい腹が膨れたかとかの物量的なもの以外にも、幸福感とか質的なものがあるよね。
むしろ直接の金銭面しか見ない人はコスパの演算がまったくできてない。
アルバイト先を選ぶならそりゃ時給が高いほうがいいけど、職場までの移動にかかる時間を時給換算して考慮しないといけないよね。遠くて時給が高いところより、近くて時給が安いところのほうがパフォーマンスがいいかもしれない。満員電車に乗りたくないとか、苦手な業務内容だからものすごく疲れそうとか、タバコ嫌いだから禁煙のとこがええねんとか、そういう面まで含めないとそれはコスパの演算じゃない。
たとえば私は野菜がすごく好きだから、値段が少し高くなってもマクドナルドよりサブウェイのほうが明らかにコスパがいい。野菜ぜんぶ多めにしてもらうの大事。
たとえば「自分で壁を塗装すると安くリフォームできるよ!」みたいな話はよくあるけど、かけるコストがお金から時間に変わっただけ。私は手先の器用さにあまり自信がなくて、塗るのミスってやり直す事案が高確率で発生するし、「失敗しそうでイヤだなぁ」っていう心配をしなくてよくなる精神安定的コストを考えると明らかにプロに頼んだほうがコスパがいい。
家電量販店のスマフォの保護フィルム貼り代行サービスも毎回頼んでる。失敗して買い直したり、貼るのうまくなる練習をするより明らかにコスパがいい。
こんな感じで、コスパを考えると、コスパを意識していない人と比べてむしろ多くの金銭を費やす結果になることもある。単純な値段の問題じゃなくて、かけたコストに対してのパフォーマンスの比率を見るのがコスパ。「コスト」も「パフォーマンス」も、自身がすることと自身に返ってくることの全体を見ないと演算できない。
以上でコスパについてはおわかりいただけたでしょうか。
このコスパという判断基準をベースに話したいのが、私が自分中心でしか物事を考えていないという話。私は自分自身にとってのコスパでほぼすべての決定をしている。
たとえばルールを守るのは、守っていたほうがコスパがいいから。
破ることで自分自身が自分自身にかける精神的負荷とか、受け得る制裁とか、そういうコストも含めて演算をして、それでもなおパフォーマンスのほうがいいなら守らないという結論もありうるよね。
自分以外の全人類がゾンビになった地球を車で逃げ回っているとして、そのとき交通規則を守るのと破るのどっちがコスパいいです? って話。
たとえば「優しさ」だってコスパ。私が誰かになにかをするのは、そうすることがコスパがいいから。
その人になにかをすることによるコストと、それをすることによる「これをしていること自体がうれしい」とか「周りの人が明るい表情のほうが自分の精神衛生上いい」とかっていうパフォーマンスがあって、それを比較した際にパフォーマンスのほうが高いときにだけ私は「優しい」行動をする。
私が「この人の手助けができるとうれしい」と感じている人からは結果的に「優しい」という評価を受けることもあるけれど、優しくなんてまったくなくて、ただコスパの演算をしているだけ。
だから行動をして「うれしさ」を感じた時点で私は得をしていて、自分のためにそうしているわけで、別にお礼もお返しも必要としていない。
「無償の愛」なんて存在しないんだよ。「愛を与えたうれしさ」というリターンを必ず受け取ってるんだから、無償じゃない。
「自分はこんなにいろいろしてやっているのに見返りがない」とか「アイツは感謝が足りない」とか言っている人のことは理解できない。自分の中でなにかを「してやる」こと自体によるうれしさというパフォーマンスがコストを上回らない相手に対して、コストをかけることをやめればいいのにと思う。
この感覚は、なにかのファンをしている人には少し伝わるんじゃないかな。
ファン対象にお礼を言ってほしいわけでも、なにか見返りを与えてほしいわけでもないものね。ファンをすること自体がたのしいからファンでいるわけで、応援すること自体がたのしいから応援するんだものね。
そんな感じで、私がとにかく自分中心のコスパでしか物事を考えていないという話でした。
ただこの考え方にはひとつ重大な問題があって、仮に私がルールを破ることのほうがコスパがいい存在になってしまって、仮に周りにひとりとして大切に思える人間がいなくなってしまったら、ルールも守らず他人のことも一切考えない、すべてを破壊し尽くすただのガチクズ野郎になりうるってことだ。
(2019/04/24更新: なんかTwitterへシェアされるURLにユーザーIDとかパラメーターとか含まれるようになったのでそれに対応した)
予想外に簡単で拍子抜けした。
その昔、Janetterでは標準でInstagramのサムネイルが表示されていたのじゃが、いつ頃からじゃったかのう、それができなくなってしまったのは……。
で、TwitterとInstagramが尋常じゃないくらい仲がわるい話を聞いていたので ( instagram の画像を取得するリクエストの User Agent に Twitter が含まれているとヤバイ | Covelline Developer Blog )、どうせそれ関連なんでしょ、めんどくさいしええわと思っていたのだが、気分でソースコード確認したらぜんっぜん関係なかった。
InstagramのURLが
"instagram.com" から
"www.instagram.com" に変わってただけだった。
(もしくは "instagram.com/p/~/" から "www.instagram.com/p/~/" へのリダイレクトがなくなったとかなんとかとかもあり得るが、まぁどっちでもいい)
要するに "www." が付け足された分をさらっと書けばいいだけなんや。
マジかよ、もっと早くやればよかった。
どちらも隠しフォルダ下にあるんで、各自よしなに。
thumbnail.jsをテキストエディタで開く。
393行目あたりからInstagramコーナーがわかりやすく始まる。
変えるのはたった2行だけ。
397行目あたりにあるであろう、
var exp = /https?:\/\/(instagr\.am|instagram\.com)\/p\/([-\w]+)/g,
を
var exp = /https?:\/\/(?:www\.)?(?:instagr\.am|instagram\.com)(?:\/.+)?\/p\/([-\w]+)\/?/g,
に変える。
401行目あたりにあるであろう、
var no = res[2],
を
var no = res[1],
に変える。で、保存。
以上。簡単。
Janetterを起動して、「Instagram」で検索でもして、普段Twitter公式の画像を見るのと同じようにInstagramの画像が見られたらOK。終わり。
Instagramの気まぐれでまた "instagram.com" に戻ったりしても、こうしておけば平気なはず。たぶん。
Twitter, Download Original Image - Chrome ウェブストア
2014/08/08
Google Chrome 拡張機能。
Twitter Web App (twitter.com) のツイート内画像を右クリックした際に「画像をオリジナルサイズで保存」メニューを表示する。
すべて
Twitter, Replace image with Original - Chrome ウェブストア
2014/07/20
Google Chrome拡張機能。
Twitterのタイムラインに読み込まれている小さくリサイズされた画像を元画像へ自動で置き換える。
すべて