CSE 20211 Fundamentals of Computing Prof. Douglas Thain Fall 2011.

Slides:



Advertisements
Similar presentations
A brief history of programming languages
Advertisements

Introduction to Computer Science CS 21a: Introduction to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
CS 101 Course Summary December 5, Big Ideas Abstraction Problem solving Fundamentals of programming.
Introduction to Programming. COMP104 Introduction / Slide 2 Objectives * To learn fundamental problem solving techniques * To learn how to design a program.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
Deerfield High School STEM Presentation CAREERS IN SOCIAL BUSINESS.
1 Programming Languages Marjan Sirjani 2 1- The Study of Programming Languages The purpose of language is simply that it must convey meaning. (Confucius)
CS 415: Programming Languages Chapter 1 Aaron Bloomfield Fall 2005.
Chapter 0: Introduction CSCI-UA 0002 – Introduction to Computer Programming Mr. Joel Kemp.
Computer Science and Software Engineering behind Blogging platforms and software Team ASU 101 for CS/CSE students.
History of Programming Languages
Programming Languages
CS-0401 INTERMEDIATE PROGRAMMING USING JAVA Prof. Dr. Paulo Brasko Ferreira Fall 2014.
CS 21a: Intro to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
There are only 10 types of people in the world, those who understand binary and those who don't.
MCS 270 Spring 2014 Object-Oriented Software Development.
CS2303 C14 Systems Programming Concepts Bob Kinicki.
COP1220/CGS2423 Introduction to C++/ C for Engineers Professor: Dr. Miguel Alonso Jr. Fall 2008.
Chapter 1. Introduction.
COMPUTER PROGRAMMING I SUMMER 2011 Programming Languages.
Chapter 1 The Big Picture.
Computer system overview1 The Effects of Computers Pervasive in all professions How have computers affected my life? How have computers affected my life?
Programming History. Who was the first programmer?
History 398 Fall 2004 George H. Bindon History 398Lecture 21 IN OUR OWN IMAGE: CREATING THE COMPUTER.
CSCI 161: Introduction to Programming 1
Visual C++ Programming: Concepts and Projects
EG280 Computer Science for Engineers Fundamental Concepts Chapter 1.
Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can.
 2001 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers, the Internet and the World Wide Web Outline 1.1Introduction 1.2What.
Assoc. Prof. Dr. Ahmet Turan ÖZCERİT.  What is engineer,  What is Computer Engineering  The topics in Computer Engineering You will learn: 2.
Kaifeng Chen Institute for Theoretical Physics Synthetic Biology with Engineering Tools 1 Francis Chen.
Cindy Royal Texas State U PROGRAMMING FOR COMMUNICATORS
Programming Languages
Programming Languages
CS 603: Programming Language Organization Lecture 1 Spring 2003 Department of Computer Science University of Alabama Joel Jones.
서울대한양대 ( 안 산 ) 충남대 1년1년 컴퓨터기초 (C) 컴퓨터프로그래밍 (C, Java) 컴퓨터프로그래밍 (C) 2. 봄 프로그래밍 원리 (Scheme, ML) Structure & Interpretation of Computer Programs 프로그래밍 방법론.
TCCICOMPUTERCO ACHING.COM Diploma Programming Course In Ahmedabad.
Programming Language Paradigms ITSK2314 Lecture 3.
History. Development Driven by Function Functions of a Programming Language –To describe computation for use by computers –To describe computation and.
CPS120 Introduction to Computer Science High Level Language: Paradigms.
Website Source Code Free Download.
Chapter 1. Introduction.
What Do Computers Do? A computer system is
Java Programming: From the Ground Up
The language focusses on ease of use
Lecture 1b- Introduction
Introduction to programming languages, Algorithms & flowcharts
Basic 1964 PC general purpose Imperative Small Easy to use.
Introduction to Computers
Computer Programming (BCT 1113)
Introduction to programming languages, Algorithms & flowcharts
Introduction of Programming Languages
The road ahead This class is only the beginning.
Programming Concepts and Languages
CS 21a: Intro to Computing I
Introduction to programming languages, Algorithms & flowcharts
Introduction to Computers and Python
Развој софтвера 2.
What Is Computer Science?
Ada – 1983 History’s largest design effort
Programming Languages
Programming Language Design
Physics-based simulation for visual computing applications
Unit 6 part 3 Test Javascript Test.
Unit 6 part 2 Test Javascript Test.
Principles of Programming Languages
Overview of Programming Paradigms
What is Programming Language
Presentation transcript:

CSE Fundamentals of Computing Prof. Douglas Thain Fall 2011

Main Objectives Learn how to think algorithmically. Get LOTS of practice programming. Take a tour of computer science. Learn a lot of C, a little C++, and some Unix.

What is Computer Science and Engineering?

Conventional (but unsatisfying) definitions: Computer science is the study of software, and is closest to the field of mathematics. Computer engineering is the study of hardware and is closest to the field of EE.

CSE is Engineering (Both software and hardware)

CSE is Art

CSE is Invention

CSE is Logic and Mathematics The Minimax Algorithm Quicksort P = NP? The PageRank Algorithm

Computing is a Mode of Science TheoryExperiment Simulation via Computation

CSE is a Craft to be Learned

Learning the Craft of Programming Write programs for fun! Write programs for work. Write programs for contests. Learn several languages: – An assembly language. (x86, MIPS, PowerPC) – A procedural language (C, FORTRAN) – An object-oriented language (Java, C#) – A scripting language (python, perl, bash) – A functional language (LISP, Haskell) Work on a team writing software (classes, research) Download, examine, and modify open source software. Read good books about computing. Revisit programs you have written before.

A Little History

ENIAC (1946)

IBM 360 Mainframe (1964)

DEC PDP-11 (1970)

Personal Computers (1980s)

Handheld Devices (2000s) + The Cloud

The Internet (1969)

The Internet (1972)

The Internet (1990s)

Personal Computers (1990s) The Internet (2000s)

Scale has changed. The concepts have not!

Long Term History (tiobe.com) Language Position Aug 2011 Position Aug 2006 Position Aug 1996 Position Aug 1986 Java115- C2211 C PHP45-- C#58-- Objective- C (Visual) Basic 7336 Python8725- Perl9610- JavaScript Lisp Ada161792