フロントエンドエンジニア – いろいろ考察2017年版 その弐

イケてるかどうかは全く関係がない

『ReactよりRiotがイケてる!』とか『CoffeeScriptよりTypeScriptがイケてる!』とか『Gulpよりnpm scriptがイケてる!』とか、『コンポーネント指向がイケてる!』とか、はっきりいってそんなことはどうでも良い。

どうでもいい。

イケてるイケてないのはお前だけの話。俺達が作ってるのは不特定多数の人間が見るWebサイトやWebアプリだ。イケてるかどうかなんかユーザが決めるもんだ。いちいち気にしてるやつは自意識過剰のクソ野郎でしかない。ケツにトイレットペーパーはさみながら格好つけてるようにしか見えない。自分が見えてないところがめちゃめちゃ格好悪いという意味だ。だったら全身うんこまみれになった方がトータルコーディネートとして完璧だ。

つまり『イケてる』とか『イケてない』とかで判断するのはうんこだっつーはなし。だからもし自分がうんこだと思ったやつは今直ぐ悔い改めればいいよ。あとお礼に俺にAmazonギフト券をプレゼントすると良いよ。

では作り手側は楽しく楽して制作してはいけないのか?という質問も来ると思うので、予め言っておくけど、そもそも”イケてる”定義もよくわかってねぇくせにホラ吹いて周りから尊敬の眼差しを浴びようとするなってことだ。

ユーザはクリックしたい

ボタンがあれば押したくなる。おっぱいと一緒だ。おっぱいはどんなに怒れる魔神でもその動作を止める。それがおっぱいだ。

もし喧嘩が絶えない夫婦やカップルがいたら、女性側はぜひおっぱいを出してほしい。できれば男性側のフェーズになる直前に『えぃ!』と言いながら胸を一生懸命露わにする。下からまくりあげるのが良いだろう。服で顔を隠せるからだ。

男性側はその姿を見た瞬間に喧嘩を瞬時に止めるだろう。その後包容をしてくるかもしれない。いや、する。しないやつは人類には存在しないし、いたら俺が人として丁寧に屠っておく。

つまりおっぱいは平和であり、人類の象徴でもある。

そんなおっぱいと同じく押したくなるのがボタンだ。

管理画面の削除ボタンなんか2秒に1回は押したくなる。だから押したくなるのがボタンでもあり、ボタンは押したくなるべきなんだ。
ユーザはとにかくクリックしたい。ボタンだけじゃなく、タップもしたいしフリックだってしたい。したいしたい。したーい!!!

そしてそんなどうすればユーザがクリックするのかという、はっきりした目的があるなら、そうさせればいいわけだ。

そしてそのための手段はたくさんある。

しかし!!そのための手段に優越をつけ、常に自分が選んだテクノロジーを褒めちぎり、他をDisり、自分が時代の最先端を行ってると勘違いするなら、そんなやつは二度とおっぱい拝めない刑に処す。

正直いって、実際問題そういうやつの存在自体が 日本のIT業界を低迷化させてる原因 なんだよ。気づけよボケ。お前らのせいで日本がクソみたいになってきてるんだ。

俺もほんの少しだけそれに貢献しちゃってるけど、気づいてる分お前らより遥かに優れてる。そういうことにしておく。

いい加減にしろ

JavaScriptをバニラ(素)で書き、cssもバニラで書き、htmlもバニラでかく。これが最初だ。昔はみんなそうだった(俺が始めた時はcss自体が存在しなかったけど)。

もちろんそんなプリミティブな作業をしていたら、全ページ共通部分のヘッダなんかに修正や変更があった場合、全ページを編集するハメになる。

だったら全ページ編集すれば良い。秀丸やATOMなどの別ファイル一括置換機能がある場合はそれに頼っても良いだろう。全然問題ない。なぜなら、目的を達成出来るから だ。

しかも秀丸やATOMなら正規表現が使えるから、簡単に一括置換が出来る。もちろんATOMは複数行置換はできないが、それはそれで専用のツールを使うのもありだ。Grep Replacerなどなど。

しかし、こう言った方法をすべて『ローテク』や『レガシー』として切り捨て、無駄に余計な準備をして疲弊し、無駄に汗かいて大変さをアピールし、自分が最先端にいるという勘違いをしてるやつが多すぎる。うんこだ。そんなやつは毎晩寝ながらうんこでもしてろ。

全ページの編集はできただろが!

何が問題なんだ。一括置換も立派な作業だ。ユーザには全く関係がないだろ。

タスクランナーに疲弊したやつは頭が悪い

cssは設計に失敗したクソ技術だ。作ったやつが頭悪すぎるのが大問題だ。装飾と配置をごっちゃにするとか、どう考えても人間と思えない低脳ぶりだ。だからバカにしても大丈夫だ。どんどんバカにしよう。確実にバカを超越した存在なので、誰もが自由に好きな時に誰に対してでもバカ扱いすることが許可されている。

javascriptはプロトタイプな言語だ。googleとかいう、頭良すぎて人の気持ち理解できなくなった珍獣達がオナニーしながら作り出したGoogle Map。このお陰でjavascriptが再認識され、猿真似が増えた。そして未だに猿真似してるやつしかいない。結局javascriptはその程度だって認識しておいてOKだ。

htmlは5になってバカっぽくなった。もうHTMLじゃねーだろが、的な。APIとか意味不明。セマンティックがどうした?セマンティックじゃないところから始まって、後からいろいろなものを付け足し、常に後方互換を意識した挙句、魑魅魍魎と化しただだけじゃねーか(個人的にはXHTML1.1+CSS2.1が一番まともだった)。

とにかくWebにまつわるテクノロジーは良く分からん方向性に進んでいる。

現状、cssをcssとして作らず、javascriptをjsとして書かず、htmlをhtmlとして書かないケースが増えてる。

例えばhtmlはパーツごと分断したものを読み込むことができたり、変数を使えるようにし、そんな便利な環境で構築し、最終的にコンパイルしてhtmlにすると。
ejsとかpugとか、これはこれで別に便利だし良いと思う。

cssはsassとかいうクソコンパイルクソスクリプトをクソみたいに書いてクソみたいにコンパイルすることが多かった。変数も使えるし、階層的な記述もできるので、ソースコードを視覚的に把握できるというメリットがある。lessもまぁ似たようなもんだ。好きなやつが好きなだけ使えばよい(個人的にはStylusが好きだ)。

sassの拡張セットみたいなcompassってのもあって、スプライト画像が作れたりするんだよな。

もうね、どんどんユーザの欲してるものとは関係ない方向性に突っ込んで行って、事象の地平線にたどり着いて勝手に消え失せろって感じだな。

で、そんなjsへのコンパイル、cssへのコンパイル、htmlへのコンパイルなんかを、運動会のプログラムみたいに順番に正しく指定したとおりにまとめて書いて実行させてしまおうってのが、タスクランナーって奴らだ。gruntとかgulpってのが有名。

みんな飛びつく。飛びついた。そして疲弊した。

タスクランナーごときが全部できるわけねーだろが!!!!

だから人間がやらない方が良い作業だけタスクランナーにやらせ、判断が必要でタスクランナーではできそうにないものは人間がやればいい話だろが。

それが、全部やろうとして何時間もかけ、コストセンターまっしぐら状態になってるのにも気づかず、アホいたいにgruntやgulpを『ダメだこれ』と評価する。 ダメなのはお前だ

お前は六角ボルトを締めるのにラジオペンチを使ってるようなものだ。六角ボルトは六角レンチで閉めろバカ。ラジオペンチは挟むものだ。勘違いするな。このクソたわけが。

gulpに疲弊した?gruntのコードが長い?それでnpm scriptに行った?別に好きにすればいいじゃねーか。だけどな、最初からできないことにチャレンジして失敗したことを、gulpのせいにするのってどうなの?とは思うぞ。

六角レンチを知らないがためにラジオペンチで六角ボルトを締めようとしたのはお前だ。だからnpm scriptがgulpより優れてるんじゃない。ただお前がgulpを先に知り、ただお前がgulpを先に作り、ただお前がgulpに飽きたから、ただnpm scriptに行っただけだ。どっちが先でも同じ だろ。

物事は常に答えが一つってわけじゃない。

最後に

次は、具体的にどうやって効率化を図るのかを考えてみたい。

この野郎。