00:10
はい、みなさんこんにちは。KEITHこと桑原です。本日もやっていきましょう。KEITHのエンジニア雑談チャンネルです。
この番組ではウェブ業界に関することやエンジニアリング、いろんな技術についての雑談などの情報を発信していきたいと思います。
今日はですけど、タイトルにあります通り、エンジニアはコードを書くっていうのは好きだと思うんですけど、そのコードを書くっていうそれにもいろいろな種類がありますよっていう話をしたいなと思いました。
えーと、最近リファラジっていうものを聞いてましてですね。三度の飯をリファクタリングが好きな2人が発信するポッドキャスト、リファラジ。ラコラコさんと奥野さんですね。
がやられているポッドキャストで、最近これを僕結構聞いてるんですよね。正式名称リファクタリングと共に生きるラジオっていうやつですね。
めちゃくちゃ面白いのでぜひ聞いてみてください。今第3回まで公開されてるんですけど、一番最初リファクタリングの最初ってどっからっていうとやはり名前からだよねって話をされてて、
名前に関しての議論がですね、すでに3回にわたって喋ってるんですけど、これでまだ終わんないと。いい加減ちゃんとリファクタリングの話をしなきゃいけないっていうので、
1回名前のお話はここで区切られてるんですけど、それでも永遠に語れるぐらい。お二人が曰く一晩中名前に関してはこのお話ができると言ってたので、それぐらいネタが尽きないんでしょうね。
し、どこまでも突き詰めていこうと思ったら突き詰められるお話でもあるっていうところですね。そういうラジオがあって、確かにリファクタリング俺めちゃめちゃ好きだなと思ったんですけど、
リファクタリングがそもそも本当にみんなが好きかどうか定かではないなっていうのをちょっと思って、今日はその辺の思ったことを喋ってみたいと思いました。
エンジニアって幅広く言っちゃうとアレなんで、一応ソフトウェアエンジニアとかウェブ業界のエンジニアとか一応カテゴライズを絞る前提でしますが、
ウェブ業界アプリでもいいと思いますが、とにかくソフトウェアを作るエンジニアというふうに思っていただければ良いと思います。
で、行動を書くことが好きでその種類があるという話ですけど、わかりやすくエンジニアって行動を書くんですけど、行動を書くということはたりあえず物を作っていることをしている人っていうふうに見えると思います。
別に間違ってはないですし、物を作っているのは自立としてあるんですが、物を作ることそのものが好きだっていう人ももちろんいますし、そのための行動を書いているっていうのはそうでしょうけど、
僕は実は物を作ることは別に好きではあるんですけど、それ以上に私は実はテストコードを書くのが好きなんですよ。本当に大好きで。
アプリケーションの開発のコードを書くっていうのはもうメンバーに任せて僕テストを延々に書けって言われたら全然大好物で書いちゃうんですよ。
それぐらい僕はテストが本当に好きですね。でもそういう人って結構珍しいと思うんですよ。みんな多分アプリケーションを書く方が好きなんじゃないかなと思ったりしてます。
で、リファクタリング嫌いだっていう人はあんま確かに聞いたことはないと思ったんですけど、まぁでもじゃあリファクタリング大好きでずっとそればっかりしたいかっていうとそうではないよねっていう話は別でありますが、
まぁでもエンジニアのコードを書くっていう好きな種類にはリファクタリングもあるし、テストコードもあるし、もしかしたらインフラレイヤーとかCICDとかの整備をするのが大好きだっていう人ももちろんいますね。
03:05
そういう方はそのままインフラエンジニアとかSREとかに移るかもしれないですけど、っていうのもありますし、設計するのも好きな人もいますよね。
まぁ実際コードを書きながら設計するっていうことはやると思うし、書きつつチーム開発する中でいろいろ整備し直すっていうことはよくあると思うんですけど、設計することも好きなエンジニアもいらっしゃると思いますね。
というのでエンジニアのコードを書くの好きっていうのはいろいろ種類とかタイプが分かれていて、チームビルディングとかチームマネジメントするときにその辺の観点っていうのはあった方がいいんじゃないのかなっていうのは思ったりしてました。
適材適所じゃないですけど好きなものをやらせる方がやっぱバリューは出ますし本人のモチベーションも高いのでバリバリにコードを書いてくる。
少なくともスピードは速いですよねっていうのがあるので嫌いではないですけど本当に好きなのこっちにあるのに違うタスク振られるんだったらブーンってなっちゃう可能性もあるのでそういうことをタイプとして知っておくのが良いと思うので、
もしプロジェクトスタートするとか後からメンバージョインするときにドラッガーエクササイズするとかいわゆる星取り表的なものを作って皆さんの趣味思考っていうのを聞いておくのはすごく良いと思ったりしますね。
あとアプリケーションコードを書く中でもその中でエンジニアとして大事にしているフィロソフィー的なものがあったりするじゃないですか。
私は絶対堅牢なコードを書きたいですっていうとか僕の場合は過読性が高いコードが大好物ですね。
とにかく人の時間を奪うのが僕は嫌いなので、人の時間を奪わないってことは読んですぐパッと分かる、意図が分かるコードを書きたいっていうのが僕はあります。
僕の知り合いの先輩だと、なんかとにかく短いコードを書くのが好きな人いて、それはアプリケーションコードではやめてくれって感じですよね。
そう逆に過読性が悪くなるんですよ。
たった一行すごい複雑な正教言をバーンと書かれて、確かに処理としては動くしその処理大事なんですけど誰もメンテナンスできない正義を生み出しましたみたいに言われても。
そんな言われても俺らとしては困るんですよ。話はなるので。
それは自分の好きなコードでやってくださいとかあるんですけど、まあまあそんな感じで、コードを書く中でも自分の中の大事にしているものっていうのも結構違ったりします。
エンジニアと一言で言ってますけど、エンジニア以外の方々は多分この辺を知らないと思うので、実はエンジニアってそれだけ複雑な生き物だよっていうのは頭の片隅でも入れておいていただけると嬉しいなと思ったりはしました。
逆に僕らもそういう発信を実はしてないですよね。
当たり前にやってるけど、当たり前にこう周りの人って遊べばこの人こういうタイプですねとかこういうこと好きですよねって意外とエンジニア同士は知ってたりするんですよね。
なかなかこの辺は外に出ないけどエンジニアのタイプってあれいわゆる触手ですよ。
僕はフロントエンドが大好きでフロントエンドやってましたし、あとiOS、Android、SRE、サーバーサイトなんていっぱいありますけど、エンジニアの区分けってタイプで分けるのが一番それは分かりやすいし汎用的ではあるんですけど、
いざ一緒に仕事をするとなるともう一歩踏み込んだタイプ分けっていうのはあった方がいいんじゃないかなっていうのを最近こう思いながら、
先ほど申し上げましたリファクタリングと共に生きるラジオっていうリファラジっていうのを最近聞きながらちょっと思ったって感じですね。
その名前の付け方のお話最初されてたんですけど、その話の中で面白かったのは方言的なのがあるじゃないですか、コードを書く中で方言。
例えばブーリアンチの変数はisなんちゃらでやります、書きますよねみたいなのを、僕らはもうなんか当たり前に書いてますけど、
06:06
初学者の人とか知らんしって話ありますし、そもそもなんでisなんちゃらっていう変数名になってたかってそれは英語の知識が必要だよね、それもおっしゃる通りだと思ったんですよ。
ちゃんと英語の勉強しておくとこの変数名ってそういうことねっていうのは理解できるんですけど、英語を勉強してない方でも他人のコードを見たりとか書籍読んだりとか、
いろんなリポジトリとかライブラリーのコードを読むとちょいちょい多分出てくると思うんですよ。
海外の方は当たり前に使ってる変数名だったりするの。
またそういうような幅広い知識っていうのがエンジニアに実は求められたりして、その辺をどうやって学んでいくとか、その辺を皆さんは共通認識として持っておきたいよねみたいな話をされてて、
いや本当こういうリファラジオ面白いので皆さんぜひ聞いてみてください。
はい、今回はこんなところで終わっていきたいと思います。
いつも聞いてくださり本当にありがとうございます。
ではまた次回の主力でお会いしましょう。
バイバイ。