Meego Wiki
Views

Application developer site/Description

From MeeGo wiki
< Application developer site(Difference between revisions)
Jump to: navigation, search
(Added descriptions of the planned user personas, which will set the stage for the site content plan. Changed "Planned content" to "Content plans at site inception" as an interim content plan.)
m (Content plan: Added comment about community goals content.)
 
(One intermediate revision not shown)
Line 1: Line 1:
-
== Overview ==
 
-
 
-
From the experiences of Apple and Android, we can assume that, if we are successful, there will be many more application developers than platform developers.  Similarly, their needs will be different, as they are more interested in using APIs than designing them.  It could also be that they will not necessarily be interested in joining the Meego Community, and are more interested in being passive consumers of the technology.  The audience will consist of both beginners who need simple, clear, tutorials/walkthroughs, and experienced developers more interested in code samples and reference documentations.
 
-
 
-
== Objectives ==
 
-
 
-
The goal of the developer.meego.com site is to present and market the Meego Application Developer offering.  This consists of web-pages supporting the following:
 
-
 
-
* Describing the Meego platform and SDK
 
-
* Advertising changes to the Meego Application SDK
 
-
** This could also involve mentioning new Meego-ready products
 
-
* Teaching how to use the Meego platform for creation of different applications
 
-
* Teaching of new APIS
 
-
* Teaching specialized topics related to different UX
 
-
** Power optimization for Netbook and phone UXs
 
-
** Usability constraing in TV and phone UXs
 
-
* Describe how to get Meego applications into different application stores, and and the Meego community repository.
 
-
* Central location for fetching the SDK
 
-
* Central location for all information relevant to application developers
 
-
** ideally indexed/cross referenced documentation
 
-
* Q&A for application developers
 
-
* Lead into the community
 
-
** For those that want to dig deeper.
 
-
 
== Content ==
== Content ==
Content is aimed primarily at application developers. Three main developer personas have been initially identified for developer.meego.com: 1) experienced developers familiar with the MeeGo environment, 2) experienced developers new to the MeeGo environment, and 3) new developers who have not yet committed to a platform ecosystem. As user personas represent the goals and behaviors of a similar group of website visitors, dividing the target audience into these personas is helpful for planning, identifying and creating content that will help each persona achieve their goals when visiting the site. Defining user personas also helps to ensure a website structure that facilitates a smooth journey toward the needed information.
Content is aimed primarily at application developers. Three main developer personas have been initially identified for developer.meego.com: 1) experienced developers familiar with the MeeGo environment, 2) experienced developers new to the MeeGo environment, and 3) new developers who have not yet committed to a platform ecosystem. As user personas represent the goals and behaviors of a similar group of website visitors, dividing the target audience into these personas is helpful for planning, identifying and creating content that will help each persona achieve their goals when visiting the site. Defining user personas also helps to ensure a website structure that facilitates a smooth journey toward the needed information.
Line 115: Line 91:
* Provide channel for feedback of new ideas to develop the MeeGo platform
* Provide channel for feedback of new ideas to develop the MeeGo platform
-
== Content plans at site inception ==
+
=== Content plan ===
-
 
+
-
* SDK downloads, including integration with an IDE, a VM for testing apps that is ready to go with the latest version of MeeGo, sample code and documentation for off-line use
+
-
* An overview of the typical developer environment (a "hello world" for a developer with a clean Windows/Linux install)
+
-
* Detailed tutorials & manuals on developer tools for the platform
+
-
* API docs for all of the developer visible APIs on the platform (potentially with "preferred sons" - APIs that have a higher profile)
+
-
* A platform overview, explaining the role of various components & how to put them together to make more complicated apps
+
-
* A more detailed set of manuals of all things meego, covering localisation, packaging, system integration, HIGs, etc. (browsable, searchable, indexed)
+
-
* A copious library of code samples, liberally licensed, searchable, to help developers get started with a toolbox for things like drawing on a canvas, calling a DBus API, listening for system events, using core libraries, etc.
+
-
* Links to source code for free applications on the system (make it easy for developers to see how existing developers do things)
+
-
* An easy way to distribute software when it's written
+
-
* A knowledge base of content that developers augment with gathered wisdom
+
-
 
+
-
* Videos, screencasts, presentations of the Meego APIs and their use.
+
-
* Community introduction material - howtos, mailing lists, key people.
+
-
 
+
-
== Comparison web sites ==
+
-
 
+
-
* [http://developer.android.com Android]
+
-
* [http://developer.apple.com Apple]
+
-
* [http://techbase.kde.org KDE]
+
-
* [http://developer.palm.com Palm]
+
-
* [http://qt.nokia.com/developer Qt]
+
-
* [http://www.o2litmus.co.uk/tools O2Litmus]
+
-
* [http://developer.bada.com/ Bada]
+
-
* [http://developer.intel.com/ Intel]
+
-
* [http://developer.nokia.com/ Nokia]
+
-
* [http://msdn.microsoft.com/ Microsoft]
+
-
* [http://www.cpan.org CPAN (Perl)]
+
-
 
+
-
== Location ==
+
-
 
+
-
* developer.meego.com??
+
-
 
+
-
Other suggestions are welcome.
+
-
 
+
-
== Technical Requirements ==
+
-
 
+
-
* Drupal (with video support module)
+
-
* TBD
+
-
 
+
-
== Site development ==
+
-
 
+
-
The site has several elements that need to be combined in the design:
+
-
 
+
-
* Marketing - it needs to attract developers.
+
-
* Informative - it needs to provide developers with the necessary information to do their work.
+
-
* Education - it needs to teach developers how to use the Meego APIs on Meego devices.
+
-
 
+
-
=== Site Metrics Collection ===
+
-
 
+
-
In order to measure the success of the site metrics need to be gathered.  For example, number of SDK downloads, number of views of the Get Started video, etc.
+
-
 
+
-
The primary metric can be the number of applications on the community application repository, or a combination of the applications available from all the vendors of Meego devices.
+
-
 
+
-
== Open Issues ==
+
-
 
+
-
These should be discussed in the forum.meego.com site, but are gathered here for now.
+
-
 
+
-
=== Can we place product specific content on the site? ===
+
-
 
+
-
One idea is that all Meego products should be hosted, even if they contain APIs that are not part of the Meego Platform.  The idea being is these APIs can serve as input to the future evolution of the platform.
+
-
 
+
-
... Comments please ...
+
-
 
+
-
=== What is the policy on digital marketing on the site? ===
+
-
 
+
-
Do we allow device/product manufacturers permission to display device launch information on the site? i.e., Could LG, Nokia, Intel or Asus have a banner/flash advert when they launch a Meego devices, and if so, for how long?
+
-
 
+
-
... Comments please ...
+
-
 
+
-
=== Should application developers have their own Q&A forums or should these be combined with the meego.com forums? ===
+
-
 
+
-
The issue is application developers will (hopefully) outnumber the platform developers.  This could create a lot of noise in the forums not related to the generation of the Meego Platform.
+
-
 
+
-
Currently this is not planned, as the application developers can be integrated in the community eventually, and their feedback to the platform developers is desired.
+
-
 
+
-
... Comments please ...
+
 +
Overview of planned content categorized by user personas as of Jan 9th, 2011.
-
=== Any other open issues? ===
+
{| border="1"
 +
! rowspan="2" BGCOLOR="#659EC7"|Persona goals
 +
! colspan="3" BGCOLOR="#659EC7"|Developer personas
 +
! rowspan="2" BGCOLOR="#659EC7"|Content elements
 +
|----
 +
| BGCOLOR="#659EC7"|'''1) Experienced application developers, new to MeeGo'''
 +
| BGCOLOR="#659EC7"|'''2) Experienced application developers familiar with the MeeGo environment'''
 +
| BGCOLOR="#659EC7"|'''3) New application developers not yet committed to any platform ecosystem'''
 +
|----
 +
| rowspan="8"|Get an overview of how to develop in MeeGo
 +
| rowspan="8" align="center"|x
 +
| rowspan="8" align="center"|
 +
| rowspan="8" align="center"|x
 +
|History of Meego
 +
|----
 +
|Developer story
 +
|----
 +
|API and MeeGo architecture introduction
 +
|----
 +
|SDK
 +
|----
 +
|How to get started guide
 +
|----
 +
|SDK and other tools available
 +
|----
 +
|Where to go to get help
 +
|----
 +
|FAQs
 +
|----
 +
| rowspan="3"|Review and evaluate the API documentation
 +
| rowspan="3" align="center"|x
 +
| rowspan="3" align="center"|x
 +
| rowspan="3" align="center"|x
 +
|Meego arctitecture overview and how it relates to documentation
 +
|----
 +
|Explanation of the API documentation architecture: how it is generated, were it comes from
 +
|----
 +
|Explain search
 +
|----
 +
|Get the SDK
 +
| align="center"|x
 +
| align="center"|x
 +
|
 +
|SDK
 +
|----
 +
| rowspan="5"|Training and support in my time zone and language
 +
| rowspan="5" align="center"|x
 +
| rowspan="5" align="center"|
 +
| rowspan="5" align="center"|x
 +
|People networks (contacts)
 +
|----
 +
|Wiki resources
 +
|----
 +
|meego.com
 +
|----
 +
|forum.meego.com
 +
|----
 +
|FAQs
 +
|----
 +
| rowspan="6"|Get information to help solve a specific problem I encounter in development
 +
| rowspan="6" align="center"|x
 +
| rowspan="6" align="center"|x
 +
| rowspan="6" align="center"|x
 +
|FAQs
 +
|----
 +
|New requests for FAQ
 +
|----
 +
|Volunteering to create FAQs
 +
|----
 +
|Guidelines
 +
|----
 +
|Intro to forum.meego.com, visibility of recent activity
 +
|----
 +
|Tutorials
 +
|----
 +
| rowspan="3"|How to deploy for my device/what devices could I deploy on?
 +
| rowspan="3" align="center"|x
 +
| rowspan="3" align="center"|x
 +
| rowspan="3" align="center"|x
 +
|Reference to device/feature/platform wiki
 +
|----
 +
|Device guides
 +
|----
 +
|OBS guide
 +
|----
 +
|rowspan="4"|How to distribute my application
 +
|rowspan="4" align="center"|x
 +
|rowspan="4" align="center"|x
 +
|rowspan="4" align="center"|x
 +
|FAQ
 +
|----
 +
|Packaging guide
 +
|----
 +
|How to put it to the OBS
 +
|----
 +
|List of stores (future)
 +
|----
 +
|What is the market place?
 +
| align="center"|x
 +
| align="center"|x
 +
| align="center"|x
 +
|Research material
 +
|----
 +
|Roadmap
 +
| align="center"|x
 +
| align="center"|x
 +
| align="center"|x
 +
|Roadmap wiki
 +
|----
 +
|Ongoing projects and how to collaborate
 +
| align="center"|x
 +
| align="center"|x
 +
| align="center"|x
 +
|Intro text plus link to open source gitorous.org
 +
|----
 +
|Testing resources including ux testing
 +
| align="center"|x
 +
| align="center"|x
 +
| align="center"|x
 +
|Guide on how to test your application
 +
|----
 +
|Stay up to date with news, events, comments
 +
| align="center"|
 +
| align="center"|x
 +
| align="center"|
 +
|Summary of community with links (Blogs, Wikis, Forum, Mailing lists, etc.)
 +
|----
 +
|Share knowledge: sample code, solutions, applications
 +
| align="center"|
 +
| align="center"|x
 +
| align="center"|
 +
|Intro text (plus links) to write a guide or tutorial in the Wiki, and share on forum
 +
|----
 +
|How to influence future platform roadmaps?
 +
| align="center"|
 +
| align="center"|x
 +
| align="center"|
 +
|Intro text to Linux Foundation
 +
|}
-
...
+
Proposed content associated with community goals for the developer personas is currently in draft (as of Jan. 9, 2011).

Latest revision as of 16:47, 9 January 2011

Contents

Content

Content is aimed primarily at application developers. Three main developer personas have been initially identified for developer.meego.com: 1) experienced developers familiar with the MeeGo environment, 2) experienced developers new to the MeeGo environment, and 3) new developers who have not yet committed to a platform ecosystem. As user personas represent the goals and behaviors of a similar group of website visitors, dividing the target audience into these personas is helpful for planning, identifying and creating content that will help each persona achieve their goals when visiting the site. Defining user personas also helps to ensure a website structure that facilitates a smooth journey toward the needed information.

Though many of the goals and needs of the three personas overlap, the content needs vary depending on a persona's development experience and familiarity with the MeeGo environment. In addition to the individual persona goals, there are also goals that the MeeGo community may hope are achieved when a developer visits the site. The three developer personas and their goals are described below.

Developer persona 1

Experienced application developers, new to MeeGo, mobile and desktop. This persona consists of:

  • Active and passive contributors
  • Commercial and amateur application developers

Persona goals:

  • Get an overview of how to develop in MeeGo
  • Review and evaluate the API documentation
  • Get the SDK
  • Training and support in my timezone and language
  • Get information to help solve a specific problem I encounter in development
  • How to deploy for my device/what devices could I deploy on?
  • How do I distribute my application?
  • What is the market place?
  • Platform roadmap
  • Ongoing projects and how to collaborate
  • Testing resources, including UX testing

Community goals:

  • Minimize fragmentation of the developer ecosystem
  • Deliver a coherent story concerning the MeeGo platform
  • Reduce mailing list traffic within MeeGo developer community
  • Welcome, absorb and engage visitors in MeeGo community
  • Provide channel for feedback of new ideas to develop the MeeGo platform

Developer persona 2

Experienced application developers familiar with the MeeGo environment. This persona consists of:

  • Active and passive contributors
  • Commercial and amateur application developers

Persona goals:

  • Review and evaluate the API documentation
  • Get the SDK
  • Stay up to date with news, events and comments
  • Get information to help solve a specific problem I encounter in development
  • Share knowledge – sample code, solutions, applications
  • How to deploy for my device/what devices could I deploy on?
  • How do I distribute my application?
  • What is the market place?
  • Platform roadmap
  • How to influence future platform roadmaps?
  • Ongoing projects and how to collaborate
  • Testing resources, including UX testing

Community goals:

  • Minimize fragmentation of the developer ecosystem
  • Deliver a coherent story concerning the MeeGo platform and explain inconsistencies
  • Reduce mailing list traffic within MeeGo developer community
  • Cultivate and nurture developers and get recommendations in MeeGo community
  • Provide channel for feedback of new ideas to develop the MeeGo platform

Developer persona 3

New application developers not yet committed to a platform ecosystem. Thia persona consists of:

  • Active and passive contributors
  • Commercial and amateur application developers

Persona goals:

  • Get an overview of how to develop in MeeGo
  • Review and evaluate the API documentation
  • Getting started and measure my progress (competence development plan)
  • Training and support in my timezone and language
  • Get information to help solve a specific problem I encounter in development
  • How to deploy for my device/what devices could I deploy on?
  • How do I distribute my application?
  • What is the market place?
  • Platform roadmap
  • Ongoing projects and how to collaborate
  • Design and developer guidelines
  • Testing resources including UX testing

Community goals:

  • Minimize fragmentation of the developer ecosystem
  • Deliver a coherent story concerning the MeeGo platform
  • Reduce mailing list traffic within MeeGo developer community
  • Guides on how the community works
  • Welcome, absorb and engage visitors in MeeGo community
  • Provide channel for feedback of new ideas to develop the MeeGo platform

Content plan

Overview of planned content categorized by user personas as of Jan 9th, 2011.

Persona goals Developer personas Content elements
1) Experienced application developers, new to MeeGo 2) Experienced application developers familiar with the MeeGo environment 3) New application developers not yet committed to any platform ecosystem
Get an overview of how to develop in MeeGo x x History of Meego
Developer story
API and MeeGo architecture introduction
SDK
How to get started guide
SDK and other tools available
Where to go to get help
FAQs
Review and evaluate the API documentation x x x Meego arctitecture overview and how it relates to documentation
Explanation of the API documentation architecture: how it is generated, were it comes from
Explain search
Get the SDK x x SDK
Training and support in my time zone and language x x People networks (contacts)
Wiki resources
meego.com
forum.meego.com
FAQs
Get information to help solve a specific problem I encounter in development x x x FAQs
New requests for FAQ
Volunteering to create FAQs
Guidelines
Intro to forum.meego.com, visibility of recent activity
Tutorials
How to deploy for my device/what devices could I deploy on? x x x Reference to device/feature/platform wiki
Device guides
OBS guide
How to distribute my application x x x FAQ
Packaging guide
How to put it to the OBS
List of stores (future)
What is the market place? x x x Research material
Roadmap x x x Roadmap wiki
Ongoing projects and how to collaborate x x x Intro text plus link to open source gitorous.org
Testing resources including ux testing x x x Guide on how to test your application
Stay up to date with news, events, comments x Summary of community with links (Blogs, Wikis, Forum, Mailing lists, etc.)
Share knowledge: sample code, solutions, applications x Intro text (plus links) to write a guide or tutorial in the Wiki, and share on forum
How to influence future platform roadmaps? x Intro text to Linux Foundation

Proposed content associated with community goals for the developer personas is currently in draft (as of Jan. 9, 2011).

Personal tools