Inkdrop 4をリリースしました

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

貫禄を捨てて愛嬌で生き延びろ!40代オッサンの生存戦略

貫禄を捨てて愛嬌で生き延びろ!40代オッサンの生存戦略

どうもTAKUYAです。 つい先週(11月19日)に誕生日を迎え、41歳になりました。40代と言うのは若い頃には想像もしなかった年代で、どう生きれば良いのかというイメージがあまり具体的に湧かない、曖昧な年齢ではないでしょうか?自分の父親を想像するも、日中はいつも仕事でいなかったのであまり参考になりません。 自分は個人開発で生計を立てていて20代、30代で積み上げて来たものが上手く実を結んだおかげで今の生活があります。育児にも、いわゆるサラリーマンよりかは柔軟に参加できていて、子供との時間も沢山取れています。ママ友も出来ました(迷惑かけっぱなしですが)。 本記事では、そんなライフスタイルを送る自分が40代で大事にしたいことについて書きたいと思います。タイトルにもある通り、結論から言うとそれは「愛嬌」だと思います。以下、中年男性の愛嬌の重要性について説明します。 TL;DR * 「貫禄が出てきたね」と言われたら注意 * 笑顔を作れ。オッサンがムスッとしてたら普通に怖い * 謙虚に振る舞え。実績を積むと周りが萎縮する * ギャップ萌えを活用しろ 「貫禄が出てきたね」と言わ

By Takuya Matsuyama
過集中を避けるための働き方とルーティン(二児の父ver.)

過集中を避けるための働き方とルーティン(二児の父ver.)

どうもTAKUYAです。 先日書いた通り、最近個人開発を頑張りすぎて体を壊してしまいました。 その原因の一つが過集中癖です。自分はもともと何かに集中すると周りが見えなくなる傾向があり、それがたまに私生活にも影響を及ぼします。同じ失敗を繰り返さないためにも、ちょっと働き方を再設計したいと思います。 働き方に対して他人の指摘をアテにしない 自分のようなフリーランサーまたは自作サービスで生計を立てている人は、時間の使い方を自分で自由に決められます。その反面、どこまでも極端な働き方が出来てしまい、それを指摘したり止めてくれる人がいないという欠点もあります。自分には妻がいますが、全く違う業界なので自分の作業ペースがどのようなものか具体的に把握できません。 「疲れた!」と言えば「休んだら?」と言ってくれますが、働き方やペース配分などにまで口は出しません。なので、他人のストップサインはアテに出来ません。 (心理カウンセラーの可能性を別途検討中) 最近子供が生まれたので厳密なルーティン実行は出来ない 一日を時間単位・分単位で区切ってルーティンを組むのは気持ちがいいですよね。僕もそうしたい

By Takuya Matsuyama
なぜ体を壊してまで個人開発を頑張るのか?自尊心の欠如や過集中癖と向き合う

なぜ体を壊してまで個人開発を頑張るのか?自尊心の欠如や過集中癖と向き合う

どうもTAKUYAです。最近、個人開発を頑張りすぎて体調を崩してしまいました。アトピーが猛烈に悪化して、QoLが著しく下がってしまいました。まだ療養中ですが、毎日1万歩以上歩いて、徐々に回復しつつあります。 この過ちを繰り返さないためにも、自分は一体何が原因で頑張りすぎてしまうのか?という事について深堀りして考えてみたいと思います。また、個人開発におけるメンタルヘルスはあまり語られていないトピックだと思います。本記事が、同じように仕事を頑張りすぎてしまう人の助けになれば幸いです。 TL;DR * なんとなく続けていたソフト開発が自分を救った * 原体験が歪んだモチベーションを生んでしまった * 親が引くほどの過集中癖がある * 生得的な直せないバグと考えることにする * アプリの成功に関係なく、自分をあるがままに受け入れる * 挫折しないのは、なんだかんだで前向きだから * ユーザさんから「休め!」と叱咤された * 人生は長い。個人開発なんかで死ぬな 自己の原体験について振り返ってみる 個人開発だけで生活するようになって、かれこれ8年ぐらいが経ちます。こう

By Takuya Matsuyama
ユーザサポートの問い合わせを装った攻撃が怖すぎた

ユーザサポートの問い合わせを装った攻撃が怖すぎた

どうもTAKUYAです。個人開発をしていてアプリの知名度が上がってくると、作者個人(あるいはサイト管理人)を狙った攻撃というのをたまに受けます。つい先日も、怖すぎるメールを受け取ったのでシェアします。 件名: Cookie consent prevents platform access Hello, I cannot access use the store. The cookie consent notice keeps appearing and nothing happens once I approve or try to close it, so I’m unable to interact with the website. Please provide guidance on

By Takuya Matsuyama