m269 overview - m269 overview b - pmolyneux.co.uk · i microsoftexcel=2^2^2^2^2 == 65536 i...
TRANSCRIPT
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 OverviewM269 Overview B
Phil Molyneux
21 October 2018
1/68 (1/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 Overview B TutorialAgenda
I IntroductionsI M269 OverviewI Unit 1 — Komodo and PythonI How to survive learning software packagesI Adobe Connect — if you or I get cut off, wait till we
reconnect (or send you an email)I Time: about 1 hourI Do ask questions or raise points.I Source: pmolyneux.co.uk/OU/M269/M269TutorialNotes/M269TutorialOverview/
I Slides M269Prsntn2018JTutorialOverviewBStuPreview.beamer.pdf
I Notes M269Prsntn2018JTutorialOverviewBStuPreview.article.pdf
I Overview B — Basic PythonI Algorithm design examples
2/68 (2/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 TutorialIntroductions — Me
I Name Phil MolyneuxI Background
I Undergraduate: Physics and Maths (Sussex)I Postgraduate: Physics (Sussex), Operational Research
(Brunel), Computer Science (University College,London)
I Worked in Operational Research, Business IT, Webtechnologies, Functional Programming
I First programming languages Fortran, BASIC, PascalI Favourite Software
I Haskell — pure functional programming languageI Text editors TextMate, Sublime Text — previously
EmacsI Word processing in LATEX — all these slides and notesI Mac OS X
I Learning style — I read the manual before using thesoftware
3/68 (3/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 TutorialIntroductions — You
I Name ?I Favourite software/Programming language ?I Other OU courses ?I Anything else ?
4/68 (4/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectInterface — Student Quick Reference
5/68 (5/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectInterface — Student View
6/68 (6/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectSettings
I Everybody: Audio Settings Meeting Audio Setup Wizard. . .
I Audio Menu bar Audio Microphone rights for Participants 4
I Do not Enable single speaker modeI Drawing Tools Share pod menu bar Draw (1 slide/screen)I Share pod menu bar Menu icon Enable Participants to draw 4 grayI Meeting Preferences Whiteboard Enable Participants to draw 4
I Cancel hand toolI Do not enable green pointer. . .I Meeting Preferences Attendees Pod Disable Raise Hand
notificationI Cursor Meeting Preferences General tab Host Cursors
Show to all attendees 4 (default Off)I Meeting Preferences Screen Share Cursor Show Application Cursor
I Webcam Menu bar Webcam Enable Webcam for Participants 4
I Recording Meeting Record Meeting. . . 4
7/68 (7/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectAccess
I Tutor AccessI TutorHome M269 Website Tutorials
I Cluster Tutorials M269 Online tutorial room
I Tutor Groups M269 Online tutor group room
I Module-wide Tutorials M269 Online module-wide room
I AttendanceTutorHome Students View your tutorial timetables
I Beamer Slide Scaling 440% (422 x 563 mm)I Clear Everyone’s Status
Attendee Pod Menu Clear Everyone’s Status
I Grant AccessMeeting Manage Access & Entry Invite Participants. . . and sendlink via email
8/68 (8/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectKeystroke Shortcuts
I Keyboard shortcuts in Adobe ConnectI Toggle Mic + M (Mac), Ctrl + M (Win)
(On/Disconnect)I Toggle Raise-Hand status + E
I Close dialog box (Mac), Esc (Win)I End meeting + \
9/68 (9/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe Connect InterfaceStudent View (default)
10/68 (10/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe Connect InterfaceTutor View
11/68 (11/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe Connect InterfaceTutor View
12/68 (12/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe ConnectStudent View
Settings
Student & Tutor Views
Ending a Meeting
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
Adobe ConnectEnding a Meeting
I Notes for the tutor onlyI Student: Meeting Exit Adobe Connect
I Tutor:I Recording Meeting Stop Recording 4
I Remove Participants Meeting End Meeting. . . 4
I Dialog box allows for message with default message:I The host has ended this meeting. Thank you for
attending.I Recording availability In course Web site for joining
the room, click on the eye icon in the list of recordingsunder your recording — edit description and name
I Meeting Information Meeting Manage Meeting Information
— can access a range of information in Web page.I Attendance Report see course Web site for joining
room13/68 (13/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 Algorithms, data structures andcomputabilityAims
I Ideas of computational thinkingI Introduction to algorithms and data structures (using
Python)I Logic and the limits of computationI ComputabilityI Complexity
14/68 (14/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 Algorithms, data structures andcomputabilityUnits
I Unit 1 Introduction — ideas of computation andintroduction to Python
I Unit 2 From problems to programs — algorithms, logicand abstract data types
I Unit 3 Sorting — how do we derive and classify sortingalgorithms ?
I Unit 4 Searching — patterns, strings; calculatingpositions: hashes; tree data structures for storing andsearching.
I Unit 5 Optimisation — graph algorithms, dynamicprogramming.
I Unit 6 Sets, logic and databases — truth tablesI Unit 7 The limits of computation — computability,
Turing machines, proofs, computational complexity15/68 (15/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Computational ComponentsImperative, Procedural Programming
Imperative or procedural programming has statements whichcan manipulate global memory, have explicit control flowand can be organised into procedures (or functions)I Sequence of statements
stmnt ; stmnt
I Iteration to repeat statementswhile expr :
suite
for targetList in exprList :suite
I Selection choosing between statementsif expr : suiteelif expr : suiteelse : suite
16/68 (16/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Computational ComponentsFunctional Programming
Functional programming treats computation as theevaluation of expressions and the definition of functions (inthe mathematical sense)I Function composition to combine the application of
two or more functions — like sequence but from rightto left (notation accident of history)
(f . g) x = f (g x)
I Recursion — function definition defined in terms ofcalls to itself (with smaller arguments) and base case(s)which do not call itself.
I Conditional expressions choosing between alternativesexpressions
if expr then expr else expr
17/68 (17/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming, Programming Languages
I M269 is not a programming course but . . .I The course uses Python to illustrate various algorithms
and data structuresI The final unit addresses the question:I What is an algorithm ? What is programming ? What is
a programming language ?I So it is a programming course (sort of)
18/68 (18/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !
I 4 + 6I 4 + 6 × 3I 4I 19370721 × 761838257287I The above are expressions in arithmetic
I Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)
19/68 (19/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !I 4 + 6
I 4 + 6 × 3I 4I 19370721 × 761838257287I The above are expressions in arithmetic
I Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)
19/68 (20/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !I 4 + 6I 4 + 6 × 3
I 4I 19370721 × 761838257287I The above are expressions in arithmetic
I Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)
19/68 (21/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !I 4 + 6I 4 + 6 × 3I 4
I 19370721 × 761838257287I The above are expressions in arithmetic
I Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)
19/68 (22/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !I 4 + 6I 4 + 6 × 3I 4I 19370721 × 761838257287
I The above are expressions in arithmeticI Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)
19/68 (23/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (1)
I What is each of the following — first reaction !I 4 + 6I 4 + 6 × 3I 4I 19370721 × 761838257287I The above are expressions in arithmetic
I Most students read what is as evaluateI Not easy for the last oneI But you can say:I They are expressions which when evaluated, evaluate to
some numberI 19370721 × 761838257287I = 147573952589676412927 = 267 − 1I demonstrated in a famous meeting of the New York
AMS in October 1903 by F.N.Cole (Cole, 1903)19/68 (24/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationCartesian Closed Comic — Equality
20/68 (25/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationSyntax and Semantics
I Syntax and Semantics (2)
I EvaluateI 6 + 4 × 3I 6 − 4 − 1I False or True (in Python)I 5 // 3 (integer division in Python)I 1 // 0 (in Python)I False or True or 1 // 0 (in Python)
21/68 (26/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsElementary Concepts
I An expression can be thought of as a program (and viceversa)
I A set of instructions to find a value.I Operator precedence and associativity are there to get
rid of some bracketsI (to make the code more user friendly!)I Precedence — which operator to use first. This is also
called binding power or operator fixityI Associativity — for the same operator, whether to
evaluate from left to right or right to left (or it doesn’tmatter)
I Lazy Evaluation — don’t do today what you can putoff til tomorrow, because you might never have to do it(useful in computation — not useful for doing TMAs)
22/68 (27/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I In Python 2**2**2**2I Alternate in Python pow(2,pow(2,pow(2,2)))I Microsoft Excel =2^2^2^2I or use LibreOffice, Numbers, . . .
23/68 (28/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)
I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536I Casio fx-85GT Plus 2^2^2^2 shows 65536I Haskell 2^2^2^2 == 65536I Microsoft Excel =2^2^2^2 == 256I Beware language semanticsI Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (29/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536
I Casio fx-85GT Plus 2^2^2^2 shows 65536I Haskell 2^2^2^2 == 65536I Microsoft Excel =2^2^2^2 == 256I Beware language semanticsI Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (30/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536I Casio fx-85GT Plus 2^2^2^2 shows 65536
I Haskell 2^2^2^2 == 65536I Microsoft Excel =2^2^2^2 == 256I Beware language semanticsI Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (31/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536I Casio fx-85GT Plus 2^2^2^2 shows 65536I Haskell 2^2^2^2 == 65536
I Microsoft Excel =2^2^2^2 == 256I Beware language semanticsI Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (32/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536I Casio fx-85GT Plus 2^2^2^2 shows 65536I Haskell 2^2^2^2 == 65536I Microsoft Excel =2^2^2^2 == 256I Beware language semantics
I Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (33/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
Syntax and SemanticsSharp Edges
I Sharp edgesI Evaluate (in Maths) 22 and 222 and 222
2
I 222 = 16 and 2222
= 216 = 65536 (or 64K in computing)I Python 2**2**2**2 == 65536I Python pow(2,pow(2,pow(2,2))) == 65536I Casio fx-85GT Plus 2^2^2^2 shows 65536I Haskell 2^2^2^2 == 65536I Microsoft Excel =2^2^2^2 == 256I Beware language semanticsI Microsoft Excel =2^2^2^2^2 == 65536I Haskell length (show (2^2^2^2^2)) == 19729
I 22222
has 19729 digitsI What is Excel doing differently ?
24/68 (34/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages
I Add a tick on the slide next to languages usedI FORTRANI BASICI PascalI SASLI CI MirandaI PrologI JavaScriptI JavaI HaskellI Add names of other languages used
25/68 (35/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding
I Are the following programming languages ?I ExcelI HTMLI WordI LATEXI SQL
26/68 (36/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding — Excel
I ExcelI Excel has conditional expressions and indirections (so
can have loops)I An Excel Turing Machine is described in Felienne’s blogI Excel see Improving the world’s most popular functional
language: user-defined functions in Excel
27/68 (37/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding — HTML
I HTMLI HyperText Markup Language is the standard markup
language for Web pages — it describes the structure ofthe content.
I It can contain CSS (for describing appearance) andI JavaScript (for describing behaviour)I HTML is not a programming languageI JavaScript is a Turing complete programming language
but embedded in a host environment.I CSS could be extended to be Turing complete — see Is
CSS Turing complete
28/68 (38/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding — Word
I WordI Microsoft Word interface to text formattingI Serialised with the markup language Office Open XMLI Visual Basic for Applications is embedded and is a
programming language
29/68 (39/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding — LATEX
I LATEXI LaTeX is a format of TeXI Markup technology for typesetting documents —
oriented towards mathematics and technical documents.I Is also a Turing complete programming language (Unit
7)I Used in MST125 Essential Mathematics 2 Unit 2
Mathematical typesetting
30/68 (40/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding — SQL
I SQLI Structured Query Language based on relational algebra
and tuple relational calculusI Syntactic sugar for first order logic (Unit 6)I Originally not a Turing complete programming language
(Unit 7)I but extensions are Turing complete
31/68 (41/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponentsComputation,Programming,Programming Languages
Programming Languages
Python
Learning SoftwarePackages
What Next ?
ComputationProgramming Languages and Coding
I Turing completeness is not everythingI Data languages such as XML, HTML, JSONI Regular languages for regular expressions in your
favourite text editor (and some programming languages)I Pushdown automata and Context-free grammars used
in program compiling.I Total Functional Programming requires all programs to
be provably terminating.
32/68 (42/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
PythonLearning Python
I Miller & Ranum Problem Solving with Algorithms andData Structures using Python
I Python 3 DocumentationI Python TutorialI Python Language ReferenceI Python Library ReferenceI Hitchhiker’s Guide to PythonI Stackoverflow on PythonI Dive into Python 3
33/68 (43/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
PythonSetting up Python with Komodo 1
I Install ActivePython version 3.x from http://www.activestate.com/activepython/downloads
I Mac OS X Python 3 is at /usr/local/bin/python3.3which is a symbolic link to /Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3
I Mac OS X idle 3 is at /usr/local/bin/idle3.3(exact versions will depend on install date)
I Windows install location %SystemDrive%\Python33and in Start menu (if Windows 7)
I Documentation at http://docs.activestate.com/activepython/3.3/
I Mac OS X may need to install correct version of Tcl/tkfor IDLE —https://www.python.org/download/mac/tcltk
34/68 (44/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
PythonSetting up Python with Komodo 2
I Install the M269 Komodo macrosI See M269 Software InstallationI Make sure the Toolbox and Command output tabs are
visible — View Tabs & SidebarsI Right-Click in Toolbox and select Add New Folder. . . to
create M269 folder in ToolboxI Select M269 folder, right-click and select Import/Export
Import Files from File System and select both files fromthe M269 macro download.
I Ensure Komodo is using Python 3I Preferences. . . Languages Category Python 3 and select
your Python 3I In the Toolbox right-click Run Python File and select
Properties
35/68 (45/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo Preferences: Languages Python 3
36/68 (46/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo Run Command Context Menu
37/68 (47/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo Run Python File Properties
38/68 (48/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo File Tab Context Menu
39/68 (49/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo File Properties and Settings
40/68 (50/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Komodo and PythonIndentation and Tabs — Questions
I How do you set spaces per indent to 2 or 4 ?I How do you make the Tab key issue spaces ?I Why is the Tab character evil ?
41/68 (51/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Komodo and PythonIndentation and Tabs — Answers
I How do you set spaces per indent to 2 or 4 ?
Preferences. . . Editor Global Indentation Settings (default 8)
I How do you make the Tab key issue spaces ?
Preferences. . . Editor Global Indentation Settings and uncheckPrefer Tab characters over spaces
I Why is the Tab character evil ?
See Tabs vs Spaces, Tab keyI See Python Enhancement Proposals (PEP 8) — Style
Guide for Python CodeI Mixing tabs and spaces can lead to inconsistent layout
when copying from one editor to another or MS WordI Tab character is Unicode U+0009 or ^I or HT or \t see
C0 and C1 control codes
42/68 (52/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Komodo and PythonIndentation and Tabs — Answers
I How do you set spaces per indent to 2 or 4 ?Preferences. . . Editor Global Indentation Settings (default 8)
I How do you make the Tab key issue spaces ?
Preferences. . . Editor Global Indentation Settings and uncheckPrefer Tab characters over spaces
I Why is the Tab character evil ?
See Tabs vs Spaces, Tab keyI See Python Enhancement Proposals (PEP 8) — Style
Guide for Python CodeI Mixing tabs and spaces can lead to inconsistent layout
when copying from one editor to another or MS WordI Tab character is Unicode U+0009 or ^I or HT or \t see
C0 and C1 control codes
42/68 (53/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Komodo and PythonIndentation and Tabs — Answers
I How do you set spaces per indent to 2 or 4 ?Preferences. . . Editor Global Indentation Settings (default 8)
I How do you make the Tab key issue spaces ?Preferences. . . Editor Global Indentation Settings and uncheckPrefer Tab characters over spaces
I Why is the Tab character evil ?
See Tabs vs Spaces, Tab keyI See Python Enhancement Proposals (PEP 8) — Style
Guide for Python CodeI Mixing tabs and spaces can lead to inconsistent layout
when copying from one editor to another or MS WordI Tab character is Unicode U+0009 or ^I or HT or \t see
C0 and C1 control codes
42/68 (54/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Komodo and PythonIndentation and Tabs — Answers
I How do you set spaces per indent to 2 or 4 ?Preferences. . . Editor Global Indentation Settings (default 8)
I How do you make the Tab key issue spaces ?Preferences. . . Editor Global Indentation Settings and uncheckPrefer Tab characters over spaces
I Why is the Tab character evil ?See Tabs vs Spaces, Tab key
I See Python Enhancement Proposals (PEP 8) — StyleGuide for Python Code
I Mixing tabs and spaces can lead to inconsistent layoutwhen copying from one editor to another or MS Word
I Tab character is Unicode U+0009 or ^I or HT or \t seeC0 and C1 control codes
42/68 (55/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Learning KomodoKomodo Preferences: Editor Indentation
43/68 (56/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Questions
I How do you enter an interactive Python shell ?I How do you exit Python in Terminal (Mac) or
Command prompt (Windows) ?I How do you get help in a shell ?I How do you exit the interactive help utility ?
44/68 (57/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Answers
I How do you enter an interactive Python shell ?
Windows PythonWin Shell from Toolbox; Mac python3 inTerminal
I How do you exit Python in Terminal (Mac) orCommand prompt (Windows) ?
quit()
I How do you get help in a shell ?
help()
I How do you exit the interactive help utility ?
quit
45/68 (58/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Answers
I How do you enter an interactive Python shell ?Windows PythonWin Shell from Toolbox; Mac python3 inTerminal
I How do you exit Python in Terminal (Mac) orCommand prompt (Windows) ?
quit()
I How do you get help in a shell ?
help()
I How do you exit the interactive help utility ?
quit
45/68 (59/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Answers
I How do you enter an interactive Python shell ?Windows PythonWin Shell from Toolbox; Mac python3 inTerminal
I How do you exit Python in Terminal (Mac) orCommand prompt (Windows) ?quit()
I How do you get help in a shell ?
help()
I How do you exit the interactive help utility ?
quit
45/68 (60/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Answers
I How do you enter an interactive Python shell ?Windows PythonWin Shell from Toolbox; Mac python3 inTerminal
I How do you exit Python in Terminal (Mac) orCommand prompt (Windows) ?quit()
I How do you get help in a shell ?help()
I How do you exit the interactive help utility ?
quit
45/68 (61/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Usage — Answers
I How do you enter an interactive Python shell ?Windows PythonWin Shell from Toolbox; Mac python3 inTerminal
I How do you exit Python in Terminal (Mac) orCommand prompt (Windows) ?quit()
I How do you get help in a shell ?help()
I How do you exit the interactive help utility ?quit
45/68 (62/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonSequences Indexing, Slices
I xs[i:j:k] is defined to be the sequence of items fromindex i to (j-1) with step k.
I If k is omitted or None, it is treated as 1.I If i or j are negative then they are relative to the end.I If i is omitted or None use 0.I If j is omitted or None use len(xs)
46/68 (63/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Quiz — Lists
Given the following definitionsxs = [10.9 ,25 ,"Phil" ,3.14 ,42 ,1985]ys = [[5]] * 3
Evaluatexs [1]xs [0]xs [5]ysxs [1:3]xs [::2]xs [1: -1]xs [ -3]xs [:]ys [0] .append (4)
47/68 (64/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Basic PythonPython Quiz — Lists — Answers
Given the following definitionsxs = [10.9 ,25 ,"Phil" ,3.14 ,42 ,1985]ys = [[5]] * 3
Evaluatexs [1] == 25xs [0] == 10 .9xs [5] == 1985ys == [[5] ,[5] ,[5]]xs [1:3] == [25 , ’Phil ’]xs [::2] == [10.9 , ’Phil ’, 42]xs [1: -1] == [25 , ’Phil ’, 3.14 , 42]xs [ -3] == 3.14xs [:] == [10.9 , 25, ’Phil ’, 3.14 , 42, 1985]ys [0] .append (4) == [[5 , 4], [5, 4], [5, 4]]
48/68 (65/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Python WorkflowsKomodo Python Workflow
1. Create someProgram.py with assignment statementsdefining variables and other data along with functiondefinitions.
2. There may be auxiliary files with other definitions (forexample, Python Activity 2.2 has Stack.py with theStack class definition) — this uses the importstatement in someProgram.py
from someOtherDefinitions import someIdentifier
3. Load someProgram.py into Komodo Edit and use theRun Python File macro from the Toolbox
4. For further results, edit the file in Komodo Edit and anduse the Save and Run macro from the Toolbox
49/68 (66/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Python WorkflowsStandalone Python Workflow
1. Create someDefinitions.py with assignmentstatements defining variables and function definitions.
2. In Terminal (Mac) or Command Prompt (Windows),navigate to someDefinitions.py and invoke thePython 3 interpreter
3. Load someDefinitions.py into the Python 3 with thecommand
import someDefinitions as sdf
The as sdf gives a shorter qualifier for the namespace— names in the file are now sdf.xNote that the commands are executed — any printstatement will execute, for example
4. At the Python 3 interpreter prompt, evaluateexpressions (remember that they may have side effectsand alter the current definitions)
50/68 (67/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
PythonLearning Python
Setting up Python withKomodo
Basic Python
Python Workflows
Learning SoftwarePackages
What Next ?
Python WorkflowsStandalone Python Workflow 2
1. For further results, edit the file in Your Favourite Editorand use one of the following commands:reload (sdf)
import impimp.reload (sdf)
Note the use of the name sdf as opposed to theoriginal name.Read the following references about the dangers ofreloading as compared to re-cycling Python 3I http://stackoverflow.com/questions/684171/
how-to-re-import-an-updated-package-while-in-python-interpreterI http://pyunit.sourceforge.net/notes/
reloading.htmlI http://stackoverflow.com/questions/12400467/
how-to-import-and-reimport-file-when-it-needed
51/68 (68/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning Software PackagesKey questions
1. Where is the package source ?2. What version are you using ?3. What documentation is available ?4. What are the names for the parts of the interface ?5. How do you leave the package ? How do you enter the
package ?6. Is there any on-line help and, if so, how is it used ?7. Are there any initialisation files, configuration or
preferences and how are they used ?8. How do you import and export data from the package ?9. When all else fails, how can you obtain advice ?
52/68 (69/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Installing Komodo & PythonM269 Notes
I See M269 Software Installation Guide under StudyResources
I MS Windows has PythonWin ShellI Mac OS X uses idle3.3 from Terminal —
/usr/local/bin/python3.3 and/usr/local/bin/idle3.3 are symbolic links to/Library/Frameworks/Python.framework/Versions/3.3/bin/
I Mac OS X idle3.3 may require new version of Tcl/tkfrom http://www.activestate.com/activetcl/downloads —see https://www.python.org/download/mac/tcltkfor version required.
53/68 (70/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Exercise
1. Where do you get Komodo Edit Help ?2. Where does Help describe the Komodo interface ?3. How do you globally and permanently disable the
Minimap ?4. How do you show whitespace and EOL characters ?
And why would you want to ?5. How do you show line numbers ?6. How do you get syntax colouring ?7. How does Komodo detect what language a file has ?8. How do you comment out a block of code ?9. How do you set user environment variables ? (and why
would you ?)10. How do you export code with syntax highlighting into
MS Word ?54/68 (71/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoFurther Key Questions
11. How do you stop a runaway program ?
55/68 (72/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKomodo Interface
56/68 (73/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 1
1. Where do you get Komodo Edit Help ?
Help Help
2. Where does Help describe the Komodo interface ?
Komodo Edit Help Contents Welcome to KomodoThe Komodo Workspace
3. How do you globally and permanently disable theMinimap ?
Preferences Category Editor Scrollinguncheck Use the Minimap Scrollbar
57/68 (74/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 1
1. Where do you get Komodo Edit Help ?Help Help
2. Where does Help describe the Komodo interface ?
Komodo Edit Help Contents Welcome to KomodoThe Komodo Workspace
3. How do you globally and permanently disable theMinimap ?
Preferences Category Editor Scrollinguncheck Use the Minimap Scrollbar
57/68 (75/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 1
1. Where do you get Komodo Edit Help ?Help Help
2. Where does Help describe the Komodo interface ?Komodo Edit Help Contents Welcome to KomodoThe Komodo Workspace
3. How do you globally and permanently disable theMinimap ?
Preferences Category Editor Scrollinguncheck Use the Minimap Scrollbar
57/68 (76/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 1
1. Where do you get Komodo Edit Help ?Help Help
2. Where does Help describe the Komodo interface ?Komodo Edit Help Contents Welcome to KomodoThe Komodo Workspace
3. How do you globally and permanently disable theMinimap ?Preferences Category Editor Scrollinguncheck Use the Minimap Scrollbar
57/68 (77/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 2
4. How do you show whitespace and EOL characters ?And why would you want to ?
Preferences Category Editor Generalcheck Show whitespace characters
5. How do you show line numbers ?
Preferences Category Editor Generalcheck Show line numbers
58/68 (78/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 2
4. How do you show whitespace and EOL characters ?And why would you want to ?Preferences Category Editor Generalcheck Show whitespace characters
5. How do you show line numbers ?
Preferences Category Editor Generalcheck Show line numbers
58/68 (79/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 2
4. How do you show whitespace and EOL characters ?And why would you want to ?Preferences Category Editor Generalcheck Show whitespace characters
5. How do you show line numbers ?Preferences Category Editor Generalcheck Show line numbers
58/68 (80/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKomodo Preferences: Editor
59/68 (81/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 3
6. How do you get syntax colouring ?
Global: Preferences Category Fonts and ColorsLanguage Specific tab
File: File tab context menuFile Properties and Setting dialogue File PreferencesAdvanced Document-Specific Performance Settingscheck Enable Syntax Coloring
7. How does Komodo detect what language a file has ?
Preferences File Associations View and Edit AssociationsFor shebang line seehttp://en.wikipedia.org/wiki/Shebang_(Unix)
I Note that Komodo can have global or per file settings
60/68 (82/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 3
6. How do you get syntax colouring ?Global: Preferences Category Fonts and ColorsLanguage Specific tab
File: File tab context menuFile Properties and Setting dialogue File PreferencesAdvanced Document-Specific Performance Settingscheck Enable Syntax Coloring
7. How does Komodo detect what language a file has ?
Preferences File Associations View and Edit AssociationsFor shebang line seehttp://en.wikipedia.org/wiki/Shebang_(Unix)
I Note that Komodo can have global or per file settings
60/68 (83/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 3
6. How do you get syntax colouring ?Global: Preferences Category Fonts and ColorsLanguage Specific tab
File: File tab context menuFile Properties and Setting dialogue File PreferencesAdvanced Document-Specific Performance Settingscheck Enable Syntax Coloring
7. How does Komodo detect what language a file has ?Preferences File Associations View and Edit AssociationsFor shebang line seehttp://en.wikipedia.org/wiki/Shebang_(Unix)
I Note that Komodo can have global or per file settings
60/68 (84/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 4
8. How do you comment out a block of code ?
Code Comment Region (^3)
Code Un-comment Region (^2)
61/68 (85/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 4
8. How do you comment out a block of code ?Code Comment Region (^3)
Code Un-comment Region (^2)
61/68 (86/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 5
9. How do you set user environment variables ? (and whywould you ?)
Preferences Environment
62/68 (87/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 5
9. How do you set user environment variables ? (and whywould you ?)Preferences Environment
62/68 (88/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 6
10. How do you export code with syntax highlighting intoMS Word ?
Use an editor such as Sublime Text that has Copy asRTF
63/68 (89/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoKey Questions — Answers 6
10. How do you export code with syntax highlighting intoMS Word ?Use an editor such as Sublime Text that has Copy asRTF
63/68 (90/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoFurther Key Questions
11. How do you stop a runaway program ?
Bottom pane Command Output tabTerminate Process button
Terminate Process button looks like a grey square but itsposition will vary according to the version of Komodo
64/68 (91/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackagesInstalling Komodo &Python
Learning Komodo
What Next ?
Learning KomodoFurther Key Questions
11. How do you stop a runaway program ?Bottom pane Command Output tabTerminate Process button
Terminate Process button looks like a grey square but itsposition will vary according to the version of Komodo
64/68 (92/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
What Next ?Programming, Debugging, Psychology
Although programming techniques have improved immenselysince the early days, the process of finding and correctingerrors in programming — known graphically if inelegantly asdebugging — still remains a most difficult, confused andunsatisfactory operation. The chief impact of this state ofaffairs is psychological. Although we are happy to paylip-service to the adage that to err is human, most of us liketo make a small private reservation about our ownperformance on special occasions when we really try. It issomewhat deflating to be shown publicly and incontrovertiblyby a machine that even when we do try, we in fact make justas many mistakes as other people. If your pride cannotrecover from this blow, you will never make a programmer.Christopher Strachey, Scientific American 1966 vol 215 (3) Septemberpp112–124
65/68 (93/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
What Next ?To err is human ?
I To err is human, to really foul things up requires acomputer.
I Attributed to Paul R. Ehrlich in 101 GreatProgramming Quotes
I Attributed to Bill Vaughn in Quote InvestigatorI Derived from Alexander Pope (1711, An Essay on
Criticism)I To Err is Humane; to Forgive, DivineI This also contains
A little learning is a dangerous thing;Drink deep, or taste not the Pierian Spring
I In programming, this means you have to read thefabulous manual (RTFM)
66/68 (94/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
What Next ?Overview B and Unit 2
I Basic PythonI Python WorkflowsI Example Algorithm DesignI Writing Programs & Thinking — The StepsI Unit 2 From Problems to ProgramsI Some logicI Preconditions, postconditionsI Abstract Data TypesI F2F Crawley College (SD) 10:30 Saturday 3 November
2018I F2F LSE Aldwych (PM) 10:00 Saturday 1 December
2018
67/68 (95/96)
M269 Overview
Phil Molyneux
M269 Overview BTutorial Agenda
Adobe Connect
M269 Overview
BasicComputationalComponents
Python
Learning SoftwarePackages
What Next ?
M269 TutorialAdobe Connect — Ending a Meeting
I Notes for the tutor onlyI Student: Meeting Exit Adobe Connect
I Tutor:I Recording Meeting Stop Recording 4
I Remove Participants Meeting End Meeting. . . 4
I Dialog box allows for message with default message:I The host has ended this meeting. Thank you for
attending.I Recording availability In course Web site for joining
the room, click on the eye icon in the list of recordingsunder your recording — edit description and name
I Meeting Information Meeting Manage Meeting Information
— can access a range of information in Web page.I Attendance Report see course Web site for joining
room68/68 (96/96)