OHOH
About Me
• iOS developer
• Runs Azukisoft Pte Ltd
• Author of
http://www.amazon.com/Objecti
ve-C-Memory-Management-
Essentials-Gibson-
ebook/dp/B00V8BMX7I/
What is OHOH?
• iOS social networking app
• Like Meetup.com
• But for smaller groups
Functionality
• Private chats
• Group chats
• Likes
• Comments
• Push notifications
Technology Stack
• Objective-C
• Cocoapods
• AFNetworking
• Parse for Push Notification
• Firebase/Layer
Objective-C
• Why use Objective-C?
• Last year Swift was not yet
mature
• Legacy code was still in Obj-C
• No point switching to Swift
CocoaPods
• Has a huge library of supported
components
• But tends to break when new
version of Xcode is released
• Am looking into alternatives e.g
Carthage
Parse
• Only for push notifications
• Easy to set up and test
• Tried Urban Airship, but had
problem with missing push
notifications
• Parse has not failed us. YET!!!
Private Chat/Group Chat
• Firebase for Chat
• Firebase good for real time use
cases
• Chat is 1 of them
• But Firebase is not dedicated for
chat
Private Chat/Group Chat
• So additional chat functionalities
such as image upload is not
supported
• It was a hassle managing data
from between our DB and
Firebase
Private Chat/Group Chat
• Switched to Layer
• But as with all cutting edge tech
• Code examples do not work out
of the box
• 50% of their sample code have to
be modified
Private Chat/Group Chat
• Layer is developed purely to
create chat apps
• So image upload, video upload is
all supported
• But can be a bit slow at time
AFNetworking
• Most popular iOS networking
library we have seen so far
• Widely used
• Widely supported
• But still have issues
AFNetworking
• Issue due to Apple’s NSURL
implementation
• Causes operation time outs even if
network is ok
• https://github.com/AFNetworking/
AFNetworking/issues/2314
AFNetworking
• Also sometimes we have multiple
alertviews about network errors
• Anyone encountered such errors
before?
Backend
• Typical LAMP stack
• PHP as fast to get going
• MySQL as it is the standard
• Running on Linode
• Ubuntu 14.04

Ohoh

  • 1.
  • 2.
    About Me • iOSdeveloper • Runs Azukisoft Pte Ltd • Author of http://www.amazon.com/Objecti ve-C-Memory-Management- Essentials-Gibson- ebook/dp/B00V8BMX7I/
  • 3.
    What is OHOH? •iOS social networking app • Like Meetup.com • But for smaller groups
  • 5.
    Functionality • Private chats •Group chats • Likes • Comments • Push notifications
  • 6.
    Technology Stack • Objective-C •Cocoapods • AFNetworking • Parse for Push Notification • Firebase/Layer
  • 7.
    Objective-C • Why useObjective-C? • Last year Swift was not yet mature • Legacy code was still in Obj-C • No point switching to Swift
  • 9.
    CocoaPods • Has ahuge library of supported components • But tends to break when new version of Xcode is released • Am looking into alternatives e.g Carthage
  • 11.
    Parse • Only forpush notifications • Easy to set up and test • Tried Urban Airship, but had problem with missing push notifications • Parse has not failed us. YET!!!
  • 12.
    Private Chat/Group Chat •Firebase for Chat • Firebase good for real time use cases • Chat is 1 of them • But Firebase is not dedicated for chat
  • 13.
    Private Chat/Group Chat •So additional chat functionalities such as image upload is not supported • It was a hassle managing data from between our DB and Firebase
  • 15.
    Private Chat/Group Chat •Switched to Layer • But as with all cutting edge tech • Code examples do not work out of the box • 50% of their sample code have to be modified
  • 16.
    Private Chat/Group Chat •Layer is developed purely to create chat apps • So image upload, video upload is all supported • But can be a bit slow at time
  • 18.
    AFNetworking • Most populariOS networking library we have seen so far • Widely used • Widely supported • But still have issues
  • 19.
    AFNetworking • Issue dueto Apple’s NSURL implementation • Causes operation time outs even if network is ok • https://github.com/AFNetworking/ AFNetworking/issues/2314
  • 20.
    AFNetworking • Also sometimeswe have multiple alertviews about network errors • Anyone encountered such errors before?
  • 21.
    Backend • Typical LAMPstack • PHP as fast to get going • MySQL as it is the standard • Running on Linode • Ubuntu 14.04