URails Meeting 001. HTTP Old/Young guys with beards decided “We need to communicate. Let’s use text!” Hypertext Transfer Protocol HTTP is just sending.

Slides:



Advertisements
Similar presentations
1 CGICGI Common Gateway Interface Server-side Programming Lecture.
Advertisements

Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Creating WordPress Websites. Creating a site on your computer Local server Local WordPress installation Setting Up Dreamweaver.
HTTP Hypertext Transfer Protocol. HTTP messages HTTP is the language that web clients and web servers use to talk to each other –HTTP is largely “under.
Creating your website Using Plain HTML. What is HTML? ► Web pages are authored in HyperText Markup Language (HTML) ► Plain text is marked up with tags,
E-Commerce The technical side. LAMP Linux Linux Apache Apache MySQL MySQL PHP PHP All Open Source and free packages. Can be installed and run on most.
INTRO TO MAKING A WEBSITE Mark Zhang.  HTML  CSS  Javascript  PHP  MySQL  …That’s a lot of stuff!
1 CS428 Web Engineering Lecture 18 Introduction (PHP - I)
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
WHAT IS PHP PHP is an HTML-embedded scripting language primarily used for dynamic Web applications.
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
1 CS 131 Wrap Up Fall 2008 What Good is Programming?
IT 210 The Internet & World Wide Web introduction.
Web Servers Web server software is a product that works with the operating system The server computer can run more than one software product such as .
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
1 HTML and CGI Scripting CSC8304 – Computing Environments for Bioinformatics - Lecture 10.
Chapter 1: Introduction to Web
Jordan Maxwell ADVANCED PROGRAMMING. DEFINITIONS PHP: A server side Programming language often used in websites. API: ( Application programming interface.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Server-side Scripting Powering the webs favourite services.
With your friendly Web Developer, Chris.. Terminology  HTML - > Hypertext Markup Language  CSS -> Cascading Style Sheet  open tag  close tag  HTTP->Hypertext.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
HOW WEB SERVER WORKS? By- PUSHPENDU MONDAL RAJAT CHAUHAN RAHUL YADAV RANJIT MEENA RAHUL TYAGI.
Python and REST Kevin Hibma. What is REST? Why REST? REST stands for Representational State Transfer. (It is sometimes spelled "ReST".) It relies on a.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
1Computer Sciences Department Princess Nourah bint Abdulrahman University.
CS 4720 Dynamic Web Applications CS 4720 – Web & Mobile Systems.
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Saving State on the WWW. The Issue  Connections on the WWW are stateless  Every time a link is followed is like the first time to the server — it has.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Operating Systems Lesson 12. HTTP vs HTML HTML: hypertext markup language ◦ Definitions of tags that are added to Web documents to control their appearance.
Jan 2001C.Watters1 World Wide Web and E-Commerce Client Side Processing.
Advanced Web Technologies By: Faraz Ahmed. Contents 0 Course Outline 0 Architectures 0 HTTP.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Fall 2000C.Watters1 World Wide Web and E-Commerce Clients & Client Side Processing.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 2: Introduction to IS2803 Rob Gleasure
October 7 th, 2010 SDU Webship. What did we learn last week? jQuery makes it really easy to select elements and do stuff with them. jQuery can process.
 Before you continue you should have a basic understanding of the following:  HTML  CSS  JavaScript.
JAVA, JEE Training Introduction to Web Harinath Mallepally
Web Page Designing With Dreamweaver MX\Session 1\1 of 9 Session 1 Introduction to PHP Hypertext Preprocessor - PHP.
Overview Web Technologies Computing Science Thompson Rivers University.
IN THIS LESSON WE WILL REVIEW THE STRUCTURE OF THE INTERNET AND HOW BROWSERS ASSEMBLE WEBSITES BASED ON INSTRUCTIONS THEY RECEIVE FROM SERVERS. Internet.
Feeling RESTful? Well, first we’ll define a Web Service –A web page meant to be consumed by a computer via an autonomous program as opposed to a web browser.
ASP.NET WEB Applications. ASP.NET  Web application framework developed by Microsoft  Build dynamic data driven web applications and web services  Subset.
Week-10 (Lecture-1) Web Building STEPS OF BUILDING: create web pages using HTML add a consistent style using CSS add computer code using JavaScript add.
National College of Science & Information Technology.
Chapter 1 Getting Started with ASP.NET Objectives Why ASP? To get familiar with our IDE (Integrated Development Environment ), Visual Studio. Understand.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
Web Programming Language
Tonga Institute of Higher Education IT 141: Information Systems
Web Technologies Computing Science Thompson Rivers University
IS1500: Introduction to Web Development
Model View Controller
Some bits on how it works
Developing Web-Based Applications
Database Driven Websites
COMP 101 Introduction.
The Application Lifecycle
COMP 101 Introduction.
Tonga Institute of Higher Education IT 141: Information Systems
Secure Web Programming
Tonga Institute of Higher Education IT 141: Information Systems
Intro to PHP.
Web Technologies Computing Science Thompson Rivers University
Web Servers (IIS and Apache)
Web Application Development Using PHP
Presentation transcript:

URails Meeting 001

HTTP Old/Young guys with beards decided “We need to communicate. Let’s use text!” Hypertext Transfer Protocol HTTP is just sending and receiving text from a server You don’t even need a browser, you just need to follow the protocol! (curl example)

Server Client (Such as a web browser) Client (Such as a web browser) “Hey, I want to see “Here you go” GET / HTTP/1.1 Host: kewl.com Connection: close User-Agent: my-browser Accept-Encoding: gzip Accept-Charset: ISO ,UTF- 8;q=0.7,*;q=0.7 Cache-Control: no-cache This is my Kewl website! HTTP Header ---->  Response

What do HTTP servers send back? HTML? – YES! Anything it wants? – YES! Most commonly, HTML is sent for viewing webpages, but other formats are used like XML, JSON, ANY-THING

What is HTML “Pretty text with formatting” How does it work? <- closing tag – Hierarchical representation of data (Tree anyone?) And… that’s it (basically) Demo time!

It isn’t enough! Dynamic vs. Static? What if we want content on a webpage to change without humans editing HTML? Time Example What’s happening? – The web server, when it receives a request for a website, replaces “dynamic” content with plain text/html before sending it to the client

Server Client (Such as a web browser) Client (Such as a web browser) “Hey, I want to see “Here you go” GET / HTTP/1.1 Host: kewl.com Connection: close User-Agent: my-browser Accept-Encoding: gzip Accept-Charset: ISO ,UTF- 8;q=0.7,*;q=0.7 Cache-Control: no-cache This is my Kewl website! replaced with

Databases What are they and why are they important? – They help keep large amounts of data organized, easily accessible, and (hopefully) safe from corruption – We will talk more about Databases in later lectures

Server Client (Such as a web browser) Client (Such as a web browser) Database Safely stores all data related to a website Gets data from database, mixes it with HTML, sends it to the client (often referred to as “Business Logic”) Receives HTML, and presents it prettily to the user

What types of websites use this model? Almost all of them (at least any worth using) Facebook/Engadget/Twitter/Hulu/ESPN/etc. How do you think Facebooks uses databases?

So Why Ruby on Rails? The Web is the Wild-Wild-West of programming. It’s a hodge-podge of different technologies that have to work together What is involved in building a webpage? – HTML – Javascript – CSS – Databases – Security – Managing sessions – Etc… Bottom line: It can get complicated

So why Ruby on Rails? (cont.) Ruby is a sweet language (more on that in later lectures) Rails is a “framework” that provides an excellent way to abstract away and organize the complexity of building dynamic websites Define “framework”? (this phrase is used a lot in CS) Let’s see an example! (Get ready for an overload) – After we look at MVC

Server Client (Such as a web browser) Client (Such as a web browser) Database Safely stores all data related to a website Gets specific data from database, mixes it with HTML, sends it to the client (often referred to as “Business Logic”) Receives HTML, and presents it prettily to the user MVC (M)odel (C)ontroller (V)iew

Thing we’ll be covering Linux command-line/filesystem Source Code Version Control (SVN/Git) HTML/CSS/Javascript Relational Databases MVC HTTP “Statelessness” of HTTP (sessions, cookies)

What to expect Rails is command-line intensive (which is good to learn now rather than later) You will need to run Linux – Options for Windows users Dual Boot (run both windows and linux and choose which to use when your computer boots) Run Linux in a Virtual Machine (free software exists for this) Run Cygwin, which emulates a Linux command-line (similar to a Virtual Machine but less demanding on your computer) Choose one Next Lecture: How to install Cygwin/Linux, Ruby, Rails, some command-line practice, and some more Rails in action if we have time.

Why this club will be worth it Rails is a very valuable/employable skill to have The world is moving toward the web, so even if you don’t prefer it, you need to know how to get around if you need to The Rails environment, outside of the web, provides an excellent environment to learn essential skills like getting around at a command- line, version control for source code, and collaborating on non-school projects (rare to find here at the U) Rails is the cool thing to do.

If we have time… Where would you like to go from here? Do people have pet projects they already know they want to work on? For those that don’t, are you interested in having a “group” project that we work on together, both during meetings and individually? If not, are there other suggestions?

That’s it! Questions?