Have spotty cell phone service at home? Skype for iphone/ipod touch can turn your ipod touch into a full fledged voip/skype out phone. Skype in and out with a full pledged number is only around 6 dollars a month. Throw your landline away. Sorry if this sounds like an ad!
I ran into some Safari related timing issues at work, that I thought were worthy of a post. To preface the post I’m using the dojo framework. On to the post…
I needed to position a flash overlay relative to the absolute postion of a div that will vary in position on subsequent page loads. So in comes the handy dojo.coords(id) function wrapped in a dojo.addOnLoad. This works like a charm in firefox 3, ie 6, ie7 and google chrome. In safari, no dice. The offsetTop and offsetLeft calculations were completely off (I tried this with my own custom function as well as dojo.coords()) I was finally able to get this to work with using a setTimeout delay (hack).
After researching the issue it seems apple decided to make window.onload fire “before” the page loads. (Seems counterintuitive to me, but it’s no wonder it’s so fast in benchmarks) This explains the miscalculation of element positioning on the page. Waiting for the page to load with a timeout fixes the problem. The solution is a hack and is obviously not fool proof as in there is no real barrier to execution. Does anyone in the interweb out there know how to get Safari to fire onload as in when the page actually finishes loading? Knock knock.
September 21st, 2009
aaron
After one month with the MyTouch and Android there are a few things I see as road blocks to being a real competitor to the iphone. Some of these things are definitely being addressed in the upcoming 1.6 and 2.0 os updates.
First off is the market store. It’s strictly bare bones. The search and category breakdown is not developed enough. For instance when you search, you can’t search subcategories. Your search is run across all applications, leading to many false positives. Product pages for apps don’t have screen shots etc. This will change shortly with the 1.6 donut release.
Next on my list is multi-touch. It’s scheduled to be part of the 2.0 release which may or may not be here before Christmas. To really be a worthy competitor to the iphone this is a must have. It’s overdue.
On to a few not so obvious or talked about gripes. There’s no desktop equivalent to itunes. I think an itunes equivalent was a major oversite on behalf of google. Itunes makes managing your media on your phone and desktop simple. This would be even more evident if you purchase music on your device through itunes. After purchasing music there is no automatic synch up from your amazon purchases to an itunes equivalent, becaue it doesnt exist. When I used itunes I tended to purchase through itunes on my desktop and synch to my ipod.I think others largely do the same. Lets say to be fair that 50% of people would be more inclined to purchase through their desktop app. Google could potentially open up sales of mp3’s and apps by 50 %. Ok maybe I’m off and its 25%. Thats still 25% of a growing market.
Ah yes theres more. The performance is sluggish at times. This could be related to a host of issues. Most likely some kernel tuning will be done in future android releases. How about google set up a paid service where they test and certify applications and mark them as google tested and verified. It would add a level of quality control that users would be able to discern.
A real media player. The media player kind of stinks. It doesn’t pickup album covers 95% of the time, and there is no way to add them after the fact. How about a genius playlist feature similar to itunes? Nada. Its pretty primitive.
Of the things I listed the following are definitely being addressed, multi touch, the app store and performance . The media features seem to be a bit of an after thought with android. By focusing on the app store, media features and performance google and partners stand to pick up business from disgruntled iphone users.
September 10th, 2009
aaron
As a new T-Mobile customer I was a bit worried bringing my new phone home. I had heard non stop about poor reception. Countless people advised me to stick with Verizon for their service. One person advised to have a friend with each provider come to my apartment and see how the service was. This is a great idea, however I had my mind decided on a particular phone. On to the point of the article.
When I got the phone the service appeared excellent, except … you guessed it, inside my apartment. 0 or 1 bars no 3g let alone edge. It was very bad, I wasn’t able to make a phone call in my apartment unless the blinds were open and I stood by the window. After looking into pricey cell boosters and amplifiers I decided to call T-Mobile. The customer support people were clear (spoke perfect English) and sympathetic. They acknowledged that where I lived (The upper east side of Manhattan) I should be getting much better near perfect reception. The customer support representative scheduled an engineer to come to my building and see what could be done. I assumed it was bs, however 1 week later I’m getting 3 bars in my apartment and 3g and edge network access. Basically I’m able to use my phone! Its not perfect but is a tremendous improvement. I’m posting this so others with similar issues in a covered area know that they too should try calling T-Mobile customer support if they have service issues. Just dial 611 from your phone.

MyTouch 3G
I’ve been resisting and resisting getting an iphone for two years. Mainly because while I know its a fine product, I see Apple as a controlling company. I liked the open nature of android but passed on the G1 because the hardware was pretty uninspiring. I finally gave in as soon as tmobile released it in July. So far so good. The android market is chock full of applications. Some great and some not so great. Pluses of the phone are the integration with all things google, including their awesome calendar. The web browser is very usable. However it would be nice to have multitouch. Supposedly there is multitouch support already built in to the kernel. The omission was due to google not wanting to upset apple. They do have a symbiotic relationship so it makes sense. However, with Apple pulling Google Voice from the apple store, I wouldn’t be surprised to see multitouch sooner than later. Other things of note are the decent battery life and excellent reception.
Many of the apps could use more work, the facebook application doesn’t provide the ability to upload images. The trend is upwards though. There are many many android phones being released in the next 6 months. Along with that will be more developers developing applications. I’m going to explore the SDK and post about it.
I use eclipse for various programming projects and really, really miss having vim key bindings. I stumbled across this eclipse plugin that does just that. Most of the basics work like seaching, jumping to line x with :, matching braces with %, jumping to the beginning and end of a line etc. Couldn’t ask for more. There is a license fee of around 20 dollars which to me is worth it, otherwise an annoying popup appears after periods of inactivity.
http://www.viplugin.com/viplugin/
December 11th, 2008
aaron
Watch out Hopstop! I wrote a Graph lib in python along with heuristic hSLD A* search and brought it to life with google maps and Ajax. The library is running as a json-rpc service with mod_python. The next step is to use geocoding api to turn street addresses to lat and lon coordinates and integrate it to find starting and ending stations, fun fun fun.
Maybe Ill put this on google app engine if I get alot of hits.
http://www.dancygier.com/nycsubway
Categories: Python, Software development Tags: googlemaps, javascript, new york, nyc, Python, route, route finder, route planner, subway, subway directions
When did soap and perl become so difficult. Using it as a server is a complete pain. SOAP::Lite was cutting edge 5 years ago. Its just a bit behind with the evolving wsdl standards. So I decided to use XML-RPC, its all I really need and interopability with other languages should be simpler. This is the main reason why I’m using web services to begin with.
Speaking of the XML RPC cpan modules. RPC::XML works well but the documentation is lacking. You have to putz around to get anything to work. add_method() is especially poorly documented. Much guessing and the perl debugger helped me get the syntax correct:) It would be great if there was Apache2 integration … But I shouldn’t complain it actually works and works well.