SlideShare une entreprise Scribd logo
1  sur  37
How to be a
Successful
App Developer
Lessons from the Simulation of an App Ecosystem


Soo Ling Lim and Peter J. Bentley
University College London
iOS App Store
> 100,000 developers
   > 500,000 apps
 > 200 million users
> 25 billion downloads
AppEco
(www.appeco.co.uk)

An artificial life
simulation of
mobile app
ecosystems
AppEco Model
                         App Store




Developer                   App                      User
            builds and               downloaded by
             uploads
Developer Agent
•   represents a solo developer or a team of
    developers
•   each developer records:
     •   development duration
     •   number of days taken
     •   is_active?
     •   number of apps developed
     •   number of downloads received
Innovator   Milker




Optimiser   Copycat
App Artefact
•   app features are abstracted as a 10x10
    grid
•   if a cell is filled, then the app offers that
    feature
•   for ranking purposes, each app records:
      •   total number of downloads                x
          received
      •   number of downloads received on
          each of the previous 7 days
• App cells are filled probabilistically (each cell in
                the grid has a probability PFeat of being filled.).

Innovator
            • If this is the developer’s first app, the cells are
                filled probabilistically.
            •   Otherwise, the developer copies the features
                of his own latest app with mutation P(m) = 0.5.
 Milker
            • If this is the developer’s first app, the cells are
                filled probabilistically.
            •   Otherwise, the developer copies the features in
Optimiser       his own best app with mutation P(m) = 0.5.


            • An app is randomly selected from the Top
                Apps Chart and its features are copied
                with mutation P(m) = 0.5.
Copycat
User Agent
•   user preferences are abstracted as a
                                             Empty to model features
    10x10 grid
                                             offered by apps that are
•   if a cell in P is filled, then the user     undesirable to users
    agent desires the feature
    represented by that cell
•   each user records:
      •   the apps it has downloaded
      •   number of days between each
          browse
      •   days_elapsed (to know when
          to browse the app store next)
4 out of 4 matches



App 1




                                   User
              2 out of 4 matches



App 2



User downloads App 1 but not App 2
Angry Birds                ICSE 2011 App




User 1                 User 2   Soo Ling
App Store
 Top Apps        New Apps    Keyword Search:

1.    App          App


2.    App          App


3.    App          App
     ......




                    ......
AppEco Algorithm
                   Developer
 Initialise
                agents build and          Update app store
ecosystem
                  upload apps


                           loop for N timesteps


                                            User agents
                Increase agent
         Exit                               browse and
                  population
                                           download apps




1 timestep in AppEco = 1 day in the real-world
Calibrating AppEco for iOS
Number of iOS App Users (2008-2011)




                         Source: Apple Press Release
Number of
iOS App
Developers
(2008-2011)




Source: Gigaom
http://gigaom.com/apple/infographic-apple-
app-stores-march-to-500000-apps/
Number of Apps
and Downloads
(2008-2011)



                 Apple Events




                           Source: Apple Press Release
AppEco Simulation
•   Takes about 20 seconds to simulate 3 years
•   After 3 years, the simulation has more than
     •   100,000 developer agents
     •   500,000 apps
     •   20,000 user agents (due to memory constraints,
         1 user agent represents 10,000 real users)
     •   1.5 million downloads (corresponding to 15
         billion downloads)
Total&iOS&App&Users&(Million)&




                    0"
                           50"
                                            100"
                                                    150"
                                                           200"
                                                                  250"




           Q4'08"
           Q1'09"
           Q2'09"
           Q3'09"
           Q4'09"
           Q1'10"
           Q2'10"
Quarter&

           Q3'10"
           Q4'10"
           Q1'11"
                                                                         Actual vs. Simulated




           Q2'11"
           Q3'11"
                                          Actual"
                             Simulated"
Experiment 1
•   RQ1: Which strategy gets the highest average number of
    downloads?
•   RQ2: Which strategy produces the most diverse apps?
•   RQ3: Which strategy improves over time?
•   Method:
      •   Developers were randomly assigned one of the four strategies in
          equal proportions
      •   AppEco was run with the calibrated settings
      •   1080 timesteps (i.e., 3 years in the real world)
      •   Repeated 100 times
      •   Results averaged over 100 runs
RQ1: Average Downloads
Average Downloads
(std. dev. in brackets)
                                          (0.41)




         (0.14)     (0.14)     (0.15)


                                                   Strategy
      Innovator     Milker   Optimiser   Copycat
RQ2: App Diversity

•   Measured using Feature Coefficient of Variation (FeatCV)


•   For each cell in the desired region of feature grid F, we
    calculated the number of apps that offer that feature,
    forming a combined feature grid, FC.

•   σ is the standard deviation and μ is the mean of values in
    grid FC.

•   The lower the FeatCV, the more diverse the apps (the
    better the strategy - in combination its apps better meet
    all the users’ needs).
RQ2: App Diversity
FeatCV
(std. dev. in brackets)
                                                 (6.78%)




                          (0.35%)    (0.62%)
          (0.13%)
                                                           Strategy
        Innovator         Milker    Optimiser   Copycat
Experience vs. feature diversity
           (1 run)

                          Innovator


                          Milker


                          Optimiser


                          Copycat
RQ3: Improvement Over Time
 •   Categorised the apps into classes corresponding to their
     developers’ first apps, second apps, third apps, and so on => apps
     created by the developers at experience level 1, 2, 3, and so on.
 •   “Surveyed” the users and asked if they would download each app: if
     all the features in the app match the user’s preferences then they
     would download the app.
 •   For each strategy, the Fitness of the strategy at experience level L is



 •   AvgDlL is the number of potential downloads as reported by users in
     the survey for all the apps in experience level L divided by the
     number of apps in L, and NumUsers is the number of users who
     participated in the survey.
 •   FitnessL ranges from 0 to 1. The higher the value, the fitter the
     strategy.
RQ3: Improvement Over Time


                       Copycat



                       Optimiser
                       Innovator
                       Milker
Experiment 2
•   RQ4: When strategies compete, how often is each strategy
    chosen by developers?
•   Method:
      •   Developers begin with one of the four strategies.
      •   Each developer then has a 0.99 probability to randomly select an
          app from the Top Apps Chart and change strategy to be the same as
          the developer of the selected app. There is a 0.01 probability that a
          strategy is randomly selected.
      •   AppEco was run with the calibrated settings
      •   1080 timesteps (i.e., 3 years in the real world)
      •   Repeated 100 times
      •   Results averaged over 100 runs
RQ4: Strategy Popularity
Proportion of Developers
(std. dev. in brackets)

       (19.7%)
                             (18.9%)
                 (17.2%)




                                        (7.7%)



                                                 Strategy
     Innovator   Milker    Optimiser   Copycat
An Example Run Over 3 Years
Proportion of Developers


                               Innovator
                               Optimiser



                               Milker
                               Copycat
Conclusions
•   No strategy is a guaranteed winner.
•   Innovators produce diverse apps, but they are hit or miss – some
    apps will be popular, some will not.
•   Milkers may dwell on average or bad apps as they churn out new
    variations of the same idea.
•   Optimisers produce diverse apps and tailor their development
    towards users’ needs.
•   Copycats may seem like the best strategy to guarantee downloads,
    but the strategy can only work when there are enough other
    strategies to copy. In addition, this strategy can only exist in a
    minority, otherwise app diversity will decrease (many duplicated apps
    result in a scarcity of some features desired by users) and the fitness
    of the ecosystem will suffer.
s.lim@cs.ucl.ac.uk

www.appeco.co.uk
Effects of Publicity on App Downloads




       Excellent app, broadcasted                                 Excellent app, appearing on new
                                                                             apps chart
SL Lim & P Bentley. App epidemics: modelling the effects of publicity in a mobile app ecosystem. ALIFE'13, in press.

Contenu connexe

Dernier

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Dernier (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

En vedette

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

En vedette (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

How to be a successful app developer

  • 1. How to be a Successful App Developer Lessons from the Simulation of an App Ecosystem Soo Ling Lim and Peter J. Bentley University College London
  • 2.
  • 3.
  • 4.
  • 5. iOS App Store > 100,000 developers > 500,000 apps > 200 million users > 25 billion downloads
  • 7.
  • 8. AppEco Model App Store Developer App User builds and downloaded by uploads
  • 9. Developer Agent • represents a solo developer or a team of developers • each developer records: • development duration • number of days taken • is_active? • number of apps developed • number of downloads received
  • 10. Innovator Milker Optimiser Copycat
  • 11. App Artefact • app features are abstracted as a 10x10 grid • if a cell is filled, then the app offers that feature • for ranking purposes, each app records: • total number of downloads x received • number of downloads received on each of the previous 7 days
  • 12. • App cells are filled probabilistically (each cell in the grid has a probability PFeat of being filled.). Innovator • If this is the developer’s first app, the cells are filled probabilistically. • Otherwise, the developer copies the features of his own latest app with mutation P(m) = 0.5. Milker • If this is the developer’s first app, the cells are filled probabilistically. • Otherwise, the developer copies the features in Optimiser his own best app with mutation P(m) = 0.5. • An app is randomly selected from the Top Apps Chart and its features are copied with mutation P(m) = 0.5. Copycat
  • 13. User Agent • user preferences are abstracted as a Empty to model features 10x10 grid offered by apps that are • if a cell in P is filled, then the user undesirable to users agent desires the feature represented by that cell • each user records: • the apps it has downloaded • number of days between each browse • days_elapsed (to know when to browse the app store next)
  • 14. 4 out of 4 matches App 1 User 2 out of 4 matches App 2 User downloads App 1 but not App 2
  • 15. Angry Birds ICSE 2011 App User 1 User 2 Soo Ling
  • 16. App Store Top Apps New Apps Keyword Search: 1. App App 2. App App 3. App App ...... ......
  • 17. AppEco Algorithm Developer Initialise agents build and Update app store ecosystem upload apps loop for N timesteps User agents Increase agent Exit browse and population download apps 1 timestep in AppEco = 1 day in the real-world
  • 18. Calibrating AppEco for iOS Number of iOS App Users (2008-2011) Source: Apple Press Release
  • 19. Number of iOS App Developers (2008-2011) Source: Gigaom http://gigaom.com/apple/infographic-apple- app-stores-march-to-500000-apps/
  • 20. Number of Apps and Downloads (2008-2011) Apple Events Source: Apple Press Release
  • 21. AppEco Simulation • Takes about 20 seconds to simulate 3 years • After 3 years, the simulation has more than • 100,000 developer agents • 500,000 apps • 20,000 user agents (due to memory constraints, 1 user agent represents 10,000 real users) • 1.5 million downloads (corresponding to 15 billion downloads)
  • 22. Total&iOS&App&Users&(Million)& 0" 50" 100" 150" 200" 250" Q4'08" Q1'09" Q2'09" Q3'09" Q4'09" Q1'10" Q2'10" Quarter& Q3'10" Q4'10" Q1'11" Actual vs. Simulated Q2'11" Q3'11" Actual" Simulated"
  • 23. Experiment 1 • RQ1: Which strategy gets the highest average number of downloads? • RQ2: Which strategy produces the most diverse apps? • RQ3: Which strategy improves over time? • Method: • Developers were randomly assigned one of the four strategies in equal proportions • AppEco was run with the calibrated settings • 1080 timesteps (i.e., 3 years in the real world) • Repeated 100 times • Results averaged over 100 runs
  • 24. RQ1: Average Downloads Average Downloads (std. dev. in brackets) (0.41) (0.14) (0.14) (0.15) Strategy Innovator Milker Optimiser Copycat
  • 25. RQ2: App Diversity • Measured using Feature Coefficient of Variation (FeatCV) • For each cell in the desired region of feature grid F, we calculated the number of apps that offer that feature, forming a combined feature grid, FC. • σ is the standard deviation and μ is the mean of values in grid FC. • The lower the FeatCV, the more diverse the apps (the better the strategy - in combination its apps better meet all the users’ needs).
  • 26. RQ2: App Diversity FeatCV (std. dev. in brackets) (6.78%) (0.35%) (0.62%) (0.13%) Strategy Innovator Milker Optimiser Copycat
  • 27. Experience vs. feature diversity (1 run) Innovator Milker Optimiser Copycat
  • 28. RQ3: Improvement Over Time • Categorised the apps into classes corresponding to their developers’ first apps, second apps, third apps, and so on => apps created by the developers at experience level 1, 2, 3, and so on. • “Surveyed” the users and asked if they would download each app: if all the features in the app match the user’s preferences then they would download the app. • For each strategy, the Fitness of the strategy at experience level L is • AvgDlL is the number of potential downloads as reported by users in the survey for all the apps in experience level L divided by the number of apps in L, and NumUsers is the number of users who participated in the survey. • FitnessL ranges from 0 to 1. The higher the value, the fitter the strategy.
  • 29. RQ3: Improvement Over Time Copycat Optimiser Innovator Milker
  • 30. Experiment 2 • RQ4: When strategies compete, how often is each strategy chosen by developers? • Method: • Developers begin with one of the four strategies. • Each developer then has a 0.99 probability to randomly select an app from the Top Apps Chart and change strategy to be the same as the developer of the selected app. There is a 0.01 probability that a strategy is randomly selected. • AppEco was run with the calibrated settings • 1080 timesteps (i.e., 3 years in the real world) • Repeated 100 times • Results averaged over 100 runs
  • 31. RQ4: Strategy Popularity Proportion of Developers (std. dev. in brackets) (19.7%) (18.9%) (17.2%) (7.7%) Strategy Innovator Milker Optimiser Copycat
  • 32. An Example Run Over 3 Years Proportion of Developers Innovator Optimiser Milker Copycat
  • 33. Conclusions • No strategy is a guaranteed winner. • Innovators produce diverse apps, but they are hit or miss – some apps will be popular, some will not. • Milkers may dwell on average or bad apps as they churn out new variations of the same idea. • Optimisers produce diverse apps and tailor their development towards users’ needs. • Copycats may seem like the best strategy to guarantee downloads, but the strategy can only work when there are enough other strategies to copy. In addition, this strategy can only exist in a minority, otherwise app diversity will decrease (many duplicated apps result in a scarcity of some features desired by users) and the fitness of the ecosystem will suffer.
  • 34.
  • 35.
  • 37. Effects of Publicity on App Downloads Excellent app, broadcasted Excellent app, appearing on new apps chart SL Lim & P Bentley. App epidemics: modelling the effects of publicity in a mobile app ecosystem. ALIFE'13, in press.