HTML5 and JavaScript Web Apps and over 2 million other books are available for Amazon Kindle . Learn more
£15.74
  • RRP: £15.99
  • You Save: £0.25 (2%)
FREE Delivery in the UK.
Only 2 left in stock (more on the way).
Dispatched from and sold by Amazon.
Gift-wrap available.
Quantity:1
Trade in your item
Get a £0.59
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

HTML5 and JavaScript Web Apps Paperback – 24 Nov 2012


See all 2 formats and editions Hide other formats and editions
Amazon Price New from Used from
Kindle Edition
"Please retry"
Paperback
"Please retry"
£15.74
£7.24 £7.40

Frequently Bought Together

HTML5 and JavaScript Web Apps + HTML5 Canvas + JavaScript: The Good Parts
Price For All Three: £56.84

Buy the selected items together


Trade In this Item for up to £0.59
Trade in HTML5 and JavaScript Web Apps for an Amazon Gift Card of up to £0.59, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Product details

  • Paperback: 172 pages
  • Publisher: O'Reilly Media; 1 edition (24 Nov 2012)
  • Language: English
  • ISBN-10: 1449320511
  • ISBN-13: 978-1449320515
  • Product Dimensions: 17.8 x 0.9 x 23.3 cm
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (3 customer reviews)
  • Amazon Bestsellers Rank: 738,363 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Discover books, learn about writers, and more.

Product Description

Book Description

Bridging the Gap Between the Web and the Mobile Web

About the Author

Wesley Hales is a User Interface architect from Atlanta, GA. He has been involved in UI and User Experience roles for over a decade in both startup and enterprise environments. Wesley co-founded several enterprise frameworks during his 4+ years at JBoss by Red Hat (including the JBoss Portlet Bridge and AeroGear projects) and also served as a co-founder of a recently acquired startup.

Wesley enjoys creating world-class user interfaces and experiences that people fall in love with. You can see him speak at the occasional conference, read his posts on wesleyhales.com, or follow him on twitter @wesleyhales.


What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

3.7 out of 5 stars
5 star
0
4 star
2
3 star
1
2 star
0
1 star
0
See all 3 customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

1 of 1 people found the following review helpful By Michael Larsen on 2 Oct 2013
Format: Paperback
One of the factors facing anyone who wants to develop a web site or a mobile web application today is that the world of server-side scripting for functionality is (has?) giving way to much more dynamic applications with the client doing most of the heavy lifting. JavaScript has moved beyond being a little bit of glue code or a few dispersed libraries that added some special effects or eye candy to a site. Now, applications are being developed and generated by JavaScript libraries and frameworks to the point where static HTML may be slim to nonexistent.

The goal today is less a matter of control via the server and being open to creating applications that are performant, scalable, and utilize the latest Web infrastructure and application features. We are reaching a point where, for many, the mobile web is the way that they interact with the Internet (lugging around a laptop like me for much of the day is starting to look a bit old school ;) ).

"HTML5 and JavaScript Web Apps" by Wesley Hales is a survey of the emerging and solidifying standards that are defining the landscape of what web and mobile apps will look like in the near future. Yes, the emphasis here is mobile, though there are also several sections devoted to traditional web sites and applications. This books is, as I mentioned, a "survey"; it does not go in depth on any of the technologies. What it does provide is a lot of examples and ideas to spur thought, and an invitation to go and explore what's out there.

If you are a new web developer, or have not already spent significant time playing with front end development practices, this is not going to get you there. That's OK, though, it's not meant to.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By Marco Dias Lopes on 22 April 2013
Format: Paperback Verified Purchase
The first chapters were a little boring since the purpose was to set you on the app mentality, which someone that is willing to buy the book should already be. There some good information, specially details that can speed up your learning curve but nothing mind blowing.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
Format: Paperback Verified Purchase
I am not 100% sure who this is aimed at, but if you are looking to read along and build your first app.. this is probably not for you.

good concepts and gives you a clear idea of the bigger picture.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Helpful Customer Reviews on Amazon.com (beta)

Amazon.com: 6 reviews
29 of 29 people found the following review helpful
for front-end devs ready to start looking at sophisticated APIs and modern architectures 25 Nov 2012
By R. Friesel Jr. - Published on Amazon.com
Format: Paperback
I was drawn to Wesley Hales' "HTML5 and JavaScript Web Apps" (O'Reilly, 2012) because it seemed right up my alley -- a book about all the latest client-side technologies [1] for building enterprise grade "HTML5-based" web apps. At around 150 pages, Hales takes us on a whirlwind tour of these new technologies and tactics, taking a "Mobile First" [2] approach and working "up" from there -- though he always brings the lessons all the way back around to apps that target mobile devices. Overall, though the style and tone is fairly colloquial, the content is pretty technical, and I would not recommend it to anyone that is not already a competent front-end developer. That being said, if you *are* that competent front-end developer, then you will find a lot of excellent material here that will introduce and orient you to these new technologies. [3]

Hales opens the book with a discussion of "modern" client-side architecture, devoting the first four chapters not to specific technologies, but instead to designing loosely coupled "Mobile First" front-ends. As you might have guessed, this means that we spend some time talking about client-side templates; [4] about how to approach fluid, "native-feeling" user experiences; and about how to reason about, build, and deploy the front-end piece of your technology stack. Again, as Hales is presenting us with a "Mobile First" [5] approach, a lot of attention is given to performance -- how to keep components lightweight, how to minimize network overhead, how to design for connectivity interruptions, and how to keep battery consumption down. Overall, it's a very strong first half -- and by itself was worth the price of admission.

The second half of the book is dedicated to the five "HTML5e" [6] APIs that Hales calls out as modern, as the place where you can do some real innovation with your app. These five APIs include: *WebSockets*, *Web Storage* (e.g., `localStorage` and `sessionStorage`), *Geolocation*, *Device Orientation*, and *Web Workers*. Without going into detail about each of those APIs here, I will say that Hales introduces each one in an at least serviceable fashion. Each of these chapters describes what that API is, what its target use case is, what the status of its specification is, (approximately) what kind of coverage is out there from the browser vendors, a case study implementation built on top of it, what it takes to shim or polyfill the API (if possible), and what frameworks are out there to support you if you don't want to "run naked" with that API. Each of these API-centric chapters can stand alone, and you should be able to use any of them as a quick orientation should the need arise. That being said, they vary in their technical depth -- e.g., the WebSockets chapter is quite thorough [7] while the chapter on Device Orientation seemed to just barely cover the fundamentals. [8]

All that being said, I did have a couple of quibbles that I need to raise, lest I feel derelict in my duty as a reviewer:

1. *Citation needed.* I believe that this book could have used a reference section with citations. There were numerous times where I found myself raising a skeptical eyebrow about some point being made in the text as if it were an unequivocal fact. Example: "CSS selector performance can cripple older mobile browsers." OK. Says who? Which browsers? What kind of performance hits are we talking about here? "Stats, or it didn't happen."
2. *Define your terms.* There were a couple of places in the text where I found myself wondering "What do you mean by *that*?" This was especially true when Hales used the phrase "user experience", which he uses liberally throughout the text without ever really stating what he means by it. I have an *idea* of what he means, but I also know that so many people have so many different ideas of what it means that it is seldom safe to assume you know what they mean.
3. *An elephant in the room.* There seemed was a big question that never seemed to get resolved for me. That was the question of "progressive enhancement". Hales uses the terms "graceful degradation" and "progressive enhancement" throughout the text, but this is usually in the context of polyfills (which I got the sense he was erroneously conflating with GD/PE). Don't get me wrong, I appreciate the spirit of Hales' argument -- that you build for the latest/greatest HTML5e technologies, and polyfill your way to your supported bottom. But then in Chapter 4, he is quoting a Yahoo! source which talks about "feature phones" that "can't even run JavaScript" -- and I find myself reflecting on that point that Hales more/less opens with... The one about client-side templates. And I find myself wondering: "What good is all that geolocation and WebSockety goodness if you can't even render your widgets because JavaScript is turned off?"

As I finished the book, I found myself feeling pretty excited about these new "HTML5e" technologies. Hales does a superb job in introducing them and in illustrating the possibilities latent in each one. Even better than that though was his discussion of how to go about designing and developing these modern front-end architectures to begin with. I would definitely recommend this book to front-end developers that have their fundamentals down and are ready to start looking at these kinds of sophisticated APIs and modern architectures.

----

[1]: Well, almost all. There was no WebGL action in there, but it seems kind of ridiculous to think that *that* would be lumped in there with the "HTML5e" technologies.

[2]: Hales seems to go a step beyond "Mobile First" and (in the Preface) tentatively introduces this notion of "Offline First". (And/but never really comes back to that little maxim.)

[3]: It's worth pointing out that Hales is almost *painfully* aware of how new a lot of these technologies are. Each chapter has an embedded disclaimer of one form or another that indicates the status of the specification ("Working draft!") and any of the known quirks ("UTF-16 turns 5MB caches into 2.6MB caches!") or bugs ("JavaScript execution exceeded timeout in iOS after four minutes!") that exist in the implementations that you'll encounter out there in the wilds of Userland. It's almost like he's handing you a pair of chaps and a ten gallon hat before muttering: "There's a fortune to be made in these hills if'n you got a strong stomach."

[4]: Hales says right in the Preface that "if you are convinced that server-side generated markup is the way of the future, then chances are you won't enjoy this book." Unfortunately, I think that this statement smells a bit of trolling, and it fails to acknowledge that there's nuance here. This is a disappointment, because so much of the rest of this book speaks very intelligently about evaluating specific technologies to see how they might solve your problem, and about the choices and trade-offs that you need to make along the way. Where and how your app's mark-up is generated is another of these considerations, and it was frustrating to see that question cast off so flippantly. (To be totally fair, Hales does later say: "Most of the time, you'll end up with a hybrid application that does some processing on the server and much more on the client." Which is a far more sensible thing to say, though considering it's stated in Chapter 4, it's almost too-little-too-late.)

[5]: It was somewhere around Chapter 2 that I started to ask myself: "Is 'Mobile First' just a euphemism for 'Modern First'?" After all, who are our polyfills and shims really targeting?

[6]: "HTML5e" is Hales' shorthand for "HTML5 for Enterprise". I rather took a shine to that.

[7]: Though I'd argue that he could have provided a little more background on Comet and long-polling, just for the sake of being thorough.

[8]: Perhaps I missed the point? Maybe that really was *everything* there was to say about Device Orientation?
4 of 4 people found the following review helpful
Great Overview 16 Feb 2013
By Charles Grayson - Published on Amazon.com
Format: Paperback Verified Purchase
You'll certainly need to do a lot more research to learn how to use the various technologies described in the book, but it provides a good survey of what's available and a slight taste of how particular products are used.
3 of 3 people found the following review helpful
Great intro to advanced topics 23 April 2013
By M. Owens - Published on Amazon.com
Format: Paperback Verified Purchase
This book does a great job of covering front end development with advanced web browsers and newer standards. The first few chapters cover mobile web hacking along with best practices for CSS/GPU animations and performance on mobile devices - then dives into overviews for widely supported specifications (WebSockets, Webstorage, Geolocation, Accelerometer, and Web Workers). I thought the coverage of web frameworks could have been better, but things are moving so fast in that space, I don't blame the author for citing external posts and github repositories.

This is one of the few books that actually proposes new ways of developing web apps and handling content on mobile devices (i.e. content navigation with the accelerometer), and also gives a practical approach for fallbacks with shim/shiv frameworks. I also like how the author created a site (html5e.org) which clearly shows how each example in the book was written.

for $12 on kindle, this book was well worth the purchase. Great price point and easy read.
1 of 1 people found the following review helpful
A Wide Survey of HTML5 and JS Frameworks 2 Oct 2013
By Michael Larsen - Published on Amazon.com
Format: Paperback
One of the factors facing anyone who wants to develop a web site or a mobile web application today is that the world of server-side scripting for functionality is (has?) giving way to much more dynamic applications with the client doing most of the heavy lifting. JavaScript has moved beyond being a little bit of glue code or a few dispersed libraries that added some special effects or eye candy to a site. Now, applications are being developed and generated by JavaScript libraries and frameworks to the point where static HTML may be slim to nonexistent.

The goal today is less a matter of control via the server and being open to creating applications that are performant, scalable, and utilize the latest Web infrastructure and application features. We are reaching a point where, for many, the mobile web is the way that they interact with the Internet (lugging around a laptop like me for much of the day is starting to look a bit old school ;) ).

"HTML5 and JavaScript Web Apps" by Wesley Hales is a survey of the emerging and solidifying standards that are defining the landscape of what web and mobile apps will look like in the near future. Yes, the emphasis here is mobile, though there are also several sections devoted to traditional web sites and applications. This books is, as I mentioned, a "survey"; it does not go in depth on any of the technologies. What it does provide is a lot of examples and ideas to spur thought, and an invitation to go and explore what's out there.

If you are a new web developer, or have not already spent significant time playing with front end development practices, this is not going to get you there. That's OK, though, it's not meant to. If you are a software tester who would like to have a handy reference, and some context, as to what these features are and how they work, at 156 pages, it makes for a handy "cheat sheet" and jump off.

Several approaches to how the web developer can improve performance and user experience are mentioned, including tools that help with compression, web sockets, utilizing Web Storage, and the variety of JS frameworks that are currently in play (node, angular, backbone, ember, batman, and knockout get specific mention and coverage).

While the book's title talks about being about HTML5 and JavaScript Web apps, a more appropriate title would be "The Emerging HTML5e Standards and the Options it Provides, Coupled with Several JavaScript Framework Engines and Additional Utilities to Help Design for Both Mobile and Traditional Web"... but that would be really long ;).

So if this book for you? If you are looking for a quick survey, with some supporting information of the various "cool new bits" to play with, and you don't mind a lack of detail or depth, then yes, this book fits that role rather handily. Testers, if you want to get an overview of what a lot of these technologies actually do, and how to recognize them in the wild, then yes, this book is worthwhile, and even more so in eBook format, since the links jump you to other resources. If you are looking for an in-depth book that will give you practical hands on experience and exercises to work through to learn these technologies, then no, this book would be wholly inappropriate for that purpose.
list of names and ideas for further research, but not a self-contained resource 18 July 2014
By C. Kollars - Published on Amazon.com
Format: Paperback Verified Purchase
I'm a little reluctant to post this so-so review, because I can't say for sure the problem is the book and not me. Just maybe I'm setting myself up for "wrong audience" or "missing prerequisites" or "you dummy" or "back in your cave, dinosaur". All I can say for sure is even though I've visited web-world many times over a couple decades, this book didn't work very well for me. The book's notably small size (only about 1/3 of an inch thick) was my first clue something might be awry. My overall impression is the author has been down in the trenches so deep and so long the book exemplifies the "can't see the forest for the trees" syndrome. I think the book's biggest value is providing a very long list of names and ideas to be further researched.

The first four chapters (Client-Side Architecture, The Mobile Web, Building for the Mobile Web, and The Desktop Web) provide a good (but very brief) foundation and motivation for the current style of web coding, and why HTML5 is so relevant to it Usefully, several general "gotchas" are pointed out. However I found the last five chapters (WebSockets, Optimizing with WebStorage, Geolocation, Device Orientation API, and Web Workers) confusing and sometimes baffling, and not coordinated, in addition to not being all that useful.

Almost half the total pages are dedicated to analyses of various frameworks, most of which are immature. Inevitably the frameworks coverage is sketchy, incomplete, anecdotal, and out of date. My thought is a printed book is simply the wrong medium to try to analyze so many frameworks that aren't mature; there's no way it could have been significantly "better". Each chapter's coverage of frameworks is related only to that chapter and not any other. As a result, it's not at all clear either whether it's reasonable to look for one "overall" framework, or whether several different frameworks can and should be combined. Most trenchantly, my question of why to use a framework at all was never addressed: faster coding? fewer errors? easier debugging? tool integration? convention? works across all browsers? works on old browsers? limited server-side changes? code portability? performs well on handhelds? handles intermittent connectivity transparently? automatic data binding? broader pool of knowledgeable programmers?

I liked the quantity of coding examples: neither too little nor too much. I found it confusing though that some of the code is Java and the rest is Javascript, with no indication of why, or even a comment to quickly indicate which examples use which. I also wished the coding examples made clearer "why this matters", possibly by boldfacing or commenting or annotating the most important parts, or maybe by additional remarks in the text.

A plus is several nuggets of explanation of issues that have been mysterious to almost everybody for many years. (As one might expect, the nuggets are only hazily related to the topic at hand and could all be titled "Interesting Sidebar".) For example, there's a discussion of the difference between GZIP and DEFLATE, and how it impacts the Apache server.

I found disturbingly many of the remarks to be so brief and abbreviated I couldn't figure out what they were trying to get across. Several specific examples follow:

Perhaps my confusion was due simply to the specific failure of using lots of terms (and abbreviations) without defining them (there's no glossary). For example one paragraph refers to "JVM languages". I wondered what "JVM languages" meant, why it mattered, and what exactly those languages were.

I also found the discussion of "separate port" or "same port" or "hybrid port" for WebSockets quite confusing. For example the text says: "Because the WebSocket server is running on a different port (8081) than the JBoss AS7 server (8080), we must account for not having authentication cookies, and so on. A reverse proxy can handle this problem, however, as you'll see in the last section of this chapter." Hopefully that's meaningful and useful to you; my own reaction was "Huh?", followed by a laborious attempt to parse every single word. Does this problem apply only to separate ports? Does it also apply to a hybrid where the client sees only one port but the server sees two? Will this problem "go away" in new releases, or is it fundamental? Is this problem only with the temporary workarounds that currently promote use of WebSockets, or is it intrinsic to the definition of WebSockets? Most importantly, for _my_ application, under what circumstances will this problem arise and what are my options for solving it?

I found the context of some of the figures baffling. For example several displays have an icon followed by a name like "localStorage" and then lines beginning with things like "TWITTER:" and "onslyde:". The book jumped straight into these displays with no explanation; I eventually sussed out they're debugging displays from the Chrome browser. But I never did figure out how to produce them, or whether particular websites had to be visited, or what specifically they were intended to illustrate or which parts of them were especially relevant to the topic at hand.
Were these reviews helpful? Let us know


Feedback