1つのKindle開発ストーリー

この記事では、Kindle 3(現在のKindleキーボード)の開発経験を共有したいと思います。 この記事には、Amazon、そのチーム、サービス、またはプログラムの一部として私に提供された資料に対する批判は含まれていません(この点に関して、ベータプログラム参加者の同意に拘束されます)。



ちょっとした歴史



この冬、私はKindle 3gを買った。 私はこのデバイスが好きでした-大きな可能性がありました。 メモリー、wi-fi、3g、Linux、マイク(関係なし)。 その後、私は考えました-画面の応答時間が短ければ、リーダーはタブレットや電話の代替品として十分に使用できます。 結局、ここの多くの人生の半数が白黒テレビを見ていましたが、それで十分でした。

数日間使用した後、私はより大きなロシアのキーボードと普通のプレーヤーが欲しかった。 インターネットはこれをすべて置くことができると言ったが、脱獄が必要だ。 その時までに、私はすでにAmazonによる本の撤去に関するニュースを読んでおり、Amazonが無料の3gへのアクセスを隠蔽したり、Kindleに自己破壊のコマンドを送信したり(冗談を言ったり)できることを(無駄に)怖がっていました。 この時までに、私は素晴らしいアンキプログラムを見せてくれた家庭教師と一緒に半年間英語を勉強していました。 彼女のポートをKindleに載せたかったのです。 さらに、Softserve IT Academyで無料のJavaコースを受講し始めました。 その結果、アカデミーでの最終プロジェクトでは、Kindle用のAnkiアナログを書くことにしました。



KDKベータプログラム



AmazonがKindle SDK(KDK)のクローズドベータテストを開始したことは知っていました。 「何が冗談ではないのか」と思って、私はプログラムへの参加をリクエストしました。

ここでリスクを冒しました。プログラムに参加できなかった場合は、Kindleから職人が抽出したSDKを使用して、完全なヘルプとjavadocを使用せずに「タッチ」でアプリケーションを作成する必要があります。 後で理解したように、これを行うことはできません。

Amazonのマネージャーとの連絡は約1か月続き、彼はアプリケーションの説明(Amazonの用語-アクティブタイトル、またはKindlet)、スケッチ、および各機能のリリーススケジュールを要求しました。 私はこれをすべて彼に送りました、彼らは私をプログラムに受け入れてくれました。 私は喜んでコーディングを始めました。



アプリケーション自体について少し



このアプリケーションは、質問回答カードの形式で提示された事実をユーザーが学習できるように作成されました。 カードベースの学習は次のように機能します。質問のあるカードが表示され、回答を覚えてから、カードの反対側でこの回答を確認します。 その後、あなたの知識(良い、平均、悪い、私は知らない)を評価することができ、この評価はカードが次に表示される時間に影響します。 アプリケーションにはカード付きのデッキの例がいくつかありますが、ユーザーが自分でデッキを作成し、カードを追加して学習することを前提としています。 インターフェイス言語はロシア語、英語、ドイツ語です。 ドイツ語、スペイン語、ロシア語、ウクライナ語の記号を使用したレイアウトがサポートされています。 組み込みのヘルプがあります。

KDK、Kindle Iron、およびAmazonのポリシーは、アプリケーションにいくつかの制限を課しています。 Ankiとの完全な互換性から離れ、回避する必要がありました。 ファイルの互換性(タブ区切りのtxt形式のAnkiからのデッキの片側エクスポートのみが可能)およびサーバー上のデッキとの同期はできませんでした。 物理的なロシア語キーボードのハックはKindletsでは機能しませんでした;私は代替言語用にレイアウトを書かなければなりませんでした。 アプリケーションはkindle 3 / 3g(キーボード)とkindle DX(後者-シミュレーターのみ)でのみテストされました。



連絡の試み



約3か月後、私は開発を終え、アカデミーで卒業プレゼンテーションを行い、マネージャーにすべての準備が整ったことを伝えました。 彼は私にレビューとテストのために申請書を提出するように頼みました。 私は送って、答えを楽しみ始めました。 この瞬間から4ヶ月が経過しました。 フィードバックがありません。 約1か月後、私は控えめに自分自身を思い出し始めました。 私はマネージャーに書いて、サポートフォームを使って書いて、開発者の内部フォーラムに書いた。 回答は3か月後に来て、Skypeでの会議の手配を求めました。 再び嬉しくなり、私たちは時間に同意しました。 これは奇妙なことですが、Skypeでお互いを見つけることができませんでした。彼は私を見ることができず、私は彼をオフラインの連絡先としてしか見ませんでした。 スカイプ経由で2回連絡を取ろうとした後、マネージャーから、EUまたは米国で会議番号を探すように依頼されました。 私は頭を掻きましたが、会議番号をマネージャーに送信すると同時にこの電話番号を送信することでこの問題を解決することができました(Skypeから安く電話することができます)。 その瞬間から、手紙は配達されていないように私に戻ってきました。

私は再び開発者フォーラムに書きました。そこでは、ある男が私と同じプログラムに参加しましたが、私と同じですが、より成功しました。 彼はコミュニケーションに問題はなく、彼のアプリケーションは問題なくAmazonマーケットに投稿し、わずかながら利益をもたらすと述べました。 彼は私に別のマネージャーの連絡先をくれたが、マネージャーは私にも答えなかった。 それから私は「十分」と思った。



やめて



多くの人にとって有用なアプリケーションは決して使用されないという考えは、私のようなアマチュアでさえ、開発者を狂わせることができます。 Kindletをパブリックドメインに置くことにしました。 残念ながら、インストールには脱獄と、Kindleに開発者キーをインストールする追加のハックが必要です。 このすべてのインストールプロセスは、Kindleの他の便利なアプリケーションを作成する1人の優秀な人によって長い間説明されてきました。 指示へのリンクは、アプリケーションのサポートのために立ち上げたサイトのダウンロードセクションにあります。



結論として



KDK開発者に深い感謝の意を表したいと思います。 私はモバイル開発の第一人者とはほど遠いですが、他の開発環境(Android SDK、xCode)と比較すると、KDKはかなりフレンドリーです。 これは私の個人的な意見です。

また、多くのことを学んだSoftserve IT Academyに感謝の意を表したいと思います。このおかげで、数年にわたるWeb開発への執着の後に脳をかき立てることができました。

ドイツのインターフェースの翻訳を完了してくれた妻にも感謝しています。

そして最後に-Ankiを開発したすべての人に感謝します。

厚手の本の表紙のように非常に哀れに見える場合は申し訳ありません。 私はすでに終わっています。



まとめ



有用なアプリケーション(またはゲーム)のプロジェクトがある場合、KDKベータテストプログラムに参加することは非常に可能です。 Kindle用に開発することでお金を稼ぐことも非常に現実的です、そのような人々が存在します。 プロジェクトの最初に知らなくてもJavaでアプリケーションを作成することもできます。必要なのはそれだけです。



All Articles