SlideShare a Scribd company logo
1 of 22
Computer Science 151
An introduction to the art of computing
Lecture 1 - Introduction
Rudy Martinez
CS151
01/14/2018
CS151 Spring 2019
Course Admin
● Office hours: by appointment
○ I’m on campus everyday most of the day.
○ My office is in Farris Engineering Center room 3550C
● Exams: one in-class midterm exam + 1 final project
○ Midterm, either 3/6 (wed) or 3/20(wed)
○ Final is 5/10 (Friday) at 12:30pm to 2:30pm in this room.
● Homeworks: ~4 over the semester
● Grading split:
○ 60% homeworks, 20% midterm exams , 20% final project
CS151 Spring 2019
Course Admin
● Course announcements will be sent out via the UNM email
system
● Course materials (lecture notes, homework assignments,
etc) and other info will be posted on the class webpage [I
will announce when it is up.]
● Homeworks will be submitted via UNM mail system
CS151 Spring 2019
Course Text
UNM has free access to Safari Books Online, so no need to
purchase this book:
Programming in Python 3: A Complete Introduction to the Python Language
by Mark Summerfield
Publisher: Addison-Wesley Professional
Release Date: December 2008
ISBN: 9780137129294
https://libguides.unm.edu/Safari
There are also plenty of Python resources available on the
web.
CS151 Spring 2019
Policies: Class Attendance
Attendance to class is expected (read mandatory) and note taking encouraged. Important information
(about exams, assignments, projects, policies) may be communicated only during lecture time. We may
also cover additional material (not available in the book or in slides) during the lecture.
If you miss a lecture, you should find what material was covered and if any announcement was made. If
you have absences. It is your responsibility to find out what material you missed. I am happy to answer
specific questions regarding the lecture, but cannot go through all of the missed material on a one-to-one
basis.
That being said; I will not be taking attendance if you are not here I do not know generally.
CS151 Spring 2019
Motivation for class
● The objective of the course is to develop an
understanding of the relationship between computing and
problem solving.
● Computers are powerful tools, and being able to program
them gives you the ability to create powerful tools.
● If you are a CS major or minor you should be in
CS152.
CS151 Spring 2019
Policies: Academic Honesty
Unless otherwise specified, you must write/code your own homework assignments. You cannot use the web to find answers
to any assignment. If you do not have time to complete an assignment, it is better to submit your partial solutions than to get
answers from someone else. Cheating students will be prosecuted according to University guidelines. Students
should get acquainted with their rights and responsibilities as explained in the Student Code of Conduct
http://dos.unm.edu/student-conduct/academic-integrityhonesty.html
Any and all acts of plagiarism will result in an immediate dismissal from the course and an official report to the dean of
students.
Instances of plagiarism include, but are not limited to: downloading code and snippets from the Internet without explicit
permission from the instructor and/or without proper acknowledgment, citation, or license use; using code from a classmate
or any other past or present student; quoting text directly or slightly paraphrasing from a source without proper reference;
any other act of copying material and trying to make it look like it is yours.
Note that dismissal from the class means that the student will be dropped with an F from the course.
The best way of avoiding plagiarism is to start your assignments early. Whenever you feel like you cannot keep up with the
course material, your instructor is happy to find a way to help you. Make an appointment or come to office hours, but DO
NOT plagiarize; it is not worth it!
CS151 Spring 2019
Computing Facilities
● Labs will be in the basement computer lab.
● These computers run Ubuntu Linux 16.04 and have
Python 2.7 and 3.5.2.
○ We will be using 3.5 since 2 is deprecated
● These computers require a Computer Science Login, you
will get these in lab.
● You will have 24x7 access to these computers over the
semester by SSH
CS151 Spring 2019
Computer Science Account
● You will be assigned an account for the lab machines.
○ Please change the password!
CS151 Spring 2019
Labs
● Monday/Wednesday/Friday 10:30am to 11:30am.
● Monday/Wednesday/Friday 11:30am to 12:30pm.
● You may attend any lab.
● No Attendance is mandatory, however, this is dedicated
time for you to do your assignments with the help of the
teaching assistants to answer questions.
● Overrides due to time conflict;
○ I need your Name and UNM ID and I can provide the override. (Do NOT
email your UNM ID to me they get mad at me for this type of thing.)
CS151 Spring 2019
Why Linux?
● Still the premier scientific operating system.
○ Born out of the Unix OS
○ Free
○ Customizable
○ More secure from install than Windows/Mac OS
● As engineers you will most likely run in to linux as much
as windows
● The good news python is the same in any environment*
CS151 Spring 2019
The language of choice!
CS151 Spring 2019
What is Python? (from python.org)
● Python is an interpreted, object-oriented, high-
level programming language.
CS151 Spring 2019
What is Python? (from python.org)
● Python is an interpreted, object-oriented, high-
level programming language.
Interpreted means Python is
not the fastest language (your
programs aren’t compiled down
to native code) but they are
highly portable and easy to run.
CS151 Spring 2019
What is Python? (from python.org)
● Python is an interpreted, object-oriented, high-
level programming language.
But you aren’t forced to use
objects if you don’t want to!
Interpreted means Python is
not the fastest language (your
programs aren’t compiled down
to native code) but they are
highly portable and easy to run.
CS151 Spring 2019
What is Python? (from python.org)
● Python’s high-level built in data structures,
combined with dynamic typing and dynamic
binding, make it very attractive for use as a
scripting language or for rapid development.
CS151 Spring 2019
What is Python? (from python.org)
● Python’s high-level built in data structures,
combined with dynamic typing and dynamic
binding, make it very attractive for use as a
scripting language or for rapid development.
Don’t have to worry about
satisfying a type checker before
you are allowed to run your
program!
CS151 Spring 2019
What is Python? (from python.org)
● Python’s high-level built in data structures,
combined with dynamic typing and dynamic
binding, make it very attractive for use as a
scripting language or for rapid development.
Don’t have to worry about
satisfying a type checker before
you are allowed to run your
program!
It is relatively quick and easy to
put together working programs
for single-use tasks, such as
data analysis.
CS151 Spring 2019
What is Python? (from python.org)
● Python's simple, easy to learn syntax emphasizes
readability and therefore reduces the cost of
program maintenance.
No braces!
CS151 Spring 2019
What is Python? (from python.org)
● Python supports modules and packages, which
encourages program modularity and code reuse.
○ Scipy, scientific computing package optimized for speed and size.
○ Numpy, fast N-dimensional array package.
○ Matplotlib, comprehensive plotting package for python.
○ Pandas, data science package
○ Too many to list ...
CS151 Spring 2019
Example matplotlib plot styles
CS151 Spring 2019
Next time: basics of Python
programming
● Read chapter 1 for Wednesday.
● Attend a lab and get your CS account.

More Related Content

Similar to Lecture01

1.1. course introduction
1.1. course introduction1.1. course introduction
1.1. course introductionNicholas Wong
 
[MET] Software Recruiting 101
[MET] Software Recruiting 101[MET] Software Recruiting 101
[MET] Software Recruiting 101ImaniSalazarNahle
 
Teaching by twitter [Presented at Curtin University, Western Australia]
Teaching by twitter [Presented at Curtin University, Western Australia]Teaching by twitter [Presented at Curtin University, Western Australia]
Teaching by twitter [Presented at Curtin University, Western Australia]Andrew Smith
 
ONLINE ACCESSThank you for purchasing a new copy of In.docx
ONLINE ACCESSThank you for purchasing a new copy of In.docxONLINE ACCESSThank you for purchasing a new copy of In.docx
ONLINE ACCESSThank you for purchasing a new copy of In.docxcherishwinsland
 
Tech Tools Anyone Can Use
Tech Tools Anyone Can UseTech Tools Anyone Can Use
Tech Tools Anyone Can UseNicoleGraham48
 
An introduction to python | Python Assignment Help
An introduction to python | Python Assignment HelpAn introduction to python | Python Assignment Help
An introduction to python | Python Assignment HelpSample Assignment
 
Teaching by twitter ... a view on mLearning
Teaching by twitter ... a view on mLearningTeaching by twitter ... a view on mLearning
Teaching by twitter ... a view on mLearningAndrew Smith
 
Review june2014 june2015
Review june2014 june2015Review june2014 june2015
Review june2014 june2015Ikuru Kanuma
 
Engl317 online syllabus
Engl317 online syllabusEngl317 online syllabus
Engl317 online syllabusBrian Malone
 
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingWriting clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingsaber tabatabaee
 
Ocr GCSE computer science introduction
Ocr GCSE computer science introductionOcr GCSE computer science introduction
Ocr GCSE computer science introductionbsharland
 
Creating a social media mediated learning experience (LILAC17)
Creating a social media mediated learning experience (LILAC17)Creating a social media mediated learning experience (LILAC17)
Creating a social media mediated learning experience (LILAC17)Andrew Smith
 
Edu614 Session 1 Summer 2012
Edu614 Session 1 Summer 2012Edu614 Session 1 Summer 2012
Edu614 Session 1 Summer 2012Kathy Favazza
 
Online ENGL 202 Syllabus
Online ENGL 202 SyllabusOnline ENGL 202 Syllabus
Online ENGL 202 SyllabusJodie Nicotra
 

Similar to Lecture01 (20)

1.1. course introduction
1.1. course introduction1.1. course introduction
1.1. course introduction
 
[MET] Software Recruiting 101
[MET] Software Recruiting 101[MET] Software Recruiting 101
[MET] Software Recruiting 101
 
Teaching by twitter [Presented at Curtin University, Western Australia]
Teaching by twitter [Presented at Curtin University, Western Australia]Teaching by twitter [Presented at Curtin University, Western Australia]
Teaching by twitter [Presented at Curtin University, Western Australia]
 
ONLINE ACCESSThank you for purchasing a new copy of In.docx
ONLINE ACCESSThank you for purchasing a new copy of In.docxONLINE ACCESSThank you for purchasing a new copy of In.docx
ONLINE ACCESSThank you for purchasing a new copy of In.docx
 
Tech Tools Anyone Can Use
Tech Tools Anyone Can UseTech Tools Anyone Can Use
Tech Tools Anyone Can Use
 
An introduction to python | Python Assignment Help
An introduction to python | Python Assignment HelpAn introduction to python | Python Assignment Help
An introduction to python | Python Assignment Help
 
Teaching by twitter ... a view on mLearning
Teaching by twitter ... a view on mLearningTeaching by twitter ... a view on mLearning
Teaching by twitter ... a view on mLearning
 
Review june2014 june2015
Review june2014 june2015Review june2014 june2015
Review june2014 june2015
 
Engl317 online syllabus
Engl317 online syllabusEngl317 online syllabus
Engl317 online syllabus
 
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingWriting clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancoding
 
Codesters
CodestersCodesters
Codesters
 
Ocr GCSE computer science introduction
Ocr GCSE computer science introductionOcr GCSE computer science introduction
Ocr GCSE computer science introduction
 
C aptitude book
C aptitude bookC aptitude book
C aptitude book
 
Creating a social media mediated learning experience - Andrew Smith & Ha...
Creating a  social  media  mediated  learning  experience - Andrew Smith & Ha...Creating a  social  media  mediated  learning  experience - Andrew Smith & Ha...
Creating a social media mediated learning experience - Andrew Smith & Ha...
 
Creating a social media mediated learning experience (LILAC17)
Creating a social media mediated learning experience (LILAC17)Creating a social media mediated learning experience (LILAC17)
Creating a social media mediated learning experience (LILAC17)
 
1 cover page
1 cover page1 cover page
1 cover page
 
Edu614 Session 1 Summer 2012
Edu614 Session 1 Summer 2012Edu614 Session 1 Summer 2012
Edu614 Session 1 Summer 2012
 
Online ENGL 202 Syllabus
Online ENGL 202 SyllabusOnline ENGL 202 Syllabus
Online ENGL 202 Syllabus
 
Learning to code in 2020
Learning to code in 2020Learning to code in 2020
Learning to code in 2020
 
Python lec 1001_for_biologists
Python lec 1001_for_biologistsPython lec 1001_for_biologists
Python lec 1001_for_biologists
 

More from Rudy Martinez

More from Rudy Martinez (18)

CS 151Exploration of python
CS 151Exploration of pythonCS 151Exploration of python
CS 151Exploration of python
 
CS 151 Graphing lecture
CS 151 Graphing lectureCS 151 Graphing lecture
CS 151 Graphing lecture
 
CS 151 Classes lecture 2
CS 151 Classes lecture 2CS 151 Classes lecture 2
CS 151 Classes lecture 2
 
CS 151 Classes lecture
CS 151 Classes lectureCS 151 Classes lecture
CS 151 Classes lecture
 
CS151 Deep copy
CS151 Deep copyCS151 Deep copy
CS151 Deep copy
 
CS 151 Standard deviation lecture
CS 151 Standard deviation lectureCS 151 Standard deviation lecture
CS 151 Standard deviation lecture
 
CS 151 Midterm review
CS 151 Midterm reviewCS 151 Midterm review
CS 151 Midterm review
 
Cs 151 dictionary writer
Cs 151 dictionary writerCs 151 dictionary writer
Cs 151 dictionary writer
 
CS 151 homework2a
CS 151 homework2aCS 151 homework2a
CS 151 homework2a
 
CS 151 dictionary objects
CS 151 dictionary objectsCS 151 dictionary objects
CS 151 dictionary objects
 
CS 151 CSV output
CS 151 CSV outputCS 151 CSV output
CS 151 CSV output
 
CS 151 Date time lecture
CS 151 Date time lectureCS 151 Date time lecture
CS 151 Date time lecture
 
CS151 FIle Input and Output
CS151 FIle Input and OutputCS151 FIle Input and Output
CS151 FIle Input and Output
 
CS151 Functions lecture
CS151 Functions lectureCS151 Functions lecture
CS151 Functions lecture
 
Lecture4
Lecture4Lecture4
Lecture4
 
Lecture02
Lecture02Lecture02
Lecture02
 
Lecture03
Lecture03Lecture03
Lecture03
 
Lecture01
Lecture01Lecture01
Lecture01
 

Recently uploaded

Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 

Recently uploaded (20)

TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 

Lecture01

  • 1. Computer Science 151 An introduction to the art of computing Lecture 1 - Introduction Rudy Martinez CS151 01/14/2018
  • 2. CS151 Spring 2019 Course Admin ● Office hours: by appointment ○ I’m on campus everyday most of the day. ○ My office is in Farris Engineering Center room 3550C ● Exams: one in-class midterm exam + 1 final project ○ Midterm, either 3/6 (wed) or 3/20(wed) ○ Final is 5/10 (Friday) at 12:30pm to 2:30pm in this room. ● Homeworks: ~4 over the semester ● Grading split: ○ 60% homeworks, 20% midterm exams , 20% final project
  • 3. CS151 Spring 2019 Course Admin ● Course announcements will be sent out via the UNM email system ● Course materials (lecture notes, homework assignments, etc) and other info will be posted on the class webpage [I will announce when it is up.] ● Homeworks will be submitted via UNM mail system
  • 4. CS151 Spring 2019 Course Text UNM has free access to Safari Books Online, so no need to purchase this book: Programming in Python 3: A Complete Introduction to the Python Language by Mark Summerfield Publisher: Addison-Wesley Professional Release Date: December 2008 ISBN: 9780137129294 https://libguides.unm.edu/Safari There are also plenty of Python resources available on the web.
  • 5. CS151 Spring 2019 Policies: Class Attendance Attendance to class is expected (read mandatory) and note taking encouraged. Important information (about exams, assignments, projects, policies) may be communicated only during lecture time. We may also cover additional material (not available in the book or in slides) during the lecture. If you miss a lecture, you should find what material was covered and if any announcement was made. If you have absences. It is your responsibility to find out what material you missed. I am happy to answer specific questions regarding the lecture, but cannot go through all of the missed material on a one-to-one basis. That being said; I will not be taking attendance if you are not here I do not know generally.
  • 6. CS151 Spring 2019 Motivation for class ● The objective of the course is to develop an understanding of the relationship between computing and problem solving. ● Computers are powerful tools, and being able to program them gives you the ability to create powerful tools. ● If you are a CS major or minor you should be in CS152.
  • 7. CS151 Spring 2019 Policies: Academic Honesty Unless otherwise specified, you must write/code your own homework assignments. You cannot use the web to find answers to any assignment. If you do not have time to complete an assignment, it is better to submit your partial solutions than to get answers from someone else. Cheating students will be prosecuted according to University guidelines. Students should get acquainted with their rights and responsibilities as explained in the Student Code of Conduct http://dos.unm.edu/student-conduct/academic-integrityhonesty.html Any and all acts of plagiarism will result in an immediate dismissal from the course and an official report to the dean of students. Instances of plagiarism include, but are not limited to: downloading code and snippets from the Internet without explicit permission from the instructor and/or without proper acknowledgment, citation, or license use; using code from a classmate or any other past or present student; quoting text directly or slightly paraphrasing from a source without proper reference; any other act of copying material and trying to make it look like it is yours. Note that dismissal from the class means that the student will be dropped with an F from the course. The best way of avoiding plagiarism is to start your assignments early. Whenever you feel like you cannot keep up with the course material, your instructor is happy to find a way to help you. Make an appointment or come to office hours, but DO NOT plagiarize; it is not worth it!
  • 8. CS151 Spring 2019 Computing Facilities ● Labs will be in the basement computer lab. ● These computers run Ubuntu Linux 16.04 and have Python 2.7 and 3.5.2. ○ We will be using 3.5 since 2 is deprecated ● These computers require a Computer Science Login, you will get these in lab. ● You will have 24x7 access to these computers over the semester by SSH
  • 9. CS151 Spring 2019 Computer Science Account ● You will be assigned an account for the lab machines. ○ Please change the password!
  • 10. CS151 Spring 2019 Labs ● Monday/Wednesday/Friday 10:30am to 11:30am. ● Monday/Wednesday/Friday 11:30am to 12:30pm. ● You may attend any lab. ● No Attendance is mandatory, however, this is dedicated time for you to do your assignments with the help of the teaching assistants to answer questions. ● Overrides due to time conflict; ○ I need your Name and UNM ID and I can provide the override. (Do NOT email your UNM ID to me they get mad at me for this type of thing.)
  • 11. CS151 Spring 2019 Why Linux? ● Still the premier scientific operating system. ○ Born out of the Unix OS ○ Free ○ Customizable ○ More secure from install than Windows/Mac OS ● As engineers you will most likely run in to linux as much as windows ● The good news python is the same in any environment*
  • 12. CS151 Spring 2019 The language of choice!
  • 13. CS151 Spring 2019 What is Python? (from python.org) ● Python is an interpreted, object-oriented, high- level programming language.
  • 14. CS151 Spring 2019 What is Python? (from python.org) ● Python is an interpreted, object-oriented, high- level programming language. Interpreted means Python is not the fastest language (your programs aren’t compiled down to native code) but they are highly portable and easy to run.
  • 15. CS151 Spring 2019 What is Python? (from python.org) ● Python is an interpreted, object-oriented, high- level programming language. But you aren’t forced to use objects if you don’t want to! Interpreted means Python is not the fastest language (your programs aren’t compiled down to native code) but they are highly portable and easy to run.
  • 16. CS151 Spring 2019 What is Python? (from python.org) ● Python’s high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for use as a scripting language or for rapid development.
  • 17. CS151 Spring 2019 What is Python? (from python.org) ● Python’s high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for use as a scripting language or for rapid development. Don’t have to worry about satisfying a type checker before you are allowed to run your program!
  • 18. CS151 Spring 2019 What is Python? (from python.org) ● Python’s high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for use as a scripting language or for rapid development. Don’t have to worry about satisfying a type checker before you are allowed to run your program! It is relatively quick and easy to put together working programs for single-use tasks, such as data analysis.
  • 19. CS151 Spring 2019 What is Python? (from python.org) ● Python's simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. No braces!
  • 20. CS151 Spring 2019 What is Python? (from python.org) ● Python supports modules and packages, which encourages program modularity and code reuse. ○ Scipy, scientific computing package optimized for speed and size. ○ Numpy, fast N-dimensional array package. ○ Matplotlib, comprehensive plotting package for python. ○ Pandas, data science package ○ Too many to list ...
  • 21. CS151 Spring 2019 Example matplotlib plot styles
  • 22. CS151 Spring 2019 Next time: basics of Python programming ● Read chapter 1 for Wednesday. ● Attend a lab and get your CS account.