Generally, I don't like to do a comparison of technologies or products in a single post because each deserves a dedicated post. But such type of posts get obsolete fast and the effort put into writing (not researching) them goes waste.

Before I start off the comparison, I need to explain the workflow of developing mobile apps at work. Sai, the chief designer, draws the mockups on paper, then prototypes on Photoshop and sends them for the approval from the client. The client then suggests some changes and a final set of screens (PSDs set in order) are sent to the developers. We prefer to write HTML5 apps running on phonegap because it gives us the ability to create cross platform apps effortlessly (well almost) and we write once (and in stuff we are most comfortable with) and deploy everywhere (well again almost). Another note to make is that we specialize in writing web apps and are at home with jQuery. So take our comparison with a slight pinch of salt.

Now based on the background above, here is the brain dump of the comparison between Sencha Touch (v1.1) and jQueryMobile (v1.0)

Pros for Sencha

  • Everything is JS (JS generates the DOM for you)
  • Oldest mobile app framework.
  • MVC pattern (neat separation of models, views and controllers)

Cons for Sencha

  • Difficult to design layouts as it requires knowledge of JS. (Web) Designer unfriendly!
  • Negligible documentation (Needs a lot of love).
  • Too much dependence on global variables. Debugging mess.
  • Difficult to theme. Requires messing around with JS and SCSS.
  • Feels like using the bad parts of JS. Lots of new operator, globals and an awkward API.
  • Only supports webkit based browsers (hence suitable mainly for mobile apps)
  • The code repo is available to you on only if you purchase support and development is mainly done within Sencha company.

Pros for jQMobile

  • It's jQuery!
  • Active ecosystem. Lots of plugins.
  • Better documentation
  • Finer control of the HTML. Can use full power of HTML5.
  • Dead easy to make themes. Have an online ThemeRoller!
  • Supports majority of the browsers (http://jquerymobile.com/gbs/)
  • Can be used for mobile site as well as mobile app (embedded webkit)
  • Development is open and happens publicly with the support of the community.

Cons for jQMobile

  • Just reached 1.0. Fairly young but very promising.
  • No MVC. Lot of care has to be taken while organizing the code.