Today is a good day to code

Why the Volume Approach to Sales in the Apple App Store Won’t Work

Posted: December 16th, 2009 | Author: | Filed under: Apple, Companies, iPhone | Tags: , , , , , | No Comments »

For a few months I have been thinking about the app store. Specifically I have been thinking through all of the drama and screaming that is occurring on the internet over the rejection of a few apps, the difficulty of finding anything quality in the app store, and the impact to actual users. The conclusion that I have come to is one that is different from the conclusion to which I had figured I’d arrive before thinking deeply about it.

Basically the App Store is great for Apple, but bad for developers. OK, you may think, well that is obvious and it is, but I don’t think that it is quite as simple as that. Firstly, I think Apple has brought their brilliance for marketing physical machines, accessories, and their integrated software and applied it to third party applications. Secondly, they have created an ecosystem where sales volume is king and the primary means of competition is over price, not quality. Regarding the second point, I am certain that they did not intend to do this however, it is in fact where things are today.

To understand why volume alone in software sales does not make one rich or profitable, you have to look at the contrast between physical goods sales, and service sales in an environment similar to the app store.

Imagine that you have an area like the Akihabara district in Tokyo, Japan, where you can buy anything technology based, motherboards, cameras, MP3 players, etc… Everyone who wants to sell this stuff crams into the Akihabara district even though there are already thousands of people there selling the same exact thing. So why would you do this one might think? It is because even though you have to drop your price to compete with the others, the number of people who will come to the Akihabara looking for some electronic thing is very high, if you were to locate elsewhere, you could increase the price, but you would have fewer people coming to your store. This is less than optimal for someone selling a physical good, to understand this, you have to look at how profitability works when selling a real thing.

If I can buy 5 widgets at $2, my cost is $10, if I sell the widgets at $4, my revenue is $40, my net profit is $30, not too bad. Now lets say I move into the Akihabara, I will need 1000 widgets to accommodate all of the foot traffic, and the people who want my widgets. Because I can sell 1000 widgets, the supplier is willing to sell them to me for $0.25 each. Now I have to cut my price because I have thousands of others selling the same type of widget, so lets say I cut the price to $2.50, my cost is now $25.00, but my revenue is now $2,500, that leaves my net profit at $2,475. I am making way more money now that I am in the Akihabara, even though I am losing some business to my competitors and my per item cost is lower, my profitability is actually better.

Now, lets say we do the same thing for a service based industry like plumbing. I have a plumbing business out in the suburbs and I charge $175 / hour to fix plumbing, maybe I get 100 hours of work every month since I am out in the suburbs and I am the only one. I am making $17,500 per month, I’m doing pretty well. Now I move into the plumber’s alley in town with 50 other plumbers, well, in order to get jobs, since it is so easy for customers to shop around, I have to cut my rate to $65 / hour, and since I am around there with 50 other plumbers, there is a bit more foot traffic, but I am just one guy so when I am out on a job, I can’t collect any more work. Now I am doing 150 hours of work each month, but at $65.00, I’m only making $9,750 per month. The answer would be to hire another guy, let’s say I do that, now I can do 300 hours of work each month, but I have to pay this clown, plus the drain on my time to train him to do it my way, after his pay, I am making $45.00 / month, $13,500, not bad, but still not as good as working less and making more in the suburbs.

Software is not exactly the same, but it is similar enough that the calculus works out nearly the same. I have just seen this happen with my CycleMetrics application, which applies to a broad vertical, versus my Mides application, which applies to a very narrow vertical, and came out when there were very few items in the app store.

With software, there is a significant up-front cost of your, or if you have to hire a team, your team’s time.  But for most people in the App Store, it is just you, lets say you want to build a really high quality application, it takes you about 18 months to get it all done alongside your day job.  You have put about 2,000 hours into it.  Typically your time is worth about $125 / hour, or at least that is the neighborhood in which an agency would price you out at as an iPhone dev in the bay area.  So you have put $200,000 into this iPhone application, or if you were to do a 12 month consulting job instead ( because it would be full-time ), that is what you would have made in salary plus benefits, or salary if you are a typical contractor.

By the time you put out your app, there are 300 other applications that do the same thing, 90% of them are crapware fake web apps with a Cocoa wrapper.  But in the App Store, the users can’t really tell the difference since the reviews have been gamed endlessly.  You don’t do any of that stuff, you play by the rules.  All of the other apps are priced at $0.99.  The target you have set to recoup your initial capital investment of $200,000 is two years.  You expect to sell about 100 a month average over 2 years, because your app is super awesome and you get a good pre-release review.  You realize that you would have to sell your app at $84 each to make that up in 2 years.  So you give up and hope for the best, you hope that Apple features you, or you hit the top 50 list.  You price your app at $19.99.  Apple rejects you a few times, so you have to put in another 100 hours into getting through the review process, now you are 2100 hours into it.  You figure you will eat that as a sunk cost now, chalk it up as a learning experience.

You sell 15 initially because people think it is so awesome that name-the-apple-podcast reviewed it.  Soon you start to notice a few bugs being reported in the comments that the Apple review has missed, and so have you.  But it will take a while to get the fix to market, and so you start this process over and over again.  This time it only takes 10 hours, but you have invested 2110 hours into the project, and have a 2 star rating in the App Store.  Now your sales are so low that you have to drop the price to keep moving units.  If you try raising your prices later, you will just not sell.

Even if all of the past time is sunk, you have future time in support and maintenance costs, even if you don’t add features.  It is the plumber model, you can never be as profitable as if you are a single guy working in an area in which there is nothing else like what you offer.

Most developers don’t count their initially invested time as money, so most developers don’t see this, but time is the only truly non-renewable resource.  They hear about the guy that sold 80,000 copies of x game in a month and raked in a million dollars.  Of course there will be a few like this, its like winning the lottery.  Apple picks a few and they do well for a time, after that however, they get pushed back into the pit with everyone else.

So, is there any way to fix it?  Apple has no incentive to fix it, they, and the app consumers are the beneficiaries of the huge delta in hours invested in the iPhone apps in the app store, and the lack of profit that the devs are getting.  I don’t think we should complain about it though.  It is awesomely powerful to be able to reach millions of people through the app store with a tap and a search.

There are three ways for devs to acheive profitability, one is for everyone in a section to raise their prices.  The overall sales volume would drop, but the profitability would increase, and everyone would make more money, not as much as if they were by themselves in the section, but more than they can make with the brute force of the quasi-free market forces in the app store.

The second way is to use the app store and your application to sell services outside of the app store, like Omni or pandora.  In Omni’s case, they use OmniFocus to drive sales of their mac desktop application where they have a vertical they own, selling productivity products for Mac OS X.  In Pandora’s case, they are using their application to drive affiliate link revenue as well as potentially some aggregate data mining products.  Either way, the bulk of their revenue is going to come from their other business efforts, the App Store is just an adjunct to this.

The third and probably most difficult way would be to come up with a product that is so unique in its technical application that it creates a natural barrier to entry, or to create a product for a vertical that is profitable, but is so small or difficult to understand that most competitors wouldn’t bother.  Examples of this would be like some sort of law research assistant with artificial intelligence that you could charge $199 for, or a notional application that would speak to industrial robots for which you could charge $30,000, but then you become acutely aware of the 30% that Apple charges.  At that price point, it might make more sense to develop it for Android and offer it directly from your site, but you get the idea.

The gist of all of this is that Apple has created a wonderful retail location in the image of their physical item store, one in which they have a monopoly on impressions and can leverage economies of scale.  Since economies of scale have no clear practical application to software development, the App Store should be seen as a massive lead generator for some other monetization strategy.  Getting angry at Apple for being Apple is pointless, take what they have given you and use it.

The last thought that I will leave you with is that Objective-C development is fun, and researching the background of Objective-C / Cocoa from smalltalk is also fascinating.  I am not for one minute suggesting that you shouldn’t develop applications for the iTunes App Store.  On the contrary, I think you should, but you should develop the applications because you enjoy the process, not because you hope to recoup your investment in a number of years.  You will likely not be able to recoup but a fraction of what you have invested.  That is not to say that you won’t get an awesome job with someone who has figured out how to make money in the store because of that initial time investment.  That is what I would be using the developer program for, to enrich and expand my programming abilities, not to try to get rich quick.

The Case For Apple In Five Parts : A Rebuttal

Posted: August 12th, 2009 | Author: | Filed under: Apple, Companies, iPhone | Tags: , , , , , , | No Comments »

After reading Jason Calacanis’ “The Case Against Apple-in Five Parts” I had been thinking about a response.  I have found myself on the same side of his argument time and time again, more so over the past few years, but I don’t agree with him, and here’s why:

About 8 years ago, I switched from PC to Mac.  I bought a Bondi Blue iMac.  I wish I could say that I have never looked back, but that just wouldn’t be true.  There are some very great things about Windows, and the PC market in general.  I have, from time-to-time thought of switching back, and I have even tried a few times.  What happens is that it always looks better from the outside in.  When you actually start using that stuff and running into the problems and confusion, you realize why you chose Apple in the first place.  It is really like cheating on your significant other, and realizing that the grass is always greener, then coming back to find a challenging but still rewarding relationship.

Jason’s point #1: Destroying MP3 player innovation through anti-competitive practices

Jason Calacanis asserts that Apple is killing innovation in the MP3 player market because they don’t allow other devices to sync with iTunes, and they prevent the iPod / iPod Touch / iPhone from syncing with other music programs.  I would heartily disagree.  I think that Apple has made their store DRM-free over the past few months, yes after intense pressure from their customers, but they did it.  You can pay your fee of $0.30 per song to get out of iTunes jail if you wish, then use whatever music organization software you like.  You can even put the now liberated AAC files on your Zune if you want, or you can convert them to MP3 and use them as you would.

You can’t sync iTunes with other music players.  Apple does not want to encourage that behavior for several reasons.  First of all, it goes against their business model.  Apple does not sell software for profit, they sell hardware.  If they were to allow you to sync your cheap $20 MP3 player with iTunes, the development team and the IP that went into iTunes wound net them $0 back for their investment with each user that did that.  Apple only makes software to sell hardware.

Apple does nothing to stop someone from creating their own awesome music organization solution and portable music player.  No one else has done it. What all of the other options in the market are, is hodge-podge crap cheaply thrown together with no attention to detail.

Apple is dominant because everything else is the suck.  As soon as you try to use other music organization software with an MP3 player that installs crap drivers that crash their PC and music program, or they get only half a song, or only half of their play-lists copy over  onto their device and it reboots constantly, they realize their mistake and go back to iTunes and iPod.

Jason’s point #2: Monopolistic practices in telecommunications

Come on, Apple didn’t pick AT&T to be the only carrier that would get the iPhone, they approached the carriers around the world that they thought were the best.  Those carriers didn’t want to accept Apple’s terms, and passed on the iPhone.  Apple had no choice but to go with the carrier that gave them the best business upside.  Apple signed whatever contract had to be signed and moved on.  You can bet that neither Apple, or clearly, AT&T thought the iPhone was going to be this successful.  AT&T got caught with their pants down in the middle of a credit crunch.  Building out towers and pulling backhauls is horribly capital intensive, it isn’t something you can fund by scrounging around the couch cushions for change.  Jason should know this.

Does AT&T’s service suck? Yes. will it get better?  It had better.  Apple knows that there are bags of money waiting for it in Sprint, T-Mobile, and Verizon in the US and so does AT&T.  I am sure they don’t care who carries the iPhone as long as they support the experience well and they get money off of the hardware.  As soon as Apple is able to, you will see the iPhone on every carrier that delivers visual voicemail, agrees to the free-for-all AppStore, and will pay Apple its hardware subsidy.

Think about how it was before the iPhone, you had to listen through all of your voicemails just to get to the important one.  There were 9 stores you had to go to for apps, and could only install ones the carrier approved.  Verizon still doesn’t like Wi-Fi on its handsets for some inane reason, could you imagine an iPhone without Wi-Fi and the AppStore?  It would destroy the experience, so until Apple can deliver the experience on these other carriers they won’t.  Period.  Can you imagine that Steve Jobs is happy that the 3GS still doesn’t have MMS, tethering, decent  service, and the full 7.2 Mbps HSDPA downloads that the device supports? No, he can’t be, it is screwing up the experience.

Jason’s point  #3 : Draconian App Store policies that are, frankly, insulting

I can’t, and won’t try to defend the AppStore’s policies, they don’t make any sense, and it is currently crippling the platform.  But again, you have to remember several things.  Apple doesn’t sell software to make money, and they don’t care how much applications in the app store cost.  They only care that they are there.  If each and every application in the AppStore were free, and the AppStore were costing Apple millions of dollars a year, they still wouldn’t care.  They are making the money up on the hardware side.  There is little incentive for Apple to change the AppStore right now until the actual end users, not the developers start complaining.  As a consumer there isn’t much to complain about except for organization. There are plenty of games that are pretty awesome.  The market has shown that is what end users want.  That is not to say that there isn’t a market for productivity and business apps on the iPhone, some of my favorite apps are productivity apps, but customers have indicated that they don’t want to pay for them.

Look at their competition.  Pre, Android, and BlackBerry are no match really, all of those AppStores are no better than the iPhone AppStore, they just have fewer problems because there are so many fewer developers and software.

When I think about how I would solve the problems, I don’t know how I would do it.  Especially when constrained by Apple’s business model.  Apple needs to move phones and iPods.  That means very low prices for applications, and applications that appeal to the widest audience possible, hence the bizarre puritan regulations on the types of applications in the store.  They also have to adhere to the language of whatever their contract is with AT&T, that they signed 2 years ago when there was no AppStore, there weren’t thousands of developers, and billions of applications downloaded.

The agreement was likely myopic, but who could predict this type of success?  Again, does the AppStore submission policies, rating system, and application exposure suck?  Sure.  Will Apple fix it?  They had better, and they know it.   Things will drastically improve after they have had some time to think about it, which they have, and when they can re-negotiate the contract with AT&T, which they are about to, using Verizon as leverage.

One final point, while it is irritating to developers, there are around 20 million iPod Touch / iPhone customers out there.  That is one hell of a market, so while complaining remember that Apple is enabling you, after jumping through a few hoops, to directly address a market that you wouldn’t have had a prayer of addressing two-and-a-half years ago.

Jason’s point #4 : Being a horrible hypocrite by banning other browsers on the iPhone

I grudgingly have to defend Apple in this.  I agree that it would be better if they allowed other browsers on the iPhone.  The problem is with the T’s & C’s of the AppStore and their ban on other non Apple provided scripting languages.  Something like V8 is really powerful, if Apple allowed other scripting engines like that one, it would break their security model ( which I agree has already been broken by the jailbreaking community ).  Apple can’t cave on this, or they would have a hard time explaining why they don’t allow the Ruby VM, or the Python VM, or allow you to download one app from the AppStore, and have it change around on the user once they have downloaded it.  Imagine you download an application that has a G rating, and then it downloads X content.  With in-app purchase, the application could circumvent parental controls and allow kids to buy porn on their parents’ credit cards.

Apple doesn’t want this so they prevent any scripting engines, and unfortunately browsers are caught up in this net.  I can’t really think of a good method of preventing this other than mechanical turk, I think if someone can, there is a powerful business opportunity for them.

Jason’s point #5 : Blocking the Google Voice Application on the iPhone

AT&T may not control what applications Apple approves or disapproves for the iPhone, but it is hard to believe that Apple would care if someone created a google voice application for the iPhone.  While AT&T may not approve applications, there is almost assuredly language in the original distribution contract with them that prohibits any  applications that simulate voice calling functionality over AT&T’s 3G network.  These applications would run afoul of the guidelines.

As an example, there are many file hosting / ftp / uploading / mobile office programs on the AppStore.  When Apple launched its own MobileMe iDisk application, they didn’t force everyone to remove any application with uploading and downloading functionality.  They are allowing the market to decide which is the best application / service, which is the right thing to do, and feeds into Apple’s business model.  Whatever it takes to move units.  The rejections reek of AT&T either directly or indirectly.

Jason’s Questions:

1. Do you think Apple would be more, or less, successful if they adopted a more open strategy (i.e. allowing other MP3 players in iTunes)?

I think that if Apple were to allow other MP3 players in iTunes it would undermine their core strategy of using their software to sell Macs or now mobile computers.  In the short term, it would boost their sales of music, but in the long term it would eat away at their hardware business.

2. Do you think Apple should face serious antitrust action?

No, Apple has not behaved anti-competitively, or limited consumer choice in any material way.  This situation with AT&T may be violating some sort of law related to the breaking up of the Bell System, but there are plenty of choices for customers out there in computers, mobile devices and applications, they just all suck, which is not Apple’s fault.

3. Do you think Apple’s dexterity and competence forgive their bad behavior?

Look, at the end of the day, Apple is a business.  They need to protect their bottom line and their shareholders, not make a bunch of programmers and technorati feel good.  They need to build and sell good hardware.  Software is an important part of that, but to continue to provide value to their shareholders, in their estimation, they need to control the experience end-to-end.  If that were a problem, their board would let them know, otherwise they are building awesome products that deliver that the mainstream consumer wants, as long as they have the majority of the market with the customer freely choosing their “locked down” solution, they will make the rules.  So I don’t think Apple needs to ask forgiveness.

As a bonus, for Michael Arrington I gave up on the iPhone about 8 months ago and went with a G1 exclusively.  I wanted to love it, but after a while with the slowness, and having to remove applications just to get email and the browser working properly I gave up and went back to the iPhone.  Android is OK, it doesn’t integrate with anything and after a while users will find that those rough edges add up to “not the iPhone.”  I went back to my iPhone with the 3GS and I am very happy with it, happier than I was before switching.  I am still not happy with AT&T, but what can I do?

I don’t regret switching away, and switching back, it made me realize how truly revolutionary the iPhone is.  I am confident that Apple will fix these issues, because ultimately it jeopardizes their hardware business.  I don’t think they will do anything until they believe they can fully address the issue.

I still think that Windows Mobile, and Android will ultimately have more units sold worldwide, but I think that the iPhone will remain the most profitable.  I would always want the most profitable 5% of the market over the least profitable 95%, and I think if I had a startup my shareholders would agree.

The End of WinTel: Quad-Core ARM Cortex A9 Apple Tablet

Posted: July 24th, 2009 | Author: | Filed under: Apple, Google, iPhone, Microsoft, mides | Tags: , , , , | 1 Comment »

I have been poking around with ARM chips via the beagleboard for a while now, and I have to say that at a far lower speed, they are much more energy efficient than the Intel Atom, and I have a hard time finding the difference in performance.  After Intel’s tirade at that conference, I was sure that there was something to the threat from ARM, now we are seeing some rumors about the possible fruits of the Apple / PA Semi merger :  AppleInsider exclusive: Apple Tablet Early Next Year.

While that is interesting in its own right, I think there is more at stake here than just what chips are powering the coolest devices.  I have been waiting, as have most everyone else, for this conceptual tablet.  I want to not have to carry a Kindle, an iPhone, and my laptop.  It would be awesome if I had a single device that used wireless HDMI to connect to my screen and speakers, bluetooth to communicate with my keyboard and mouse, and 3G for phone calls and mobile data.  This mythical tablet is the closest thing to this.  If it runs full OS X, and has the ability to run iPhone apps as well as native OS X apps it will complete the hat trick.  It should have a virtual keyboard for when I am not near my bluetooth keyboard, and when it is in proximity, it should use it, without dialogs or configuration.  Likewise when the monitor is away, it should display on device, otherwise, it should use my monitor.

So even if this device is only partially what my dream is, it will be enough to get me to buy it and probably most of everyone else will buy it too.  That makes for an interesting shift in the consumption of applications.  Now people will start developing for mobile first and desktop second.  This means that they are developing for ARM first and Intel second.

From the server room to our pockets, power is a concern.  One of the things that I can’t wait for is the ability to have a server that runs 100 ARM Cortex A9 cores at 1 GHz instead of 8 CPUs at 3.4 GHz.  The former server would consume way less power and perform far better as a web application server due to the extreme threading that would be possible.  Desktop machines would follow directly behind with 50 core desktop machines with 50 PowerVR video card on a chip chips with the monitor divided up in a 25 x 25 grid ( this will take some work ).  This could be a very thin box with only one very silent fan and have insane performance.  Not to mention that the same machine could be a laptop that runs way cooler than my MacBook Pro, which hovers around 135 degrees(f) while just playing iTunes.  It could get 16 hours of battery life using the same battery that I use today.

In this world, Apple is far better positioned than Microsoft, with their / Kronos’ OpenCL.  Snow Leopard will be in a great place to benefit from this type of architecture.  Not to mention the AppStore, Apple has the DRM, distribution, signing infrastructure all in place, and hundreds of thousands of developers know how to use it, don’t think they aren’t thinking about pushing this model to the macintosh for application distribution, it just makes too much sense.

The future is clearly mobile, but who is going to lead that charge is an open question.  Apple has made moves to secure their superiority for the next few years, Microsoft appears to be going backwards.  Intel just can’t seem to break into the ultra-low power CPU space without an acquisition.  I think the Wind River purchase was to put a dent in the number of ARM customers.  Clearly the future is not dominated by WinTel.  I am shocked that AMD hasn’t abandoned its platform and moved to ARM computer on a die chips, I am sure you could imagine how awesome it would be to have a muti-core ARM chip with an ATI GPU on a die.  Intel would say that the ARM doesn’t perform as well as their Atom CPU, but that was the mistake that let AMD back into the game before, they just kept sticking to the performance argument while the market was telling them that the current speeds were fast enough, and that they wanted better performance per watt.  If Intel hadn’t had that R&D group pushing ahead with the Mobile Pentium in Israel, the computer industry would look very different today.

I think that the Apple tablet will be a game changer, and will ultimately be their most successful computer launch, even more so than the iMac which brought them back.  I am afraid that if Microsoft and Intel can’t answer, the one-two-punch of Steve Jobs, and Google will finally have felled the giant duopoly.

How I Fixed my iPhone 3GS’ Battery Life

Posted: July 14th, 2009 | Author: | Filed under: Apple, Companies, iPhone | Tags: , , | No Comments »

When I got my iPhone 3GS I was incredibly excited.  Mostly about the video features, and the speed.  I was a bit skeptical about the battery life claims with the bump in processor speed, and found that the iPhone 3GS does have much worse battery life running firmware 3.0 than the iPhone 3G does.  But the source of the poor battery life wasn’t what I thought it would be.

Originally the iPhone 3G would last me about 12 ~ 14 hours from charge, or I would be down to the 20% mark at around 11 PM or so.  That was fine battery life for me, since I didn’t really need to use my phone any more than that.  I had everything enabled, and have awful signal quality at my house, so I was surprised by the good performance of the battery.  Once I upgraded to the 3GS, the battery would need to be charged every 6 hours or so.  I found myself having to plug it in in the car, at work, and basically everywhere I could find a plug.  I tried turning 3G off, GPS, Wi-Fi, all of the stuff that Apple had said would improve battery life.  None of it seemed to help, I was resigned to waiting for another firmware update to fix the issue, but then I turned off push.

At first, I didn’t because the original iPhone 3G had push turned on and it didn’t seem like such a big deal, but then I remembered that I didn’t have any apps on the original phone that supported push notifications.  On my 3GS, I do have applications that support push.  I’m not sure how Apple is doing it, but I would guess that the connection is staying open longer than with just push email, it may even stay open as long as necessary to communicate to the 3rd party server, and then back to Apple, but it seems that keeping the radios on for that long just slaughters the battery.

Once I turned off push the iPhone 3GS now lasts much longer than my original iPhone 3G.  The battery life is a dream compared to my G1, as well as what I hear about the Pre.  I don’t really want push notifications.  I think they are annoying, the only time I would consider them would be for AIM or something, but even then if I want to chat with people, I would open the application.  If someone really wants to get hold of me, they should send me a SMS telling me to open Skype or AIM or whatever.  It is less battery intensive than the push process.  Maybe an update will address this issue, but until then push notifications will remain off on my 3GS.

iPhone 3GS: The Image Speaks for Itself

Posted: June 19th, 2009 | Author: | Filed under: Apple, iPhone | Tags: , , , | No Comments »

Its on!
48 MB Free

Mides 1.3 Already Hacked

Posted: June 4th, 2009 | Author: | Filed under: Apple | No Comments »

Yesterday I started getting alerts that Mides was showing up on Warez amd cracks sites. While I am sure that some developers get really upset about this, I think it is flattering.

Generally the idea that anyone wants your software is awesome and enough to make your day. However when someone buys a copy, jailbreaks their phone, hacks the program, and then distributes it, well that is enough to keep you on cloud 9.

I appreciate everyone who purchases my software, and I hope that the people who download it from the Warez sites go ahead and get the real thing, but even if Apple, and some other authors are going out of their way to stop the cracking, I find it to be a good way to advertise without doing any work or paying anyone. However, I hope no one has done anything to those files. Mides from channels other than the legit one could be a dangerous thing. Please be careful and rock on!

Safari 4 – Worker Threads… JavaScript Domination

Posted: February 24th, 2009 | Author: | Filed under: Apple, Companies, Google, JavaScript, Microsoft, Programming | Tags: , , , , , , | 1 Comment »

I do hope you will pardon the hyperbole a bit, but If someone had told me a few months ago that we would have JavaScript threading, which I have been begging for for years, built into the HTML standard.  I would have thought they were crazy.  Now we have a situation where Safari 4, Firefox 3.1, Chrome ( Gears ), and IE 8 ( all in beta ) support it.

Lets look into my crystal ball for a minute.  We have a situation where browser based apps are becoming more and more capable all the time.  Where arguably the most efficient method for developing against mobile devices is to use web technologies, and where we have an insanely awesome JavaScript engine available for general use in any programming system in Chrome.  Looking down the line, I can see that JavaScript will be the primary development language once we start seeing implementations for HTML 5 Web Sockets.  It may be there, I just haven’t checked yet…

If you have Safari 4, or the webkit nightlies, you’ve got to check out this link:

JavaScript Ray Tracer

The speed of JavaScript as an interpreted language is up there with any of the others, in fact, Firefox 3.1, Chrome, and Safari 4 are wicked fast.  Soon, we may not need desktop apps at all, and Microsoft’s bungled ActiveX dream may just come to pass.  What an exciting time to be a developer!

HTML 5 Databases on iPhone

Posted: February 18th, 2009 | Author: | Filed under: android, Apple, Companies, Google, iPhone, java, Programming | Tags: , , , , , | No Comments »

Today I as looking into using HTML 5 databases on Android and iPhone. It turns out that the Android browser doesn’t seem to support window.createDatabase at all. It may be that it does work with Gears or something, but I didn’t try it.

What I did find, when enabling the developer menu for iPhone Safari was that in the 2.2.1 firmware, a user can view the databases that are currently stored on their device in the web browser by domain and delete them.

In the detail screen, it shows you how much data is currently stored in it, and it has a max, which appears to be stuck at 5 MB. I wonder if Apple has plans to improve the mobile Safari dev environment to allow for richer web applications at some point in the future when the AppStore revenues have died off a bit.



Actually I did figure out that the G1 uses gears, so I guess they are equal, but gears doesn’t seem to care too much how much space I can use.  I haven’t tried the WorkerPool, or the local caching stuff, but I found another blog where the guy had an icon on his screen for a web-app.

iPhone Nano the End of Apple

Posted: February 9th, 2009 | Author: | Filed under: Apple, Companies, iPhone | Tags: , , , | No Comments »

I think for Apple to build an iPhone nano would be an indicator that the end of Apple is near.  To be clear, I do not think that Apple will build any such beast.  However, let’s postulate a scenario where Apple builds such a thing.

Firstly, let’s look at a picture of where the iPhone currently is.  Apple has a device that for all intents and purposes is $200 that is selling at a brisk clip.  Not to mention that people are snapping up applications at an even more intense rate.  All of this is making Apple rich.  There are several questions that occur to me when thinking about a conceptual iPhone Nano.

  1. What does Apple have to gain from such a device
  2. How do they account for it technically
  3. What type of person would buy such a device, and how do they fit into Apple’s core demographic
  4. What sort of hardware would be in the iPhone nano

Let’s talk about number one.  What does Apple have to gain?  If Apple were to build this mythical device, and it were to be smaller, etc… How could they build it cost effectively, their parts chain is tied up in 320 x 480, 120 dpi screens, ARM-1178J CPUs, etc…  They would have to negotiate and buy a bunch of different parts.  Tooling up for a different device line would be expensive right now.  Then, assuming they spent the money on that.  They would need a sufficiently different software stack for this device.  That would cost money as well, then lets say that they pulled off the miraculous and got the iPhone nano’s manufacturer’s cost down to $299 ( which would be amazing ).  Would AT&T really do another hefty subsidy, to get the cost of the device down to$99 or free when their bottom line is already hurting from the steep discounts on the iPhone 3G?  The answer is no, it doesn’t make sense.

On the technical side, how do they account for an iPhone nano?  Assuming that the device would have a different form factor, most applications would have to be rewritten, not necessarily for technical reasons if they used interface builder when creating their UIs, but for usability reasons.  If the screen had a much greater density, it would be harder for the user to see text, etc… So developers would have to make their fonts larger and change their navigation and text entry systems if it used a click wheel.  That really makes the AppStore out.  This makes no sense.

Who would buy an iPhone nano that wouldn’t buy an iPhone?  This is interesting.  The iPhone 3G is doing well even with the income challenged segment, so who would buy the iPhone nano?  Maybe kids, perhaps teenagers, but without the AppStore, what is the draw over a normal iPod?  Or the iPod touch for that matter.  Maybe the extremely impoverished would consider it as a stretch, but if you are that challenged for cash how would you afford any monthly plan with data attached?  Does AT&T want credit challenged, cash strapped customers?  Does Apple want to serve the bottom of the market, even though they don’t in any other case?  No, they don’t.

Finally, what sort of hardware would be in a thing like this?  Well, they could use the same chips and just underclock them, maybe they would have a smaller touch screen, but then a higher density touch screen would be more expensive, and modifying the software to fit a smaller enclosure doesn’t make sense.  Perhaps the iPhone nano wouldn’t necessarily be smaller, but even then with a hardware configuration like 2 or 4 GB of RAM, the ARM CPU underclocked to like 35o MHz to control heat, maybe 64 MB of RAM, you start to have a device that is going to have a hard time with SD video, let alone the 480p stuff you can get now, so Apple would start to lose money on media sales.

Apple is not in business to lose money.  The iPhone nano idea would just be a dog.  If Apple did do something like this I would advise everyone to get your money out of the stock, that ship is headed down.  It would indicate panic, and an irrational view of the market, as well as an abandoning of the company’s core values.  

In the absence of an iPhone nano, what is the iPhone 2,1 that is appearing in the strings in the 2.2.1 firmware?  Well, obviously it has been in development for quite some time since the first time the string appeared was in the 2.0 firmware.   Apple is not a company that deviates from its patterns, so let’s look at the mac laptop to determine what they might do.  

Apple typically will announce a technology that is at the top of their pricing structure, then as newer equipment comes out, they will drop that item down into the next tier down, until they have about 3 items.  At that point the technology that used to be new will be pushed out of their product line.  Right now there is one iPhone.  What is likely to happen is that they are likely to release an iPhone Pro.  It will probably come in 32 and 64 MB storage units, have 256 MB of DRAM, and feature an ARMv6K CPU ( ARM11 MP Core ) with 2 or 4 cores.  The iPhone Pro would feature iPhone OS 3.0 which would allow full background processes that the user could kill if necessary.  The pricing would probably look something like this.

  • iPhone 3G 16 GB – $199
  • iPhone Pro 32 GB ( 2-core ) – $299
  • iPhone Pro 64 GB ( 4-core ) – $399

I’d expect the form factor to be largely unchanged, with the same screen, shape, size and battery life.  That is what makes sense, that is Apple’s style.  It would then enable them to keep the high-margin, high-price item in their lineup.  For Apple, the iPhone 3G is a little too cheap.  It would be strange for them not to have 3 SKUs for the iPhone and the iPod Touch.

iPhone Codesign Error 2.2.1 Firmware

Posted: February 6th, 2009 | Author: | Filed under: Apple, Cocoa, Companies, iPhone, Objective-C, Programming | Tags: , , , , , , | No Comments »

I have an older project and have had my certificates expire. I spent a couple of days trying to figure out how to get the stupid thing to build. Then I found this blog:

Basically what it says to do is to go into the .xcodeproj file for your application, open the project.pbxproj and modify the PROVISIONING_PROFILE variables.

This didn’t work for me, but removing all of the key / value pairs did.