MATFeb2014 » History » Version 10
Chris Cannam, 2014-03-31 02:57 PM
1 | 1 | Chris Cannam | h1. Software Carpentry workshop for MAT at QMUL, Feb 2014 |
---|---|---|---|
2 | 1 | Chris Cannam | |
3 | 1 | Chris Cannam | h2. Teaching material and supplementary links |
4 | 1 | Chris Cannam | |
5 | 3 | Chris Cannam | h3. Day 1 |
6 | 3 | Chris Cannam | |
7 | 1 | Chris Cannam | * *Introduction to Shell* -- "Tutorial script":/documents/73 -- "Crib sheet on Unix shell commands":/documents/74 |
8 | 1 | Chris Cannam | * *Version control* -- "Introductory slides":/documents/75 -- "Tutorial script":/projects/easyhg/wiki/SC2012BootcampPlan |
9 | 1 | Chris Cannam | |
10 | 6 | Chris Cannam | h3. Day 2 |
11 | 6 | Chris Cannam | |
12 | 6 | Chris Cannam | * *Introduction to Python* -- "Tutorial script":/documents/71 -- "Repository with code":/projects/swc-python-intro |
13 | 10 | Chris Cannam | * "Software Carpentry Python lessons":http://software-carpentry.org/4_0/python/index.html |
14 | 6 | Chris Cannam | |
15 | 6 | Chris Cannam | Other subjects not covered on the day, that may be of interest: |
16 | 6 | Chris Cannam | |
17 | 6 | Chris Cannam | * *Audio in Python* -- "Repository with code (includes example of plotting in Python)":/projects/swc-python-audio |
18 | 6 | Chris Cannam | * *Data management* -- "Slides from Feb 2013":/documents/72 |
19 | 6 | Chris Cannam | * *Unit testing* -- "Tutorial script from Feb 2013":/projects/ssw-swc-2013/wiki/SWC2013TDD |
20 | 6 | Chris Cannam | * *What We Know* -- "Slides":/documents/70 about software-development working practices |
21 | 6 | Chris Cannam | |
22 | 1 | Chris Cannam | h2. Other material from us |
23 | 1 | Chris Cannam | |
24 | 1 | Chris Cannam | * We offer "a number of one-page info sheets":http://soundsoftware.ac.uk/handouts-guides on topics related to this workshop |
25 | 1 | Chris Cannam | * This very site, "code.soundsoftware.ac.uk":http://code.soundsoftware.ac.uk, is a code hosting site for projects by UK-based audio and music researchers. If you're interested in audio and music, please do register and make use of it! Repository hosting uses Mercurial, and your projects can be public or private. |
26 | 1 | Chris Cannam | |
27 | 1 | Chris Cannam | h2. Links about the software in the workshop |
28 | 1 | Chris Cannam | |
29 | 9 | Chris Cannam | * In day 1 we used "Mercurial":http://mercurial.selenic.com/ and "EasyMercurial":http://easyhg.org/ |
30 | 9 | Chris Cannam | |
31 | 9 | Chris Cannam | * In day 2 we used "Python":http://python.org, "SciPy":http://www.scipy.org/, "Matplotlib":http://matplotlib.org |
32 | 9 | Chris Cannam | |
33 | 9 | Chris Cannam | * We did not use (but could have used!) "Nose":https://nose.readthedocs.org/en/latest/, "scikits.audiolab":http://pypi.python.org/pypi/scikits.audiolab/ |
34 | 9 | Chris Cannam | |
35 | 9 | Chris Cannam | * The "SciPy Superpack":http://fonnesbeck.github.com/ScipySuperpack/ is a good way to get Python packages installed on OS/X |
36 | 9 | Chris Cannam | |
37 | 9 | Chris Cannam | * There are at least two bundled distributions of Python with scientific libraries and visualisation modules, which you can use to install a complete working Python system: "Anaconda":https://store.continuum.io/cshop/anaconda/ and "Canopy":https://www.enthought.com/products/canopy/. These come from different companies but they are both distributions of the same (open source) libraries, and are completely compatible when it comes to running your own code. |
38 | 1 | Chris Cannam | |
39 | 1 | Chris Cannam | h2. Topical links |
40 | 1 | Chris Cannam | |
41 | 1 | Chris Cannam | h3. Unix and shell |
42 | 1 | Chris Cannam | |
43 | 1 | Chris Cannam | * "Mac OS X man pages online":https://developer.apple.com/library/mac/#documentation/darwin/reference/manpages/index.html |
44 | 1 | Chris Cannam | * "Software Carpentry lessons":http://software-carpentry.org/4_0/shell/index.html |
45 | 1 | Chris Cannam | * "ELE595 - Software Tools For Engineers":http://www.eecs.qmul.ac.uk/~simond/teaching/ele595/index.html -- Undergraduate module at QMUL. Weeks 5-10 covered Unix |
46 | 1 | Chris Cannam | * "Unix tutorial @ University of Surrey":http://www.ee.surrey.ac.uk/Teaching/Unix/ |
47 | 1 | Chris Cannam | |
48 | 1 | Chris Cannam | To use Unix commands on a Windows machine, you will need to install additional software (e.g. "MinGW":http://www.mingw.org/ or "Cygwin":http://www.cygwin.com/). |
49 | 1 | Chris Cannam | NB: Cygwin doesn't install nano, Python or Mercurial by default - they need to be selected in the setup. |
50 | 1 | Chris Cannam | |
51 | 1 | Chris Cannam | The Windows command prompt and powershell provide similar facilities to the Unix shell, but with different commands and syntax! Of the two, the command prompt is very similar to the basic Unix tools we introduced, but Powershell is more powerful. |
52 | 1 | Chris Cannam | |
53 | 1 | Chris Cannam | * Some Windows command prompt "tutorials":http://www.7tutorials.com/ode-command-prompt-most-powerful-and-least-used-windows-tool |
54 | 1 | Chris Cannam | * Official Microsoft "Windows Powershell Owners Manual":http://technet.microsoft.com/en-us/library/ee221100.aspx |
55 | 1 | Chris Cannam | |
56 | 1 | Chris Cannam | If you own an android tablet or phone, then that is a Unix device. It doesn't come with a command prompt by default, but you can "install one":https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=en. NB: this may be dangerous for your device! |
57 | 1 | Chris Cannam | |
58 | 1 | Chris Cannam | If you want to try a full Unix system, then "VirtualBox":http://www.virtualbox.org/ can be used to create a "virtual machine" - a fake computer that runs inside your normal session. You can then install a Linux distribution on that virtual machine. |
59 | 10 | Chris Cannam | |
60 | 10 | Chris Cannam | h3. Python |
61 | 10 | Chris Cannam | |
62 | 10 | Chris Cannam | Lots of code editors will do syntax highlighting for python. |
63 | 10 | Chris Cannam | |
64 | 10 | Chris Cannam | * "Spyder":http://packages.python.org/spyder/ -- "Matlab-like" interface |
65 | 10 | Chris Cannam | * "PyCharm":http://www.jetbrains.com/pycharm/ -- cross-platform, 30 day free trial, ca. £25 for academic licence |
66 | 10 | Chris Cannam | * Lots more "here":http://wiki.python.org/moin/IntegratedDevelopmentEnvironments |
67 | 10 | Chris Cannam | |
68 | 10 | Chris Cannam | * "Software Carpentry Python lessons":http://software-carpentry.org/4_0/python/index.html |
69 | 1 | Chris Cannam | |
70 | 1 | Chris Cannam | h3. Version Control |
71 | 1 | Chris Cannam | |
72 | 1 | Chris Cannam | On Windows, "TortoiseHg":http://tortoisehg.bitbucket.org/ provides an alternative interface to Mercurial - you can right-click files in Windows Explorer. It's more techy than EasyMercurial! |
73 | 1 | Chris Cannam | |
74 | 1 | Chris Cannam | * "Software Carpentry version control lessons":http://software-carpentry.org/4_0/vc/index.html |
75 | 7 | Chris Cannam | |
76 | 8 | Chris Cannam | h1. Schedules etc |
77 | 7 | Chris Cannam | |
78 | 7 | Chris Cannam | h2. Dates/Where |
79 | 7 | Chris Cannam | |
80 | 7 | Chris Cannam | * Day 1: Afternoon of 12th February 2014 -- MAT lab |
81 | 7 | Chris Cannam | * Day 2: Afternoon of 26th March 2014 -- MAT lab |
82 | 7 | Chris Cannam | |
83 | 7 | Chris Cannam | h2. Schedule |
84 | 7 | Chris Cannam | |
85 | 7 | Chris Cannam | h3. Day 1 |
86 | 7 | Chris Cannam | |
87 | 7 | Chris Cannam | This is the actual schedule, i.e. with timings as they were on the day. |
88 | 7 | Chris Cannam | |
89 | 7 | Chris Cannam | Official slot 13.00-17.00. |
90 | 7 | Chris Cannam | |
91 | 7 | Chris Cannam | Attendance 18/22. |
92 | 7 | Chris Cannam | |
93 | 7 | Chris Cannam | * Start - 13.05 |
94 | 7 | Chris Cannam | * Short intro - Chris - 13.05 to 13.10 |
95 | 7 | Chris Cannam | * *Shell* - Steve - 13.10 to 14.40 |
96 | 7 | Chris Cannam | * Break - 14.40 to 15.10 |
97 | 7 | Chris Cannam | * *Version control* - Chris - 15.10 to 16.50 |
98 | 7 | Chris Cannam | * End - 16.50 |
99 | 7 | Chris Cannam | |
100 | 7 | Chris Cannam | h3. Day 2 |
101 | 7 | Chris Cannam | |
102 | 7 | Chris Cannam | Provisional schedule. |
103 | 7 | Chris Cannam | |
104 | 7 | Chris Cannam | Official slot 13.00-17.00. |
105 | 7 | Chris Cannam | |
106 | 7 | Chris Cannam | * Start - 13.05 |
107 | 7 | Chris Cannam | * *Python* - Bogdan - 13.05 to 14.40 |
108 | 7 | Chris Cannam | * Break - 14.45 to 15.15 |
109 | 7 | Chris Cannam | * *Python and NumPy* - Bogdan - 15.20 to 16.30 |
110 | 7 | Chris Cannam | * End - 16.30 |