The
Kindle Development Kit Beta is pretty cool. So far have only set things up and run the basic Hello World App on the Simulator – However, it’s easy to see that developing apps will be straightforward and fun.
There are no stumbling blocks like having to use a whole new language or having to buy a specific Operating System.
How does the KDK Beta work?
Here’s what you’ll need -
- Java 6 – Although you’ll be compiling against 1.4.
- Personal Basis Profile Reference Implementation. It is recommended to compile against this to make sure you don’t use something not supported by the Kindle.
- A Java IDE. Eclipse is recommended since the guides and examples quote Eclipse including screenshots.
- A log-in for the KDK Beta Program. Apply early as slots are limited.
- A download of the KDK.
Then you can start coding in Eclipse and compiling your programs into JARs ending in
.azw2. You then test them either on Kindles you have set-up (kept running into a problem so haven’t tested that) or on the included
Kindle Simulator (which is cool).
It was great because it takes just 30-45 minutes to download everything and get started. If you’re already using Eclipse then just 10-15 minutes.
It’s really cool that Amazon are not forcing developers to buy Kindles since that would keep out some people. It is however recommended to test on an actual kindle.
All the instructions are in the
Getting Started Guide once you log into your KDK Beta account. It’s right at the bottom.
What were the interesting things?
The Cool Stuff
- The Beta is Free and all the software that’s needed – Eclipse, Java, BPB – is free.
- The Kindle Simulator is pretty cool.
- KDK working on Linux, Mac, and Windows is super cool.
- One of the examples included is a basic Twitter Client (haven’t tested it).
- Using Java is cool since there are lots of Java developers and even Android Apps use Java.
It’s a well thought out effort with a few very good touches.
The Helpful Stuff
- There are lots of articles and guides.
- The getting started guide was very good – including screenshots for almost every step.
- There are lots of pieces of sample code included.
- The standard javadocs and the Kindle API javadocs are included.
- You always have all the java coding guidelines and sample code you can find online.
To give you an idea of the relative smoothness it’s been 3 or 4 months since my last time coding and still everything was easy.
Quick Thoughts
- The two things that have been roadblocks in doing iPhone Apps have been having to learn Cocoa and buy a Mac and those restrictions aren’t there with the Kindle.
- There are people who’ll want to be pure and use assembly language or be uber-efficient and stylish and use Ruby on Rails. However, Java is good.
- Using Java sets up a huge pool of developers ready to contribute.
- There have been a few blog mentions of developers signing up (4 perhaps) and 2-3 threads on Hacker News. It does seem that developers are still trying to figure out the scope of the opportunity.
- There’s something surreal about seeing a giant Kindle on your color monitor pretending to have an eInk screen.
- It never struck me before that the entire front of the Kindle could be captured in eInk without losing a thing.
- At the moment it seems that you can’t access files on the Kindle from Apps. Perhaps I’m confused – perhaps it really is restricted.
- Every application gets its own little folder on the Kindle’s file system. If you remove the application the folder disappears – that’s a bit of a problem as it would mean that re-installs of an app erase data. This is also how iPhone Apps behave.
- Amazon recommend supporting 4 views – Kindle in portrait and landscape, Kindle DX in portrait and landscape. That just increases the test load by a lot. You can also force apps to only run in certain orientations.
- There are 3 image types supported for apps – think it was JPG, GIF, and PNG.
- The Kindle Simulator is also a debugger that you can attach to Eclipse – very cool.
- In addition to the files in its specific directory Apps can also access any files in the App package and can store sensitive data using secure storage.
- It seems (90% sure) that you can choose between ‘stopping’ an app and ‘shutting it down’. This means that when the Kindle goes to USB or screensaver the App can just be stopped – to be re-started later. Trying to figure out what other situations the stop/re-start can be used in.
- There’s a 5 second time limit on how long ‘lifecycle calls’ can take. Basically, no slow apps.
There’s just a lot of information to go through – for the most part it’s very well done and easy to use. The Kindle Development Kit is very similar to the Kindle – it gets things done with minimum friction.