Categories
Fun

We went to Edwardsville Route 66 Festival

Reading Time: < 1 minute

It was pretty cool. A bit small scale than I thought, but nonetheless liked the family friendly activities, food, and people. Their website is here, and their Facebook page is here. Can’t wait come back next year 🙂

The tour guide (the trolley bus) is really knowledgable about the history of Edwardsville.

10456014_878111818868807_3023293231169718722_n

10481465_878111838868805_1328296623366172662_n

Categories
iPhone app

Working on new app DiscoverSTL

Reading Time: < 1 minute

Alton_Missisispi_River_512x512

Categories
iPhone app

Swift might the the language of the future

Reading Time: < 1 minute

Apple : the Swift language (unveiled in WWDC on June 2, 2014)

Tutorials
Developing iOS Apps Using Swift Tutorial Part 1 (Jameson Quave)

learnswift.tips

References and reviews
Matt Galloway : Swift Language Highlights: An Objective-C Developer’s Perspective (raywenderlich.com)

The Verge : The Swift effect: Apple’s new programming language means way more iPhone developers and apps

Ray Wenderlich: Swift Cheat Sheet and Quick Reference (raywenderlich.com)

arstechnica.com : A fast look at Swift, Apple’s new programming language

Btw, Jeff Lamarche (twitter: @jeff_lamarche), the author of Beginning iPhone/iOS Development book, already got book offers for the Swift language. At the same time, don’t throw away Objective-C yet (HuffintonPost).

photo-3

Categories
iPhone app

Some tips for submit app to iTunes App store

Reading Time: 2 minutes

Avoid the Payload validation error
To shorten the review waiting time. I noticed this recently in my own apps update. The one without warning has much shorter review waiting time. The rationale is App thinks the app may use private API in this scenario (see this explanation on stackoverflow). From personal experience the one with warnings could be in the “wait for review” queue at least one week longer than the one without warning. So clean up the code if we can. Btw, I was able to fix the first one below (it turns out to be a third party function I no longer use). For the second one below, I read it could be related to Facebook SDK (which my app uses), but have NOT been able to solve it for now.

collegeFund_submit_warnings

ToMarket_submit_upload_warn

Validation
Validate before submit to App store, in Xcode organizer.

Keywords
Try put in relevant key words for the app during update (the only time we can change it); we can find some useful keyword by search App store. Also keep in mind search does not work all the time on iPhone.

Code Signing
This one is very subtle. I had two certificates, one was used both for dev and distribution; another one was for distribution (Ad hoc or App store). I found initially I could not sign the app by using the distribution certificate (provisioning profile) alone. After back and forth I was able to sign. And as I look at the certificate in Xcode now, it’s refers to the Ad hoc certificate, but in the submission process it still prompts the first one.

    Categories
    iPhone app

    Ads or no ads

    Reading Time: 2 minutes

    Should I put iAd to my iOS apps on iTunes App store? Should I put the google adsense back to my blog? The reason I am asking this question is: while personally I really don’t like the ads on Facebook, LinkedIn, or the iAds on some apps like Echofon, I understand this is a meaningful way for app developers to make some money. This applies to me as well. While I did not spend whole a lot time working on my apps (in aggregate), I cannot go on this app dev road without any meaningful downloads/income revenue forever. I can do it for a while. But not for too long. I believe Ray Wenderlich talked about the importance of Ad revenue at recent raywenderlich.com podcast. One of the episode of Paul Kemp’s the App Guy Podcast (onemob.com) , talked about something similar.

    I guess, the trick is to balance the ads and app. We don’t want ads to totally destroy the good experience of an app, but at the same time, if the app revenue could help the developer keep going, go for it. We live in a commercial world, no money, no bread. No bread, how can app developers survive?

    photo

    Btw, I found the Apple developer documentation for iAd is insufficient or not up-to-date. For example, it uses requiredContentSizeIdentifiers in the tutorial, which is already deprecated in iOS 6. I found it won’t compile with iOS 7 SDK. I have seen in the past Apple does not always updates its developer documentation. Maybe they have not given high priority to this. I am sure if they pay attention, they can fix it.

      Categories
      advice and tips

      Self identity

      Reading Time: 2 minutes

      Serenity became 4 years old a few months ago, and we are actually expecting our second child this July. Being the 1st generation Chinese immigrants in mid-west, we have some unique challenges such as being the minority in the community. This is not the case in the pre-school/toddler community we sent Serenity to (Hope Montessori at Creve Coeur). But it’s not always the case. I recall, once when Yoyo was still very little, probably one year old, we went to a mall play ground, and a Caucasian girl (about 10 years old) came over to play with Yoyo, but her dad called her back. It seems to me a race kind thing was going on (from the expression). This is fine with me, my personality is I don’t care too much about discrimination other people say/express towards me. But nonetheless, I don’t want my daughter felt that way when she grows up.

      Economy condition
      Beside race, another common thing is different economy conditions among families. For us personally, we really work hard to send her to the private pre-school. It’s not a small change for us. I wishes my app store or google adsense revenue could make up some of those some day 🙂

      Fun aside, once I talked about private school option with a fellow parent (his daughter is my daughter’s good friend in the class). And one worry from her dad, is if we send our kids to private school, will they feel so removed to ordinary people’s lives. Note both of us have fairly humble up-brings. We don’t want our kids growing up having no empathy for people are less fortunate than us. This is a very good point I did not think much before the conversation. Interestingly enough, I heard discussions on similar topic lately with my coworker, one reason they decided moving to new school district is that new school district demographics matches their background better. Not too affluent like some other districts 🙂

      I will update more as I have more thoughts on this topic.

      Categories
      Software development

      Singleton pattern backfired on me

      Reading Time: 2 minutes

      This is a continuation of my earlier post of Tree, recursive function and my dumb mistake. As I said in my last post, my solution was to create hash maps (singleton) to store those for the session. The main motivation was to help out the performance. But I found out it backfired on me, a few days ago and today. In both cases, it has to do with the hash map I created, it was something like (object , a list of objects). In both cases the list of objects was actually dynamic, and I made an assumption it was static. In other words, I thought I only need to put the mapping to the map once, then I can use it happily ever after. I think there might be ways to get around it, i.e., I should update the map when that list does change. I will investigate and work on it more. (Update 05-30-14) So I found a solution to one scenario, I was able to update the map as needed. And I use put method (java hashmap) to do that update.

        Categories
        Fun

        St. Louis farmers market project

        Reading Time: < 1 minute

        The summer is coming. Since we will be free on Saturday mornings, I plan to take my daughter to all the farmers’ market in the area. We have been to Tower Grove before; Creve Coeur just opened the farmers market at the same time (Saturday morning) at the Parkway north middle school parking lot: 181 Coeur De Ville Drive (intersection of I-270 and Ladue Road). I heard Ellisville has a farmers market too, it’s Thursday 4 to 7:30 pm. Ferguson always has already a good one. Then there is Kirkwood.

        Btw, I will update the “To Market” app once I got all the facts correct for the markets in the area.

        (Update 05-24-2014) I submitted the 2014 update (v 1.2.4) to the app store a few days ago.

        (Update 05-26-2014) I found stltoday has a google map for all the farmers market in the area. Here is the link.

        (Update 06-03-2014) The update is available at the iTunes App store.

        photo

        Categories
        kids

        Kindermusik and Team Central Gymnastics

        Reading Time: < 1 minute

        This is the end of school year, it is also the busiest time for parents and kids. I just realized it this year. As this past week we had two activities for Serenity: besides the Spring musical, we had Spring Performance at Team Central Gymnastics. Yoyo has done this for a year now, I knew she might not be talented in this, and we sometimes skipped classes (especially in the cold winter), but we got to finish it with a strong note.

        spring_performance_team_centralIt’s also a bit emotional to say goodbye to our Kindermusik teacher and friends. We have done this for last 2 years, since Yoyo was 2.5 years old. I recall at one time when she was transitioning from toddler class to pre-school at Hope, the only class she likes to go is Kindermusik.

          Categories
          Fun

          Spring Musical

          Reading Time: < 1 minute

          Serenity’s school usually have this Spring Musical, in which each class will take turns and sing two songs. Each year they have a theme. Last year it was about Season. In the May of St. Louis, the weather is almost like summer. Some classes picked Summer, Spring, or Fall, Serenity’s class picked two Winter songs, which I think is quite unique. Here are the two song: Winter Wonderland and A Marshmallow World.

          Winter Wonderland

          A Marshmallow World

          This year’s theme is transportation. Next Wednesday evening, they will have the magic Spring Musical again. I know the songs their class will sing. “Life is a highway”. She has being sing that for a while.

          And “on the road again” by Wille Nelson

          Interestingly, both season (change) and road trip are metaphors of life path, or growing. They are all good picks. And last but not least, the song we all sung together last year is the Circle Game by Joni Michtell. Don’t know about this year’s pick.

          Also, this time I asked Serenity how the teachers picked the song. She said the teachers googled it 🙂