「なぜ2018年にIDEとEmacsを選ぶのか」ライナーノーツ
経緯
ある晩DMが飛んできてTech Beer Bash 2018 vol.1 意外と知らない IDE のイケてる活用ノウハウ集で話してくれと打診があったので受けました。
最初に話をもらったときのテーマは「バッドノウハウ(?)を活かしたIDE活用術」とのことでしたが、自分はあまりIDEを使ってバッドノウハウをしてるつもりはありません。
具体的にどのような発表を期待されてるのかわかりませんが、単純にEmacsの良いところを紹介するような内容ならできると思います
そんなわけで、話を受けることになりました。
内容について
私の技術的な専門分野はPHPとEmacsってことになってますが、実際Emacsを使ってEmacsを開発することについては、いままでに何度か採り上げてきました。
しかしながら、今回の勉強会は参加者層が読めませんでした。なので、PHPの要約とIDEの必要性、強力なIDEがPHPコーディングの助けになること、そしてEmacsの説明を盛り込むことにしました。
スライドの構成について
私はエディタについて「宗教」とか「戦争」とかいったメタファーに伴って言及されることを快く感じて居りません。(設営中にも会場後方から「戦争の準備か」といった声が聞かれました。私が同僚からこのようなことばを投げ掛けられることがあるとすれば、極めて不快です)
今回のスライドの序盤で「エディタ選択は専門家たるエンジニアの裁量である」と言及しました。しかし、仕事は遊びではありません。
このことばを裏返して「生産性の高い環境を選定し、必要であれば研修を実施することはマネージャーの責任である」と言及することもできます。ただし、それは多くの場合うまくいきません。多くのプログラマーは自身の馴れた道具で滞りなく手を動かすことで最高の生産性を発揮すると信じるからです。また、一線の現場から離れたマネージャーにそのような判断はできないと不信を招くことになりかねません。
現実においてプログラミングは工業の一種ではなくアートに近いものであることはハッカーと画家などでも言及される通りです。そして開発現場に居坐る我々は2018年の現在であっても難局を突破する数少ない手法としてインスピレーションによるハックに頼らざるを得ないことがしばしばあります。
裏返せば、そのような一種神懸かり的な感覚や、設計のような智識経験とバランス感覚を要求されるようなもの以外、特にコーディング作業のようなものはツールでアシストすることで生産性を大幅に向上させ、ビギナーとエキスパートとの差を縮められる余地が多い領域でもあります。(少なくとも現代では。AIが発展した未来のことは知りません)
スライドの中にいくつか相反する内容が表れるのは、半ば自覚的です。仕事だと言っておきながら平素から公私混同しながら仕事に取り組み、それで居て時間のなさから生産性だなどと言葉にすがろうとする自分の混迷の気持ちなのかもしれません。しかし、やりたいことやるべきことは会社の中にも外にもたくさんあります。
PhpStormは最強か
個人的な不満はいろいろあります。自作のツールとEmacs拡張の方がべんりだと感じる点も多々あります。(PhpStormでべんりだったのでさくっと自前で再実装できたものもあります)
ただし、PhpStormをPHPの静的解析ツールとして見た場合、2018年現在で存在するツールとしては確実に最強であることは断言できます。パーフェクトではありませんが、エディタとよく統合され、特にリファクタリング機能については他の追随を許しません。(Beautifierのようなコーディングスタイルレベルのものはあるし、開発段階のようなものは知ってますが……。もしPhpStorm並にインスタンスメソッドに対しても実用になるものがあったら、僕にこっそり教へてくださいね)
そんなわけで、現状ではツールを組み合せればPhpStorm並にできる要素もあれば、束になってもPhpStormに勝てない要素
本篇で話さなかったこと
私はVimmerなので、実は一日で一番起動回数が多いエディタはVimですし、VimでもそれなりにPHPやシェルスクリプトを書きます。
ちなみにVimにバンドルされてるPHP syntaxではなく、StanAngeloff/php.vimを使ってます。
まとめ
私は公私混同しながらWebと創作活動の未来を明るくするために成果を出せる仲間を切実に求めてます。ちなみに今回の勉強会は業務時間中に行きました。
【中途採用】開発基盤エンジニア(東京本社)の採用情報 | ピクシブ株式会社
東京本社の【中途採用】開発基盤エンジニア(東京都)の正社員の募集情報です(ピクシブ株式会社)
recruit.jobcan.jp
切実にやりたいことがいろいろあるから、Webと創作活動に感情を持ってるひとは頼む来てくれ。PHPは知らなくてもPhpStorm先生がどうにかしてくれるよ。