Commit e434dd21 authored by Toby Hodges's avatar Toby Hodges

fleshed out the README a little more, and updated the nbviewer links to walkthroughs.

parent dca81ad2
......@@ -3,14 +3,20 @@
The course materials are divided into sections. You can use the links below to view each section in your browser. There is an overlap between the material in section 3 and in sections 4 & 5, which we recommend that you choose between.
1. [Getting Started](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/1_GettingStarted.ipynb)
2. [Beginning Programming](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/BeginningProgramming.ipynb)
3. [Input and Output](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/3_InputAndOutputMPL.ipynb)
4. [Nested Data Structures](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/4_NestedDataStructures.ipynb)
5. [Plotting Data With Bokeh](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/5_PlottingDataWithBokeh.ipynb)
1. [Getting Started](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/1_GettingStarted.ipynb) - an introduction to the basics of the language
2. [Beginning Programming](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/2_BeginningProgramming.ipynb) - exploring some of the central concepts and operations of programming
3. [Input and Output](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/3_InputAndOutputMPL.ipynb) - reading in, handling, and plotting data with the `matplotlib` library
4. [Nested Data Structures](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/4_NestedDataStructures.ipynb) - an introduction to creating and working with more complex data structures
5. [Plotting Data With Bokeh](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/5_PlottingDataWithBokeh.ipynb) - creating interactive plots with the `bokeh` library
This course provides an introduction to programming with the Python language. The course material is suitable for complete beginners, with no previous programming experience or knowledge required or assumed.
The materials are split into broad sections, which we call worksheets, containing exercises for you to try and most of the information that you will need to complete them. You can always get more information on any topic/object type/function etc. by looking at the Python help pages - type `help(object)` in the Python shell to get help on _object_ - or the 'cheat sheet', or by searching online. The online Python documentation (for [version 2.7](https://docs.python.org/2/) or [version 3](https://docs.python.org/3/)), people's previous questions on [StackOverflow](http://stackoverflow.com), and a lot of the module homepages are very good places to start.
The materials are split into broad sections, which we call worksheets, containing exercises for you to try and most of the information that you will need to complete them. The material covered is far from exhaustive. Instead, we try to provide enough information and tasks to get you started and we hope to get you quite quickly to a level where you are then capable to continuing to use Python for your own projects.
These materials are free to use. If you would prefer to attend a course in person, these are run in the Department of Biology at the [University of York](http://www.york.ac.uk/biology/technology-facility/bioinformatics/bi-tf-courses/), UK. For a similar introduction to programming (as well as other essential computing skills), check out [Software Carpentry](http://software-carpentry.org).
You can always get more information on any topic/object type/function etc. by looking at the Python help pages - type `help(object)` in the Python shell to get help on _object_ - or the 'cheat sheet', or by searching online. The online Python documentation (for [version 2.7](https://docs.python.org/2/) or [version 3](https://docs.python.org/3/)), people's previous questions on [StackOverflow](http://stackoverflow.com), and a lot of the module homepages are very good places to start.
If you work through the materials, you will learn:
* the basic concepts and building blocks of programming in Python
* how to quickly automate repetitive tasks and calculations
......@@ -21,7 +27,9 @@ If you work through the materials, you will learn:
We recommend using the [Anaconda distribution](https://store.continuum.io/cshop/anaconda/) of Python. It's free and comes with a large number of additional modules included ready for importing into your scripts, IPython shell and notebook interfaces, a powerful Python text editor (Spyder), and a good package manager, _conda_, for updating and installing packages.
The main course workbook (IntroductionToPythonProgramming.ipynb) can be viewed in nbviewer [here](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/master/IntroductionToPythonProgramming.ipynb).
The other IPython Notebook, WS3exercise.ipynb, is a worked-through solution to the main exercises in worksheet 3 of the workbook. This can be viewed in nbviewer [here](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/WS3exercise.ipynb). If you are taking the course, or working through the materials on your own, try to find your own solution to these exercises, and then use this ipynb if you get stuck, or want to compare your results to ours.
As well as the main notebooks, we provide walkthroughs of the equivalent plotting exercises in Sections 3 and 5, for your reference.
[Exercise 3.6](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/Exercise3_6WalkthroughMPL.ipynb)
[Exercise 5.6](http://nbviewer.ipython.org/github/tobyhodges/ITPP/blob/v2/Exercise5_6WalkthroughBokeh.ipynb)
If you are taking the course, or working through the materials on your own, try to find your own solution to these exercises, and then use this ipynb if you get stuck, or want to compare your results to ours.
All materials written by Toby Hodges (European Molecular Biology Laboratory) and Peter D. Ashton (University of York).
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment