Saturday, May 9, 2009

Amazon Kindle DX

I'm sure you've all heard of Amazon's new Kindle DX. If you haven't google around, it's been in the news quite a bit lately. A lot of blogs have been talking about the new Kindle and it's potential (or lack thereof) to replace textbooks at colleges. One of them in particular caught my attention: I strongly recommend you give that a quick read if you haven't already. But in case you're feeling lazy, let me summarize it really quick.

In his post, Jason Kincaid of TC, says that the Kindle DX will sell in colleges because of textbook piracy. You can read PDFs on the Kindle, and if you happened to have a copy of a PDF of a textbook, there's no reason why you won't just put it on your Kindle and save yourself hundreds of dollars. I think that's a very interesting argument. I personally shell out roughly $500 to $600 per semester on textbooks. And this is just on prescribed textbooks. Most students also buy solutions manuals etc to accompany the textbooks. I've also found that several times prescribed textbooks are boring, not a whole lot of fun to read, and therefore I end up not reading very much of them. Bottom line, if you find yourself a PDF for all your textbooks, you aren't going to buy textbooks. You would even shell out $500 or so for a Kindle once, so you can get free textbooks for the rest of your college life. And at college, if there's enough demand for something, it gets satisfied. If 10 people want a PDF of a given book, rest assured "the nerd down the hall" will find it.

As soon as I read this, safaribooksonline came to my mind. UMich gives us free access to that resource via Mirlyn. Until about a year ago, I didn't know that. Once I did find out about it, I've spent more time reading books on there than I have on reading "required" textbooks. Reason: required textbooks are usually boring. Now I'm a Computer Science Engineer in training, and deem myself to be somewhat of a nerd, so I spend most of my day in front of a screen anyway. Reading books in a browser is completely acceptable to me. I actually prefer it because I don't have to turn every time I want to switch attention from a physical book to my laptop. In his post, Kincaid says people don't like reading on a computer screen. Printing PDFs of large textbooks is sort of a stupid idea anyway. What he's saying the Kindle DX can solve a major problem that prevents people from reading e-books. And I think he's got it right. If the Kindle provides a legal, low cost way of reading books, I think it would sell like hot fire. The problem of course, is that the publishers aren't going to sell textbooks cheap. They make a living by ripping students off. If not for that they'd be dead meat. Now I'm sure they have their justifications for the ridiculous prices and I don't really understand how their industry works.
But, I think the Kindle brings with it a ray of hope. And here's why.

Before the Kindle, if you wrote a book, you needed a publisher to publish it, or you'd basically be the only person reading it. Now that you have the Kindle that's gone. You can write a book, format it into a PDF, and you're done. You don't need anyone else to invest in you and take a huge risk publishing your book (except for yourself of course) etc. You publish it yourself. And people read it on their Kindles. If the book becomes popular, you charge some small amount for it. Like I said before, I don't know how the publishing industry works, and how much money the authors make, but I'd be willing to bet that the authors get a very small percentage of the profits anyway. As Kincaid points out, if it costs $10 you're not going to bother pirating it. I think that if people start doing this instead, it will change the face of the textbook industry altogether.

Here are two examples of how the Kindle could be used to change the way people look at textbooks. The first, is what is called (or used to be called) "Daida Book". Back in Fall 2006, I took Engin 101 with Prof. Daida. The class was an intro to programming in MATLAB and C++. For the MATLAB component, Prof. Daida had written his own textbook (it was a series of Mathematica notebook files). While every other section of Engin 101 had to shell out $100-ish for textbooks, we got em free. And I'm fairly sure that no one felt that they were suffering due to lack of a "published" textbook. Personally I think Prof. Daida's book was a far better read than the "prescribed" textbooks. Bottom line, students were happier and less poor. Now you can say that Prof. Daida gave the book away for free, so what's in it for him? Well, I'll let you ask him what's in it for him, but if he wanted to make money off of it, he could've put a small price tag on it, and I'd be willing to bet that students would buy it and still be very happy about it. I'd also be willing to bet that it wouldn't be such a bad deal for him either. The Kindle lets you do this. Back in Fall 2006 adding a price tag would've been a little messy. Not anymore.

My second example is a "required" textbook: That was the required reading for my Algorithms and Data Structures class. The entire book is online, with source code for free in html format. Now I was an idiot and bought a physical copy before I realized that, but that's irrelevant. Someone in the class realized that the book was available online for free and once the word spread, quite a few people in the class never bought the book. For me, it was great because I didn't have to carry it around. Plus I get to use google search on it, so even better. I have the physical copy lying around somewhere, but even when I was in the course, I never used it. Once again, with the Kindle, this becomes so much easier.

Bottom line: I think the Kindle presents a superb opportunity to take the publisher out of the equation. After all, it's the content and not the medium of communicating the content that matters. Take the publisher out, you get a lot happier students, and equally happy authors.

- Sir Lapog Kahn.

Tuesday, May 5, 2009

Android 1.5 First Look

I just got the official release of Android 1.5 onto my ADP. And I'm loving it. I think it's a phenomenal upgrade, and here's a few features that really caught my eye.

Video camera - hell yes! It's been less than a year since the G1 release, and cupcake has video recording on it (iPhone 3.0 - still don't know if it has video recording). The quality isn't half bad either. Best part is, they've made it really easy to take a video, and instantly share it. You can either email it through gmail, the mail application, send it via mms, or upload it to YouTube.

Virtual keyboard - awesome! This really should have been in there a long time ago, but at least it's here now. I actually prefer the Android virtual keyboard to the iPhone's because it vibrates very subtly when you tap keys. I also prefer the suggestive text to the iPhone's auto correct. Another win for Android here.

Automatic screen orientation switching. Again, this probably should have been in to begin with. It works great, just as you'd expect. I never really liked this feature on the iPhone though - it never changes when I want it to, but quite often changes when I don't want it to. From my brief toying around with the feature, the Android does it slightly better, but still not good enough for me to have it turned on.

They've also made a few changes to the default UI for Android. There's some texturing going on now. Looks nicer. Nothing major though.

From a developer's perspective, this update introduces several new features to the SDK. I personally haven't tried and tested any of them yet, but will do so in the near future. When I get on it, I'll be sure to write about it.

If you're a 1.1 or earlier developer, you may be made a little unhappy by this update. They've changed the minimum size for some UI elements (Buttons for instance). So if you were relying on "wrap_content" to make your UI look just right, you may have to redo it. Not really sure why they did that.

All in all, I think this is a pretty phenomenal update. If you haven't already gotten it, get it now and you won't regret it.

-Sir Lapog Kahn.

Upgrading ADP to Android 1.5

If you don't already know, Android 1.5 is now officially released. The "official" way to get it onto your ADP is written about here. However, there seems to be an error with the javascript on that webpage and therefore, you can't download any of the images (until they fix it - if they fix it and I don't update this post, please let me know via comments/email). This got me really pissed off and took me to #android-dev to ask for help. And I did get help. I'd imagine that there are quite a few people who are frustrated by this, so I figured I'd write about how to get your hands on the updates.

Update: The page appears to have been fixed. I had emailed HTC support reporting the error, and they replied to me within 24 hours saying the page had been fixed. I am very impressed with their efficiency. Hats off to you HTC.

It's pretty simple really. You use wget to get the files directly, setting the referer to the link itself. Here is the exact command. Wait for the files to download. To ensure that the files are the right ones, you may want to do a checksum.

Once you get the files, go ahead and follow the instructions on the page mentioned above. They worked fine for me. However, I have read about a few people having problems with adb not recognizing the device. Keep in mind that you don't have to go through adb as mentioned on the HTC page. You just need to get the relevant updates onto the SD card with the name of - you can do this with Windows Explorer, Finder, Nautilus (or whatever it is you use) if you prefer doing it that way.
If you're having trouble with adb, try this instead:

Mount the phone's SD card onto your computer somehow (either through the USB cable, or by plugging it in directly). Once you've done that, copy the updates (one by one, as mentioned in the tutorial) on to the SD card, and rename it to (irrespective of what update it is). Then follow the instructions on the HTC page. This hopefully should circumvent any adb problems.

That should be all you need to get Android 1.5 onto your ADP. Have fun with it!