This relates to our evil empire thread: Tyler White, a designer/programmer at
sfx has built a sophisticated iphone app and tells the tale below. MANY
interesting details about the app development process and the app vs web-app
conversation.
On the app/web-app front, my main disappointment is yet another failure to gain
a potential cross-platform development environment. It would be nice, for
example, for sfx to be able to have projects include a wide variety of phones,
but if the cost includes customizing the phone apps for each environment
(iphone, android, java mobile (non-smart phones), windows mobile, ...) we will
simply drop back to browser based solutions in general, and pick-a-platform
(likely android) for specific needs not available via web-apps.
Java tilted this windmill only to fail, at least in general. AIR, I think, is
the closest to a "rich client" .. i.e. what we used to call desktop apps. It
uses Flash and XML. A mobile version could gain traction on android.
But how quickly the pendulum swings! I was amused to see that on both my
iphone and ipad the NPR app was built by a third party developer (bottle
rocket, nice name!) who has quickly specialized in taking a web site and
building a custom iphone app for it with many of the advantages Tyler discusses
below.
-- Owen
Begin forwarded message:
> From: Owen Densmore <[email protected]>
> Date: May 30, 2010 9:01:44 AM MDT
> To: SFx Discuss <[email protected]>
> Subject: Re: [sfx: Discuss] Re: Out Now! "The Reading Game" app for iPhone
>
> Tyler, this is fascinating .. thanks for the detailed response.
>
> This is also important to SFX future projects which will likely include more
> than laptops: phones and pads too, along with the whole ambient arsenal.
>
> One huge challenge is to have a development style that targets different
> technologies: iPad/Phone and Android for example .. thus the interest in
> PhoneGap. Clearly that approach suffers in quality, as you found out.
>
> So thanks a bunch! This is the first flashlight down a new, unknown alley
> and its nice to have a pioneer describe it so clearly.
>
> -- Owen
>
>
> On May 30, 2010, at 1:38 AM, Tyler wrote:
>
>> Thanks Owen, I do have some interesting observations:
>>
>> 1. 75% of the programming occurred over just 3 days of the 6 weeks.
>>
>> 2. Completing the last 3% of the app project took 15% of the total
>> time.
>>
>> 3. Native Obj-C apps work much better than the PhoneGap-type apps,
>> html web apps. Being a web developer before I became an app
>> developer, it was natural for me to investigate PhoneGap and the
>> prospect of creating a full-featured, media rich app using web
>> technologies. The drawbacks became apparent within the first few
>> hours of testing. These type of apps have to run in Mobile Safari (a
>> UIWebView), and although no web navigation bar is necessary, the
>> convenience of using html comes at the high cost of the UIWebView's
>> infrastructure, processing, and memory usage. When I started playing
>> with advanced CSS styling like gradients, transparent PNGs, and
>> Javascript animations, things started to crawl and the experience was
>> choppy - the bane of an iPhone app. I wanted my application to be
>> smooth, with fluid transitions and fades. Most of this cool
>> functionality comes for free with Apples SDK. I wanted it to be
>> lightweight and to run fast. There are Javascript libraries out now
>> that try to mimic the iPhones UI like the navigation controllers
>> (UINavigationController), but they are poor imitations and are just
>> not the same quality as the built-in UI Cocoa elements. Learning Obj-
>> C seemed like my best option. Another reason for learning the native
>> iPhone language may have been that I was accustomed to using PHP and
>> MYSQL to process and store data. Although the iPhone uses mySQL Lite
>> for data storage, the handheld device is not like a webserver (with
>> Apache and extensions) so using PHP/HTML/Javascript/CSS didn't seem
>> appropriate. iPhone uses Core Data to interface with the Lite
>> database. Another reason I went for Obj-C instead of HTML was that I
>> dearly wanted to play with the accelerometer, the microphone, and the
>> multi-touch surface. Touches do not translate very well onto
>> traditional webpages (e.g. no rollovers, etc.).
>>
>> 4. I found that this project, The Reading Game, used most of my
>> programming background, including my web experience. The app is
>> mostly Obj-C, but I do use a web view to play the animated gifs (the
>> rewards) as the iPhone cannot decode animated GIFs for free unless in
>> the browser, the border and shadows on the reward are CSS too. The
>> GIFs were different sizes and my solution was to use CSS to evenly
>> stretch them into a universal DIV. I used string replacement to
>> dynamically change the local html to reflect the specific reward
>> image.
>>
>> 5. The project was fun! I had the an incredible time being
>> constantly amazed at what I was learning how to do.
>>
>> 6. XCode has some amazing debugging tools like Instruments. I was
>> able to track down zombies and leaks.
>>
>> 7. Having a partner to give feedback throughout the process, from
>> concept to creation to deployment to marketing, has been very
>> important. My partner does most of the concept, content, and
>> management. We both do the marketing. We both bring vastly different
>> skill sets to the table and together, we cover quite alot.
>>
>> During the process, I realized how important it was to have someone
>> who is not a programmer, who is not in the top 1 percentile for tech-
>> saaviness, to give feedback. After a few late nights and countless
>> hours of working with code and graphics, my comprehension of the app
>> becomes very different from what other people see. A sort of blind
>> spot in my awareness develops around "my baby" where I don't see the
>> subtle problems or confusions in the interface or flow. It's great to
>> have someone keep the project in check by lending a fresh set of
>> eyes. I would say that my partner, Lissa Reidel, has been the
>> instrumental factor distinguishing the quality of my projects before
>> and after the creation of Legend Apps.
>>
>> 8. The iPad's larger screen and 10 finger detection opens a whole new
>> world of possibilities. It's not an iPhone jumbo, it's an iPad. I
>> hear the 3G is where it's at but I've enjoyed my 1st gen quite a bit.
>> It's battery life, 175 degree viewing angle, it's brightness and
>> portability makes bicycling and hiking with a computation device much
>> easier.
>>
>> 9. We have several more ideas lined up. Lissa wants a reading app
>> geared towards women, I say it should be for everybody, but then it
>> might be to broad. Another idea, which doesn't have a name yet, but
>> is referred to as "Dare," is a constant feed of suggestions that could
>> make you a better you with an element of social networking and
>> realtime search.
>>
>> Another idea is a game, not sure what kind or style yet.
>>
>> Another is a music / painting / relaxing tool.
>>
>> 10. I'm really loving experimenting with these new technologies. I
>> never dreamed of any of this hardware when I was a kid and I had
>> always seen the future as mouse and keyboard.
>>
>> If you have any questions or feedback, please email me.
>>
>> Tyler
>>
>> On May 27, 10:53 am, Owen Densmore <[email protected]> wrote:
>>> Boy, the art work is abs fab! Bast of luck with your new venture.
>>>
>>> It reminded me of a comment made yesterday at wedtech: apps are becoming
>>> hugely popular, eating into browser based webapps. I thought it was odd
>>> until I looked into NPR's and a few others. The experience is far nicer
>>> with apps.
>>>
>>> I'm not entirely sure why. In NPR's case, clearly they were far more
>>> immersive and even small things like not having the browser controls in the
>>> way help a lot on a phone's small screen.
>>>
>>> Any interesting observations or experiences? Did you look at PhoneGap?
>>>
>>> ---- Owen
>>>
>>> I am an iPad, resistance is futile!
>>>
>>> On May 26, 2010, at 10:47 PM, Tyler White <[email protected]>
>>> wrote:
>>>
>>>> Hello Discuss! Please download my new app for the iPhone, "The Reading
>>>> Game" -which is also the first app of my new company, Legend Apps.
>>>> Learning the Objective-C programming language, XCode, programming the app
>>>> and designing the graphics took a total of 6 weeks. I'm glad it's finally
>>>> out! Thanks! If you have any questions or feedback, please email me at
>>>> [email protected].
>>>
>>>> http://legendapps.com/get-the-reading-game/
>>>
>>>> Now onto marketing... :)
>>>
>>>> Tyler
>
============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org