6 ms·
What mess? HTML/CSS/JS is exceptionally good at building user interfaces. And you're on the right side of technology by attaching yourself to the HTML bandwagon
by macspoofing 14y ago
What mess? HTML/CSS/JS is exceptionally good at building user interfaces. And you're on the right side of technology by attaching yourself to the HTML bandwagon. I would go as far as to say that if you're starting development on a new ("form-based") native app, your first choice should be HTML. You only go native if you have a very good reason to do so.
- pjmlp 14y agoBecause each single browser out there has a different understanding of what HTML/CSS/JS means. Making web sites that comply to customer requirements down to pixel level, across all required target browsers is a major pain.
- andybak 14y agoNot true. A reasonably large subset of HTML/CSS/JS is perfectly cross-platform if you: 1. Use industry standard libraries (jQuery or a lightweight alternative. 2. Can ignore pathologically broken browsers (<=IE7 mainly)
- rimantas 14y agoThe problem with this that reasonably large subset applies mostly to content related stuff. For web app you will need more envelope-pushing things and the picture won't be as nice there. Not to mention other issues that are not taken care by HTML at all: views management, efficient lists, etc. etc.
- macspoofing 14y agoEven with multi-browser support, it isn't that bad. But we're not talking about websites here, are we? We're talking about using HTML/CSS/JS to build native apps for mobile devices - which are by and large webkit-based. This greatly simplifies everything.
- blub 14y agoOh really? Let's take my webkit-based mobile browser then and look at an instagram picture. Hm, it's cut in half and I can't scroll. Mobile web apps are actually iOS webapps that most of the time work on Android. Stop pretending you actually care about standards and cross-platform, you're only interested in doing less work, learning fewer things and holding users firmly by the balls in the cloud.
- macspoofing 14y agoI got maybe half your point though I'm not quite sure what your objection is. "Holding users firmly by the balls in the cloud"? If your service already resides in the cloud, the technology you implement your client software in, hardly matters, no? Facebook app, whether is HTML5 or native, is largely unusable without a persistent internet connection. Yes, I am interested in doing less work. I do care about standards, thanks. I certainly wouldn't stand in the way of anyone wanting to learn whatever they want. If you want to build an app to learn Objective-C, all the power to you.
- yareally 14y agoMy issue with HTML apps (like your issue) is many developers think it's perfectly okay to use that iOS interface on Android because Android does not force you to change it. The Android ecosystem is so polluted with apps like this that it almost makes me long for Google to put their foot down and start forcing UI compliance like Apple does. It's bad enough Android users have to deal with legacy apps on their own OS that still use pre Android 3.0/4.0 UI conventions (or worse, poorly slap them on top of their old interface without consideration). The only apps that should be allowed to get away with rolling their own UI are games.
- OGRammer 14y agoyou are essentially saying that google should remove many of its own apps from the market? Even they follow the ios conventions a lot of times. google+ has buttons on the bottom of the screen just like iphone apps. should that be removed?
- mistercow 14y ago>Making web sites that comply to customer requirements down to pixel level, across all required target browsers is a major pain. How is that a fair comparison to native apps? A native app can run on one platform. Making native apps pixel-for-pixel identical on multiple platforms is way more of a pain than doing so with HTML5.
- pjmlp 14y agoBut it is possible, while with the so called web applications you are limited to what the browser thinks you want to do.
- mistercow 14y agoWait, your position is that it's impossible to make web apps function identically across different platforms?
- pjmlp 14y agoIn a consistent way down to pixel level in a 1:1 correspondence to Photoshop designs required by customers, across all required browser versions in all required operating systems, yes.
- mistercow 14y agoA pain? Sure. Impossible? Not by a long shot. A few points: 1. The main discussion here was about HTML5 based apps using a native web-view app wrapper. That makes "OS version" and "browser version" identical, and puts you in an identical position to native apps in terms of number of platforms to deal with. 2. Even if you're dealing with multiple browser versions, there isn't very much difference between how a given version of a modern browser behaves under different OSes. And if a page works correctly in an old version of a browser, it is very unusual for it to start working incorrectly in a newer version of that browser. 3. Maintaining a single code base with special cases for different platforms is way easier than maintaining multiple disparate code bases. It's the old DRY principle. The fact is this: writing an app and supporting multiple OSes (even multiple versions of the same OS) is hard. Doing so while making everything pixel-exact across different platforms is really hard, and usually pointless. But the idea that it would be somehow easier when maintaining entirely separate code bases is ludicrous.
- rimantas 14y ago> HTML/CSS/JS is exceptionally good at building user > interfaces. Except they are not. Even with all the nice tools we have now: backbone.js, CoffeeScript, CSS preprocessors it is still a mess. Just take a look at all those struggling to get sane view management, event binding, notifications, callbacks: it is years behind mature native frameworks which has very little cruft. I really doubt all this mess can be solved with HTML, and I really doubt that web can now have any alternative to HTML. Why is the idea to craft an app for each platform using native tools so scary? Were all those desktop apps using cross-platform toolkits successful? Or do they look alien everywhere? I do like web. I love web. And that's why I don't like to see it turning into frankenweb.
- mtrimpe 14y agoGoing native is basically a form of optimization and thus only worth it when the improvement is large enough to warrant the investment. Something about the premature roots of something evil something.
- macspoofing 14y agoWith HTML-native-apps you get free cross-platform support, and you get to work within a very-well supported, constantly improving and performant framework. Furthermore, if you're building a SASS-type app (e.g. where your content is primarily hosted online) then using a WebView-type component will let you instantly "upgrade" your clients and you never have to worry about old versions of your app in the wild. You better have a damn good reason to give that up.
- blub 14y agoPlease don't listen to this person, webdev is hard and you don't get anything for free. Actually, it depends if you prefer learning from painful experience or simple advice...
- macspoofing 14y agoDev is hard.
- spamizbad 14y ago> HTML/CSS/JS is exceptionally good at building user interfaces Only if your background is HTML/CSS/JS. If you have no web background, figuring out the idiosyncrasies of CSS and JS, while very doable, is still very time-consuming. I can't imagine it being any faster than someone going the native route assuming they do not have an existing web skillset to leverage.
- macspoofing 14y ago>If you have no web background, figuring out the idiosyncrasies of CSS and JS, while very doable, is still very time-consuming. That's true for anything. Objective-C is not exactly intuitive.
- killahpriest 14y agoActually, it's NSCounterIntuitive
- jtchang 14y ago"HTML/CSS/JS is exceptionally good at building user interfaces." I can't believe you just said that. -- every seasoned web developer.