Your SlideShare is downloading. ×
0
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Making Fast Mobile Applications
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Making Fast Mobile Applications

1,516

Published on

How to make blazing fast mobile applications.

How to make blazing fast mobile applications.

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,516
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
30
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Hi So I am Wenhan, co founder of 2359media. At 2359Media , we are building a platform for developers and laymen to easily create their own content based applications. What this currently means is that we allow content publishers to easily convert any content they have into a native application on multiple smart phone platforms.Think of us as wordpress for mobile applications.
  • Why are we so focused on making content driven applications?Firwsylu we believe that content consumption is undergoing a great shift where more mand more content consumption will take place on mobile phones as handset and networks become more robust2ndly, we believe that Content based applications are most likely to have the most useful applications over time and most likely to attrach a large number of users//Mostful likely to monetise by advertisingSimilar to the web properties, content is king.The content on a website or the application is what keeps people around. The more pain your content solves or more pleasure your content gives, the more likely your application will be downloaded.The more refreshing your content the more likely they will return regularly.
  • Content Driven applications display content.Popular types of CDA are -news application like ST-Multimedia applications like the youtube application-Directory based applications like SGMalls which is our first applicationThe typical functions of CDA usually grab data from a server following a set of pre-defined rulesThe content is then interpreted and displayed in the application. There are actually 3 parts in the design.- Server Side- Network- Client sideI will mainly focus on the network and the client side because the server side is very similar to web programming and most of the best pratices and framework for servers are already very mature.
  • I would like to think of an appliction as the viewer. Remember that we are talking about CDA so the objective of the app is o get the user into the content AFAP.So what makes an application fast?
  • Firslty, we have to understand that the slowest link in a CDA is the netowkr.Remember the term World Wide Wait? That was in the days of dial up modems. Right now, the situation is being replicated in the wireless internet world. The situation will get worse as more people sign up with with data plans and carriers suddenly discover that smartphones are huge bandwidth suckers and that they have to upgrade their 3G networks.Mobile networks are known to be sucky compared to our current broadband. They are slower, have about twice the latency and suck up a lot more battery power.I took these images off the net and they are an extreme example that should how mobile networks are really slow compared to broadband networks
  • Cache and reuse anything that is download Storage is cheap and network is expensive ID parts of aapplications that are suitable for caching-Relatively static-ie. Favorurites or Facebooks’ friend’s contact data- also helps if network connection is suddenly lossHave different download policies on 3G and wifi-once understand the cost/benefit of different networksExample of news reader- list of stories and click to see story-on wifi, all stories are cached so the story shows up instantly when a user clicks on it.-on 3g, we wait for an explicit signal from user before loading the story.Use CDN for edge distribution of media- Minimise the latency- SimpleCDNMirrorCDNUse multiple asynchrous request-reduce effect of latencyBack to newsreader example- download the text in the story-if you do it in series, most time will be waiting for the reply and when it comes the reply is only a short burst.-if you fire request for 20 at the same time, you might be able to cut down 90% of the waiting time as while you are waiting, you are preparing and recieveing the next request.
  • Something that programmers quickly learnMain thread= UI threadIf you do a downloading there, it will look to the user that it hangs.For certain platforms to download new data when the phone is idle for example andriod. Passive downloading.Multiple Libraries3 types of storage approachesFMDB, SqlitePersisentObject, CoreDataMultiple ParsersRework the design so server bears more burden Removing stuff that the phone might not need. move processor intensive stuff to the servr.
  • Mature TechnologgiesCalled universal because of their availablity.Impt if you have lots of phone platforms to support.All platforms even the new ones like palm pre supports at least XMLLibraries are everywhereBloat has minial effect as text is relatively small compared to images.
  • Stick to established UI because users are already familiar with that and have been trained from the minute they got the phone.Reduce the friction of learning how to use your application and getting into the contenti.E screenshot = buuukNotice the different placement of the tab bar.Iphone= bottomAndriod= top.Following because not much UI innovation needed where there is an established way.
  • Extrapolate from good sourcesFacebook might be one.
  • Transcript

    • 1. Developing Content Driven Mobile Applications
    • 2. 2359 Media
      Like WordPress for Mobile
    • 3. Why build content driven apps
      Intensity of Usage
      Content
      Sticky
      Games
      Length of Usage
      Gimmick
      Utilities
      Directories
    • 4. What do Content Driven Apps do?
      Pull Data
      1001000 1101001
      Display
      Store & Serve
      Destination = Content
    • 5. Vehicle = Application
      Fast and Comfortable
    • 6. Mobile Networks Suck
      WiFi
      3G
    • 7. Design for the Network
      • Always Be Caching
      • 8. Do more when you have more
      • 9. Buy Local Servers / Use CDN (Low Cost)
      • 10. Use Multiple Asynchronous request
    • Design for the handset
      • Keep tasks off the main thread
      • 11. Try multiple libraries/approaches
      • 12. Push burden to server
    • Use Universal Connectors
      XML or JSON
      Most Platforms have native support or good libraries
      Text data transmitted has minimal effect
    • 13. Stick to Established UI
      iPhone
      Andriod
    • 14. unless there isn’t a good one
    • 15. In Closing
      Content Driven Apps attract users
      Make a great vehicle for the user
      Use Universal Connectors
      Mobile Networks Suck
      Design for the Network
      Keep the UI Responsive
      Use established UI Frameworks
    • 16. Thank You

    ×