Inkdrop 4をリリースしました

Share
Inkdrop 4をリリースしました

Inkdrop 4をリリースしました

端末間暗号化(End-to-end Encryption)、Side-by-sideビューの正確なスクロール同期、新しいロゴなど

こんにちは、TAKUYAです。大変おまたせしていたInkdrop v4が本日リリースされ、全てのユーザの皆さんにお使い頂けるようになりました。ベータ版のテストに参加していただいた皆さんのお陰でリリースにこぎ着ける事が出来ました。(特にバグ報告や意見を下さった次の皆さんに感謝します: Erdem, Otawaraさん, Asish, derkork, FORTRAN, Kazutakaさん, Horiiさん, leptospira489, John, Gustavo, Nicolo, Andreas) v4では更なる生産性向上を目指して、多くの機能が根底から改善されました。また、ロゴも新しくなりました。本稿では今回Inkdropの新しくなった点についてご紹介します。

Inkdropを初めて知った方はこちらのウェブサイトをご覧ください。

Inkdropは開発者用のMarkdownノートアプリです。僕自身が欲しかったので作りました。アプリの機能の詳細についてはこちらのウェブサイトをご覧ください。

僕は日本を拠点に活動するフリーランスデベロッパーです。このプロジェクトはかれこれ3年続けています (記事: どうやって個人開発を3年間続けたか)。Inkdropのマネタイズ戦略はどうやら上手く行き、ここ1年間は受託のお仕事をやらずに生活を送れています。このプロジェクトに取り組みながら、自分の戦略やそこから得た知見をブログにシェアしています:

英語で先に書いてから日本語に訳しています。

つまりこのプロジェクトは単なる有料アプリではなく、個人開発で好きな事をしながら生きようとするストーリーでもあります。

9ヶ月前にロードマップ(vol.3)で述べたとおり、アプリをイチから組み直すことを決めました。この取り組みは結局7ヶ月もかかりました。とても長い旅でしたが、長い時間がかかった理由を説明させて下さい。最初のバージョンは3年前に開発しました。その当時、僕はElectronやReactを使ったアプリの開発が初めてで経験がありませんでした。Inkdropが成長すると共に、自分もそこから多くの知見を得ました。そして実装の観点でアプリをもっと良く出来ることに気づきました。開発の過程で、いくつかの依存モジュールは廃止されてしまいました。近い将来、それが大きな問題になることを危惧していました。僕はアプリを再構築しなければこの先も開発を続けるのは難しいだろうと感じていました。しかし、多くの会社がサービスを再構築しようとして頓挫しているのを見てきたので、それが危険な道であり、めちゃくちゃ大変なことは承知していました。そんな巨大タスクをやっとやり終える事ができて嬉しいです。

この再構築がユーザにとってどんな意味があるのかというと、僕がより素早く動けるという点にあります。つまり、プロジェクトが始まった当初のように、バグをすぐに直したり、安定性を保持しつつコア機能の改善が出来ます。一緒に発展させていきましょう :)

もしアプリが良いと思ったら、下記Product HuntにてUpvoteお願いします🙏

Inkdropはデバイス間・プラットフォーム間のシームレスな同期を提供しています。開発者はセンシティブな情報を取り扱うことが多いので、開発者向けノートアプリとしてユーザのデータを守ることはとても重要です。そこで、v4では端末間暗号化(end-to-end encryption)に対応しました。あなたのデータはクライアント上(iOSとAndroidを含む)で暗号化/復号化されます。つまりInkdropのサーバはあなたのデータの中身に触れることはありません。詳しくはこちらのドキュメントをご覧ください。

画像を挟んでもスクロール位置がズレません

Side-by-sideモード(エディタとプレビューの2カラム表示)はMarkdownのHTMLレンダリング結果を確認しながらノートが書ける便利な機能です。今回のアップデートで、エディタとプレビューのスクロール位置がより正確になりました。これでどこを編集していたか見失ってしまう心配はなくなります。

Desktop
Mobile

ノートの数が増えると共に、検索する回数も増えてきます。より使いやすい検索機能の提供に向けた簡潔なUIとパフォーマンスは、アプリの中心機能と言えるでしょう。ノートのインデクシングは完全にローカルで行われ、ネットワーク遅延はありません。

どんな作業をしている時でも、とにかく素早くノートにアクセスしたいと思う人に嬉しい機能です。keymap.csonを編集してグローバルショートカットを以下のように設定すれば、Inkdropのウインドウを最前列に表示してフォーカスします:

<span id="6ce0" class="ss pz io sn b gz st su m sv sw">'global':<br></br> 'cmd-shift-x': 'application:show-and-focus-main-window'</span>

v4はノートの整理をより一層支援します。

ノートにタグを追加するにつれて、タグリストはすぐに長くなって探すのが大変になります。同様に、ノートにステータスを設定すると、どれがアクティブなノートなのか探すのが難しくなります。新バージョンではノートブック・サブメニューに対応しました。この機能は、ノートブック内でのみ使用されているタグとステータスを表示します。このメニューからすばやく目的のノートを見つけられます。

そして、サイドバーの各項目の右側にカウントバッジを表示するようにしました。このバッジは、その項目に相当するノートの数を示しています。この数字を見れば、あなたのノートの統計がすぐに確認できます。

モバイルネットワークは不安定でいつも速いとは限りません。なので画像をすばやく表示出来ない時がありました。これは少し面倒だったので、画像をローカルにキャッシュするようにしました。一度画像を読み込んだら、次回からはキャッシュから表示します。これでパリの地下鉄で移動していても画像が確認できますね!

Inkdropのウェブサイトのデザインも作り直しました。GatsbyというReactベースの静的サイトビルダーを使って組みました。このサイトを作るにあたってアプリの推薦文を書いてくださった皆さんに、この場を借りて謝意を述べたいと思います🙏🙌 Thank you guys!!! あとキャッチフレーズの英語のアドバイスをくれたToddもありがとう!

ドキュメントのウェブサイトもGatsbyを使って同様に組み直しました。これでMarkdownで簡単にページを追加できるようになりました。アプリの便利な使い方やハック方法などをこれからモリモリ書いていきます!

v4以降、端末間暗号化はデフォルトで有効化されます。一度有効化すると、全ての端末にてv4を使用しなければなりません。v3以前のバージョンは利用できなくなります。また、v3用のサーバは近日パージされますので、移行はお早めにお願いいたします。

プラグインを入れている方はアップデート直後、沢山の警告が表示されます。プラグインは以下のコマンドで更新できます:

<span id="2904" class="ss pz io sn b gz st su m sv sw">ipm update</span>

もしあなたがプラグインの作者なら、こちらのマイグレーションガイドを参考にマイグレーションしてください。少しの変更だけでv4でも動くようになります。もしまだプラグインがv4に対応していなければ、プラグインの一覧ページで非表示になります。もし使用しているプラグインがまだv4に対応していない様子であれば、その作者にマイグレーションガイドを教えてあげてください。ご理解・ご協力感謝します!

Read more

個人開発で日本から海外へ、10年間の歴史 — ひろしさんとの対談(前編)

個人開発で日本から海外へ、10年間の歴史 — ひろしさんとの対談(前編)

数週間前、ひろしさんのポッドキャストにゲストで出演しました。お互いの長い個人開発の経験について語り合いました。英語版を作成する過程で、日本語でも綺麗に整形した書き起こしが出来たので、こちらに掲載します。お楽しみください。 ※ギアアイコンをクリックして、音声と字幕を日本語に変更できます。 00:00 イントロ:TAKUYAさんようこそ 01:32 TAKUYAさんの自己紹介:WalknoteからInkdropまで 04:54 独立への踏み切り方:慎重派と勢い派 06:51 個人開発がフリーランス案件につながった 09:17 Inkdropで食えるようになるまで 12:15 なぜ最初から海外市場を狙ったのか 14:54 AI登場前、英語コピーに苦戦した話 16:18 AIバイブコーディング時代をどう見ているか 17:24 全てのコードを一行ずつレビューする使い方 21:06 AIは新幹線:速さの先にあるもの 25:53 AI時代に「感性」が大事になる 27:

By Takuya Matsuyama
「一汁一菜」にAI時代の生き方が詰まっている

「一汁一菜」にAI時代の生き方が詰まっている

どうも個人アプリ作家のTAKUYAです。 今回は、AI時代を開発者・クリエイター・表現者としてどう健やかに生きるか、について考えていることをシェアしたいと思います。ここでの「健やかに生きる」とは、心身の健康を保ちながら、ものづくりを楽しみ続けるという意味です。 読者の中にも、最近のAIの急速な進化の中でどう生き残り、さらに活躍していくかを悩んでいる方は多いのではないでしょうか。正直、すべてに対する正解はわかりません。未来を正確に予測できる人はいないからです。 でも自分は、ソフトウェア寄りのアーティストとして生きる上で大事なのは、「戦略」や「堀(moat)」を築くことよりも、「生きる方向性」 だと思っています。 人生とは速度ではなく方向である – ゲーテ 自分はどこに行きたいのか?何を見たいのか?それが大事です。戦略は状況に合わせて柔軟に変えればいいからです。 今回は、日本の文化からいくつかの生き方の原則を探ってみたいと思います。 最近、料理研究家の 土井善晴 さんの 「一汁一菜でよいという提案」 を読んで、日々のリズムを健やかに保つためのヒントがたくさん詰まっていると感じまし

By Takuya Matsuyama
Claude Codeをtmuxのポップアップウィンドウで継続的に走らせる方法

Claude Codeをtmuxのポップアップウィンドウで継続的に走らせる方法

💡本記事は英語ブログの日本語訳です。 どうも、TAKUYAです。 AIコーディングでは専らClaude Codeを使っています。最初はtmuxでターミナルの右側にペインを分割して使っていたのですが、幅が狭すぎてメッセージやdiffがまともに表示できず、使いづらかったです。 <Prefix>+zでペインを最大化すればいいのですが、毎回やるのは面倒でした。 そこで、ポップアップウィンドウでClaude Codeを起動するようにしました。キーバインドを押せばセッションが開き、閉じてもバックグラウンドで動き続けるので、すぐに再開できます。 この記事では、それを実現するためのtmuxの設定方法を紹介します。 動画で見る(英語): ポップアップウィンドウはサブプロセスを維持できない tmuxのdisplay-popupコマンドを使うとポップアップウィンドウを表示でき、ちょっとしたツールにすぐアクセスするのに便利です。 僕はlazygitでgitの状態をサッと確認するのに使っています: bind -r g display-popup -d '#{pane_current_path}'

By Takuya Matsuyama
Keychron K2 HEを無刻印化する手順

Keychron K2 HEを無刻印化する手順

どうもTAKUYAです。KeychronさんにK2 HEをお願いしたら音速で送ってくれたので、無刻印化してみました。どうやったのか過程をシェアします。 Unboxing 上はKeychron Q1です。これは3年間ぐらい使ってきました。キーキャップが若干くたびれていますね。でも問題なく今まで使えていました。そろそろ飽きてきたので新しいキーボードを試したいと思い、前から気になっていたK2 HEを試すことにしました(写真下)。 Amazon | 【国内正規品】Keychron K2 HE ラピッドトリガー ワイヤレス カスタムキーボード、ホールエフェクトGateronダブルレール・マグネットスイッチ、2.4GHz・Bluetooth無線対応、QMKプログラム可能、アルミ+ウッドフレーム、USレイアウト、RGBライト、Mac Windows Linux対応 (ブラック) | Keychron | パソコン用キーボード 通販【国内正規品】Keychron K2 HE ラピッドトリガー ワイヤレス カスタムキーボード、ホールエフェクトGateronダブルレール・マグネットスイッチ、

By Takuya Matsuyama