Web technologies lesson 1

3,106
-1

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,106
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
103
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Server takes request, compiles it, prepares it, and delivers it
  • Web technologies lesson 1

    1. 1. WEB TECHNOLOGIESUnallocatedSpace
    2. 2. Why am I learning web from a guy named r00ster? Real name Nick Hepner (Rooster’s fine) Web development since 1998 More than 150 professional site launches All scales of website.
    3. 3. Scope of Course *AMP stack Fundamentals, HTML, PHP Components of Web Relational Databases Code Versioning and Environments Web dev workflows and best practices Web site builds
    4. 4. Open Source Defined by the Open Source Initiative as software that contains these properties:  Free Redistribution  Include Source Code or means to obtain source code  Allow modifications and “derived works”  Cannot discriminate against group or persons  Cannot discriminate against specific endeavor  Redistributable license (no new agreements are issued)  License cannot be product specific  License cannot restrict other software  License must be technology-neutralhttp://opensource.org/docs/osd
    5. 5. Open Source vs. Proprietary Software  Classic argument  Nobody’s gonna win it and I’m tired of arguing it.  You will be tooProprietary (closed source) Open Source• Better funding leads to higher quality • Crowd sourced development• Better support • Modifiable• Tightly Focused • Designed for Integration• Better suited to specific business • Fast bug fixes needs • Low level of entry • FREE
    6. 6. What is a browser? Application that translates web code into rendered web pages.  Firefox  Chrome  Internet Explorer  Safari  Opera  Lynx  Thousands of others (http://www.user-agents.org)
    7. 7. What is a server? Term is “overloaded” – can mean many things  Physical hardware (will refer to as “machine”)  Virtual instance (will refer to as “Virtual Machine” or “VM”)  Software package (will refer to as “server”) A server will…  Accept requests  Process (compile, parse, etc.) request  Prepare response  Deliver response Web Servers  IIS  Nginx  Apache
    8. 8. What is the Web?
    9. 9. …no, really? Global system of interconnected computer networks that utilize TCP/IP to serve data and documents such as inter-linked hypertext (HTML) documents, VoIP, a nd IPTV Simply: Lots of computers that can talk to each other. http://en.wikipedia. org/wiki/Internet
    10. 10. How it seems to work… User requests website User receives website User
    11. 11. How it actually works…User ISP 1. User Requests website 2. ISP routes request 3. Routing servers pass request to other routing servers closer to end point server. 4. F*$%#@ Russia 5. Web Server processes request 6. Web Server returns Request.
    12. 12. What is a database? System that stores and makes available structured digital data. Data, in this context, will refer to any unique digital information must be stored for future reference.
    13. 13. A quick word about OperatingSystems… “Most” web sites are hosted on Linux. Larger enterprise sites tend to be hosted on windows, but not exclusively. Can develop on one system and deploy to another using cross-platform techniques. Some limitations.
    14. 14. Standard Technology Stacks “Technology Stack” in web terms refers to the platform a website lives on and the software packages that support it. One word answer to the question “What kind of web development do you do?” Some contextual meaningsStack Name TechnologyLAMP Linux, Apache, MySQL, PHPWAMP Windows, Apache, MySQL, PHPMAMP Macintosh (Apple), Apache, MySQL, PHPWIMP Windows, IIS, MS SQL (sometimes MySQL), PHPXAMPP Multiple systems (Cross compatible - X), Apache, MySQL, PHP, PerlLAOJ Linux, Apache (Tomcat), Oracle, Java
    15. 15. Compiled Languages, ScriptedLanguages and Markup Compiled Languages generate machine code from source code. (.NET, C#, Java, Python) Scripted (interpreted) languages. “Step-by-step” execution of source code. (PHP, Ruby, Coldfusion) Compiled languages are much faster, but more complex. Modern caching strategies make this irrelevant for web. I’m not getting into this argument. Markup (HTML, XML, YAML, Wikitext, BB Code) is a document description that uses syntax to differentiate text from display or meta information. Templating language, no logic
    16. 16. HyperText Markup Language Fundamental to web development. It says it in the title – this is a Markup Language Browsers read HTML documents and render based on the document description. Most web languages generate HTML. CSS and Javascript are used to enhance HTML. XHTML, HTML 5, DHTML
    17. 17. Cascading Style Sheets “Presentation Layer” for HTML pages. Allows customized instruction for browser to read and display HTML tags. Makes websites pretty. Interpreted slightly differently by major browsers (I’m lookin at you IE ) Unexpectedly difficult to master.
    18. 18. JavaScript Allows manipulation of the Document Object Model Client side language Event driven Not even remotely related to Java Foundation of Asynchronous JavaScript And XML
    19. 19. eXtensible Markup Language(XML) Used to encode documents that are both machine readable and human readable. Used to transfer data between systems and publish content (RSS, Atom, etc.) Used in most “modern” word processors.
    20. 20. Resources Google. Seriously. WorldWideWeb Consortium (http://w3.org) W3Schools (http://www.w3schools.com) PHP (www.php.net) XAMPP (http://apachefriends.org)
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×