University Of Calgary Fall Orientation Department of Computer
- Slides: 45
University Of Calgary: Fall Orientation Department of Computer Science
What Is Computer Science? • It’s not just about geeks writing code in a dark cubicle!
Example 1: Working On Better Tools For “First Responders” • Evaluating software used by EMT and developing an alternate prototype • “Benefits of information visualization on electronic and paperbased Patient Care Records in the interpretation of a patient's medical narrative. ” Randy Chan Images from “Benefits of information visualization on electronic and paper-based Patient Care Records in the interpretation of a patient's medical narrative. ” An undergraduate research project.
Example 2: Education And Computer Science • “Edu-List: Educating Beginners on Linked Lists. ” Carmen Simpson.
Example 3: Visualizing Financial Information • There’s a lot of information that must interpreted. • For some investors time is of the essence! • They need to make sense of a large set of information quickly.
Example 3: Visualizing Financial Information • “Stocks” Ellen Lau
Example 4: Games • Artificial Intelligence FIFA © Electronic Arts (EA) – An ‘agent’ – computer intelligence played the game looking for special ‘bugs’. – The results were presented back to EA for analysis Screenshot: EA Sports FIFA Soccer
Some Areas Of Study And Research In Computer Science • • • Human-Computer Interaction Computer Graphics Information Visualization Databases Computer theory Computer networking and distributed systems Artificial Intelligence Computer Vision Software Engineering Computer Security Games programming This list provides only a brief introduction to the different areas of Computer Science and is far from comprehensive: For a more updated list of research areas: http: //www. cpsc. ucalgary. ca/Research/ Calendar (courses): – http: //www. ucalgary. ca/pubs/calendar/current/computer-science. html – http: //www. ucalgary. ca/pubs/calendar/current/software-engineering. html
Some Areas Of Study And Research In Computer Science • • • Human-Computer Interaction Computer Graphics Information Visualization Databases Computer theory Computer networking and distributed systems Artificial Intelligence Computer Vision Software Engineering Computer Security Games programming This list provides only a brief introduction to the different areas of Computer Science and is far from comprehensive: For a more updated list of research areas: http: //www. cpsc. ucalgary. ca/Research/ Calendar (courses): – http: //www. ucalgary. ca/pubs/calendar/current/computer-science. html – http: //www. ucalgary. ca/pubs/calendar/current/software-engineering. html
Human-Computer Interaction (HCI) • Most of Computer Science deals with the ‘technical’ side of computers such as: Run computers faster! Make computers store more information!! Increase the networking capabilities of computers!!! • These technical issues (and others) are all very important but something is still missing. . . For more information: http: //ilab. cpsc. ucalgary. ca/
Human-Computer Interaction (HCI) • Most of Computer Science deals with the ‘technical’ side of computers such as: Run computers faster! Make computers store more information!! Increase the networking capabilities of computers!!! • These technical issues (and others) are all very important but something is still missing. . . For more information: http: //ilab. cpsc. ucalgary. ca/
Human-Computer Interaction • . . . but don’t forget about the other side of the relationship. • No matter how powerful the computer and how well written is the software, if the user can’t figure out how it works then the system is useless. • Software should be written to make it as easy as possible for the user to complete their task. (Don’t make it any harder than it has to be). • This is just common sense and should/is always taken into account when writing software? Common sense? . . . come on!
Some Examples • Cases where designing “user-friendly” technology was not just a matter of common sense.
Student Exercise • Specify one piece of software or a website that could have been designed to make it easier to use. – What were the top 3 problems with the system?
One Way To Make Technology More “User Friendly” • Simple but effective (user-centered design) – Basic principle: getting users involved in the design process from the beginning (rather than building the system and then getting feedback afterwards which is the traditional approach). – Many benefits: • Cost reduction: The further along the software development process the harder it is to make changes. Paper sketches Complete software (from Saul Greenberg mockup) • Users may also provide many unexpected insights
HCI: Higher-Level Courses • CPSC 481: Human-Computer Interaction I • CPSC 581: Human-Computer Interaction II • (Related: Human-Robot Interaction) – CPSC 599. 65—Robot head-based interaction – CPSC 599. 62—Advanced topics in human-computer and human-robot interaction – CPSC 599. 17—Human-robot interaction James Tam
Computer Graphics • Concerned with producing and manipulating images using technology Gran Turismo © Sony For more information: http: //jungle. cpsc. ucalgary. ca/ James Tam
Computer Graphics: Issues • How to make the images look “real”? From http: //klamath. stanford. edu/~aaa/
Computer Graphics: Common Misconception • It’s about creating the programs that produce the realistic images and animations (not using existing programs like Photo shop ©). James Tam
Computer ‘Graphics’ Have Come A Long Way! “ASCII games” (Tam) ‘Battlezone’: re-creation via http: //my. ign. com/atari/battlezone ‘Pacman’: re-creation via http: //www. webpacman. com/pacman. php ‘Pong’: re-creation via “Ball 2. 7” Dragon’s lair “’Ultimate’ Mortal Kombat” re-creation via http: //en. gameslol. net/ultimate-mortal-kombat-3 -996. html James Tam
Computer Graphics: Still A Long Way To Go • “Even though modeling and rendering in computer graphics have been improved tremendously in the past 35 years, we are still not at the point where we can model automatically, a tiger swimming in the river in all it’s glorious details. ” 1 1 From “The Tiger Experience” by Alain Fournier at the University of British Columbia James Tam
Graphics: Some Areas • Animations • Modeling Xin Liu • Rendering Xin Liu • Image processing James Tam
Graphics: Higher-Level Courses • • CPSC 453: Introduction to computer graphics CPSC 587: Fundamentals of computer animation CPSC 589: Modeling for computer graphics CPSC 591: Rendering James Tam
Artificial Intelligence • Trying to build technology that appears to be ‘intelligent’ • Intelligence: What makes a person smart? – Fact retrieval? – Creativity? – Solving problems? For more information: http: //pages. cpsc. ucalgary. ca/~jacob/AI/ http: //pages. cpsc. ucalgary. ca/~denzinge/ http: //pages. cpsc. ucalgary. ca/~kremer (retired) James Tam
Artificial Intelligence: Expert Systems • The focus is on capturing the knowledge of a human expert as a set of rules stored in a database. • The expert system can then answer questions, diagnose problems and guide decision making. • Example applications: medicine, computer repair James Tam
Artificial Intelligence: Higher-Level Courses • • CPSC 433: Artificial Intelligence CPSC 565: Emergent computing CPSC 567: Foundations of multi-agent systems CPSC 568: Agent communications James Tam
Computer Vision • The focus is on interpreting and understanding visual information. No ? No No For more information: http: //pages. cpsc. ucalgary. ca/~boyd/pmwiki. php? n=Main. Research http: //people. ucalgary. ca/~jparker/ (Transferred to Arts) James Tam
Computer Vision: Some Example Applications Identification of malignant cells: Stanford (Durmus et. al 2015) Reverse image searches: www. yandex. com James Tam
Computer Vision: Higher-Level Courses • CPSC 535: Introduction to image analysis and computer vision James Tam
Software Engineering • Concerned with employing systematic ways of producing good software on time and within budget. • A typical person can only hold ~7 concepts in their mind at a time. – A typical computer program consists of more than 7 ‘parts’. • Consequently mechanisms for dealing with this complexity are needed. For more information: http: //www. cpsc. ucalgary. ca/cpsc_research/areas/evolutionary James Tam
Software Engineering: Pair Programming • Traditionally software development teams divide the project into parts with each person working individually on their assigned parts. • With pair programming two programmers work on the same part of the project. – The first person “driver” enters the program instructions. – The second person “navigators” directs the first person by inspecting each line of code as it is entered: – Because each person focuses on one task, complexity is reduced – The two people switch roles frequently • Observations in actual use: – The number of hours required to produce a given program is higher than with the traditional approach (two people working on one part) – Fewer errors “bugs” are found in the resulting program James Tam
Software Engineering: Higher-Level Courses • Software Engineering 301 Analysis and Design of Large-Scale Software I (required for all CPSC majors) • Software Engineering 401 Analysis and Design of Large-Scale Software II • Software Engineering 403 Software Development in Teams and Organizations • Software Engineering 437 Software Testing • Software Engineering 471 Software Requirements Engineering • Software Engineering 511 Software Process and Project Management • Software Engineering 513 Web-Based Systems • Software Engineering 515 Agile Software Engineering James Tam
Software Engineering: Higher-Level Courses (2) • Software Engineering 521 Software Reliability and Software Quality • Software Engineering 523 Formal Methods • Software Engineering 533 Software Performance Evaluation • Software Engineering 541 Fundamentals of Software Evolution and Reuse James Tam
Computer Security • It can involve the creation of malicious software (‘malware’) Cheap Viagra! Buy more! Pay less! XX X Become rich overnight! • Purpose: learn about how malicious software is created and distributed. Spam generators • Goal: develop countermeasures to protect computer systems Colourbox Virus software Colourbox Spyware For more information: http: //icis. cpsc. ucalgary. ca/ James Tam
Some Approaches To Computer Security • As just demonstrated, understanding ‘how things work’ is one key component to designing more secure systems. – e. g. , Creating viruses and other malware in order to create better defenses against them. • But also the ‘human’ factor must be considered: some security experts think that many security breaches are due to user actions not technical flaws (social engineering) – Sometimes the “weakest line of defense” is not the technology but the person. James Tam
Which Is/Are Fake? Which Is/Are Real? James Tam
Computer Security: Cryptography • Cryptography can play an important role in security. – Transmitting and storing sensitive information. – Cryptography involves the development of new and better approaches for encoding sensitive data (to make unauthorized access harder) so that only authorized people can decode or view the data. James Tam
Computer Security: Higher-Level Courses • • • CPSC 329: Explorations in information security and privacy CPSC 418: Introduction to Cryptography CPSC 525: Principles of computer security CPSC 527: Computer viruses and malware CPSC 528: Spam and spyware CPSC 530: Information theoretic security James Tam
Games Development • Pulls together many areas of Computer Science • The University of Calgary was the first Canadian university to offer this area of study. << Warning!!! >> Blatant advertisement << Warning!!! >> “Scarface: The World is Yours“ © Radical Entertainment For more information: http: //www. cpsc. ucalgary. ca/undergrad/courses_progression/concentration? conc=game
Computer Games: Higher-Level Courses • CPSC 585: Games programming – Actual ‘industry practices’ are taught and applied during the semester • Sound routines, graphics and more – (Lectures have been taught by actual game developers) James Tam
Student Exercise • Look at the software/apps on your phone. • List the areas of computer science that were covered today apply in the creation of that software. James Tam
Copyright Notification • “Unless otherwise indicated, all images in this presentation were created by James Tam’ slide 42 James Tam
Sound And Other Special Effects • Unless otherwise indicated they were produced and edited by James Tam : $ James Tam
Location Of These Notes • https: //pages. cpsc. ucalgary. ca/~tamj/2018/cpsc_department_ orientation/ James Tam
Location Of These Notes • Or type ‘James Tam’ into a search website. – Under the results look for a link to the University of Calgary website – Look under ‘teaching’ for James Tam – Then look for “University of Calgary Orientation 2018” James Tam
- Cpsc 329 uofc
- Webnis
- Ethnocentric and polycentric
- Emergency department nursing orientation manual
- Vegetation in calgary
- Rainwater harvesting calgary
- Metta clinic calgary
- Prime funds calgary
- Blue cart calgary
- Adlc calgary
- Prostaid calgary
- Fourosis
- Durma canada
- Chestermere recycling depot
- Ihm sisters calgary
- Dsaek calgary
- Engage calgary
- Fair trade calgary
- Northside church of christ calgary
- 10655 southport road sw
- Asthenozoospermia treatment
- Chapter 11 psychiatric mental health nursin
- Lap band calgary
- Calgary heritage authority
- Emsl calgary
- Helman folk consultation model
- Figure skating calgary
- Aicp calgary
- Adlc calgary
- Maxview homes ltd
- Calgary-cambridge observation guide
- Power platform calgary
- John keenan calgary
- Calgary flames sponsors
- Gamber electronics купить
- Who created zentangle
- Low speed balancing calgary
- Healthy hunger calgary
- Church strategic plan doc
- Dr siauw calgary
- Emphasis
- Campus portal keiser
- Texas state new student orientation
- Toastmasters secretary minutes template
- Fordham university visiting student
- Fsu orientation