760 likes | 905 Views
INFM 603: Session 1 Information Technology and Organizational Context. Paul Jacobs The iSchool University of Maryland Wednesday, Jan. 30, 2019.
E N D
INFM 603: Session 1Information Technology and Organizational Context Paul Jacobs The iSchool University of Maryland Wednesday, Jan. 30, 2019 This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United StatesSee http://creativecommons.org/licenses/by-nc-sa/3.0/us/ for details
Today’s Topics • Overview of course • History and physical infrastructure of computing • Course administration • Introduction to Internet infrastructure Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Course Overview • Fundamentals of Information Technology • IT in the Organizational Context • How the Internet and World Wide Web Work • Basics of Internet architecture • Creating pages: HTML/CSS and tools • Introduction to Programming • Object-oriented principles and design • Client-side example: Javascript • Server-side example: PHP • Data and Content Management Issues • Putting IT all Together Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Why Do You Need this Class? Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Physical Infrastructure:A Brief History of Computing …and why we care
What Story Does This Tell? • Certain fundamentals remain the same • Digital representations and computations • Basics of computing and computer architecture • What’s changed? • Devices are much, much smaller and faster (Moore’s Law, more to come later) • Computing is ubiquitous • “The network is the computer” – more and more bandwidth limiting • Layers, environments, virtualization, encapsulation (hiding of complexity) Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Fundamentals • The digital computer is the first and only significant machine whose functionality is determined after manufacture. • … by software later. • This versatility is achieved by representing or approximating information and logic in the language of digital computers (binary data) Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Fundamentals • Computers execute (or “run”) programs (or “software”) • Computers store data (and programs can access and/or write the data) • Inside digital computers (and all of their associated networks and devices), programs and data are stored in a binary format Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Information, data, and life wisdom Course overview Physical infrastructure Courseadministration Intro to the Web/HTML knowledge information data data
Examples – How We Use Data • Data • 1000001 • Information • “The letter ‘A’ ” • My bank balance • Knowledge • “When you make a withdrawal, you subtract the withdrawal amount from your account balance” • “A person’s age must be lower than that of his/her biological mother” • Wisdom • “Neither a borrower nor a lender be” • “Spend less than thou earnst” Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Data • A bit is an entity that takes the values “0” or “1”; the smallest piece of digital information • Data is a collection of bits, such as • “0101110111010110” • “0000011” • “111011101011010110101111011011010” • Note: the terms data and information are not always used consistently! Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Information • From a user (human) perspective… ….recognizable patterns that influence you in some way (perspective, understanding, behavior…) • In the computing infrastructure, information has a somewhat different connotation as structure and interpretation added to data • The ability to ascribe meaning to data is often called representation Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Representation Example • How do we represent the state “Alabama” in a database (i.e., in a computer)? • A unique code based on the alphabetical sequence of states? (e.g., “000001”; Wyoming would be “110010”) • A 2-letter code based on standard (e.g., Post Office) abbreviations (“AL” would be “0100000101001100”; “WY” would be “0101011101011001”) • Just the coded sequence of characters in “Alabama” (e.g. “01000001010011000100000101000010….) [it’s 56 bits long] Wait – why is everything zeros and ones? Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
ASCII Representation(one code for representing characters) Alphabet Hex Octal HTML Binary <7> \x37 \67 7 00110111 <8> \x38 \70 8 00111000 <9> \x39 \71 9 00111001 <:> \x3A \72 : 00111010 <;> \x3B \73 ; 00111011 <<> \x3C \74 < 00111100 <=> \x3D \75 = 00111101 <>> \x3E \76 > 00111110 <?> \x3F \77 ? 00111111 <@> \x40 \100 @ 01000000 <A> \x41 \101 A 01000001 <B> \x42 \102 B 01000010 <C> \x43 \103 C 01000011 <D> \x44 \104 D 01000100 Course overview Physical infrastructure Courseadministration Intro to the Web/HTML Interpretation Data
Picture Representation (e.g., GIF or JPG) Expanding a small portion of the picture, we see that it is represented by square pixels…. ….300 tall by 200 wide….. ….with a range of 256 intensities per pixel. Course overview Physical infrastructure Courseadministration Intro to the Web/HTML An approximation! 300 • 200 • 8 bits = 480,000 bits (but it can be compressed.)
How a Digital Computer Works Program counter Program code Binary instructions Interpretation Effect 00110111 Load a register Get deposit amt. 10111000 … 00111111 … 00111010 … 10001001 Add two registers 00111100 … 00101101 … Add to account 00111110 … balance 00111111 Store the result 01000000 … 01011001 … 01000010 … 01011011 … 01000100 … Program memory (data) Binary data Type Interpretation 00110111 … 10111000 ASCII chars Name 00111111 … 00111010 … 10001001 integer Account # 00111100 … 00101101 … 00111110 … 00111111 integer Balance 01000000 … 01011001 … 01000010 … 01011011 … 01000100 … Course overview Physical infrastructure Courseadministration Intro to the Web/HTML Structure
Rough Computer Organization Memory Processor Course overview Physical infrastructure Courseadministration Intro to the Web/HTML Network
Rough Computer Architecture Keyboard Mouse Sound Card Video Card Input Controller System Bus Front Side Bus Hard Drive Course overview Physical infrastructure Courseadministration Intro to the Web/HTML CD/ DVD USB Port L2 RAM CPU L1 Cache Motherboard
Why computers work as well as they do • Moore’s Law, and the power of brute force • Ability to build on what’s been done before • Ability to hide information • Introducing: • abstraction (of data and program) and encapsulation (hiding complexity) • modularity (separating building blocks by function) also reuse • layering (building more powerful capabilities on top of existing blocks) Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Moore’s Law • Processing speed doubles every 18 months • Faster CPU, longer words, larger cache, more cores • Cost/bit for RAM drops 50% every 12 months • Less need for “virtual memory” • Cost/bit for disk drops 50% every 12 months • But transfer rates don’t improve much Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
(For a more detailed graph extending to 2016 see https://ourworldindata.org/technological-progress/ ) Where should we be now?
Units of (Memory) Size Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Frequency Time Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Some Memory Tradeoffs Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Why Do We Care? • From a user/business point of view, everything revolves around applications (software and systems that help to get something done) • Commerce (esp. buying and selling things) • Customer management/communications • “Supply chain” (helping to build/move things) • Zillions of others (news, learning, navigation, social and community, etc., etc.) • The evolution of computing (e.g., Moore’s Law, the Internet and Web, and ubiquitous computing) has enabled and transformed applications • Evolving infrastructure changes the cost, management, and practicality of applications Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Summary - Foundations • Computers are amazing, but fundamentally dumb binary machines – that continue to get incredibly smaller and faster (but not smarter) • The remarkable power of today’s applications comes from the synergy of 70 years of clever innovation including: • Layers and layers of standards and technologies (representations, operating systems, protocols) • Abstraction (being able to work at higher levels) and encapsulation (hiding complexity in interfaces) • Moore’s Law (blinding speed, vast storage) • “The network is the computer” (aka “The Cloud”)
Course Administration and Logistics General expectations Requirements Grading Other Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
What you can expect from me • Practical focus • If it’s not useful, we won’t worry about it too much • Emphasis on concepts • Consideration for how it’s done in the “real world” • Desire that everyone should succeed • Set clear and concrete objectives where possible • Work together to learn/to achieve goals • Listen and respond to questions/objections, flexibility Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
What I’ll expect from you Preparation Do readings Turn in work on time “Fill in the blanks” Participation Bring a computer to class and be ready to try things Ask when things are unclear Give examples/tell stories Help with programmatics Honesty across the board Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Teaching Philosophy Emphasis on users … but with a grounding in technology Emphasis on synthesis … not rote learning Emphasis on projects … mirroring real-life case studies Emphasis on group work … but individual competence must be demonstrated Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Major Course Components • In class sessions and discussion (ungraded) • Homework assignments • Design projects • Final project and presentation • Final exam Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Exam questions/notional example (1) 1. In the early days of computers, computers did not do binary arithmetic machines of comparable power were less expensive than they are today, because inflation has made them more costly over the years a computer could run only a single program at a time programmers entered all their programs by typing long sequences of “0” or “1” on a cathode ray screen. 2. Moore’s Law tells us that computers will continue to become more powerful because programmers are better educated modularity and decomposition make progress faster more people are using them there will continue to be advances in the underlying technology, circuits and other hardware that makes them smaller, faster, and more economical Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Exam questions/notional example (2) Match the concepts on the left with descriptions on the right: Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Course Themes • Design • Principles of information technology • Technology • Constraints on what is possible • How to do it, building on what’s available • Processes • Figuring out what to build • Actually building it • Figuring out if you’ve done it right Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Focus on Group Work • Why? You rarely work alone in the real world • Our project groups will be 3-4 people • Advice: • Coordination takes more effort than you expect • Plan first • Take advantage of individual strengths • Use collaborative technologies: don’t let distance be a hindrance or excuse Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Course Logistics • This course has been taught many times before, but it’s always changing • Check the course homepage oftenterpconnect.umd.edu/~psjacobs/INFM603_s19.htm • Powerpoint slides will be on-line Tuesday (at the latest) • Typical class structure • 1.5 hour session • Short break • Logistics/administration • One hour session • Email me: I’m available by appointment Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Intro to the Web • Basics of Internet architecture • Building blocks • Servers and addresses • How computers communicate data: TCP/IP and HTTP • Role of data representation: HTML and XML • Applications are built on top of this architecture • Web browsers (built from the start on TCP/IP, HTTP, and HTML) and web clients (built on Web browsers, with Java, Javascript, AJAX, etc.) • “Cloud-based” applications and interfaces (Amazon, webmail, etc.) Course overview Physical infrastructure Courseadministration Intro to the Web/HTML
Some building blocks Application software Data Infrastructure software User Course overview Physical infrastructure Courseadministration Intro to the Web/HTML Desktop computer (Client) Local-area network Server Global network (Internet)