Pages Menu
TwitterRssFacebook
Categories Menu

Most recent articles

Apple doesn’t get social media

Posted by on Mar 20, 2014 in General | 0 comments

Apple has done a marvelous job in cultivating a certain image, and as a result has a prized demographic of customers. However, for a company that has position itself so well, it is remarkably lacking in understanding social media and transparency.

My App was approved yesterday and then went into the “Processing for App Store” status. Normally this is good news. This means you’re about 30 minutes to a few hours away from being in the app store. 36 hours I’m still stuck in that status…along with hundreds of others. The surprising part is the lack of communication from Apple.

I logged a support ticket and they responded they’re aware of the issue. If that’s the case, why didn’t they alert me of that proactively – what is this costing them to answer these tickets? I mean, how hard could it be to have done a proactive outreach with some transparency. I’m sure it would go something like this:

Select * from app_catalog where status=”Processing For App Store” and status_change_date – current date > 24hrs

For each entry, email:

“Dear <name>, it has come to our attention that your app is “stuck” (for lack of a better word) in the “Processing for App Store” status. This is not because of anything you’ve done, and unfortunately there is nothing you can do to push it along. This is entirely our fault, but rest assured we’re working around the clock to get your app into the store. Honestly, we haven’t come to the bottom of this yet, but as soon as we know the issue we will send you another email with the estimated time to fix it. Please know that we understand how anxious you are to have your app in the store, as are we. There are literally <count(sql query)> users in the same boat so we’re working hard. Stay tuned for more updates, and again, sorry!”

That’s it! Nothing formal. Just transparent – a mea culpa of sorts. I’d have respected that, and above all, I wouldn’t have wasted their time or my time with a support ticket. It couldn’t have taken them more than 2 hours to pull that off.

Instead, hundreds of us sit here not knowing what’s going on and costing Apple money by opening support tickets and then taking to social media ourselves. This is a great example of where a company could have got out in front of an issue. And earned respect.

I suspect that, sadly, this is a case of corporate bureaucracy. Apple has people far smarter than me so no doubt anyone could have done this in their sleep. What held them back was the red-tape. Or the potential ramifications of doing something. Or the “not my job” syndrome. Or the “this is going to interfere with my KPI’s” illness. And worse, the thought that “I have this email but now everybody is going to add there 0.2c of what it should or shouldn’t say, and then it has to go to legal and then…”

Bad one, Apple. Bad one.

Did you like this? Share it:

Choose.ly is born!

Posted by on Sep 9, 2013 in Development | 0 comments

I finally submitted my app to Apple for approval. Here’s hoping for a quick approval process.

Choose.ly is a crowd decisioning app. Although I haven’t updated the website properly yet, you can see it here at http://choose.ly

Some technical information for those who are interested:

1. The backend is utilizing the excellent Parse BaaS

2. The app is built using xcode/objective-C. I am utilizing the Storyboard features extensively. This app has a surprising number of master/detail views (ie. Embedded segues) so I was really forced to get the hang of it.

3. In the interests of efficiency, I denormalized the data structure somewhat. For example, I don’t tabulate the vote count, I instead keep a running total. Maybe not a very pure approach but it minimizes queries besides being faster.

4. The hardest part of the app was controlling the HUD spinning icon ;) This is a rather ugly part of iOS, requiring activities to be run on a background thread so the UI can be updated. I really would have preferred this happen automagically so that I can just call HUD.start and HUD.end without worrying about thread management.

5. No wait, I take number 4 back. The ugliest part of iOS is managing the keyboard and UI TextFields when the keyboard obscures the field. Can’t believe you have to manually take care of this. Ugh.

Stay tuned for app approval!

 

Did you like this? Share it:

Using the Parse.com BaaS

Posted by on Sep 7, 2013 in Development | 0 comments

I recently discovered parse.com and must say I’m very impressed.

I am busy developing an iPhone app and was about to write all the server side code in PHP when I decided to look around at some of the BaaS players. I found about 5 that warranted a closer look to the level of actually signing up and trying it out.

I settled on Parse because of all the ones I tried, Parse was the only one that from sign-up to example code execution worked completely flawlessly. I’m sure the others may be good, but given the sign-up process at Parse, it seemed very well thought out. Plus, the documentation is really good.

By using the examples they provide, I was able to get my initial photo upload working in a hour or so. Over the next week I was able to complete most of my app functionality, and it was great knowing the backend was taken care off.

I did find a few idiosyncrasies, especially when doing multi table join queries in that it was difficult to compare keys using an objectID and a String. Fortunately the forum is very active and very helpful. Most of my issues were related to me being a newbie at using NoSql type queries (hard to get away from thinking in SQL) as well as being new at native iOS development.

I now have to integrate push into my app. Parse has Push libraries and should make this a lot easier. Unfortunately I still have to go through the cumbersome Apple deployment process to get this working (no fault of Parse!).

Check out parse.com …. definitely very worthwhile. I hope to finish my app and submit for app store approval in the next 2 weeks.

 

Did you like this? Share it:

BaaS platforms: Parse.com, Kinvey.com, Buddy.com and Quickblox.com

Posted by on Sep 3, 2013 in Architecture | 1 comment

A few weeks I started to play with some of the BaaS platforms out there.

I am toying with creating a iOS app for an idea I had. Some of they key areas of functionality it will need include:

  • Twitter and Facebook Authentication
  • Chat room
  • Sending and Retrieving images to the server
  • Message broadcast

Instead of developing everything, I thought of looking at one the BaaS platforms. What follows is NOT a detailed review. I played with 4 BaaS providers in one evening, so lets be fair to them and not make snap judgements. I’m just relaying my experiences with them when quickly looking at them. There are so many variables…for example, maybe I’m using a different version of xcode than what the sample was built in that it’s hard without deeper debugging to come to grips with the issue.

I first signed up with Buddy.com. The feature set looked very promising for what I need. Sign-up was easy but I struggled to get up and running a little. The documentation was not as impressive as some of the others. Although I ran into some roadblocks, I’ll come back to take a more detailed look at this one as the feature set is everything I would need.

I then turned to Kinvey.com. Clearly a well baked and mature solution, though the documentation did not appear to me to be as friendly as Parse. I will come back and make another post on Kinvey

Parse.com was the final one I looked at…and turned out to be, in my opinion, the best of all of them. The sign-up process was well done, the getting started samples were great and actually worked right out of the box, and the documentation was amazing. Plus of course, the feature set of the platform was exactly what I needed.

Did you like this? Share it:

Back on Unity3D

Posted by on Jul 22, 2013 in Development | 0 comments

I posted earlier about Unity3d here and here. Fast forward and I hate to say I did very little other than evaluating the product and going through some tutorials. Life, as they say, happened.

I still have a desire to develop a game. It’s an idea that’s been brewing in my head for a long time now, so I decided to revisit Unity3d. Of course I forgot most of what I learned before so started ramping up my knowledge again. Coming back to it, I remember now why I was so impressed with Unity in the first place. There is no doubt this product rocks.

It IS a steep learning curve…not from a “difficulty” perspective but from an “overwhelming” perspective. There are so many options and configurations that it’s almost impossible to learn just in a few days.

Perhaps this time I’ll get to stick to the plan of implementing my game. My game idea requires a lot of light reflection so I just haven’t got my mind over the math part of this yet but hopefully Unity will help!

Did you like this? Share it:

Using Cloudflare when moving hosts

Posted by on Jun 28, 2013 in Architecture | 1 comment

I have a relatively large forum I run. I keep running into the limits of my host and have been forced to move hosts twice (the cloud host, while scalable, tended to be a bit slow).

As you know however, moving hosts can be a real pain. All because of DNS propagation. The last time I moved hosts, I had some users that couldn’t access the new site for more than 72 hours since their DNS wasn’t resolving to the new host.

After the last move, I also signed up with Cloudflare to try speed up my overall site performance – Cloudflare’s CDN is not the subject of this article. Rather, I want to express how pleased I am with their DNS services.

Because my name servers point to CloudFlare, when I moved hosts I did not have to update my name servers at my registrar. Instead, I simply changed my Cloudflare record to point to my new IP address. And because this is Cloudflares network, they instantly updated all their nodes with my new IP. As a result, there was NO need to sit through the painful DNS propagation.  My only downtime was the time it took for me to backup the site and FTP and restore it to the new server.

For anybody who has suffered through the DNS propagation before, you’ll appreciate how nice this is to avoid.

Couple this seamless IP change, along with the fact that I can easily transfer cPanel accounts, I feel somewhat liberated: I’m no longer beholden to a host. I can change hosts quite easily now with nothing more than a few minutes downtime.

Did you like this? Share it: