For developers, building apps on the Web platform can pose a
fragmentation problem: For every development concern, there are often a
dozen or more possible options to consider, without clear pros or cons.
Web developers can feel intimidated not simply by their choices, but by
how _similar_ their choices are.
While this openness and community is a virtue, it leads to "choice
paralysis" and the wrong impression that the Web is a harder platform to
develop for than more restrictive alternatives.
However, by making strong, informed recommendations to developers, we
can help turn the variety of development tools available on the Web from
a daunting proposition into an empowering one.
A great example of this is the significant attention tofumatt's
localForage project has received. It provides a cross-platform,
asynchronous storage library that "just works". With its straightforward
API, it _removes_ an entire monotonous development choice for
developers. The community honored this drastic simplification with
almost 2000(!) "stars" on github in just a few days.
Furthermore, we have a responsibility to our developers to ensure that
certain frameworks, libraries, etc., have been tested and work well with
our own and (eventually) other target platforms.
Our developer-facing groups (Apps Engineering, Developer Relations and
Developer Tools in particular) are collaborating to expand this effort
systematically across the various parts of the development experience.
Some projects that are already in flight include:
- web-components-based (featuring Brick) app templates that work out of
- additional such components for hard, yet common problems such as
scrolling of large lists
- Mozilla-endorsed framework and tool chain for apps
- using the Firefox App Manager to start a new project from a template
and allow developing on it right then and there, no other tools needed
- submitting an app straight to the Marketplace from the App Manager
- an updated "MDN Apps Zone" experience focusing on developer concerns
and our materials and recommendations for each case
If this whetted your appetite, great! 2014 is an exciting year to be an
apps developer! All this and more is coming--step by step--to a
developer experience near you.
If you have any question or comments, speak up, or step by #apps on IRC!