得意領域を広げる個人開発
https://gyazo.com/87116e544c644c55257271ea8ab6a3a3
NLP2023で沖縄のビーチで開発している様子
🏮 個人開発祭り #2の発表資料です 🏮
こんばんは
daiiz.icon daiiz (@daizplus) です
Helpfeel アーキテクト
設計、実装、ドッグフーディングの繰り返し
最近の寄稿や発表資料
マイナビ連載
それもまたUIだね。インタフェース散歩!(3) 距離を縮める検索UI
Helpfeel Tech Hour
生成AIの使いどころを見極める NEW!
個人開発歴
大学生の頃から
もう10年くらい経つ?
色々と作ってきた
思いつき次第がむしゃらに試したい
多くの人に使ってもらいたい
詳しくは #作った の関連ページをご覧ください
最近の個人開発
いくつか並行して開発を進めている
分野ごとの広がりを整理を試みた様子
https://gyazo.com/f00c6b9d7c526c10376a7aaaa9bbcc1e
残念ながら公開できているものが少ない
そのうち世に出します
お楽しみに!
例: Scrapboxから本を作る
グラフ構造知識のスナップショットとしての本
スクボのコンテンツをLaTeXに変換して、LuaLaTeXでPDF化する
https://gyazo.com/e1979aafe621b51510a427b71463567a
ワンクリックで印刷所に入稿するファイルを生成できる
https://gyazo.com/bb674551d01fa40f69c86d4177c8e634
最近はVivliostyleを用いたCSS組版もやろうとしている
/scrapbox-drinkup/Scrapboxで薄い本をつくる (daiiz)
例: テキストと画像を使って画像を検索する
Phonno
https://gyazo.com/b8531a43362438c2d458cb72ac421c5a
マルチモーダルの検索を先取りしていたのでは!!
https://gyazo.com/0af57327ed24eca7d507c2c0e342aac2 https://twitter.com/daizplus/status/1634403181613711360
個人開発論
ここ最近の開発モチベーション
得意な領域を増やしたい
自分の知的生産活動を支える最高のツールを作りたい
自由気ままに活動しながら技術的な視野を広げよう
何に気をつけるとよさそう?
ChatGPT APIの登場によって、誰もが自分好みのソフトフェアを作れる世界が加速してくると思う
ここらで一旦振り返ってみたい
個人開発論
自分で使い続ける
関心のあるデータを集め続ける
とにかく深堀りする
刺激を受け続ける
知見を共有する
自分で使い続ける
毎日使えるか?
徹底的に自分に最適化したものを作る
自分一人で満足に使えないものは、複数人ではもっと難しいと思う
https://gyazo.com/910731f960422ffe5e144fafc33e5f8a https://twitter.com/daizplus/status/1601097744130617344
必要に迫られてから自動化する
データと向き合う
データそのものを観察する時間も大事だったりする
しっかりどこかにデプロイしておこう
PCが壊れて悲劇を迎えたデータセットが多数...
関心のあるデータを集め続ける
人力と自動化のハイブリッド
形になっていないアイデアの段階から継続しておく
たまにデータを眺める
できることが見えてくる
データ収集とビューの開発を分ける
それぞれリポジトリレベルで独立させる
ビューが頓挫してもデータの収集は続けられる
どうせまた興味が出てくるので、その日まで集め続けておく
思い立ったときに使えるデータがたくさんあるのは嬉しい
使い方は後から考える
LLMsの登場でデータの理解と整理がだいぶ楽になる予感がする
最近の気づき
https://gyazo.com/4d568c2b4bc6c3eb45c7e7af1d0e9f04 https://twitter.com/daizplus/status/1643458790573096960
例: Phonnoでの画像とアノテーション
約6,600件の人力の画像アノテーション
https://gyazo.com/9c2ccbd0f81ab7fb4ec280dbae0b6139
写真、スクリーンショット、ブックマークを串刺し検索できる
ChatGPT APIを使った検索キーワード連想機能にも使えた
https://gyazo.com/de60f403cf1a3153830bfd416e002bcc
https://gyazo.com/d04a0a349a914ecfe924b3a2bc5c3603
例: ウェブページのスナップショット
ブックマークのうち、とくに有益だったものを集めていく
https://gyazo.com/bf73b1bcb13618b7f327215883e44718
まともなビューはまだない
自分だけの検索エンジンを作れるはず
SVG Screenshotのアイデアが搭載されているので領域とハイパーリンクの情報も分析済み
ChatGPTに架空の世界記述をさせるためのデータソースとして活躍した
https://gyazo.com/29d1dcb462f2d1d697f8e4d19104e1f1 https://twitter.com/daizplus/status/1631467474959966208
例: 知的生産活動した場所の経緯度
git commitやメモなど
https://gyazo.com/ef7a52a7931cc21cede425cd2efe68b4
開発が捗るビジネスホテルマップとか作れそう
ビューはまだない
https://gyazo.com/8b08a63b825c34caeefcee35cd96b3f3
34,000件も溜まっていた
面を広げつつ密度を高める
適当に興味があることに手を出していく
関連性をこじつければ面を作れる
https://gyazo.com/298e8731cd9ec344f7a0ac39e721aba8
ここから得意領域を増やす方法は?
広く浅く、関心範囲を広げる
新たなジャンルに手を出す
既存の点との関連性があると最高
狭く深く、知識の密度を高める
近傍のジャンルを勉強して面を補強する
https://gyazo.com/22b140a15f892b7730b5a6c35520f803 https://gyazo.com/b18fbd3131bf169a2aba0fcf305d6bf5
集めたデータに触れていると自ずと見えてくる
すでに確立した面に未知の点を接続する感覚
専門分野の面をいくつも用意しておくと強い
つねにアイデアを試して、拡張可能なプロトタイプを持っておく
新しい話題が来たときに飛びつきやすい
とにかく深堀りする
自分のアイデアと向き合ってとことん探究する
一人の人間が考えていることなので、興味関心の根はつながっているはず
これを見いだすまで自分の作品に関する考察を深めたい
https://gyazo.com/e92d083c1c7526a951a4b7e218e93925
結果的に新しい領域に接続していく
この瞬間を味わうために頑張る
複数のネタを同時に進行しておくとよい理由でもある
刺激を受け続ける
自分が作ったものから得られる刺激
長続きさせるにはこれが一番大事
格好いいUIの快感
推薦アルゴリズムによる想像を超えたサジェスト
→ 次の一手が見えてくる
新しい技術に触れる
実現したいことにマッチする新技術や新製品がないか常にウォッチしておく
Elasticsearchの新機能
Cloudflare Workers
Cloud Run jobs
ChatGPT API
個人開発仲間と話す
こういう場がとてもありがたい
他にもコミュニティがあれば参加したい
なければ作りたい?
やめる判断
コンセプト検証可能になるまで勢いよく作り込む
プロトタイプを綺麗に作りすぎない
機能ごとに評価する
距離を置くタイミング
次の一手が見えなくなった
飽きてきた
得られた知見はまとめておく
アウトプット方法を選ぶ
負担なく続けられる形態を選択する
サービス化する
自分以外のユーザーを抱えるため、負担が大きくなっている
限られた時間でこれをうまくやっている人は本当にすごいと思う daiiz.icon
デモサイトを公開する
素早くフィードバックを得られる
例: https://pointillism.daiiz.dev/
https://gyazo.com/2398ea701c1291e2bafff541024f7ba3
コードを公開する
各自の環境で動かしてもらえるようになる
例: https://github.com/daiiz/pimento
https://gyazo.com/4ac511b004f8933269ab3563f4a3fcf0
考え方を公開する
ブログや同人誌で作り方を共有する
別のプロダクトに適用する
一緒に作って楽しめる人を増やしたいという願いもある
例
探究 SVGとスクリーンショット 商業版
写真を点描画ふうに変換するツールをつくる
https://gyazo.com/13406eaf0b534016e7509b84a8352445 https://gyazo.com/ddcbb79c64224d0c96d988e448e249da
個人開発論 まとめ
興味関心がある身近なデータを集めまくる
データを起点にして次の挑戦領域を発見する
自分が作ったものを毎日使う
アイデアの本質が見えるまで深堀りする
ときどき刺激を加える