Introduction

Let's build a website for a fictional software conference called ConferenceWorks.

Learning Objectives

Text → HTML Understanding Markup
Styling Block vs. Inline
The very first web page http://info.cern.ch/hypertext/WWW/TheProject.html
http://info.cern.ch/hypertext/WWW/MarkUp/MarkUp.html
http://info.cern.ch/hypertext/WWW/MarkUp/Tags.html
Accessibility (a11y) https://khan.github.io/tota11y/
Testing https://www.w3.org/TR/webdriver/
https://taiko.gauge.org
https://thirstyhead.com/introducing-taiko/
https://gauge.org
https://thirstyhead.com/introducing-gauge/
Resources https://thethousandyearweb.com
https://developer.mozilla.org/en-US/docs/Web
https://caniuse.com
http://diveinto.html5doctor.com/
https://www.w3.org/TR/html52/
https://hacks.mozilla.org/2019/10/why-is-css-so-weird/

Domain

There are a few key ideas in the domain that we'll be modeling. This is our Ubiquitous Language.

Speaker
Speakers are invited to give Talks at the software conference. Speakers have a name and a bio that is one or more paragraphs long. A Speaker also has a photo.
Talk
A Talk has a title and a description. When a Talk is scheduled for a specific Room and Timeslot, you have a Session. If a Talk spans multiple Timeslots, it is considered a Workshop. A Keynote is a Talk that everyone attends, so it appears on the Schedule as a Talk that spans all of the rooms.
Room
A Room has a name and a number. A Room has several Timeslots.
Timeslot
A Timeslot has a start time and a duration. A Timeslot is associated with a specific Room.
Session
A Session is a Talk that is scheduled in a specific Room during a specific Timeslot. The Schedule is a collection of Sessions.
Schedule
The Schedule shows all of the Sessions at the conference, which is a Talk that is scheduled for a specific Room during a specific Timeslot.