HTML and CSS Reference
Choosing Our Tools
Now that we have a rough idea of the various pieces of the app, we can choose technologies to meet the needs of each
piece. Let's take a look at the various technologies you'll be using to build this application and dig into the role each
one will play.
HTML5 is one of those technologies that created a huge stir in the development world, so its meaning has been
heavily diluted by marketers, bloggers, and the general geek media.
While the release of HTML5 meant a lot of changes and improvements to the way we develop websites, we're
focusing on a few key pieces that will help you make the app possible.
■ If you want a full overview of htMl5, the additions and improvements it has made from the previous specification,
Why Do We Need It?
HTML5 will provide several things that we will need to make our app work in the manner we want, namely these:
• Markup to create our app's user interface: Without a markup language, it would be difficult
to present the application data to the user in a way that is easy to understand. Nearly every
website and web application on the Internet uses some form of HTML to present its data, and
ours is no different.
• WebSockets to allow realtime interactions between the presenter and the attendees: We'll
go into more detail on this later in the chapter.
• Cleaner, easier syntax than the previous HTML specification: 1 The new elements in
HTML5—such as <header> and <section> —make markup much easier to scan and debug,
which reduces maintenance headaches and speeds up our initial development.
• The data attribute, which allows us to include extra data easily: This on its own is not
particularly useful, but when we pair it with jQuery it provides a really simple and valid syntax
for handling special effects and events. You'll learn more about this later on, when you start
• More robust form elements to improve the user interface: Originally, HTML only supported
a pitiful few input types, which meant that developers had to shoehorn most data into an
<input> with type="text" and rely on client- and server-side validation scripts to make sure
that the proper information was provided. While HTML5 hasn't fully solved the problem
of validation yet, it has provided us with many more useful input types—including e-mail ,
number , and URL —which improve the user experience on some modern browsers.
What Role Does it Play?
In our application, HTML5 will play the role of the app's skeleton. It will provide a structure into which data and
effects will fit.
1 This is 100% the opinion of the authors.