HTML5 programming
HTML5 programming
Fellow programmers, I notice some recent articles talking about Firefox OS where apps are programmed in HTML5. The idea is that instead of writing native apps, one can replace their functionality using HTML5. I imagine this to meant HTML + css + javascript. Has anyone out there play around with this? I was wondering how mature this technology in it and if it's worth looking into fun-wise and job-wise.
Paul
Paul
Re: HTML5 programming
It's the same tech stack that is used for Windows 8, Chrome, and browser-based single page apps. The first uses of it date back almost a decade to Microsoft adding support for XML over HTTP as part of implementing Outlook Web Access, so it's not a new paradigm.
Re: HTML5 programming
HTML 5 is getting there. Most mobile apps (especially the apps that need to connect to remote site) do use html5 based technology. Site http://diveintohtml5.info/ has a good overview of many features specific to html5
HTML5 started catching up really fast when Steve Jobs decided that apple mobile devices won't be using flash, but will depend upon html5 for video rendering. Given popularity of the devices, many were forced to switch to html5. Even desktop browsers are catching up and most of them do support many basic features.
HTML5 started catching up really fast when Steve Jobs decided that apple mobile devices won't be using flash, but will depend upon html5 for video rendering. Given popularity of the devices, many were forced to switch to html5. Even desktop browsers are catching up and most of them do support many basic features.
-
- Posts: 1065
- Joined: Mon Jul 08, 2013 3:45 pm
Re: HTML5 programming
This is pretty much the tech stack for ChromeOS as well. You can do a lot, especially if you also have access to Canvas and WebGL.
Re: HTML5 programming
It's pretty mature and there are definite job prospects for this, mostly in the form of Node.js+Angular.js web apps.
Re: HTML5 programming
You can also use PhoneGap to turn web apps coded in HTML5/JavaScript/CSS into device specific native apps.
Easily create apps using the web technologies you know and love: HTML, CSS, and JavaScript. PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs for the platforms you care about.
http://www.phonegap.com
Easily create apps using the web technologies you know and love: HTML, CSS, and JavaScript. PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs for the platforms you care about.
http://www.phonegap.com
Re: HTML5 programming
Yes to the first part (getting mature and definite job prospects).KyleAAA wrote:It's pretty mature and there are definite job prospects for this, mostly in the form of Node.js+Angular.js web apps.
A minority of the job prospects involve the particular "full stack" of Node.js and Angular.js. It's a great stack but by no means the only or even most popular choice. Angular is somewhat criticized for a certain degree of "magic" (a la Ruby/Rails on the back end)... if you really want to understand how things work it's not necessarily the most transparent choice IMO.
Node is not yet the most popular server environment and whether you are doing HTML5 on the client side doesn't dictate any particular server environment, sure it's convenient to have JavaScript on both client and server but mostly in small teams where one developer does both, in larger teams the server-side aka "back end" and client-side aka "front end" are likely different people (and maybe totally different teams). Ruby/Rails, PHP, even Java are still more popular than Node. Only certain apps really benefit from Node's event-driven architecture.
Angular.js is definitely growing in popularity and is super clever but Backbone.js is still the most popular client-side framework and there's scads of others (Dojo, Ember, Meteor, Knockout, ...) http://todomvc.com/ shows the same app implemented with like 40 different frameworks. Depending on whether you are making a game or a corporate dashboard you may find a particular starting point framework/library better than others, or decide not to use any framework at all.
My guess is that if you polled "full stack" for HTML5 apps, Backbone/PHP would get #1 Backbone/Ruby #2. Just now in my metro Angular gets 55 hits on craiglist/jobs, Backbone 87. Node gets 54 hits, PHP 365, Ruby 215.
Re: HTML5 programming
I wrote (and use) a portfolio tracking HTML5/CSS/PHP/JQuery app that I run locally (WampServer). Mostly as a hobby. I tinker with it from time to time. If you like this sort of thing, it is a blast (in a nerdy sort of way). By way of background, I learned programming with Turbo Pascal and 8086 assembly language. For fun. So others may want to take what I consider fun with a grain of salt.
Stack Overflow is your friend.
The HTML5 suite of tools/software is mostly free and online resources are usually quite good. Give it a try.
Stack Overflow is your friend.
The HTML5 suite of tools/software is mostly free and online resources are usually quite good. Give it a try.
-
- Posts: 31
- Joined: Tue Dec 11, 2012 2:25 pm
Re: HTML5 programming
If you can focus on a single browser as your target, you can get very far using javascript+html+css. The trouble occurs when need to support more than one browser. For example, I've had really good results building "native"-seeming iOS apps (iPhone) using jQuery+css+javascript, using some javascript libraries such as handlebars to render dynamic templates to show different views of data, etc. Since I can focus on one single browser (in this case Safari mobile), I can take advantage of latest features in HTML (HTML5) and css (css3) and be confident it will work for all the users.
Re: HTML5 programming
You can accomplish the same thing in almost all browsers using feature detection and shims. Of course, if somebody is using Internet Explorer 3 on Windows ME or something, you're probably screwed no matter what you do, but you can cover 99.5% of users in most cases.bstewartny wrote:If you can focus on a single browser as your target, you can get very far using javascript+html+css. The trouble occurs when need to support more than one browser. For example, I've had really good results building "native"-seeming iOS apps (iPhone) using jQuery+css+javascript, using some javascript libraries such as handlebars to render dynamic templates to show different views of data, etc. Since I can focus on one single browser (in this case Safari mobile), I can take advantage of latest features in HTML (HTML5) and css (css3) and be confident it will work for all the users.
Modernizr is a popular tool for doing this sort of thing.
Re: HTML5 programming
Or the current "bane" of HTML5 everywhere - Internet Explorer 8!KyleAAA wrote:You can accomplish the same thing in almost all browsers using feature detection and shims. Of course, if somebody is using Internet Explorer 3 on Windows ME or something, you're probably screwed no matter what you do...bstewartny wrote:If you can focus on a single browser as your target, you can get very far using javascript+html+css. The trouble occurs when need to support more than one browser. For example, I've had really good results building "native"-seeming iOS apps (iPhone) using jQuery+css+javascript, using some javascript libraries such as handlebars to render dynamic templates to show different views of data, etc. Since I can focus on one single browser (in this case Safari mobile), I can take advantage of latest features in HTML (HTML5) and css (css3) and be confident it will work for all the users.
Re: HTML5 programming
As other posters have mentioned, HTML5 is largely HTML+javascript+CSS. We are writing a web app at my current employer, using the DOJO javascript framework with a Microsoft C# backend. DOJO is really good and it takes care of a lot of the browser compatibility issues for you. We wrote a fully interactive image processing tool, and it even worked in IE 8. Must admit it was really slow in IE8 vs Chrome however.