🧛‍♂️

そこはかとなく仕事を早くする環境づくり -2024-

2024/12/13に公開

この記事は、フラー株式会社 Advent Calendar 2024 の 13日めの記事です。

前日は、@Mgtanthetaさんの【Android】Navigation ComposeのSafe Argsについて(フォルダの分け方など)でした。弊社の2025年新卒のアルバイターとして、日々その俊英ぶりを発揮している方と伺っています。こちらもぜひご覧ください。

はじめに

なにごとも「形から入ることがその先の状況を生み出す」と信じてやまない私は、日々dotfilesレポジトリを盆栽のように手入れすることに余念がありません。 
周りの優秀なエンジニアが研鑽を積み重ねるなか、「エンジニアの仕事には己の作業環境を整えることも含まれるはずだ」と自らに言い聞かせ、2024年もまた新たな環境づくりに取り組んでおりました。 
今回は、僭越ながらその一部をご紹介させていただきます。

本編

ランチャー編

ランチャーは言わずとしれたRaycastを使用しています。 
こちらAlfredのようなランチャーアプリケーションで、様々なプラグインを利用することで、様々な作業を効率化することができます。 
詳細な導入記事は探すと山のように見つかるはずです。 

それを踏まえて、どちらも利用した私がRaycastが気に入っている理由は以下のとおりです。

  1. 使用感の良さ
    • グラスモーフィズムデザインのUIが美しく、動作が軽量
  2. プラグインの豊富さ
    • 既存のプラグインが多く、自作も容易
  3. 開発が盛ん
    • 最近はiOSのウェイトリストも公開され、ワクワクする情報が多い

https://www.raycast.com/

こちらただリンクを貼って終わりでは少々味気ないため、私が普段利用させていただいている機能を4つご紹介します。

1. Browser Bookmarks

ブラウザのブックマークをRaycastから検索できるプラグインです。 
これがないと仕事が始まりません。 
とりあえず頻繁に開くページはブックマークに登録し、ブックマークバーをとんでもない長さにすることに一家言ある私にとって、このプラグインは必須といえます。 
多くのブラウザに対応しているため、ぜひChrome以外をお使いの方も入れてみてはいかがでしょうか。

https://www.raycast.com/raycast/browser-bookmarks

2. GitHub

GitHubを開いてしまえばcmd+Kでハッピーになれるのですが、そこまでいくのも億劫という方へ。 
リポジトリ検索や通知、Issue、Pull Requestの検索など、GitHubの機能をRaycastから利用できるプラグインです。

https://www.raycast.com/raycast/github

3. Image Wallet

保存している画像をパッとプレビューしながら取り出せるプラグインです。 
突然LGTMしたくなるとき、ありますよね。 
先人が鋭い指摘をする中、それっぽく質問してLGTMを出してその場を凌ぐときに使用しています。 
...すみません。しっかりとレビューするように努めてはいます。本当です。

https://www.raycast.com/ibll/image-wallet

4. Perplexity

Perplexityにさっとクエリを投げて検索できるプラグインです。 
ブラウザで開いて検索しろと言われればそれまでなのですが、思考した瞬間から手のひらから水がこぼれ落ちるように考え事が霧散する私には割と必須の拡張機能です。 
なれると「これ検索しておかないと」と考えるより先に手が立ち上げているので、あとは検索するだけです。

https://www.raycast.com/third774/perplexity

エディター編

ここまで書いて、もうすでに疲れたのでエディター編以降はさっくり書きたいと思います。 

エディターはみんなハッピー、Neovimを使用しています。 
と大手を振って言いたいのですが、会社でお賃金をいただいてコードを書いている以上、チームとしてフォーマッタ等の足並みを揃える必要があります。 
最近は、VSCodeのVimキーバインドを使わせていただいております。 

ここでは使用している拡張機能の一部を紹介させてください。

1. Bongo Cat

これがないとコーディングできません。 
何も言うことはありません。時間ができたら私好みにさらにカスタマイズしたいです。

https://marketplace.visualstudio.com/items?itemName=pixl-garden.BongoCat

2. File Nesting Updater

ディレクトリをネストして表示する拡張機能です。 
弊社のサーバーサイドはGolangを採用しており、私の勝手な解釈として、Golangのパッケージ戦略も相まって、あまりネストが深いディレクトリ構成のプロジェクトはあまり見たことがありません。 
それの良し悪しはどうでもよく、ファイル数が横に増えるとただでさえ少ない脳内メモリを食いつぶすため、こちらでなんとか耐えています(幻覚)

https://marketplace.visualstudio.com/items?itemName=antfu.file-nesting

3. Run on Save

保存時にコマンドを実行する拡張機能です。 
この拡張機能に関しては、同様に語る言葉を持ちません。いつもお世話になっています。感謝。

https://marketplace.visualstudio.com/items?itemName=emeraldwalk.RunOnSave

4. vscode-pets

一回ふざけては飽き足らず、併せてこちらも紹介します。 
難しい実装の途中、芯の食った指摘を頂戴したときなど、癒やしが欲しくなったときには欠かせません。 
その道のプロフェッショナルは紹介されるまでもなく、自らの開発プロジェクトに必要な拡張機能入れているはずだと信じています。

https://marketplace.visualstudio.com/items?itemName=tonybaloney.vscode-pets

ここまで紹介して、仕事が早くなるかと言われれば、そうでもないかもしれません。 
不足してはいけないが、目に見えて効果があるわけではない。 
これは睡眠のようなものなのかもしれませんね。 

タスク管理アプリ編

あと一息。記事を書くのは大変なのですね。 
タスク管理アプリはTickTickを使用しています。 

こちらいろいろな人に紹介しているのですが、なかなか使ってもらえず悲しいです。 
これは私のプレゼン能力に問題があると思い、連日布教と研鑽を重ねております。

ちょっとした紹介をいたしますと、クロスプラットフォームのタスク管理アプリで、①エコシステムとしてAPIを公開しているためChromeの拡張機能があったり、②機能としてカレンダーとの連携があったり、③タスクに紐づけ可能なポモドーロタイマーがあったりと、機能が豊富です。

何より開発に携わる仕事をしていて、尊敬するのは改善スピードの速さです。 
かれこれ2年近く使っていますが、いい意味でよいアップデートを重ねているため、変化も楽しめる良いプロダクトと思っています。

https://ticktick.com

ターミナル編

前述のエディター編でも述べましたが、私は基本的に黒い画面からでたくありません。 
すべての作業がターミナル内で済めば、何も言うことはありません。 

本職のシェル職人の方と比較するとひよっこもいいところですが、道を歩み始めたものとして温かい目でご覧ください。

使っているもの

  1. oh-my-zsh
    • これまた有名なzshの便利ツールです
    • ただ、これの難点としてたくさん拡張を入れまくると、あきらかに起動が遅くなるためそちらの研鑽も必要になり、環境構築に終わりがないことを教えてくれる教育者なのかもしれません
  2. tmux
    • 画面分割も、セッション管理も、スクロールも、すべてをこなす救世主です
    • うっかりさんなので、AWSにSession Managerで繋いでいる最中に、ブラウザを開いていると勘違いしてよくcmd+Wでターミナルを閉じて発狂するのですが、 tmuxのおかげてSAN値が安定しています
    • これの拡張機能もまた沼です
  3. fzf
    • こちらも論を俟たない良いプロダクトです
    • ghqと併せてよし、Vimを拡張してよし、ディレクトリ移動に使って良しのツールです
    • アイデア次第で使い方が広がる使ってて楽しいツールです

この辺は仕事が早くなるのではないでしょうか。

おわりに

ツールに追われるなんて本末転倒です。 
しかしながら新しいツールのワクワク感と言ったら、記事を書いておきながら筆舌に尽くしがたい。 
その神秘的な謎を明らかにするべく、而して私は単身アマゾンの奥地へと向かうのです。

明日は、グミをこよなく愛してやまない@nirazoさんの、「マネジメントのはなしかiOSの話か」です。 
ぜひお楽しみに。

Discussion