apple and flash

Filed under: technology — Tags: , , , , , , , , , , , , , , , , , , , — sohum on April 29, 2010 at 12:04 pm

Steve Jobs posted an open letter today about why Flash is not and will not be supported on the Apple mobile platform. You can follow the link to read the full article, but basically he gave 6 reasons. Let me look at each of these one-by-one. And before I do, I would like to remind everyone that I’m not really a big proponent of Flash. Back when I was web-developer, Flash was the one platform I detested and never took the time to learn. I think web-design through Flash is a poor design choice except if it is being done for some sort of portfolio or niche-website. Anyhow, with that out of the way, let’s look at Jobs’ six reasons.

First, there’s “Open”.

Jobs’ claim here is basically a fact. Flash is a proprietary system. Not only do you need to buy expensive software from Adobe to be able to create professional-grade Flash applications, but you also need to download a third-party plug-in from them any time you want to view it. There’s no complaints I have about this statement except that it reminds me of, you know, pot-kettle-black.

Apple is possibly the most proprietary technology developer out there right now. Not only is the iPhone OS system completely closed and regulated, but even going back to the OS X operating system, you legally need a Mac to run that. It sounds highly hypocritical of a CEO of such a proprietary company using “openness” to attack Adobe. To Jobs’ credit, he accepts that Apple is proprietary, but he wants the web to be open. How benevolent of him to allow us this luxury!

Second, there’s the “full web”.

Adobe has counter-claimed Apple’s claim that the iPad is the best way to experience the web, by suggesting that those users do not have access to the full web. Jobs’ counter-argument to this is that Apple supports HTML5, CSS and the modern H.264 format for viewing video. He also rattles off a list of 16 sites that supposedly support video on the iPhone OS (although at least one of them–Facebook–at least check, does not).

As I said at the beginning of this piece, I hate it when a website has used Flash for the purpose of web-design (especially when they haven’t offered an HTML alternative). So from that standpoint, I’m happy that Apple has gone ahead and blocked those websites. However, when it comes to videos, Apple is just ignoring the problem. Sure… they support these 18 sites that now allow HTML5-based streaming. But about the 1000 other websites that people actually visit? How can you advertise a device as being the best way to browse the web when it falls annoyingly short in multimedia presentation? Companies have paid millions of dollars implementing their current content delivery platforms–not everyone has the financial resources that YouTube, for example, has, to begin supporting H.264 video overnight.

Third, there’s reliability, security and performance.

I have heard several anecdotes about how Flash causes Macs to barf. Jobs labels Flash as the number one reason for Mac crashes. Obviously Adobe has a part to play here, since they are the ones that are writing the actual plug-ins. But I don’t buy the whole “reliability, security, performance” argument for the iPhone OS. Just like I don’t buy the justification that Apple fanboys give for keeping the App platform closed or for keeping OS X locked down to Mac hardware–to preserve the quality of the system. How dumb do they think consumers are? The App Store is already plush full of useless applications (I believe Fart Apps deserve their own category going by volume, right?). In fact, I can count the number of apps I use regularly on my iPhone on one hand.

This destroys the perception that it is impossible to create low-quality applications staying within Apple’s development platform and regulation. The theory that it is impossible to create a quality application outside of the Apple-allowed platform is similarly debunked by the “black market” that is Apple jailbroken apps. There are several quality applications developed there that would deserve their place in the App Store if Apple had put it’s draconian policies aside. Not to mention that they’ve actually supported the novel (not really) idea of evaluation software. Instead of Apple allowing evaluation periods, they decided to go with “Lite Apps” (there’s actually a section in the Apple Developer Center that recommends releasing a Lite app, with stripped out functionality). There have been countless times that I have been partially interested in an iPhone App only to find that is not free and the “Lite” version doesn’t allow me to actually test what I want to. Some developers, like Remember the Milk, have gone about their own methods of providing a trial period enforced by a web-service.

Fourth, there’s battery life.

Jobs claims that on an iPhone, an H.264-encoded video will play up to 10 hours whereas a software-decoded video will play only up to 5 hours. This may well be true, but I don’t think Apple is in any position to preach about battery life. I have had to charge my iPhone, without fail, every night. If I don’t, I’ll get into the red midway through the next day. I don’t make that many calls, either (if I could exchange my rollover balance for cash value, I’d be a rich man), so it’s not like I’m using my phone all that much. In fact, I check in to Twitter about 3-4 times a day, the same with Facebook and occasionally I play Racing Live for about 5 minutes (this is not a graphics-intensive game, btw, it is more of a “simulation”-type game). Yet, my battery is toasted by the time I reach home. I can’t imagine how life is going to be when multi-tasking is supported.

I guess Apple does have a claim to make here, they’re prepared to do anything if it increases battery life.

Fifth, there’s Touch.

A side-note, I wonder if Apple has actually trademarked the word “Touch”. Why else would it appear capitalized? Anyhow, Jobs’ claim here is that Flash was designed for mouse-based input whereas the iPhone OS introduces a completely new touch-based interface. The point is well-taken. I’m not aware if Adobe has made any forays into touch input, but my feeling is they would have, if they were expecting to release the Flash CS5 Deploy to iPhone App feature. Which leads nicely into Jobs’ final point, the most important one, supposedly.

Sixth, the most important reason.

Besides the fact that Flash is closed and proprietary, has major technical drawbacks, and doesn’t support touch based devices, there is an even more important reason we do not allow Flash on iPhones, iPods and iPads. We have discussed the downsides of using Flash to play video and interactive content from websites, but Adobe also wants developers to adopt Flash to create apps that run on our mobile devices.

This is referring to the Deploy to iPhone App feature that I talked about in the previous point. Basically, Adobe is planning to release, in Flash CS5, the ability for a user to deploy a Flash animation as an iPhone App. Flash does all the heavy-lifting of converting the ActionScript code into the archaic Objective C format, compiling it as required by the App Store, etc. However, a few weeks ago, Apple modified their developer contract to state that creators of iPhone Apps must have originally created that code in Objective C. This basically makes any app that was generated by Flash CS5 in violation of the developer agreement. The same is the case for apps developed using MonoTouch–the commercially available tool that allows .NET developers on Macs to create iPhone Apps–as they are also not originally Objective C.

Jobs then goes as far as to suggest that developers won’t have access to the newest features when they become available, etc. I have a huge pain-point with this. In my previous discussions about Apple and it’s products, I always bow out of the discussion when someone brings up the point that Apple is not targeted primarily towards technical consumers. What this means is that I can go and build a computer for less than it costs to buy a Mac–that’s why Macs aren’t targeted towards me, specifically. I can understand and accept that–Apple does a good job in marketing a product and keeping their profit margins wide. However, Jobs, in this case, actually is trying to run the same argument by, except targeting them towards the actual technical users.

He hypothesizes that if Apple were to allow third-party code to be converted into Objective C, developers would become clueless about how to take advantage of the newest features released in an Apple SDK. That’s not only extremely inaccurate, but it is extremely insulting to many parties.

It is insulting to developers because we have to be ahead of the technology curve (for example, the iPhone OS 4 SDK is already out for iPhone developers, but not for end users) and have to have an understanding of how a system actually works.

It is insulting to consumers because it suggests that they will not be able to tell the difference between a good app and a bad app. As I’ve said earlier, it is a fallacy that all apps created within the Apple-permitted spectrum are good and all apps created outside that spectrum are bad. Why not let the user decide what is a good app?

Finally, it is insulting to the actual Apple staff involved in the app review committee. Jobs is basically suggesting that they will not be able to adequately test an application to determine whether it is good or bad, without knowing if it was originally Objective C or not. This basically throws hot water on the whole app review process, because it claims that the process will not be able to test an app’s usability independent of the development platform.

As a whole, I understand why Steve Jobs does not want Flash on the iPhone OS and I have no problems with it. I’m not a major Flash proponent and there are only a handful of websites I visit on an iPhone anyway. I would have a problem with it if I owned an iPad, but that, and several other reasons, have contributed to me not being even a bit interested in owning one. I do have issues with the lock-down of the development process, though, for no reason whatsoever. iPhone developers still have to purchase a Mac to develop their software on, because iPhone apps use a bunch of frameworks that don’t have cross-platform ports. So it is not as if Apple is losing a revenue stream there. It is not as if Apple is losing the developer account revenue stream either–since the developers of those apps would still have to pay their annual fee to be able to sell on the App Store.

On the whole, that move by Apple just seems like a reaction without provocation.

psyched about iPhone OS 4

Apple held their iPhone OS 4 event today and I must say, I’m pretty psyched by the features that they are rolling out. Some of them are things that should have been part of the OS from day 1, in my opinion, others are pretty good innovations. All in all, I can’t wait to see how they turn out come this summer. Let’s take a look at the features I’m most interested in…

Multitasking

Whooooohoooo! Multitasking has *finally* come to the iPhone. This is a feature that users have been asking for years now, and Apple has finally delivered. Their method of delivery is kind of interesting, though, in that they are not allowing for full-featured, automatic multitasking. Effectively, if you want to add multitasking to your app, you’re going to have to do a bit of work. Multitasking is exposed via 7 different APIs that allow you to plug-in to different things from background audio to VoIP. This is different from the standard computer paradigm of multitasking, wherein you save whats in memory and all your valuable stack pointers, load something else into memory and then set up your new pointers correctly. Whether this is a smart way to implement it, only time will tell, but it’s likely to decrease the latency in switching between applications and actually using the foreground app, with all that bookkeeping not being relevant any more.

Folders

Of late, I’ve been suffering from an inability to organize my apps as I want them because there are too many/too little of a certain type. I tried to be as categorical as I could from the beginning–organizing by things such as games, social network, etc. However, the issue is that if I want to reorganize a category, or if a category overflows to another page, I’m pretty much screwed. Or not screwed, but in a situation where I spend a bunch of time moving apps around. Folders have been part and parcel of the BlackBerry OS for ages and they are one feature that I used extensively when I still used my Curve 8310. This is a welcome addition to the organizational freaks such as myself.

Game Center

This is the last thing that seems like it could be useful–it’s basically XBox Live for the iPhone. Meaning that you can create match-ups, track leaderboards, etc. Many games currently do this through manual leaderboards driven through web-service calls–this would obviously be an improvement since there would be a standardized API to be able to handle all that stuff, and also the more stable Apple servers running it.

Amongst the other features mentioned, there was better mail management, better enterprise integration, etc. I didn’t really find much of that relevant, but I’m sure there are people who are elated by that news. Amongst the announcements that I didn’t like was their iAd offering. This is basically an effort to counter the in-app ads that are currently being pulled in by many apps (through AdMob and the like, I suppose). While the framework allows ad developers to basically create a lightweight app (one that in many ways will be like a pre-OS 4 app), I think it will be detrimental to current apps. We may see a bunch of apps being rejected/removed because they don’t embrace the iAd platform. While the idea of having these app-like ads may seem novel, I wonder how many people seriously click on an ad. Then again, given that Google built its empire on ads, maybe I’m just a minority.

That’s all for now!

taxes and technology

Filed under: life — Tags: , , , , , , , , , , , , , , , — sohum on March 08, 2010 at 1:03 am

I don’t think I’ve griped about my iPod Touch potentially dying last week. Apparently my iPod freaked out when I plugged it into my entertainment center last weekend to play some Ke$ha (yes, this was probably my mistake). The iPod was unsyncable through iTunes for some reason and since we had people over and I didn’t really feel like troubleshooting, I let YouTube and my collection of music on the hard disk take over. Later last week I took my iPod into work to listen to some music. Unfortunately, it would play only one song. I repeat, only one song. At the end of the song, I’d hear approximately 0.83 seconds of the next song and then the music app quit.

Any other app I opened did not work either. Just boot up and shut down immediately. I did a reboot on the system a couple of times and there was no improvement. Finally, I got the chance this weekend to try and figure out what the problem was. When I plugged the iPod in, it told me I needed to update my software. When trying to update my software, it said that it could not backup my profile. I had all my music on my computer and all my apps are on my iPhone now so I thought, what the hell, let’s just do a full-scale restore operation. Restore failed. A couple of times.

Luckily I was watching TV at the time (I think Modern Family or The Office or maybe even an NBA game or something) so I had the patience to keep trying. Finally, the restore went through. However, it then promptly hung when I tried to name my iPod (configuring it as a brand new device). I quit iTunes forcefully and upon restarting, it gave me the “Cannot Sync” message, forcing me to restore it again. I had to do about 2-3 clean restores before I was finally able to configure the device to work (I think). Once I finally managed to name my iPod (going with the generic sohum’s iPod instead of something as exciting as sohummm or maybe even iSohum) I decided that I had had enough of iTunes.

Fortunately for me, I had stumbled upon an article a couple of weeks ago about how an iPod user wanted to divorce iTunes. If you recall my “iTunes kills the iPhone experience” blog, you will note that I was in much the same position (except that I would never be able to overlook iTunes’ many flaws to ever marry it in the first place). One of the alternatives was MediaMonkey, which I promptly downloaded, installed and fired up. While the interface isn’t as clean-cut as iTunes, it is infinitely more performant. It took me about 25-30 minutes to set up my sync list and then I clicked one button and it was ready to go, quietly doing its stuff in the background. The last time I tried to use iTunes to set up a new iPod with my music (my iPhone, in that case), I had to live through about 2 hours of iTunes trying to figure out whether each song in my library should be included on the “gapless” playback list before my computer was usable.

I don’t change my music all that often–just add new tunes here and there, so it seems MediaMonkey is the perfect hands-off tool for me to sync my iPod without having to deal with the crapware that is iTunes. I’m not interested in buying crippled, low bitrate music from iTunes and even if I did, I would do it directly through my iPod (if that’s possible).

Anyways, that’s the technology part of this blog. Tomorrow will be a test of whether my iPod is truly fixed or whether it was just pretending to do so.

The other thing I wanted to touch upon was taxes. Yep, tax season is coming up! While at Rice, the international student office kindly set us up with a license of the CINTAX (hilarious name, yes?) software to help us crunch the numbers. It had always seemed like such a painful and tedious process? Doing it on my own this year showed that it is actually not that complicated, especially if you have a simple financial situation, as I do. First of all, since I’m still technically a non-resident (in fact, an NR student, to be precise) I don’t really qualify for any extra deductions/exemptions. The tax treaty with India (Article 21(2) to be exact) allows me to get the standard deduction ($5,700) and my lowly income allows me to get the standard exemption ($3,650). However, this may be the final year that I will have such a simple process since next year I will be in H-1B status for part of the year, meaning that I may need to split my taxes or do something exciting like that. I will probably need to consult professional help at that point in time, but for now I am rejoicing in having solved one of those annoying life problems. :P

Anyways, I got a lot of information from a website called VisaTaxes.com, if any of you are international students and have stumbled upon this blog because of tax season. Here are a few more keywords to hook you into this blog (is this unethical?): 1040NR, 1040NR-EZ, Form 8843. Grin. :)

C’est tout!

iTunes kills the iPhone Experience

Filed under: technology — Tags: , , , , , , , , , , , , — sohum on December 02, 2009 at 1:12 am

This Black Friday I made the jump to purchasing an iPhone. AT&T had a pretty awesome deal going on which allowed me to snag a refurbished version of the 3G-S 16GB for a mere $49+$18 upgrade fees+some taxes. Total price was around $70, the condition being a 2-year contract, which I’m not too worried about since I’ll probably be staying with AT&T anyways. I was already paying for a BB data plan, which is equal to the iPhone one, so no extra charges there.

The phone itself is beautiful. Of course, having used the iPod Touch for nearly a year now, I knew what I was getting myself into. I was able to activate after a few issues and copied over all my apps from my iPod Touch using iTunes. So far so good. Next, I found a tutorial on the web that essentially used iTunes to create ringtones. Splendid, right? So I created a couple. Then, I thought, “Oh, I might as well get all my music into my iTunes.” This was possible now finally that I have my Windows 7 Homegroup set up properly. So I went ahead and added the music folder to iTunes and went and did my P90X workout and showered.

Once I came back, I was ready to crank out some ringtones manually. Not. iTunes was busy “Determining Gapless Playback Information”. A feature that I really don’t care for. And one that is programmed badly enough that it ends up using all of iTunes’ resources, rendering the program unusable. Now, iTunes wasn’t a fantastic program to begin with, being slow and clunky, so imagine how the end user experience is when your mouse events are delayed by 5-10 seconds. Ridiculous. Luckily, there was an “X” right next to the message, and I clicked it and decided to hunt around in the Preferences for a way to disable it.

Midway through my search of the first Preferences tab, I noticed my mouse events slowed down again. “What?” I thought to myself. After about half a minute more I was out of the preferences dialog and to my disgust I found that iTunes had decided once again to “Determine Gapless Playback Information”. Annoyed, I clicked “X” again and sure enough, about 5 seconds later, it was back! Not only that, but it started from the first track every time! Looking around on the internet for a few fixes, I found a couple that should have worked but didn’t. I realized that now that I have bought my first “real” Apple product, I will have to enter that realm where I sacrifice a few of my rights as the owner of a device to do what Apple wants me to do. In this case, this means that I will have to let it run for the 30-60 minutes it must take to set up this feature which I don’t care about, anyway, and come back to do my ringtone-making tomorrow.

And they complain Windows 7 takes a minute to boot up…