What is front-end LECTURE
vs. back-end? SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
Explaining the two concepts
In any web interaction you have, you're going to use a
browser to access information on a server
Front-end programming is a set of instructions that
tells your browser what to show (images, text, spacing,
buttons, etc.)
Back-end programming is a set of instructions that
does things like fetching information, saving
information, and running calculations
The front-end instructions get processed on your
browser, which uses your computer's RAM and processor
Too many websites open will slow your computer down
Back-end instructions run primarily on the server you
accessed the information from and uses its hardware
Back-end programming = Server-side programming
In order for a website to run effectively, both front-end
and back-end programming must operate together
See you next lecture!
LECTURE
What is a language? SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
Explaining programming languages
Programming is a way to write instructions for a
computer to understand and work with
Computers speak machine code
A programming language is a set of rules you have to
follow in order for your computer to understand you
Programming languages are similar to human languages.
They are only good for software or hardware that is
designed to understand them
Programming has developed over the years as more and
more people contributed to it
Even though newer languages are more efficient, a lot of
products (ex. operating systems) we use are still based
on old languages
See you next lecture!
LECTURE
HTML SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
What HTML is and what it's used for
HTML = HyperText Markup Language
HTML was created by people who wanted to increase the
efficiency of sharing research
They first created the HyperText Transfer Protocol
(HTTP), and with this, people could use HyperLinks in a
document to embed links to other documents
Then, the researchers wanted to markup the texts with
highlights, underlining, bolding, and so HTML appeared
HTML is by far the simplest web language you can learn
and it's included in every website
HTML is used for formatting text, tables, images, buttons,
and it assigns attributes to these objects
There are 142 tags you can use in HTML
HTML5, the latest version, lets you embed anything you
want into a page, like music, videos, games
See you next lecture!
LECTURE
CSS SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
What CSS is and what it's used for
CSS = Cascading Style Sheets
CSS allows you to have more control over the page than
HTML does
With CSS, you can create a variety of new attributes and
apply them to HTML elements on the page, by using
what's called a "class"
For example, you can arrange elements on the page
wherever you want them by describing the location
Any attribute you give to a class will be given to whatever
you wrap in that class tag
Class rules can be created in the same document as your
text, separated at the top, or in a separate .css file that
will be referenced in the original document
Every developer has to have a basic understanding of
CSS
See you next lecture!
LECTURE
JavaScript SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
What JavaScript is and what it's used for
JavaScript is not the same thing as Java, which is a back-
end language
JavaScript was created by Marc Andreesen and it was
originally called Mocha
It's the hardest language to learn
JavaScript is in charge with the website interactivity
It was originally created for facilitating the process of
filling out forms; before JavaScript, you couldn't know if
the username you're trying to use was already taken
JavaScript allows websites to run faster, it makes the site
experience more interesting and enjoyable
See you next lecture!
LECTURE
Python SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
The pros and cons of Python
Python is a versatile programming language and it's easy
to learn
It's considered a general purpose programming language
Python is an expressive language because it resembles
very closely the English language
Other languages make you learn various signs that if you
forget to include, the code fails
Python looks like this:
if a is not 5:
Who uses Python: Google, YouTube, Dropbox, NASA
Python is a high level programming language, which
means it's the farthest away from machine code, so it's
less precise
This makes it harder to have full control over what you're
trying to do
The downside to being a general purpose language is
that every time you use it, you have to install other
technologies to help interpret the code for you
See you next lecture!
LECTURE
PHP SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
What you need to know about PHP
PHP = PHP Hypertext PreProcessor
PHP is one of the most well-known back-end languages
and it has the largest community of developers
It's fairly easy to learn but it has a few inefficiencies
because it's so old
PHP looks like this:
Display "if (a!=5) {..."
PHP is open source, anyone can use it and set it up very
quickly
PHP is the easiest to find and recruit developers for,
because of its large community
It has a negative reputation because it's free
Although it has some drawbacks, PHP is flexible, well
supported, and easy to use
Who uses PHP: Facebook, WordPress
See you next lecture!
LECTURE
Ruby SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
What you need to know about Ruby
Ruby is the newest programming language, it's popular
and a bit controversial
It was designed to increase speed
It includes a lot of automation and intuitive changes that
save time
Ruby has a small community and therefore the prices are
very high for a Ruby developer
It has a lot of inexperienced people because it's so new
It has poor performance when used for larger and larger
systems
Who uses Ruby: AirBNB, Shopify, Etsy, Groupon
See you next lecture!
LECTURE
What's a tech stack? SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
The definition of tech stacks and examples
The operating system acts as a giant interpreter for your
computer, and as a result any software or program works
within the space that it's created
We usually think of this like a "stack"
Any set of technology of programming languages that
works together and enables each other will and can be
referred to as a stack
Web stack = The combination of technologies a website
uses
Tech stack = Web & mobile apps
For example, a website can be built using the LAMP
stack:
Linux (operating system), Apache (server system), MySQL
(database), PHP (back-end language)
Facebook uses LAMP
If you change one of the pieces, you can get WAMP
(Windows), or MAMP (MacOS)
See you next lecture!
LECTURE
Common stacks for web SUMMARY
PRE-PROGRAMMING
Covered in this lecture:
More examples of stacks
Any web stack has 4 components: operating system,
server system, database, back-end language
LAMP is the oldest and most popular stack
When you have different needs for your technology, you
can use other stacks
WINS = Windows Server, IIS Server, .NET, Microsoft SQL
Server
WINS is great for big enterprises, because it focuses on
security and IP protection
It's also very slow to use, expensive, and you have to
train people on how to use it
MEAN = MongoDB, Express.js, Angular.js, Node.js
MEAN is great for small startups that need cutting edge
technology, speed, and a polished user interface
See you next lecture!