作ろうとしていた個人開発がnotionに勝てなかった話
他者の技術ブログを見ていて、「〇〇を使って△△」を作成しましたみたいな記事はよく見かけるが、
- 「果たしてそのサービスを作ることに世の中に幾何の価値があるのか?」
- 「自己学習という観点では素晴らしいが、作る意味が世の中的にあるのか?」
みたいなことを考えて、作ろうと考えて構想まで練ったが色々と検討している内に、結局製作するのをやめた話を書きました。テクノロジーを使って課題を解決する人をエンジニアと定義づけるのならば、既存サービスを使うことを選択してサービス開発をやめることは、後退ではなく、積極的な撤退なので、悪しからず。
想定読者
- 個人開発時において、何を考えているか知りたい・興味がある人。
- メモアプリについての知見を深めたい人。
- (以降の話で結構音楽の話が出てくるので)音楽が好きな人。
課題
(私は日常的に楽曲を制作している)楽曲制作時において、シンセサイザーの音色を選択する際、
漠然と音色を選んでいたこともあったのですが、
-
シンセサイザーで遊んでいる時や曲を作っている時、そのプリセットを別の楽曲で使いたくなった際、とりあえずタグだけつけて他の曲に流用したい。
-
製作する時間がない時や精神が病んでいる時、プリセットの検索や音選びや音作りに時間をかけずに一定以上のクオリティーを担保したい。
-
メーカーがプリセットに名前をつけてくれているけど、パット見意味わからない名前が多いので、自分の感覚で名前をつけたい。
のようなことを考えていたので、これらをテクノロジーを使って解決することを模索した。
The Back Hornのギタリストの菅波栄純氏のインタビュー見ていただけると、自分が何を言わんとするかが少しは分かっていただけるかもしれない……
YouTubeのvideoIDが不正です機能要件
求めているイメージとしては、タグを自分で設定できるSplice[1]みたいなので、UI/UXが優れたSpreadSheet(EverNoteのメモ欄がないもの)みたいなもの。
1. 検索機能が使いやすいこと
SpreadSheet使いたくない。SpreadSheetのソート機能嫌いまである。
2. UI/UXが一定以上であること
SpreadSheetを使いたくない(上同)。使っている時音楽製作している時なので、使っている僕イケてる感がスプレッドシートだと担保できない。最近のWebサービス位モダンなUIであってほしい。
3. 一覧性が高いこと
プリセットを管理するためだけなので、Evernoteみたいな大仰なものもいらないと考えています。その点、Excel・SpreadSheetが一番要件を満たしている。
4. 複数のタグを作ることができ、検索ができること
SpreadSheetって一つのカラムに対して複数タグ作って検索するの弱い気がするので(自分がShreadSheet弱すぎてやり方が分かっていないだけかもしれませんが)、一つのカラムに対して複数タグがある際でも強い検索機能が欲しい。
5. サービス開発が途切れないこと
音楽制作していく限り使っていく想定なので、途中で開発が終了されると困るので、できる限り開発が途切れない母体の大きい所が良い。個人開発に関しては、自分のリソースが割ける限りにおいて、サービスは終了しないので、この要件に当てはまっているかと思われる。
サービス検証
以上5点、自分が求めている機能に関して、
GoogleDocument
菅波栄純氏はDAWのテキスト機能を使っているので、一番最初はこちらを検討しました。
メリット
- テキスト書きやすい。
- Googleが開発しているので、開発が途切れる可能性があまりないことが想定される。
デメリット
- 複数検索しづらい。
- 見にくさがある、一覧性があまり良くない。
のような所感を抱いたため、僕にはこのやり方は合っていなさそうだと別のサービスを検証しようと思いました。
SpreadSheet
3か月程SpreadSheetを使って管理していたのですが、その際以下のような所感を抱いたので、別サービスへの乗り換えを検証しました。
メリット
- 一覧性が良い。
- データのCopy&Pasteが容易。
- 国内ユーザーが多いので、検索をかければ使い方が分かる。
デメリット
- ビヨーンとかふざけたタグをつける気になれない。
- UIがあまり使う気になれない。
- お仕事している感がすごい。
- 1対多のリレーション構造の時の扱い方が難しい。
- そもそもSpreadSheetあまり好きではないorz
GoogleKeep
メリット
- Googleが開発しているので、開発が途切れる可能性があまりないことが想定される。
デメリット
- タグの複数検索ができない(?)
- Excel/SpreadSheetライクなUIがベストであるため、ドキュメントベースのUIであることに今回はあまりメリットがない。
- プリセット数に関しては何千・何万とあるので、数が増えると一覧性があまりよくない
EverNote
メリット
- 使っているユーザーが多いので、ネット上に知見が多い。
デメリット
- 一覧性が低い。タグ部分だけを記載していく書き方になるので、不要な空白部分が多くなる。
- 動作が遅くなると言っている人が多い(EverNote自体使用していた時間が短いため、僕自身は検証できていないです)
自分が作ろうとしていたサービス
フロントエンド:Vue.js
バックエンド:Laravel
機能
- ログイン機能
- 新規ユーザー追加機能
- プリセットの一覧機能
- プリセットの追加機能
- プリセットの更新機能
- プリセットの削除機能
- 検索機能
辺りを実装しようしていた。簡単なTODOアプリをちょっと機能+αにした感じになっていたかと思われる。
メリット
- 開発は楽しい!
- 自分の理想を追求できる。
デメリット
- 開発工数がかかる。
- サーバー代がかかる。
選択したサービス(Notionについて)
GoogleDocument,SpreadSheet,GoogleKeep,EverNote,個人開発など様々な方法を検討したが、
最終的にnotionを利用した。下記のような図である。
シンセのプリセット名・どのような用途で使うか・参考となりそうな曲のURL・どのくらいの頻度で使うかのレーティングなどを記載している。
メリット
1. 検索性に優れていること
データベースという機能自体が大変使い勝手が良い。他のデータベースと連携できたりするので、データのカスタマイズ性も高い。Where文とか出てくるので、使っていてエンジニアとしてテンション上がる。
2. UI/UXが一定以上であること
自分が使いたいようにUIを設定できるので、UIは自分の望むように作れる。Tagに色をつけれたりするので、視認性が良い(tagの色の種類自体はもう少し欲しいですが)。
3. 一覧性が高いこと
非常に高い。viewの切り替え機能[2]とか素晴らしい。
4. 複数のタグで検索できること
一つのカラムに対して、複数のタグを作ることができて、検索することができる。And条件、Or条件なども可能。
5. サービス開発が途中で途切れないこと
万が一Notionのサービスが終了してもcsvに出力して、別のサービスにimportする等によって、
他のサービスへの移行が簡単である。
自分が上記に挙げた5つの観点を満たしており、
デメリット
- 人によっては学習コストが高いこと人もいる
- 自分はエンジニアなので、むしろ使い勝手は良かったのですが、人によってはとっつきづらさがあるかもしれないです。検索機能使う際に、where文やand文など基本的なSQLの知識が必要だったりする。
- 日本語対応がまだされていない(下記記事によると2021年度中にはリリースされるらしいですが)
- 自由度が高すぎて、何しようか悩む人がいる可能性がある。
総評
- 類似サービスの検証は大事!
- Notionは神!
駄文に付き合っていただき、ありがとうございました!
Discussion