Android Dev Phone doesn't do copy protected apps

Some developers have asked about the support for copy-protected apps on developer devices, and indeed there is a limitation you should be aware of. Many developers are concerned about the unauthorized redistribution of their applications, so they make use of the copy-protection feature (known as "forward locking") which prevents applications from being copied off devices. However, developer phones like the ADP1 allow for unrestricted access to the device's contents, making it impossible to enforce copy protection. As a result, the Market application on such devices is not able to access copy protected apps, whether they are free or paid. If you choose to add copy protection when you upload your application to the Android Market, then you won't be able to test it on the ADP1's Android Market client. Your application will always be accessible to users who have standard configurations though, and if your application (whether it is free or paid) is not copy-protected it will appear on all devices, including developer configurations.

So I've found a reason (other than it being more expensive) why someone might want to buy the locked version of the Android phone. I still think the dev phone is more attractive, since the unlocked phone is pretty much a Linux box that fits in your pocket. (And I'm pretty sure it's more powerful than my first Linux box, too. =)

Collaborative Map-Reduce in the Browser

After immersing yourself into the field of distributed computing and large data sets you inevitably come to appreciate the elegance of Google's Map-Reduce framework. Both the generality and the simplicity of its map, emit, and reduce phases is what makes it such a powerful tool. However, while Google has made the theory public, the underlying software implementation remains closed source and is arguably one of their biggest competitive advantages (GFS, BigTable, etc). Of course, there is a multitude of the open source variants (Apache Hadoop, Disco, Skynet, amongst many others), but one can't help but to notice the disconnect between the elegance and simplicity of the theory and the painful implementation: custom protocols, custom servers, file systems, redundancy, and the list goes on! Which begs the question, how do we lower the barrier?

This idea is my kind of crazy. Map Reduce using JavaScript and HTTP. Nice. (And hey I was a big dnetc fan back in the day when I didn't pay for electricity and I owned a desktop =)

Morning Rainbow

When I left the house this morning, the sun was just creeping over the hills. It rained last night, and was mostly cloudy, but the sun managed to find plenty of holes in the clouds to peek through. The morning after a rain is always the most beautiful, with the vibrant colors and the fresh, clean air. I was already quite happy with the morning when the rain started again. As I looked around, I noticed a huge rainbow on my left. It was the full arc. Continuing on my way home, I found that I was running straight towards the rainbow, and was hoping that it would stay around so I could show Mara and Emma when I got home. Sadly, this was not to be. When I got near the end of the trail, the rainbow started to disappear, and was gone completely when I finished my run. On my walk home, I could come to only one conclusion: I must live at the end of the rainbow.

HP Laptop Redux

Perhaps I spoke too soon. One of my coworkers got a 6930p, and I have to say that the pictures don't do it justice. It actually looks rather nice in person. So it looks like it's just that it took HP awhile to create business laptops that don't bore me. Novel. Its too bad that the best way for me to actually see HP's business computers in person is to wait for someone at work to get one issued to them.

Today's Half Marathon Practice

I ran a little more than a half marathon today in preparation for the half marathon that I'm going to be running in Sacramento in two weeks. I'm getting a lot better at this a lot faster than I would have expected. I did 13.92 miles in 2:01:04, which is a 8:42 minute/mile average. That's crazy, since this was a somewhat relaxed training run, and I ran something like a 8:50 on one of the first races that I did. Of course, I have a map.

Today's extended run

I went for my run this morning, and discovered that they had closed part of the trail I run on. So, I created a detour, and got a little carried away. (The plan was for a 6-7 mile run, that ended up being almost 10 miles.) I did learn that running on Treat Blvd sucks, running on Oak Grove Rd is only a little better, and running on Ygnacio Valley Blvd east of Heather Farm is actually quite nice.

Running in the rain

In my opinion, running in the rain is one of life's great joys. While I'm not sure I would have wanted to do the 16 miler in the rain, the 7 miles I did this morning was just about right. I haven't had the chance to run in real rain like this in at least a year. This has turned out to be a good running weekend.