やっぱりネイティブアプリが一番。
最近のアプリはWindows、Mac問わず開発ができるElectronが多くなってきている印象。ブラウザベースで動作するので開発も楽だし、マルチプラットフォームでの展開も容易。でもこれって開発者目線の話であって、ユーザーからしたら関係のない話。ネイティブで動作はしないので、NETフレームワークやSwiftで開発された純粋なネイティブアプリに対してユーザビリティは劣ってしまうのが現実。
もちろん開発者の開発環境は良くなって欲しいし、できる限りコストをかけずに作るのが一番良いのはわかってはいる。けど、使い勝手が悪くなってしまえばそれはアプリとして破綻してしまいかねないのではないかと思う。ユーザビリティと開発コストは折り合いをつけるのは難しい。
さて、本題のDiscordもElectronフレームワークを使っていて、MacとWindowsの両方でリリースされている。Discordを使っている人なら共感してくれると思うんだけど、サーバーの切り替えやチャンネルの切り替えの動作がもっさりしていて、サクサク動作しないのに違和感を感じたことはないだろうか。元はブラウザなので「こういうもの」として慣れるしかないのだけれど、膨大な数のサーバーやチャンネルを行ったり来たりするDiscordではこのもっさり感は非常に気になる。
そんなこんなで、このもっさり感に数年耐えてきたけども、そろそろ限界ということでサードパーティ製のクライアントアプリを探すことにしたのである。一応Discord側はサードパーティ製のアプリや公式クライアントの改造(使っている人も多いであろうBetterDiscordなど)は認められていないことには注意しておきたい。この記事ではサードパーティー製のクライアントの使用を奨励しているわけではないので、利用は自己責任で。
探すこと小一時間、Swiftで動作するMac向けのネイティブDiscordクライアントのSwiftcordを発見した。
https://github.com/SwiftcordApp/Swiftcord
まだまだ荒削りではあるが、ネイティブなだけあって動作はすごくキビキビしているし、本来あるべきDiscordクライアントのような雰囲気さえ感じる。現時点ではボイスチャットに接続ができなかったり、チャンネルの順番が同期できなかったりと結構使うには不便ではあるが、これからのアップデートで追加されるみたいなので、正式リリースまで気長に待ちたい。他にもサーバーの設定や、招待ができない、通知が来ないなど実用には遠く及ばないものの、希望は感じられるアプリだ。頻繁にアップデートしており、コミュニティも活発な印象なので正式リリースも相遠くはないはず。ビルド済みのものが配布されているので、試してみたい方は試しに入れてみるのも良いかもしれない。
Windows向けのネイティブクライアントも探したのだけれど、Swiftcordほどアプデの頻度は早くなく、未だ発展途上と言った感じ。一応あるにはあって、Unicordという名前でGitHub上で公開されている。ビルドはされてないので自分でビルドする必要があるので興味のある方はやってみてはいかがだろうか。