Archive | Gadgets RSS for this section

iPad Enthusiasm

Yes, I’m looking forward to the iPad release. I set my alarm early on Pre-Order day and raced through the process, just in case.

I’ve been tagged as an Apple fanboy, but I’m not sure that’s the case. I’m a mobile technology fanboy. I’ve tried the gamut of mobile device models and brands, yet I come back to the Apple product lines time and again. I spent months with the Palm Pre (great SDK!) and weeks with Android (the Droid) and Windows Mobile devices, but the iPhone (despite its limitations) is #1 for me. Similarly, I’ve spent a lot of time with the Archos 5 Android, UMPCs, Nokia Internet Tablets and the Kindle. Knowing what I know about the software and hardware that makes up the iPad, it’s clear that Apple has another winner.

I spend a lot of time on the computer. I read and write email, read and write documents, read news (twitter, articles), listen to audiobooks and podcasts, write code, watch video. At home and at work, I’ve been spending less time at my desk – so, for many of these tasks, I rely on my iPhone (especially reading email, listening to audiobooks/podcasts and watching video). Going forward, at home I expect that the iPad will be my go-to device for reading and viewing email, news, and video.

Meanwhile, there are a ton of new experiences that the iPad will enable. It’s not clear which of these will ‘catch on’ with me or with you, but quite a few new possibilities will be opened up on April 3rd at the intersection of the iPad and the terrifically innovative development community that has sprung up around the iPhone OS.

Beyond the obvious use cases mentioned above, I’m looking forward to:

  • The competition for the best iPad Twitter app – who can use the large, multitouch screen the best? I expect that it will be a more compelling experience than desktop/notebook alternatives.
  • Similarly, but probably with a longer horizon, the competition for the best RSS newsreader on the platform will be intense. I version of Reeder 2 or MobileRSS reorganized for the iPad form factor will be a lot of fun to use.
  • I’m still hoping that Netflix and Hulu will work something out with Apple to get their streaming solutions available on the iPad. Apple has an obvious financial incentive to block these apps, but subscription or ad based video streaming is going to win over $2.00 TV episodes some day. I’m surprised ANYONE is paying for TV that way on a regular basis.
  • An iPad optimized Flickr browsing app would be interesting.
  • Remote Desktop. It’s usable on an iPhone, but would be more so on the iPad.
  • Games. Just as we saw completely new kinds of games with the iPhone (and the Wii and the DS), we’ll see some new things on the iPad.
  • Comic books and graphic novels continue to be an exciting narrative model. It will be interesting to see the mix of mainstream and independent content that ends up on the iPad. Lots of people are excited about how magazines will make the leap to this device, but I think the leap that comics make will be just as interesting.
  • Interactive charts and data visualizations via touch. This technique could bring new life to informative textbook and magazine content.

iPhone Won

Though it was difficult, I chose the iPhone over the Droid. The apps I use most are currently implemented best on the iPhone (corp exchange email, twitter, music, video, audiobooks/podcasts, browser).

Of course, if I’d known that AT&T wireless service would be down for a week where I live, I might have chosen differently.

Droid vs iPhone 3GS

I picked up a Droid on Friday. Here is how it compares to the iPhone 3GS (in my opinion).

Droid Wins: Network
The iPhone is on AT&T. In my experience, AT&T drops calls at 2 places in my commute to work. Verizon has those locations covered. [Note: AT&T wins on one count, here. AT&T allows simultaneous data usage and phone calling when in 3G. Verizon halts data usage when you are on the phone.]

Droid Wins: Podcasts
The iPhone’s built-in podcast functionality is painful (many clicks) for downloading new episodes. And if you DON’T use the built-in tools, you can’t listen to those podcasts when you are doing something else. On the Droid, you can use DoggCatcher to download several new podcast episodes at once and listen to them while using other apps on the device.

Droid Wins: Navigation
Though the iPhone has several very nice options for voice navigation, the Android 2.0 solution available on the Droid is very, very good and it is free.

Droid Wins: Customizability
I won’t get into this. The iPhone allows for no customizability where the Droid is awash in this kind of stuff.

Droid Wins: App Switching
Even if you disregard the multitasking advantage of Android, you’ve got to love the shortcut of holding down the home button to see the 6 most recent apps used. (Thanks Josh and Dave!!)

Droid (probably) Wins: Flash
Until all video sharing sites have non-Flash versions, Flash will be important to me. It seems clear that the iPhone will not have it any time soon, but it looks like Android will have it in the next several months.

iPhone Wins: Games
I don’t do a ton of gaming anymore, but I love Dark Harvest and Flight Control on the iPhone. The Droid is WAY behind on selection and quality of games.

iPhone Wins: Twitter
I can name half a dozen iPhone Twitter apps that destroy all of the Android Twitter apps. I do think, though, that this is one area where Android will catch up rapidly.

iPhone Wins: Video
Buying video, downloading video, playing video. The Droid didn’t even try to touch the iPhone on these counts.

iPhone Wins: Photo Library Browsing
The Droid needs a solution here. Maybe some Picasa integration?

iPhone Wins: Interface
Multitouch in the built in apps, particularly the browser and maps, is missing in the Droid. Also, apps are generally cleaner and easier to use on the iPhone.

Tied: Music,Battery,Email,Browser,Keyboard,Camera,Customer Service,Screen
As far as I’m concerned, the iPhone and Droid are tied on music playback, battery life, calendar, email, and browser. I’ll call the camera a tie, too, since they both have drawbacks (Droid has lower color-quality images; iPhone has no flash). I’ll call keyboard a tie since the iPhone’s software keyboard is better, but the Droid has an OK physical keyboard when you’d rather not give up the screen real estate. Customer service is another tie. I’ve had great experiences with Verizon employees and Apple employees alike. Screen: The Droid has a better screen, but the iPhone uses its better.

Not Counted: App Store Freedom, Expandable Storage, Dev Experience
I’m not counting app store freedom. I think Google’s approach is the right one, but Apple’s policies haven’t stopped tons of gems coming through. On storage: though the Droid has expandable storage, apps often use it by default to store data, blocking its usefulness. As for the Developer Experience – Android is easier to get started with and you can do more with the device, but the iPhone provides more UI glitz and its libraries are great for graphics and media.

I’ll keep both a few days longer, but I do have to cancel one before this time next week.

Other opinions:
My favorite: Ihnatko’s
Open Platform Perspective: Winer
Overall: Gartenberg

Python + OS X + Arduino + BlinkM

I have a bunch of BlinkMs and an Arduino from an old project and I spent some time with them this weekend. This time, I used Python on a Mac to connect. I learned a little in the process, so I thought I’d share.

1. I used darwinports‘ Python2.4 and the pyserial library.
2. On the Arduino, I flashed the BlinkMCommunicator code available here.
3. When writing to the BlinkM’s eeprom, you need to pause briefly before sending another command.
4. The attached code uses decode(“hex”). I’ll explain that design choice later.
5. The code assumes you have 3 BlinkM’s hooked up to the Arduino with their addresses set as 1, 2 and 3.

import serial
import time

def toBlinkM (ser, command):
	print ">\t Sending "+command
	print ">\t\t Sent "+command
def setBlinkMToPlaySimpleScript (ser, address, color1, color2, color3, color4, duration, fadespeed):
	# example: write line 0 of script 0 on BlinkM 1
	# 	01	Start code
	#	01	BlinkM address
	#	08	bytes to send
	#	00	bytes to receive
	#	57	command: write line
	#	00	script number	
	#	00	line number
	#	20	duration
	#	63	fade
	#	20	R
	#	20	G
	#	00	B
	print ("> Playing Simple Script on "+address)

	toBlinkM(ser, "01"+address+"0800570000"+duration+"63"+color1)
	time.sleep (.2)
	toBlinkM(ser, "01"+address+"0800570001"+duration+"63"+color2)
	time.sleep (.2)
	toBlinkM(ser, "01"+address+"0800570002"+duration+"63"+color3)
	time.sleep (.2)
	toBlinkM(ser, "01"+address+"0800570003"+duration+"63"+color4)
	time.sleep (.2)
	# last line: play script 0 1 time
	toBlinkM(ser, "01"+address+"0800570004"+"00"+"70"+"000100")
	time.sleep (.2)
	# set script id 0 to a len. of 5, 1 repeats 
	toBlinkM(ser, "01"+address+"04004C000501")
	time.sleep (.2)
	# set fade speed
	toBlinkM(ser, "01"+address+"020066"+fadespeed)
	time.sleep (.2)

	# play script id 0 
	toBlinkM(ser, "01"+address+"040070008000")
	time.sleep (.2)

ser = serial.Serial('/dev/tty.usbserial-A4001lcU',19200, timeout=1)

counter = 0

print "> Waiting for Arduino."

while 1:
	serialline = ser.readline()
	if (serialline):
		print serialline.strip()
	if ('ready' in serialline):

print "> Arduino ready."

# tell #1 to stop animating
toBlinkM(ser, "010101006f")

# tell #1 to show only green and red at 1 bright
toBlinkM(ser, "0101040063010100")

# tell #2 to stop animating
toBlinkM(ser, "010201006f")

# tell #2 to show only blue and green at 1 bright
toBlinkM(ser, "0102040063000101")

# tell #3 to stop animating
toBlinkM(ser, "010301006f")

# tell #3 to show only red at 3 bright
toBlinkM(ser, "0103040063030000")

time.sleep (10)


Touch Book Impressions

The Touch Book looks very cool. I’ve been waiting for a netbook with a detachable keyboard and here it is! It even has 2 internal usb ports! Still: I’m not sure if it’s right for me. I would prefer a faster CPU, even if it meant lower battery life.

If that magnet mount is strong enough for mounting to a metal plate on my dashboard, though…