CITS1401 Problem Solving and Programming Introduction and Admin Semester 1, 2013 A/Prof Lyndon While School of Computer Science & Software Engineering The University of Western Australia Objectives • CITS1401 covers – Many important problem-solving techniques used widely in Computer Science and in programming – Writing basic programs in Python, a modern high-level programming language – An introduction to software engineering Computer Science is no more about computers than Astronomy is about telescopes. (Edsger Dijkstra) 2 Philosophy • CITS1401 is a first programming unit – No prior programming experience is assumed – But there is a wide range of student backgrounds • CITS1401 is the first in a series of units designed to give you – Excellent problem-solving skills – A good understanding of the programming process – Exposure to a wide range of topics in ICT Problem solving and programming are like swimming and juggling: practice is everything! 3 People & places • Unit coordinator: A/Prof Lyndon While • Consultation times: 10-11am Wednesdays • Lectures: – 1–2 pm Mondays and Wednesdays in ELT1 – All lectures are recorded and available via LMS – The slides are also available online via LMS 4 Labs • Supervised lab sessions run in Lab 2.03, starting in Week 2 • Several times are available – You are expected to attend one session each week • But feel free to attend multiple sessions – Free Wi-Fi is available – Working from home is also fine • But make sure you keep up! • The first two hours of each session is supervised 5 Workshop • Workshops are at 4–5 pm Thursdays in Austin LT, starting in Week 2 • Purely optional on an as-needed basis – Aimed at students who are having difficulty with the content or the pace of the unit material – Basic questions will be given priority over more-advanced questions – Additional examples complementing the lectures – Embarrassment-free zone! The only stupid question is the one that isn’t asked! CITS1401 admin, Sem. 1 2012 6 Online • Everything that is distributed in CITS1401 will be available from http://undergraduate.csse.uwa.edu.au/courses/CITS1401 – The lecture recordings and slides are on LMS • Nothing else will be available via LMS • To make a query in CITS1401, or to initiate discussion on any relevant topic, go to https://secure.csse.uwa.edu.au/run/help1401 7 help1401 • Online discussion forum for CITS1401, based on the philosophy of READ FIRST: if the answer is not there, THEN POST • Asking questions is useful: – Sometimes just formulating a question properly helps you to realise the answer yourself! • Answering questions is useful: – Explaining something helps you to understand it, and it generates good karma too! DO NOT post assessment code to help1401 8 Announcements • Announcements will be made in three places – In CITS1401 lectures – On the CITS1401 web-site noticeboard – On help1401 When an announcement has been made in these three places, we will assume that you are aware of it. • Any information distributed by email will be sent to your UWA account – Check your account regularly, or forward it 9 Text and other resources • Fundamentals of Python: First Programs • Kenneth A. Lambert • ISBN: 9781111822705 • http://undergraduate.csse. uwa.edu.au/units/CITS1401/ resources/ 10 Development environment • In the lab you will be using the Python 3.3 IDLE available from python.org – An integrated software environment where you can create, edit, execute, and debug programs • You can download this software free from python.org and install it at home – It is available for all major operating systems Note that all work submitted for assessment will be tested on the lab set-up 11 Assessment • Assessment is based on both – understanding of fundamental concepts – practical problem-solving and programming skills • Mid-semester test – In Week 7, worth 15% • Two programming projects – Project 1 due in Week 8, worth 10% – Project 2 due in Week 13, worth 15% • Final exam – In the June exam period, worth 60% 12 Passing and satisfactory progress • To pass CITS1401, you must achieve – At least 50% overall, and – Satisfactory progress: at least 40% in Project 1 and the test combined, and – At least 40% in the final exam • Students who fail to make satisfactory progress will be notified in writing by the end of Week 10 and will be excluded from the final exam Everyone in CITS1401 is capable of passing, but history suggests that 20% of you will fail – who do you want to be? 13 Seeking help • There are many avenues for seeking help – – – – – – help1401 Supervised labs Workshops The text and other resources Consultation times, and after lectures http://www.student.uwa.edu.au/learning You are not alone: when problems arise, seek help early! 14 UWA compulsory online modules • All students are required to complete three online learning modules – Academic Conduct Essentials – Communication and Research Skills – Indigenous Study Essentials http://www.student.uwa.edu.au/learning/resources • The above site also contains many other resources which will be useful in your studies 15 Week 1 in the labs • • • • Obtain your computer account name and password Organise your UWA email account Obtain your timetable from OLCR Familiarise yourself with the School web-site, and the CITS1401 web-site • Install Python 3 on your computer at home 16