DNS manages connection to this machine, often called
A “server,” colloquially, because…
A proxy server handles requests for information
Translates web-address to location of file on computer.
Code can also be exucted here
Basics
HTML is the language interpreted by your web-browser. CSS is used for styling.
Several other languages can manage other requests on the host machine (such as executing code in another language, such as python).
Servers serve up information in response to requests
They have their own language/codes (GET/POST/404/403/202, etc.)
Story Time
Review options by discussing personal journey.
Squarespace
Wordpress
and similar alternatives
Servers
GitHub Pages
Static-Site Generators
Ivy, Hugo, etc.
Squarespace
Emphasis on simplicity
Pay a lot, but don’t have to “think”
It just works…
Integrates with A LOT of platforms
Online store, forms, analytics, etc.
Not very extensible
Great design aesthetic
Wordpress
Can DIY, but somewhat difficult
Original purpose was blogging
Web-Interface for (almost) everything
“Plugin” system for extensibility
Lots of pricing options for features
Requires updates, maintenance
Large community of “developers”
Static Websites
No code execution on Host
“Simpler” websites
Just files (not applications)
First came across HTML templates
Easy to test out locally
Free deployment options
Alternatives to interactivity
Very extensible, flexible
Can download template and edit it
Hands on, but not hard
Will be less organized on average
Static Site Generators
You edit content in markdown files
Program converts them to HTML pages
MANY options in many languages
DIY-friendly, but not necessary
Why Static-Site Generators?
Get the best of both worlds
Can host it yourself or use a service
Javascript allows for extreme extensibility
But you don’t have to understand exactly how it works
Extensibility via themes
Content separated from styling
Take advantage of the hard work of others
Hugo
Written in Go
Language developed at Google
Becoming a popular templating language
Great user community
Lots of themes
Good documentation
Responsive forums
FAST compilation
Conveniences
Markdown makes discussing code easy.
Inline code: variable
Code block:
# "```python" is used at the top so the static-site generator
# knows how to color the code for proper syntax-highlighting
porridge = "blueberry"
if porridge == "blueberry":
print("Eating...")
Math!
(Many include support for it, fairly straight-forward to add yourself.)