--- a/project/templates/_menu.html Sat Nov 12 16:39:00 2011 +0530
+++ b/project/templates/_menu.html Tue Nov 15 02:25:12 2011 +0530
@@ -36,12 +36,12 @@
Conference
</a>
</li>
- <!-- <li>
+ <li>
<a href="/{{ params.scope }}/talks-cfp/tutorial/">
Tutorial Schedule
</a>
- </li>
- <<li>
+ </li>
+ <!-- <li>
<a href="/{{ params.scope }}/talks-cfp/sprint/">
Sprint Plan & Schedule
</a>
--- a/project/templates/about/tutorial.html Sat Nov 12 16:39:00 2011 +0530
+++ b/project/templates/about/tutorial.html Tue Nov 15 02:25:12 2011 +0530
@@ -46,341 +46,196 @@
<h3 id="sec-4"><span class="section-number-3"></span>Coverage </h3>
-<h4 id="sec-1">Day 3 </h4>
-
-
-<ul>
-<li>
-Sage (2 hr 30 min)
-<ul>
-<li>
-getting started with Sage notebook (45 min) (<b>Prabhu</b>)
-<ul>
-<li>
-introduction
-</li>
-<li>
-starting the server
-</li>
-<li>
-the UI
-</li>
-<li>
-getting help
-</li>
-<li>
-overview of what's available in Sage
-<ul>
-<li>
-basic calculus
-</li>
-<li>
-basic algebra
-</li>
-<li>
-basic plotting
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-symbolics & calculus & basic plotting(1 hr) (<b>Bhanu</b>)
-<ul>
-<li>
-parametric plots
-<ul>
-<li>
-2D
-</li>
-<li>
-3D
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-linear algebra (30 min) (<b>Nishanth</b>)
-</li>
-<li>
-Misc (15 min)
-<ul>
-<li>
-QA
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-Basic Plotting (using pylab) (1 hr 30 min) (<b>Fernando</b>)
-<ul>
-<li>
-getting started with ipython
-</li>
-<li>
-using the plot command interactively
-</li>
-<li>
-embellishing a plot
-</li>
-<li>
-saving plots
-</li>
-<li>
-multiple plots
-</li>
-<li>
-saving to scripts and running them (from ipython)
-</li>
-<li>
-running the same thing in sage notebook
-<ul>
-<li>
-change language to python, import pylab, simple plot, savefig
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-Plotting Experimental Data (1 hr) (<b>Puneeth</b>)
-<ul>
-<li>
-plotting points with lists
-<ul>
-<li>
-basic lists
-<ul>
-<li>
-indexing
-</li>
-<li>
-appending
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-loading data from files using loadtxt
-</li>
-<li>
-using for loop with lists
-<ul>
-<li>
-pendulum example
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-
-
-
-
+<!-- <h4 id="sec-1">Day 2 </h4> -->
-<h4 id="sec-2">Day 4 </h4>
-
-
-<ul>
<li>
-Arrays (1 hr) (<b>Perry</b>)
-<ul>
-<li>
-Why use arrays
-<ul>
-<li>
-finding sine of a list of million numbers
-</li>
-</ul>
-</li>
-<li>
-getting started with arrays
-</li>
-<li>
-accessing parts of arrays
-<ul>
-<li>
-1d slicing
-</li>
-<li>
-1d striding
-</li>
-<li>
-2d slicing
-</li>
-<li>
-2d striding
-</li>
-</ul>
-</li>
-<li>
-lena example of above
-</li>
-<li>
-element wise operations
-</li>
-<li>
-matrices
-<ul>
-<li>
-operations on matrices like det, inv, norm.
-</li>
-</ul>
+ Jarrod Millman, Git/Github + NumPy/SciPy/MPL basics: 2 hrs
+ <ul>
+ <li>Git/Github</li>
+ <li>NumPy and SciPy basics along with the most important Matplotlib commands.
+ This could be thought of as a quick refresher on the basic tools used in Python for scientific computing.
+ </li>
+ </ul>
</li>
-</ul>
-</li>
-<li>
-Scipy (1 hr 30 min) (<b>John</b>)
-<ul>
-<li>
-least square fit
-</li>
-<li>
-Roots
-<ul>
-<li>
-introduction to functions
-</li>
-</ul>
-</li>
-<li>
-Solving Equations
-</li>
-<li>
-ODE
-<ul>
+
<li>
-revisiting functions
-</li>
-</ul>
+ Emmanuelle Gouillart, Image processing: 2 hrs<br />
+
+<u>Image manipulation and processing using NumPy, SciPy and scikits-image</u>
+
+ <ul>
+ <li>This tutorial will show a bag of basic recipes in order to efficiently
+manipulate and process images in the form of NumPy arrays.
+ </li>
+ <li>Target audience: scientists and engineers working with images
+ </li>
+ <li>
+ Prerequisites : being able to code Python scripts and use an
+ interactive Python shell + some knowledge of NumPy
+ </li>
+ <li>
+ Software requirements: IPython, NumPy, SciPy, Matplolib, <a href="http://skimage.org">scikits-image</a>, and optionally sklearn
+ </li>
+ <li>
+ Topics covered
+ <ul>
+ <li>I/O: how to open different image formats, how to open raw images, how to deal with very large raw files.</li>
+ <li>Basic visualization of images, and interaction with image data</li>
+ <li>Transforming images: changing the size, resolution, orientation of an image; image filtering; image segmentation.</li>
+ <li>Extracting information from images: measuring properties of segmented objects; image classification</li>
+ </ul>
+ <li>
+ This tutorial will by no means be a course on digital image processing.It is rather a bag of tricks on how to
+ tinker with images, and how to use the goodies of Python/NumPy/SciPy to make this task easier. A large part
+ of the talk will be devoted to hands-on exercises using the NumPy, SciPy
+ and Matplotlib modules. Some other modules will be mentioned during the
+ tutorial for more advanced uses.
+ </li>
+ <li>The course materials are available <a href="http://scipy-lectures.github.com/advanced/image_processing/index.html">here</a></li>
+ </ul>
</li>
-<li>
-FFT
-</li>
-</ul>
-</li>
-<li>
-Python Language: Basics (1 hr) (<b>Asokan</b>)
-<ul>
+
<li>
-basic data-types
-<ul>
-<li>
-strings
-</li>
-</ul>
-</li>
-<li>
-Operators
-</li>
-<li>
-I/O
+Gael Varoquaux, scikit-learn: 2 hrs<br />
+<u>Machine learning with scikit-learn</u>
+ <ul>
+ <li>
+ Introduction to machine learning and statistical data processing with the
+ features in scikit-learn, and how to use it to solve real-world problems:
+ from handwritten digits classification to stock market prediction.
+ </li>
+ <li>
+ Target audience : Engineers and scientists using Python for scientific
+ and numerical computing. No knowledge needed in statistical learning.
+ </li>
+ <li>
+ Prerequisites: Being able to code scripts and function in Python. Basic
+ knowledge of numpy and matplotlib.
+ </li>
+ <li>
+ Software requirements: IPython, scikits.learn, matplotlib.
+ </li>
+ <li>
+ Outline
+ <ul>
+ <li>The settings: datasets, estimators, and the prediction problem.</li>
+ <li>Regression and classification: Support Vector Machines, sparse regressions... Example: recognising hand-written digits</li>
+ <li>Model selection: choosing the right estimator, and the right parameters</li>
+ <li>Clustering: KMeans, Affinity Propagation. Example: finding structure in the stock market.</li>
+ </ul>
+
+
+ </li>
+ </ul>
</li>
<li>
-conditionals
-</li>
-<li>
-loops
-<ul>
-<li>
-while
-</li>
-<li>
-for loop and its usage with range
-</li>
-</ul>
-</li>
-</ul>
-</li>
-<li>
-Python Language: Data structures (1hr 30 min) (<b>Asokan</b>)
-<ul>
-<li>
-manipulating lists
-</li>
-<li>
-dictionaries
+Ole Nielsen: Mapping and Geoprocessing with Python, 2 hrs
+ <ul>
+ <li>
+ Putting information on a map and analyzing spatial data are fundamental to a
+ wide range of areas such as navigation, working with climate or geological data,
+ disaster management, presentation of modelling results, demographics, social networking etc.
+ </li>
+ <li>
+ This tutorial will give a practical introduction to tools and techniques
+ available for processing spatial information and, through a few hands-on
+ exercises, give the participants a sense of how to manipulate and visualise
+ spatial data using Python. Topics covered include reading and writing
+ of important data formats for both raster and vector data, looking at the layers,
+ awareness of issues with datums and projections, calculating centroids of polygons,
+ calculation of distance between points on the surface of Earth, interpolation from raster
+ grids to points etc. The tutorial has been developed for Ubuntu Linux and will provide source code,
+ tests and data for this platform. However, the content and messages should be general and apply to any platform.
+ </li>
+ <li>
+ I assume that participants know how to write and run
+ Python scripts and would suggest you install qgis as well as
+ the python dependencies numpy, matplotlib and gdal on your
+ laptop. I don't assume any previous knowledge of mapping or Geographic Information Systems (GIS).
+ </li>
+ <li>
+ If you have some spatial data you want to manipulate in Python feel free to bring it along and grab me during a lunch break.
+ </li>
+ </ul>
</li>
-<li>
-manipulating strings
-</li>
+
<li>
-getting started with tuples
-</li>
-<li>
-sets
-</li>
-<li>
-examples
+Eric Jones/Puneeth/Pankaj: Traits + Traits UI. 2 hrs.
+ <ul>
+ <li>
+ Enthought’s traits package provides for a powerful object model which
+ provides a host of useful functionality with a clean and expressive syntax.
+ It is an open source library and forms the basis of the Enthought Tool Suite and many of
+ Enthought’s internal commercial projects. In this tutorial we will cover the basics of using
+ Traits along with the UI library TraitsUI which makes it very easy to build powerful and
+ interactive, user interfaces using Traits.
+ </li>
+ </ul>
</li>
-</ul>
-</li>
-</ul>
-
+<li>
+Prabhu Ramachandran and Gael Varoquaux, Mayavi for 3D visualization: 2 hrs
-
-
-
-
-<h4 id="sec-3">Day 5 </h4>
+ <ul>
+ <li>
+ At the end of this tutorial attendees will learn how to visualize numpy
+ arrays using Mayavi's mlab interface. They will also learn enough about
+ mayavi to be able to create their own simple datasets and visualize
+ them. If this tutorial follows one on traits, then attendees will learn
+ how easy it is to embed 3D visualization in their own application UIs
+ (provided they are written in wxPython or PyQt).
+ </li>
+ <li>
+ In this tutorial, we first provide a rapid overview of Mayavi_ and its
+ features. We then move on to using Mayavi via IPython_ and mlab. This
+ is done in a hands-on fashion and introduces the audience to visualizing
+ numpy arrays and the basic mayavi visualization pipeline. We then
+ introduce the audience to the basic objects and data sources used in
+ Mayavi. We end with an example of creating custom dialogs using Traits
+ and embedding 3D visualization in these dialogs with Mayavi.
+ </li>
+ <li>
+ Packages required
+ <ul>
+ <li><a href="http://code.enthought.com/projects/mayavi">Mayavi</a></li>
+ <li><a href="http://ipython.scipy.org">IPython</a></li>
+ <li><a href="http://code.enthought.com/projects/traits">Traits</a></li>
+ <li>numpy, scipy</li>
+ </ul>
+ </li>
+ </ul>
+</li>
-<ul>
<li>
-Python Language: Advanced (1 hr) (<b>Madhu</b>)
-<ul>
-<li>
-functions
-<ul>
-<li>
-defining functions
-</li>
-<li>
-keyword arguments and default arguments
-</li>
-</ul>
-</li>
-<li>
-using python modules
-</li>
-<li>
-writing re-usable python scripts
-</li>
-<li>
-PEP-8?
+Pankaj Pandey and Prabhu Ramachandran, An introduction to Cython: 1 hrs
+ <ul>
+ <li>
+ At some level, Cython (http://www.cython.org) can be thought of a Python to C compiler.
+ It allows someone to write extension modules in a language very similar to Python and
+ therefore makes it rather easy to write C-extensions. In this tutorial we will cover
+ the basics of building extension modules with Cython.
+ </li>
+ <li>
+ Package requirements: You will require to have Cython, the
+ Python development headers and a working C-compiler to run the hands-on exercises.
+ </li>
+ </ul>
</li>
-</ul>
-</li>
-<li>
-More Numpy? (broadcasting, indexing tricks…) (1hr) (<b>Stefan</b>)
-</li>
-<li>
-Mayavi (1 hr) (<b>Prabhu</b>)
-</li>
-<li>
-Cython (1 hr) (<b>Stefan</b>)
-</li>
+
<li>
-Version Control (Hg/Git) (15 min) (<b>Madhu</b>)
+Puneeth Chaganti, Sage introduction/tutorial: 1 hr.
+ <ul>
+ <li>This tutorial will feature a demonstration and a brief review of some of the capabilities of the <a href="http://www.sagemath.org">Sage notebook</a>.</li>
+ </ul>
</li>
-<li>
-ReST & Scipy/Numpy Documentation Editor (45 min) (<b>Stefan</b>)
-</li>
-</ul>
-
-<p>Any participants using their own laptops should have the required
-software installed on their machines, before coming to the venue of
-the tutorials. The installation instructions are available <a href="http://fossee.in/installation-how-to">here</a>.
-</p>
-
+<li>
+Mateusz Paprocki, SymPy: 2 hrs<br />
+<b>Details awaited</b>
+</li>
<h3 id="sec-5"><span class="section-number-3"></span>Methodology </h3>
@@ -396,9 +251,6 @@
</li>
</ul>
-
-<p>Laptops can be brought by participants, and additional laptops/computers can be provided for use for those required. Charging points will be available.
-</p>
<p>
As far as installations go, you would require the following:
</p>
--- a/project/templates/talk/schedule.html Sat Nov 12 16:39:00 2011 +0530
+++ b/project/templates/talk/schedule.html Tue Nov 15 02:25:12 2011 +0530
@@ -11,8 +11,8 @@
<tr> <td align=center><strong>Date</strong></td><td><strong>Activity</strong></td> </tr>
<tr > <td align=right>Sunday, Dec. 04 2011</td><td><a href="/{{ params.scope }}/talks-cfp/conference/">Conference</a></td> </tr>
<tr> <td align=right>Munday, Dec. 05 2011</td><td><a href="/{{ params.scope }}/talks-cfp/conference/">Conference</a></td> </tr>
- <!-- <tr> <td align=right>Tuesday, Dec. 06 2011</td><td><a href="/{{ params.scope }}/tutorial/">Tutorials</a>/<a href="/{{ params.scope }}/sprints/">Sprint</a></td> </tr>
- <tr> <td align=right>Wednesday, Dec. 07 2011</td><td><a href="/{{ params.scope }}/tutorial/">Tutorials</a>/<a href="/{{ params.scope }}/sprints/">Sprint</a></td> </tr> -->
+ <tr> <td align=right>Tuesday, Dec. 06 2011</td><td><a href="/{{ params.scope }}/tutorial/">Tutorials</a><!-- /<a href="/{{ params.scope }}/sprints/">Sprint</a> --></td> </tr>
+ <tr> <td align=right>Wednesday, Dec. 07 2011</td><td><a href="/{{ params.scope }}/tutorial/">Tutorials</a><!-- /<a href="/{{ params.scope }}/sprints/">Sprint</a> --></td> </tr>
</table>
<br />
--- a/project/urls.py Sat Nov 12 16:39:00 2011 +0530
+++ b/project/urls.py Tue Nov 15 02:25:12 2011 +0530
@@ -120,9 +120,9 @@
url(r'^%s/talks-cfp/schedule/$' % (SCOPE_ARG_PATTERN),
direct_to_template, {"template": "talk/schedule.html"},
name='scipycon_schedule'),
- # url(r'^%s/talks-cfp/tutorial/$' % (SCOPE_ARG_PATTERN),
- # direct_to_template, {"template": "talk/tutorial-schedule.html"},
- # name='scipycon_tutorial_schedule'),
+ url(r'^%s/talks-cfp/tutorial/$' % (SCOPE_ARG_PATTERN),
+ direct_to_template, {"template": "about/tutorial.html"},
+ name='scipycon_tutorial'),
# url(r'^%s/talks-cfp/sprint/$' % (SCOPE_ARG_PATTERN),
# direct_to_template, {"template": "talk/sprint-schedule.html"},
# name='scipycon_sprint_schedule'),