Re:Poll: What mobile HTML5 framework do you use?
by creativityhurts on Friday February 03, 2012 @07:38PM
(#3549758)
Phonegap and Titanium are different things from jQuery Mobile and Sencha Touch, which are slightly different form jQTouch.
Want to build a complex app that could run on iOS, Android and Windows Mobile with no(t much) fuss? Don't like writing HTML or CSS by hand but enjoy writing JavaScript MVC stuff and fancy learning new stuff? Go with Sencha.
Want to build a nice mobile interface for a website but you need your very own markup and CSS and you'd also like to apply your jQuery king-funess to the project? jQuery Mobile is the thing you need.
Want that "site" to be a native app that talks with your web services and uses accelerometer, gps and camera? Add Phonegap.
Re:Poll: What mobile HTML5 framework do you use?
by TimRR on Friday February 03, 2012 @08:44PM
(#3549924)
... or appMobi/jqMobi. You could basically use of any of these frameworks/libs and run your project through appMobi in the same way you would run it through Phonegap.
Re:Poll: What mobile HTML5 framework do you use?
by typicalexample on Friday February 03, 2012 @11:16PM
(#3550206)
We've been building up on Sencha Touch 2 since the first PR. It was hard to convince devs on team to make this choice. It takes some time to get into Sencha way, being familiar with ExtJS helps. Some benefits -
* a faster development process once you're clear on the concepts
* along with conventions, a lot of configuration is possible
* the new class system makes it easy to build custom UI components and write maintainable code
* the new class system combined with jsbuilder/sdk tools helps you produce minimal js.
* many well done examples
* ComponentView and DataViews are kickass. saves many lines of code that you might have written for updating views otherwise
* many types of eventful data stores, and they talk REST out of the box!
* great performance on iOS in general
* our customers needed a lot of theming - we build our theming system on top of sencha's sass work. rolling out new looks = 10 lines of change for us :)
Re:Poll: What mobile HTML5 framework do you use?
by stwe on Saturday February 04, 2012 @06:40AM
(#3550827)
It's only free as in free beer if it's free as in GPL, otherwise you have to pay for a commercial license. GPL means you have to provide source if you distribute the app. And isn't there also an incompatibility with Apple's App Store terms and the GPL (VLC case)?
Re:Poll: What mobile HTML5 framework do you use?
by hnmullany on Friday February 10, 2012 @06:58PM
(#3578055)
[Sencha] Ext JS commercial license is $329 per dev. The $600 includes optional tech support. There's also a $995 that includes the Designer UI builder, Sencha Touch support & Sencha Touch Charts.
Re:Poll: What mobile HTML5 framework do you use?
by dreamdu5t on Friday February 03, 2012 @10:38PM
(#3550135)
Why not include an option for people who don't use a framework? It'd be nice to get a perspective on the portion of developers who are rolling their own mobile webapp.
With mobile web development, the frameworks add needless complication and bloat. All the successful good-looking mobile webapps I've used (Twitter, FB, etc.) don't use any of these frameworks.
Re:Poll: What mobile HTML5 framework do you use?
by TimRR on Friday February 03, 2012 @11:24PM
(#3550223)
I'd think most roll their own apps, framework or no framework. But yes, there should be one alternative for no framework and another for native development. To your other point, if you look at frameworks like jqMobi and a cpl of others there really isn't much bloat. You can further remove functionality/widgets (or just don't call plugins) you don't need in your project. You mentioned the FB and Twitter apps. Thing is, it's not less code there, just smarter code and better design. They employ some gifted and smart ppl.
Re:Poll: What mobile HTML5 framework do you use?
by stevestreza on Friday February 03, 2012 @08:16PM
(#3549863)
Hand coded widgets and Backbone. No frameworks like jQuery. When last I used these frameworks they were too heavyweight to load quickly over a mobile connection.
Re:Poll: What mobile HTML5 framework do you use?
by Turing_Machine on Friday February 03, 2012 @08:23PM
(#3549879)
Don't forget iUI. :-) It's minimalist, but very lightweight and fast, and is great if you want a native-like iOS look-and-feel in a web app. http://www.iui-js.org/
Edit: as others have noted, there's some overlap. The project I currently have under development uses PhoneGap, jQuery Mobile, and iUI for different functions.
Re:Poll: What mobile HTML5 framework do you use?
by Turing_Machine on Saturday February 04, 2012 @12:43PM
(#3551511)
I'm creating a web app builder for non-technical people. It uses iUI for the generated apps (lightweight, gives a decent native-like look and feel) and jQM on the builder side (lets me leverage the tons of jQuery code out there).
Re:Poll: What mobile HTML5 framework do you use?
by johanbrook on Saturday February 04, 2012 @04:51AM
(#3550717)
I've been turned off of all these mobile frameworks. Tried many, but no one has "felt right". Some got completely different design patterns (Sencha Touch), some are almost dead (jQTouch), some are large, ugly and bloated (jQuery Mobile), use non-standard stuff (Jo framework), etc. Sencha is really close to emulating a native feel, if that's what you're looking for, and jQTouch is really easy to get started with. Pros and cons.
HP's Enyo framework seems really interesting though, as does Mulberry. But sometimes the best framework is no framework at all - Backbone + Zepto can take you a long way (but lacks fancy mobile UI widgets). It all depends on the project.
Re:Poll: What mobile HTML5 framework do you use?
by minikomi on Friday February 03, 2012 @11:41PM
(#3550266)
One more vote for this, especially if you are only targeting newer android / iOS, it's liberating to be able to use new CSS/JS and keep it trim and neat. However, there's a lot to be desired in mobile browser space still.
I really hope android browser can mature to the point where the browser wars (think firefox vs Chrome) come to the mobile space.. Geolocation for example there's a huuuge gap between how accurate iOS is compared to android (especially with wifi switched on).
Also, I realize that it's more idiomatic (and reflective of what's really happening) for jQuery mobile to present the user with a waiting spinner, request the content, and then change pages on receiving the content.. But it feels much more responsive to cheat and slide to the next page then present a spinner.. Just a personal nitpick.
Re:Poll: What mobile HTML5 framework do you use?
by VinnyCarpenter on Friday February 03, 2012 @08:55PM
(#3549951)
We've built a couple of apps with Sencha Touch for the iPad and iPhone. Awesome framework - can't wait to try out the native packager when Sencha Touch v2.0 goes GA.
Re:Poll: What mobile HTML5 framework do you use?
by blueski on Friday February 03, 2012 @11:24PM
(#3550220)
I've been playing with the new Trigger.io framework and really like it so far. Simple and very fast command line build tools (a new build takes around a second) and a decent JS API for native functionality. It creates desktop browser plugins from the same codebase - a nice bonus and useful for debugging purposes too. YCombinator funded and believe pg has a personal investment.
Re:Poll: What mobile HTML5 framework do you use?
by natedub on Saturday February 04, 2012 @01:31AM
(#3550473)
Us too. After a year, we're still really happy we went with Closure, but trying to convince most javascript developers outside our team to learn it has an uphill battle. The learning curve is rather steep, there are no tutorials besides Michael Bolin's (excellent) book, and the similarities to java turn some people off.
But once you get past all that, you have a powerful library with a good set tools for unit testing and a compiler that does dead code removal, function inlining, optional type checking through JSDoc annotations, etc. Its miles ahead of any pure-javascript solution because compilation is so tightly integrated into the whole development process. And yet you don't have to compile to run the code in development, so debugging is no harder than before.
That said, it's worth noting that the closure library is not a framework. You build your own application structure, models, etc, so it's definitely more work to get started.
Re:Poll: What mobile HTML5 framework do you use?
by nathanpc on Friday February 03, 2012 @08:00PM
(#3549818)
I use Phonegap and build all my interfaces from scratch every new project. Tried to use Sencha Touch, jQuery Mobile and jQTouch, but I prefer to have full control over my code and build all by myself.
Re:Poll: What mobile HTML5 framework do you use?
by yatayata on Saturday February 04, 2012 @02:07AM
(#3550527)
Since this is about html5 frameworks, phonegap and titanium don't really fit in. those work well to wrap around the html5 content (also GameClosure)
Approach seems to break down to JS driven app development vs. a more dom/html starting point.
ember.js, sencha2, and possibly enyo seemed great for a component driven dev approach, but hard to deeply modify the UI behavior without fighting with the framework. These frameworks are for making your html app look like the apple UI guidelines, and "just like native". We are building games, so actually don't want to look just like other apps...
So for us using backbone (+mustache) gives a lower-level approach to code structure + binding, combined with a UI module for when you need a touch-UI widget (which is a pain to code by yourself). I'm sure other folks more experienced with ST2 may disagree but thats what we found.
Since we are doing non-wifi browser based distribution, the OTA download size is also a concern. If you're packaging/bundling for the app store this shouldn't be a concern.
PROS: lightweight, small download, decent functionality, backbone support right off. very easy to work with.
CONS: missing many basic UI components tho plugins may exist. zepto animation.fx is limited. BIG problem: very slow on mobile? we had problems with transitions on iPod/HTC devices. Sencha seems much faster. jqmobile isnt really active project - main dev is now on sencha touch? tho commits are trickling thru https://github.com/senchalabs/jQTouch/network
9k jqtouch.min.js
20K zepto.min.js
=29k total
=== jquerymobile + jquery
PROS: very active project, extensive functionality
CONS: dependency on jquery, then also plugins eg for CSS animations. supports lots of non-webkit devices we dont need to support, so not needed code. had some problems with creating copies of pages in the DOM when you navigate. transition code is based on jqtouch, tho performance seems improved? http://jquerymobile.com/demos/1.0a2/#docs/pages/docs-transit...
24KB jquery.mobile-1.0.1.min.js (24KB
30k jquery.min.js.gz
=55k total (+plugins?)
So we are currently digging into the transitions+DOM issues on the last two, and deciding if the 40k is a killer given 2G networks in many places... but would be interested to hear what others think.
Re:Poll: What mobile HTML5 framework do you use?
by 54mf on Friday February 03, 2012 @08:11PM
(#3549850)
No love for NimbleKit?
Many of these can - often, should - be used together. PhoneGap doesn't offer any native interface elements, so pairing with jQuery Mobile or Sencha is often done, for example.
Personally, I voted for PhoneGap for any apps that don't require a "native" look, and NimbleKit for any that do.
Re:Poll: What mobile HTML5 framework do you use?
by tluyben2 on Saturday February 04, 2012 @04:07AM
(#3550670)
Sounds good :) We have delivered over 100 apps to clients last year with jquery-mobile/phonegap so if your tools can make it easier this would be great. So can I have a beta account? I'll be very critical :]
Re:Poll: What mobile HTML5 framework do you use?
by inside on Saturday February 04, 2012 @11:51AM
(#3551383)
I use www.openlaszlo.com , it haves a nice binding system, object oriented paradigm, encapsulation . It´s a shame that Laszlo( the company that supports it) can´t have interest to drive it to the html5 game. The project is kind of asleep but still being the best one.
Re:Poll: What mobile HTML5 framework do you use?
by MaxGabriel on Friday February 03, 2012 @07:53PM
(#3549798)
If you were to learn one of these frameworks for the purpose of mobile app development, is it best to just learn the framework or also learn the underlying language (e.g. Javascript for jQuery)?
edit: assuming no previous web programming experience
Re:Poll: What mobile HTML5 framework do you use?
by creativityhurts on Friday February 03, 2012 @08:05PM
(#3549833)
While using Sencha Touch you will write a lot of vanilla JavaScript (you'll understand why as you learn it) so my advice is to make sure you handle pure JS pretty well before tackling Sencha. You might learn some JS form working with jQuery but you'll never learn JS from working with Sencha AND you will not have an easy time with Sencha Touch if you don't handle well the MVC pattern.
Re:Poll: What mobile HTML5 framework do you use?
by deepuj on Saturday February 04, 2012 @04:23AM
(#3550686)
Out of the lot, jQuery Mobile + PhoneGap is a pretty good choice. However, jQuery mobile is a resource hog, and is really slow on some android devices. Blackberry and Symbain struggle just to load the pages...
Re:Poll: What mobile HTML5 framework do you use?
by robocat on Friday February 03, 2012 @11:38PM
(#3550256)
Bit late to add a custom/other option?
We use a custom framework... Existing frameworks are moving targets, usually have significant amounts of 'dead' code (for our product) and are very hard to maintain (easy to run into significant framework level bugs very quickly)... Rolling your own involves other compromises of course :-)
Re:Poll: What mobile HTML5 framework do you use?
by rsanchez1 on Friday February 03, 2012 @07:35PM
(#3549749)
I have a feeling Enyo is going to be a popular choice soon. I've been using Enyo exclusively since it came out. I've been using Prototype.js with Enyo both to port legacy code and because I like the style (even if popular consensus is not to mess with the prototype of native objects).
Want to build a complex app that could run on iOS, Android and Windows Mobile with no(t much) fuss? Don't like writing HTML or CSS by hand but enjoy writing JavaScript MVC stuff and fancy learning new stuff? Go with Sencha.
Want to build a nice mobile interface for a website but you need your very own markup and CSS and you'd also like to apply your jQuery king-funess to the project? jQuery Mobile is the thing you need.
Want that "site" to be a native app that talks with your web services and uses accelerometer, gps and camera? Add Phonegap.
* a faster development process once you're clear on the concepts
* along with conventions, a lot of configuration is possible
* the new class system makes it easy to build custom UI components and write maintainable code
* the new class system combined with jsbuilder/sdk tools helps you produce minimal js.
* many well done examples
* ComponentView and DataViews are kickass. saves many lines of code that you might have written for updating views otherwise
* many types of eventful data stores, and they talk REST out of the box!
* great performance on iOS in general
* our customers needed a lot of theming - we build our theming system on top of sencha's sass work. rolling out new looks = 10 lines of change for us :)
* free :)
The bigger (mobile & desktop browser-friendly) ExtJS has the GPL "issues" - the commercial license is ~$600 minimum per developer.
With mobile web development, the frameworks add needless complication and bloat. All the successful good-looking mobile webapps I've used (Twitter, FB, etc.) don't use any of these frameworks.
Edit: as others have noted, there's some overlap. The project I currently have under development uses PhoneGap, jQuery Mobile, and iUI for different functions.
HP's Enyo framework seems really interesting though, as does Mulberry. But sometimes the best framework is no framework at all - Backbone + Zepto can take you a long way (but lacks fancy mobile UI widgets). It all depends on the project.
I really hope android browser can mature to the point where the browser wars (think firefox vs Chrome) come to the mobile space.. Geolocation for example there's a huuuge gap between how accurate iOS is compared to android (especially with wifi switched on).
Also, I realize that it's more idiomatic (and reflective of what's really happening) for jQuery mobile to present the user with a waiting spinner, request the content, and then change pages on receiving the content.. But it feels much more responsive to cheat and slide to the next page then present a spinner.. Just a personal nitpick.
But once you get past all that, you have a powerful library with a good set tools for unit testing and a compiler that does dead code removal, function inlining, optional type checking through JSDoc annotations, etc. Its miles ahead of any pure-javascript solution because compilation is so tightly integrated into the whole development process. And yet you don't have to compile to run the code in development, so debugging is no harder than before.
That said, it's worth noting that the closure library is not a framework. You build your own application structure, models, etc, so it's definitely more work to get started.
Runs smooth :)
Approach seems to break down to JS driven app development vs. a more dom/html starting point. ember.js, sencha2, and possibly enyo seemed great for a component driven dev approach, but hard to deeply modify the UI behavior without fighting with the framework. These frameworks are for making your html app look like the apple UI guidelines, and "just like native". We are building games, so actually don't want to look just like other apps... So for us using backbone (+mustache) gives a lower-level approach to code structure + binding, combined with a UI module for when you need a touch-UI widget (which is a pain to code by yourself). I'm sure other folks more experienced with ST2 may disagree but thats what we found.
Since we are doing non-wifi browser based distribution, the OTA download size is also a concern. If you're packaging/bundling for the app store this shouldn't be a concern.
=== appmobi / jq.mobi
http://www.jqmobi.com/
PROS: lightweight, self-contained, plug-in support
CONS: animation + ajax bugs when we tried. seems like a single company product
HN thread: https://news.ycombinator.com/item?id=3470946
=== zepto + jqtouchhttp://jqtouch.com/
PROS: lightweight, small download, decent functionality, backbone support right off. very easy to work with.
CONS: missing many basic UI components tho plugins may exist. zepto animation.fx is limited. BIG problem: very slow on mobile? we had problems with transitions on iPod/HTC devices. Sencha seems much faster. jqmobile isnt really active project - main dev is now on sencha touch? tho commits are trickling thru https://github.com/senchalabs/jQTouch/network
=== jquerymobile + jqueryPROS: very active project, extensive functionality
CONS: dependency on jquery, then also plugins eg for CSS animations. supports lots of non-webkit devices we dont need to support, so not needed code. had some problems with creating copies of pages in the DOM when you navigate. transition code is based on jqtouch, tho performance seems improved? http://jquerymobile.com/demos/1.0a2/#docs/pages/docs-transit...
So we are currently digging into the transitions+DOM issues on the last two, and deciding if the 40k is a killer given 2G networks in many places... but would be interested to hear what others think.Many of these can - often, should - be used together. PhoneGap doesn't offer any native interface elements, so pairing with jQuery Mobile or Sencha is often done, for example.
Personally, I voted for PhoneGap for any apps that don't require a "native" look, and NimbleKit for any that do.
Beta invite for HN here: http://codiqa.com/beta/feb
Look forward to your feedback! Version 1 is meant to help you whip up prototypes really quickly and then build off of them.
+1 enyo
edit: assuming no previous web programming experience
http://kendoui.com/mobile
jQuery-based. Automatically adapts to native layout/styling conventions of iOS and Android.
We use a custom framework... Existing frameworks are moving targets, usually have significant amounts of 'dead' code (for our product) and are very hard to maintain (easy to run into significant framework level bugs very quickly)... Rolling your own involves other compromises of course :-)