bad implementations of good ideas: how systematic inattention to performance can kill your mobile...

39
© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T. Doug Sillars Bad Implementations of Good Ideas AT&T Developer Advocacy @Dougsillars How Systematic Inattention to Performance Can Kill Your Mobile App

Upload: doug-sillars

Post on 17-Feb-2017

510 views

Category:

Mobile


0 download

TRANSCRIPT

Page 1: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Doug Sillars

Bad Implementations of Good Ideas

AT&T Developer Advocacy@Dougsillars

How Systematic Inattention to Performance Can Kill Your Mobile App

Page 2: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Mobile Innovation

• “There’s an app for that.”© Apple Computer

http://bit.ly/1PH8sie

Page 3: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Mobile Innovation• “There’s an app for that.”

© Apple Computer

iOS: 1.5 M appsAndroid: 1.6M apps

• “There’s probably a couple of apps for that.”

Page 4: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Apps with Multiple & Frequent updates:• Dial in usage• Squash Bugs• Improve Performance

Killer App

http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2403624

Page 5: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Mobile Performance

https://t.co/7bMT4A1PIt

Page 6: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Testing is Key

• 44% of all issues are reported by users• 20% issues were only found because of

complaints in app reviews

http://info.perfectomobile.com/rs/perfectomobile/images/why-apps-fail-infographic.pdf

Page 7: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Mobile Performance

Is Performance REALLY that important? Yes!https://t.co/7bMT4A1PIt

Page 8: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Innovation & Performance

Innovates fastKiller

App

Page 9: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Innovates fastKiller

App

Getting to a Killer App

Testing

Learning From Mistakes of Others

Page 10: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Memory• CPU• Screen Rendering• Battery Life• Network Connectivity

Getting to a Killer App

Testing

Innovates fastKiller

App

Page 11: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• AT&T’s Application Resource Optimizer• Free• Open Source• iOS/Android (no root)

• Network traces on Device• Grades against 25 Best Practices• http://Developer.att.com/ARO

Testing Your App’s Network Performance

Innovates fastKiller

App

Page 12: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Cellular Networks are High Latency Environments• Not Optimizing Your Content can lead to delays:• 500ms:

• 26% frustration• 8% engagement

• Amazon.com & Walmart: • 100ms delay• 1% revenue

• 4% of mobile users admit to throwing their phones

Mobile Apps Are Highly Network Dependent

http://www.flickr.com/photos/9009139@N08/1263954439http://blog.radware.com/applicationdelivery/applicationaccelerationoptimization/2013/12/mobile-web-stress-the-impact-of-network-speed-on-emotional-engagement-and-brand-perception-reporthttp://www.mobilejoomla.com/mobile-joomla-blog/172-responsive-design-vs-server-side-solutions-infographic.html

Page 13: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Mobile Networks Drain Battery

• Data Connections account for:• 40% of battery use (screen on)• 70% screen off

Page 14: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T DriveMode

https://en.wikipedia.org/wiki/Texting_while_driving#/media/File:NotextinganddrivingWestUTX.JPG

Page 15: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T DriveMode - 2013

Good IdeaStop Device from receiving phone calls and SMS when the phone is in a car > 25 MPHRoute to Voicemail/ Send SMS reply “I’m Driving.”

Poor Implementation

Google Play reviews: excessive battery drain

40

Page 16: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T DriveMode for Android - 2013

3 min

480 GPS connections/24hr

~20% Battery

Good Idea

Poor Implementation

Fix bug:App was going into “drive mode” when not driving.

Page 17: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T DriveMode for AndroidUse activity APIs to identify when your users are in motion

11 minute trace

DetectedActivity.IN_VEHICLEDetectedActivity.ON_BICYCLE:DetectedActivity.ON_FOOT:

http://commons.wikimedia.org/wiki/File:Baby_goats_jan_2007_crop.jpghttp://commons.wikimedia.org/wiki/File:Goat_in_a_car.jpghttp://commons.wikimedia.org/wiki/File:2009_goat_and_bicycle_in_India_6512003001.jpg

Page 18: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

“Its déjà vu all over again.”• Yogi Berra

AT&T Drive Mode – iOS (2014)

https://commons.wikimedia.org/wiki/File:Yogi_Berra_1956.png

New application is getting poor reviews in app store for battery drain

Page 19: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T Drive Mode - iOS

Good Idea

Poor Implementation

Collect Analytics

Page 20: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T Drive Mode - iOS

Page 21: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

AT&T Drive Mode - iOS

Page 22: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Excessive Battery Drain• Android

• Long background testing• iOS

• Network trace while driving

• Test!

AT&T Drive Mode Similar Symptoms - Different Culprits

Page 23: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Streaming Radio App

Page 24: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Streaming Radio App

Page 25: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Streaming Radio App

Page 26: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Streaming Radio App

DATA:45% metadata15% Images

<40% of data consumed is Music!

Good Idea

Poor Implementation

Critical KPI – report what is playing on other “channels” with 10s accuracy.

Page 27: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Streaming Radio Metadata

Page 28: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Metadata

DATA:18% metadata20% Images

~60% of data consumed is Music!

Page 29: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Ensure you have Gzip enabled in your app, and on your server.

• Cache files• Send only changes

Streaming Music Metadata

Page 30: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Music Streaming –Album Art

Good Idea

Poor Implementation

Use a CDN to host all Album Art

API call uses a 302 redirect to access image files

16 requests8 API calls - 302 redirect

1.16s8 CDN calls – download images

1.25s

Page 31: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Redirects Add Latency

115s of added latency ~10% of test

Page 32: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Have API retrieve the image and send to the device

• Eliminate request• Eliminate several RTs

Redirects add Latency

Page 33: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Broken Links

21% of redirects have no target

Page 34: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Track Movement

• New version: • 18x more connections than this app’s architecture team expected• The triage team discovered that IP/port collisions = loss in sales

Good Idea

Poor Implementation

• Connecting to the network every 5 seconds –• reusing the same connection

Created a new connection every 5s

Page 35: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

World Famous Goat RacingWas $79, Now $39

User has to wait for image to load

Image Usage

Downloading the same image twice, in different sizes, doesn’t make sense.Download it once and use it in multiple ways.

54 kb

198 kbWorld Famous Goat Racing Was $79, Now $39

Good Idea

Poor Implementation

App with Rich image usage

Page 36: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

• Apps with Multiple & Frequent updates:• Dial in usage• Squash Bugs• Improve Performance

• Testing!

Killer App

Page 37: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

http://bit.ly/HighPerfAndroidApps

Page 38: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Q&A

http://knowmyapp.org/

http://www.appqualityalliance.org/aqua-performance-test-criteria

http://developer.att.com/application-resource-optimizer

http://bit.ly/HighPerfAndroidApps

Page 39: Bad Implementations of Good Ideas: How Systematic Inattention to Performance Can Kill Your Mobile App

© 2015 AT&T Intellectual Property. All rights reserved. AT&T, the AT&T logo and all other marks contained herein are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks contained herein are the property of their respective owners. Information contained herein is not an offer, commitment, representation or warranty by AT&T and is subject to change. Mention of a specific company or entity is not an endorsement by AT&T.

Thank You