Very seriously presented by
Techies Lab
14h Meet and greet + tools setup
14h30 Intro
15h Break
15h15 First steps in coding
16h Another break + Little Bits with Julie
16h30 Your turn!
Ask for help when needed & have fun!
Anne
Margo
Oana
static website
(aka site vitrine)
+ browser
dynamic website
(aka web application)
+ browser
Page built
content (-> SEO)
+ structure
style / appearance
dynamic behaviour
+ animation
+ usability
vs
0. Enumerate numbers until a defined stopper ('N')
1. Start by considering 'number' is equal to 1
2. If 'number' is a multiple of 3, say Fizz
3. If 'number' is a multiple of 5, say Buzz
4. If 'number' is a multiple of both, say FizzBuzz
5. Else say the current value of 'number'
6. Increment the value of 'number' by 1
7. Repeat until the value of 'number' is equal to 'N'
http://rosettacode.org/wiki/FizzBuzz
ASSEMBLY
JAVA
http://rosettacode.org/wiki/FizzBuzz
RUBY
more & more websites today
are using third-party web services
(Google maps, Facebook authentication,...)
HTML is a markup language.
It structures the content of a web page.
Cause in order to design and animate its elements,
we have to tag them first!
<!DOCTYPE html>
<!-- end of file -->
<!DOCTYPE html>
<html>
<!-- your content (text, images,...)
and all the other html tags
to structure this content goes here -->
</html>
<!-- end of file -->
<!DOCTYPE html>
<html>
<head>
<!-- intelligence (meta-data) -->
</head>
<body>
<!-- stuff to be displayed on your web page -->
</body>
</html>
<!-- end of file -->
<!DOCTYPE html>
<html>
<head>
<title>Hello world</title>
<!-- text appearing in the tab + used by Google in its search results -->
<meta charset="utf-8"/>
<!-- to display properly the special characters -->
</head>
<body>
<!-- stuff to display in the page -->
</body>
</html>
<!-- end of file -->
<!DOCTYPE html>
<html>
<head>
<title>Hello world</title>
<!-- Text appearing in the tab + used by Google in its search results -->
<meta charset="utf-8"/>
<!-- To display properly the special characters -->
</head>
<body>
<h1>Hello buddies!</h1>
<!-- Stuff to display in the page -->
</body>
</html>
<!-- end of file -->
<element_name attribute_name="attribute_value">element_content</element_name>
opening tag
closing tag
-------------------------------------------
---------------
result => Le Wagon
QUIZZ:
<h1>[...]</h1> <!-- Only one per page! SEO important -->
<h2>[...]</h2>
<h3>[...]</h3>
<h4>[...]</h4>
<h5>[...]</h5>
<h6>[...]</h6>
titles
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Veritatis laboriosam mollitia autem at ab omnis iure quis
asperiores inventore eos nam aut iusto officiis deserunt
nihil, sequi tempore impedit quae?
</p>
paragraphs
<h2>Shopping List</h2>
<ul>
<li>Milk</li>
<li>Butter</li>
</ul>
<h2>World Cup 2014</h2>
<ol>
<li>Germany</li>
<li>Argentina</li>
<li>Netherlands</li>
<li>Brazil</li>
</ol>
lists
<img src="logo.png" alt="Le Wagon logo"/>
images
<a href="http://www.lewagon.org" target="_blank">Le Wagon</a>
links
<form name="input" action="/subscribe" method="post">
.
input elements
.
</form>
forms
<form name="input" action="/subscribe" method="post">
Username: <input type="text" name="firstname">
</form>
input - type: text
<form name="input" action="/subscribe" method="post">
Username: <input type="text" name="firstname"><br>
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female
</form>
input - type: radio
<form name="input" action="/subscribe" method="post">
Username: <input type="text" name="firstname"><br>
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female<br>
<input type="checkbox" name="vehicle" value="Bike">I have a bike<br>
<input type="checkbox" name="vehicle" value="Car">I have a car
</form>
input - type: checkbox
<form name="input" action="/subscribe" method="post">
Username: <input type="text" name="firstname"><br>
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female<br>
<input type="checkbox" name="vehicle" value="Bike">I have a bike<br>
<input type="checkbox" name="vehicle" value="Car">I have a car<br>
<input type="submit" value="Submit">
</form>
input - type: submit
we need to configure a server
on the back-end side of our website
to receive and store these user inputs
resources
CSS is used to add some style properties
to specific & properly selected HTML elements
What would this website surfingla.fr look like without any CSS ?
Well, let's neutralise the CSS by deleting the head of the HTML document in the browser inspector!
Here is the result ! Quite different, isn't it ? ; )
For your CSS stylesheet to be taken into account, you need to
add a link to it in the head of the HTML document
/* syntax 1 : color name in English */
body {
color: orange;
}
color
/* syntax 2 : hexadecimal color reference */
body {
color: #FFA500;
}
color
/* syntax 3-a : RGB color reference */
body {
color: rgb(255, 165, 0);
}
color
/* syntax 3-b : RGBA color & opacity reference */
body {
color: rgba(255, 165, 0, 0.8);
}
color
RGBA has a 4th parameter: opacity
(which may vary between 0 and 1)
color tools
text color vs
background color
background image
fonts - family (1)
fonts - family (2)
fonts - family (3)
fonts - size & spacing
fonts - color
fonts - decoration
fonts - alignment
fonts tools
<link
rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
textual icons
<h1><i class="fa fa-cutlery"></i> MY RESTAURANT</h1>
graphical icons
You can get these icons both in :
Be careful about the picture/file's size :
too small, it will be blurred;
too big, it will slow down your page load!
=> to compress your pictures: ImageOptim
Select your pictures according to specific criteria (free of rights, landscape, min width 1024 px,...) :
picture size & shape
coding is about practice
divisions and box model
Any modern website...
... is made of <div>
divisions and box model
=> structure your HTML code with <div> elements,
to group all the contents that fits together
divisions and box model
the box model
the box model
syntax and shorcuts
div{
border-top: 1px solid red;
border-right: 2px dotted black;
border-bottom: 1px dashed green;
border-left: 2px dotted black;
}
borders
divisions and box model
div{
background: white;
border: 1px solid lightgrey;
padding: 20px;
margin: 30px;
}
you can make the box structure more visible
by adding some CSS rules on this <div>
id and class
To add some style only to :
id and class
in your HTML file
id and class
1 #logo {
2 width: 30%;
3 }
4
5 .staff {
6 border-radius: 50%;
7 }
in your CSS file
id and class
example
text editor
Sublime Text 3
to work efficiently
browser
+ dev' tools plug-in
Google Chrome
opened
simultanuously
on your screen
content (-> SEO)
+ structure
to customize front-end code
style / appearance
dynamic behaviour
+ animation
+ usability
to rapidly & smoothly set up
a fully-responsive front-end (html, css, js)
select the best ones
already widely tested & acclaimed
for their usability & functionality
Stripe (payment)
MailChimp (e-mailing)
selected & downloaded from Start Bootstrap
copied-pasted in the editor & revealed in the browser
of your landing page
add background image to contextualize
of your landing page
update favicon & logo
of your landing page
update title, description, headline & subhead
of your landing page
update call-to-action
of your landing page
reset countdown
- Add a form to collect user inputs (you need to configure a server on the back-end side of our website to receive and store these user inputs or use services like MailChimp)
- Add some animation (you need Javascript)
- Publish online and get a domain name
- Work with a Version Control System like