project/templates/about/tutorial.html
branch2011
changeset 522 01b130ea8d8d
parent 486 ea923104766c
equal deleted inserted replaced
521:eaa64de2887f 522:01b130ea8d8d
     1 {% extends "base.html" %}
     1 {% extends "base.html" %}
     2 {% block content %}
     2 {% block content %}
     3 <h1>Tutorials</h1>
     3 <h1 class="title">SciPy.in 2011 Tutorial Schedule</h1>
     4 
     4 
     5 <h3 id="sec-1"><span class="section-number-3"></span>Intended audience </h3>
     5 <h2 id="sec-1">Day 3 </h2>
       
     6 
       
     7 
       
     8 <table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
       
     9 <caption></caption>
       
    10 <colgroup><col class="right" /><col class="left" /><col class="left" />
       
    11 </colgroup>
       
    12 <thead>
       
    13 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr>
       
    14 </thead>
       
    15 <tbody>
       
    16 <tr><td class="right">09:00-11:00</td><td class="left">Puneeth Chaganti</td><td class="left"><a href="#sec2.1" >Git/Github + NumPy/SciPy/MPL basics</a></td></tr>
       
    17 <tr><td class="right">11:00-13:00</td><td class="left">Emmanuelle Gouillart</td><td class="left"><a href="#sec2.2">Image processing using NumPy, SciPy and scikits-image</a></td></tr>
       
    18 <tr><td class="right">13:00-14:00</td><td class="left"></td><td class="left">Lunch</td></tr>
       
    19 <tr><td class="right">14:00-15:00</td><td class="left">Ole Nielsen</td><td class="left"><a href="#sec2.5">Mapping and Geoprocessing with Python</a></td></tr>
       
    20 <tr><td class="right">15:00-18:00</td><td class="left">Gael Varoquaux</td><td class="left"><a href="#sec2.3">Machine learning with scikit-learn</a></td></tr>
       
    21 </tbody>
       
    22 </table>
       
    23 
       
    24 <h2 id="sec-2">Day 4 </h2>
       
    25 
       
    26 
       
    27 <table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
       
    28 <caption></caption>
       
    29 <colgroup><col class="right" /><col class="left" /><col class="left" />
       
    30 </colgroup>
       
    31 <thead>
       
    32 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr>
       
    33 </thead>
       
    34 <tbody>
       
    35 <tr><td class="right">09:00-11:00</td><td class="left">Mateusz Paprocki</td><td class="left"><a href="#sec2.4">SymPy</a></td></tr>
       
    36 <tr><td class="right">11:00-13:00</td><td class="left">Eric Jones</td><td class="left"><a href="#sec2.6">Traits + Traits UI</a></td></tr>
       
    37 <tr><td class="right">13:00-14:00</td><td class="left"></td><td class="left">Lunch</td></tr>
       
    38 <tr><td class="right">14:00-16:00</td><td class="left">Prabhu Ramachandran and Gael Varoquaux</td><td class="left"><a href="#sec2.7">Mayavi for 3D visualization</a></td></tr>
       
    39 <tr><td class="right">16:00-17:00</td><td class="left">Puneeth Chaganti</td><td class="left"><a href="#sec2.8">Sage introduction/tutorial</a></td></tr>
       
    40 <tr><td class="right">17:00-18:00</td><td class="left">Pankaj Pandey and Prabhu Ramachandran</td><td class="left"><a href="#sec2.9">An introduction to Cython</a></td></tr>
       
    41 </tbody>
       
    42 </table>
       
    43 <br/><br/>
       
    44 
       
    45 <h2 id="sec-1"><span class="section-number-3"></span>Intended audience </h2>
     6 
    46 
     7 <p>This conference is targeted at anyone who uses Python for work in science/engineering/technology/education. This includes college and university teachers/professors/lecturers from any Engineering or Science domain, students of engineering/science/education who would like to use Python for their basic computing and plotting needs, researchers who use or would like to use Python for their research, and corporate users of Python for scientific computing.
    47 <p>This conference is targeted at anyone who uses Python for work in science/engineering/technology/education. This includes college and university teachers/professors/lecturers from any Engineering or Science domain, students of engineering/science/education who would like to use Python for their basic computing and plotting needs, researchers who use or would like to use Python for their research, and corporate users of Python for scientific computing.
     8 </p>
    48 </p>
     9 
    49 
    10 <h3 id="sec-2"><span class="section-number-3"></span>Prerequisites </h3>
    50 <h2 id="sec-2"><span class="section-number-3"></span>Prerequisites </h2>
    11 
    51 
    12 <ul>
    52 <ul>
    13 <li>
    53 <li>
    14 Participants should be comfortable computer users and be familiar with programming constructs such as loops, conditionals.
    54 Participants should be comfortable computer users and be familiar with programming constructs such as loops, conditionals.
    15 </li>
    55 </li>
    18 </li>
    58 </li>
    19 <li>
    59 <li>
    20 Familiarity with using the commandline will be another plus.
    60 Familiarity with using the commandline will be another plus.
    21 
    61 
    22 </li>
    62 </li>
    23 </ul>
    63 <li>
    24 
    64 These tutorials are all fairly advanced and require that you be familiar with Python.
    25 <h3 id="sec-3"><span class="section-number-3"></span>Objectives </h3>
    65 </li>
    26 
    66 <li>
    27 <ul>
    67 For a good introduction it is recommended that you read the <a href="http://docs.python.org/tutorial/">Python Tutorial</a> completely.
    28 <li>
    68 </li>
    29 At the end of the program the participants will have a good understanding of the Python language, and selected libraries.
    69 <li>
    30 </li>
    70 Spoken tutorials teaching you Python are also available <a href="http://www.fossee.in/stvideos">here</a> please go through those.
    31 <li>
    71 </li>
    32 They will be able to write good modular procedural code and use objects.
    72 </ul>
    33 </li>
    73 
    34 <li>
    74 <h2 id="sec-4"><span class="section-number-3"></span>Coverage </h2>
    35 They will get a overview of the other major topics, features and libraries and be able to learn these on their own if required.
    75 
    36 </li>
    76 
    37 <li>
    77 <!-- <h4 id="sec-1">Day 2 </h4> -->
    38 They will be able to generate 2-D plots using NumPy and Matplotlib, and 3-D plots using MayaVi2.
    78 
    39 </li>
    79 
    40 <li>
    80 
    41 They will be able to incorporate and adapt Python in their lessons
    81 <h3 id="sec2.1">Puneeth Chaganti, Git/Github + NumPy/SciPy/MPL basics (2 hrs)</h3>
    42 
    82 <ul>
    43 </li>
    83 	<li>Git/Github</li>
    44 </ul>
    84 	<li>NumPy and SciPy basics along with the most important Matplotlib commands.
    45 
    85 		This could be thought of as a quick refresher on the basic tools used in Python for scientific computing.
    46 <h3 id="sec-4"><span class="section-number-3"></span>Coverage </h3>
    86 	</li>
    47 
    87 </ul>
    48 
    88 
    49 <h4 id="sec-1">Day 3 </h4>
    89 
    50 
    90 
    51 
    91 <h3 id="sec2.2">Emmanuelle Gouillart, Image processing using NumPy, SciPy and scikits-image (2 hrs)</h3>
    52 <ul>
    92 <ul>
    53 <li>
    93 	<li>This tutorial will show a bag of basic recipes in order to efficiently
    54 Sage (2 hr 30 min)
    94 manipulate and process images in the form of NumPy arrays.
    55 <ul>
    95 	</li>
    56 <li>
    96 	<li>Target audience: scientists and engineers working with images
    57 getting started with Sage notebook (45 min) (<b>Prabhu</b>)
    97 	</li>
    58 <ul>
    98 	<li>
    59 <li>
    99 	Prerequisites : being able to code Python scripts and use an
    60 introduction
   100 interactive Python shell + some knowledge of NumPy
    61 </li>
   101 	</li>
    62 <li>
   102 	<li>
    63 starting the server
   103 	Software requirements: IPython, NumPy, SciPy, Matplolib, <a href="http://skimage.org">scikits-image</a>, and optionally sklearn
    64 </li>
   104 	</li>
    65 <li>
   105 	<li>
    66 the UI
   106 	Topics covered
    67 </li>
   107 	<ul>
    68 <li>
   108 		<li>I/O: how to open different image formats, how to open raw images, how to deal with very large raw files.</li>
    69 getting help
   109 		<li>Basic visualization of images, and interaction with image data</li>
    70 </li>
   110 		<li>Transforming images: changing the size, resolution, orientation of an image; image filtering; image segmentation.</li>
    71 <li>
   111 		<li>Extracting information from images: measuring properties of segmented objects; image classification</li>
    72 overview of what's available in Sage
   112 	</ul>
    73 <ul>
   113 	<li>
    74 <li>
   114 	This tutorial will by no means be a course on digital image processing.It is rather a bag of tricks on how to 
    75 basic calculus
   115 	tinker with images, and how to use the goodies of Python/NumPy/SciPy to make this task easier. A large part 
    76 </li>
   116 	of the talk will be devoted to hands-on exercises using the NumPy, SciPy 
    77 <li>
   117 	and Matplotlib modules. Some other modules will be mentioned during the 
    78 basic algebra
   118 	tutorial for more advanced uses.
    79 </li>
   119 	</li>
    80 <li>
   120 	<li>The course materials are available <a href="http://scipy-lectures.github.com/advanced/image_processing/index.html">here</a></li>
    81 basic plotting 
   121 </ul>
    82 </li>
   122 
    83 </ul>
   123 
    84 </li>
   124 <h3 id="sec2.3">Gael Varoquaux,   Machine learning with scikit-learn  (3 hrs)</h3>
    85 </ul>
   125 <ul>
    86 </li>
   126 	<li>
    87 <li>
   127 	Introduction to machine learning and statistical data processing with the
    88 symbolics &amp; calculus  &amp; basic plotting(1 hr) (<b>Bhanu</b>)
   128 	features in scikit-learn, and how to use it to solve real-world problems:
    89 <ul>
   129 	from handwritten digits classification to stock market prediction.
    90 <li>
   130 	</li>
    91 parametric plots
   131 	<li>
    92 <ul>
   132 	Target audience :   Engineers and scientists using Python for scientific
    93 <li>
   133 	and numerical computing. No knowledge needed in statistical learning.
    94 2D
   134 	</li>
    95 </li>
   135 	<li>
    96 <li>
   136 	Prerequisites: Being able to code scripts and function in Python. Basic
    97 3D
   137 	knowledge of numpy and matplotlib.
    98 </li>
   138 	</li>
    99 </ul>
   139 	<li>
   100 </li>
   140 	Software requirements: IPython, scikits.learn, matplotlib.
   101 </ul>
   141 	</li>
   102 </li>
   142 	<li>
   103 <li>
   143 	Outline
   104 linear algebra (30 min) (<b>Nishanth</b>)
   144 		<ul>
   105 </li>
   145 			<li>The settings: datasets, estimators, and the prediction problem.</li>
   106 <li>
   146 			<li>Regression and classification: Support Vector Machines, sparse regressions... Example: recognising hand-written digits</li>
   107 Misc (15 min)
   147 			<li>Model selection: choosing the right estimator, and the right parameters</li>
   108 <ul>
   148 			<li>Clustering: KMeans, Affinity Propagation. Example: finding structure in the stock market.</li>		
   109 <li>
   149 		</ul>
   110 QA
   150 	
   111 </li>
   151 	
   112 </ul>
   152 	</li>
   113 </li>
   153 </ul>
   114 </ul>
   154 
   115 </li>
   155 <h3 id="sec2.4">Mateusz Paprocki,  SymPy (2 hrs)</h3>
   116 <li>
   156 <ul>
   117 Basic Plotting (using pylab) (1 hr 30 min) (<b>Fernando</b>)
   157 	<li>
   118 <ul>
   158 	SymPy is a pure Python library for symbolic mathematics. It aims to become a
   119 <li>
   159 	full-featured computer algebra system (CAS) while keeping the code as simple
   120 getting started with ipython  
   160 	as possible in order to be comprehensible and easily extensible. SymPy is
   121 </li>
   161 	written entirely in Python and does not require any external libraries.
   122 <li>
   162 	</li>
   123 using the plot command interactively
   163 	<li>
   124 </li>
   164 	In this tutorial we will introduce attendees to SymPy. We will start by
   125 <li>
   165 	showing how to install and run SymPy. Then we will proceed with the basics
   126 embellishing a plot
   166 	of constructing and manipulating mathematical expressions in SymPy. We will
   127 </li>
   167 	also discuss the most common issues and differences from other computer
   128 <li>
   168 	algebra systems, and how to deal with them. We will also show how to solve
   129 saving plots
   169 	simple, yet illustrative mathematical problems using SymPy.
   130 </li>
   170 	</li>
   131 <li>
   171 	<li>
   132 multiple plots
   172 	Outline
   133 </li>
   173 		<ul>
   134 <li>
   174 			<li>Installing, configuring and running SymPy.</li>
   135 saving to scripts and running them (from ipython)
   175 			<li>Basics of mathematical expressions:
   136 </li>
   176  				<ul>
   137 <li>
   177  					<li>symbols, dummy symbols</li>
   138 running the same thing in sage notebook 
   178  					<li>constructing expressions</li>
   139 <ul>
   179  					<li>expression traversal</li>
   140 <li>
   180  					<li>pattern matching</li>
   141 change language to python, import pylab, simple plot, savefig
   181 				</ul>
   142 </li>
   182 			</li>
   143 </ul>
   183 			<li>Common issues, pitfalls and differences with other CAS:
   144 </li>
   184 				<ul>
   145 </ul>
   185 					<li>1/3 is not a rational number</li>
   146 </li>
   186  					<li>why you shouldn't write 10**(-1000)</li>
   147 <li>
   187  					<li>issues with caching of computation results</li>
   148 Plotting Experimental Data (1 hr) (<b>Puneeth</b>)
   188 				</ul>
   149 <ul>
   189 			</li>
   150 <li>
   190 			<li>Using built-in and implementing customized printers.</li>
   151 plotting points with lists
   191 			<li>Arbitrary precision numerical computing.</li>
   152 <ul>
   192 			<li>Interaction with numerical libraries (NumPy, SciPy).</li>
   153 <li>
   193 			<li>Examples.</li>
   154 basic lists
   194 		</ul>
   155 <ul>
   195 	</li>
   156 <li>
   196 </ul>
   157 indexing
   197 
   158 </li>
   198 <h3 id="sec2.5">Ole Nielsen: Mapping and Geoprocessing with Python (1 hr)</h3>
   159 <li>
   199 <ul>
   160 appending
   200 	<li>
   161 </li>
   201 	Putting information on a map and analyzing spatial data are fundamental to a
   162 </ul>
   202  	wide range of areas such as navigation, working with climate or geological
   163 </li>
   203  	data, disaster management, presentation of modelling results, demographics,
   164 </ul>
   204  	social networking etc. However, making and viewing maps is just the tip of
   165 </li>
   205  	the iceberg: to communicate spatial information much work is needed under
   166 <li>
   206  	the hood to read, write, manipulate and process the data underpinning the
   167 loading data from files using loadtxt
   207 	maps.
   168 </li>
   208 	</li>
   169 <li>
   209 	<li>
   170 using for loop with lists
   210 	T This tutorial will give a practical introduction to tools and techniques
   171 <ul>
   211  	available for processing spatial information and, through hands-on
   172 <li>
   212 	 exercises, give the participants a sense of how to manipulate spatial data
   173 pendulum example
   213 	 using Python. Depending on time, topics covered include reading and writing
   174 </li>
   214 	 of important data formats for both raster and vector data, looking at the
   175 </ul>
   215  	layers with qgis, awareness of issues with datums and projections,
   176 </li>
   216  	calculating area and centroids of polygons, performance enhancement using
   177 </ul>
   217  	vector operations, numerical stability issues, calculation of distance
   178 </li>
   218 	 between points on the surface of Earth, interpolation from raster grids to
   179 </ul>
   219 	 points etc. The tutorial has been developed for Ubuntu Linux 11.04/11.10 and
   180 
   220 	 will provide source code, tests and data for this platform. However, the
   181 
   221 	 content and messages should be general and apply to any self-respecting
   182 
   222 	 platform.
   183 
   223 	</li>
   184 
   224 	<li>
   185 
   225 	I assume that participants know how to write and run Python scripts and are
   186 
   226  	OK having a crack at implementing simple numerical operations such as
   187 <h4 id="sec-2">Day 4 </h4>
   227  	summations in Python. I don't assume any previous knowledge of mapping or
   188 
   228  	Geographic Information Systems (GIS). The tutorial depends on the
   189 
   229  	packages qgis and gdal-bin as well as the python dependencies python-numpy
   190 <ul>
   230  	and python-gdal which are preloaded on the distributed live-DVD. The
   191 <li>
   231  	tutorial material itself will be available in the Subversion repository
   192 Arrays (1 hr) (<b>Perry</b>)
   232  	http://oles-tutorials.googlecode.com/svn/trunk/scipy2011 and also on a USB
   193 <ul>
   233  	stick that I will bring along.		
   194 <li>
   234 	</li>
   195 Why use arrays
   235 	<li>
   196 <ul>
   236 	If you have some spatial data you want to manipulate in Python feel free to
   197 <li>
   237  	bring it along and grab me during a lunch break.
   198 finding sine of a list of million numbers
   238 	</li>
   199 </li>
   239 </ul>
   200 </ul>
   240 
   201 </li>
   241 
   202 <li>
   242 <h3 id="sec2.6">Eric Jones: Traits + Traits UI (2 hrs)</h3> 
   203 getting started with arrays
   243 <ul>
   204 </li>
   244 	<li>
   205 <li>
   245 	Enthought’s traits package provides for a powerful object model which 
   206 accessing parts of arrays
   246 	provides a host of useful functionality with a clean and expressive syntax.  
   207 <ul>
   247 	It is an open source library and forms the basis of the Enthought Tool Suite and many of 
   208 <li>
   248 	Enthought’s internal commercial projects.  In this tutorial we will cover the basics of using 
   209 1d slicing 
   249 	Traits along with the UI library TraitsUI which makes it very easy to build powerful and 
   210 </li>
   250 	interactive, user interfaces using Traits.
   211 <li>
   251 	</li>
   212 1d striding
   252 </ul>
   213 </li>
   253 
   214 <li>
   254 
   215 2d slicing
   255 <h3 id="sec2.7">Prabhu Ramachandran and Gael Varoquaux, Mayavi for 3D visualization (2 hrs)</h3>
   216 </li>
   256 <ul>
   217 <li>
   257 	<li>
   218 2d striding
   258 	At the end of this tutorial attendees will learn how to visualize numpy
   219 </li>
   259 	arrays using Mayavi's mlab interface.  They will also learn enough about
   220 </ul>
   260 	mayavi to be able to create their own simple datasets and visualize
   221 </li>
   261 	them.  If this tutorial follows one on traits, then attendees will learn
   222 <li>
   262 	how easy it is to embed 3D visualization in their own application UIs
   223 lena example of above
   263 	(provided they are written in wxPython or PyQt).
   224 </li>
   264 	</li>
   225 <li>
   265 	<li>
   226 element wise operations
   266 	In this tutorial, we first provide a rapid overview of Mayavi_ and its
   227 </li>
   267 	features.  We then move on to using Mayavi via IPython_ and mlab.  This
   228 <li>
   268 	is done in a hands-on fashion and introduces the audience to visualizing
   229 matrices
   269 	numpy arrays and the basic mayavi visualization pipeline.  We then
   230 <ul>
   270 	introduce the audience to the basic objects and data sources used in
   231 <li>
   271 	Mayavi.  We end with an example of creating custom dialogs using Traits
   232 operations on matrices like det, inv, norm.
   272 	and embedding 3D visualization in these dialogs with Mayavi.
   233 </li>
   273 	</li>
   234 </ul>
   274 	<li>
   235 </li>
   275 	Packages required
   236 </ul>
   276 		<ul>
   237 </li>
   277 			<li><a href="http://code.enthought.com/projects/mayavi">Mayavi</a></li>
   238 <li>
   278 			<li><a href="http://ipython.scipy.org">IPython</a></li>
   239 Scipy (1 hr 30 min) (<b>John</b>)
   279 			<li><a href="http://code.enthought.com/projects/traits">Traits</a></li>
   240 <ul>
   280 			<li>numpy, scipy</li>
   241 <li>
   281 		</ul>
   242 least square fit
   282 	</li>
   243 </li>
   283 </ul>
   244 <li>
   284 
   245 Roots
   285 <h3 id="sec2.8">Puneeth Chaganti, Sage introduction/tutorial: (1 hr)</h3>
   246 <ul>
   286 <ul>
   247 <li>
   287 	<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>
   248 introduction to functions
   288 	<li>A rough schedule of the talk would be as follows:
   249 </li>
   289 		<ul>
   250 </ul>
   290 			<li>Introduction</li>
   251 </li>
   291 			<li>Starting the server</li>
   252 <li>
   292 			<li>The UI</li>
   253 Solving Equations
   293 			<li>Getting Help</li>
   254 </li>
   294 			<li>Overview of what's available in Sage
   255 <li>
   295 				<ul>
   256 ODE
   296 					<li>Basic Algebra</li>
   257 <ul>
   297 					<li>Basic Calculus</li>
   258 <li>
   298 					<li>Basic Plotting</li>
   259 revisiting functions
   299 				</ul>
   260 </li>
   300 	</li>
   261 </ul>
   301 		</ul>
   262 </li>
   302 	</li>
   263 <li>
   303 </ul>
   264 FFT
   304 
   265 </li>
   305 <h3 id="sec2.9">Pankaj Pandey and Prabhu Ramachandran, An introduction to Cython (1 hrs)</h3>
   266 </ul>
   306 <ul>
   267 </li>
   307 	<li>
   268 <li>
   308 	At some level, Cython (http://www.cython.org) can be thought of a Python to C compiler.  
   269 Python Language: Basics (1 hr) (<b>Asokan</b>)
   309 	It allows someone to write extension modules in a language very similar to Python and 
   270 <ul>
   310 	therefore makes it rather easy to write C-extensions.  In this tutorial we will cover 
   271 <li>
   311 	the basics of building extension modules with Cython.
   272 basic data-types 
   312 	</li>
   273 <ul>
   313 	<li>
   274 <li>
   314 		Package requirements: You will require to have Cython, the 
   275 strings
   315 		Python development headers and a working C-compiler to run the hands-on exercises.
   276 </li>
   316 	</li>
   277 </ul>
   317 </ul>
   278 </li>
   318 
   279 <li>
       
   280 Operators
       
   281 </li>
       
   282 <li>
       
   283 I/O
       
   284 </li>
       
   285 <li>
       
   286 conditionals
       
   287 </li>
       
   288 <li>
       
   289 loops
       
   290 <ul>
       
   291 <li>
       
   292 while
       
   293 </li>
       
   294 <li>
       
   295 for loop and its usage with range
       
   296 </li>
       
   297 </ul>
       
   298 </li>
       
   299 </ul>
       
   300 </li>
       
   301 <li>
       
   302 Python Language: Data structures (1hr 30 min) (<b>Asokan</b>)
       
   303 <ul>
       
   304 <li>
       
   305 manipulating lists
       
   306 </li>
       
   307 <li>
       
   308 dictionaries
       
   309 </li>
       
   310 <li>
       
   311 manipulating strings
       
   312 </li>
       
   313 <li>
       
   314 getting started with tuples
       
   315 </li>
       
   316 <li>
       
   317 sets
       
   318 </li>
       
   319 <li>
       
   320 examples
       
   321 </li>
       
   322 </ul>
       
   323 </li>
       
   324 </ul>
       
   325 
       
   326 
       
   327 
       
   328 
       
   329 
       
   330 
       
   331 
       
   332 <h4 id="sec-3">Day 5 </h4>
       
   333 
       
   334 
       
   335 <ul>
       
   336 <li>
       
   337 Python Language: Advanced (1 hr) (<b>Madhu</b>)
       
   338 <ul>
       
   339 <li>
       
   340 functions
       
   341 <ul>
       
   342 <li>
       
   343 defining functions
       
   344 </li>
       
   345 <li>
       
   346 keyword arguments and default arguments
       
   347 </li>
       
   348 </ul>
       
   349 </li>
       
   350 <li>
       
   351 using python modules
       
   352 </li>
       
   353 <li>
       
   354 writing re-usable python scripts
       
   355 </li>
       
   356 <li>
       
   357 PEP-8?
       
   358 </li>
       
   359 </ul>
       
   360 </li>
       
   361 <li>
       
   362 More Numpy? (broadcasting, indexing tricks&hellip;) (1hr) (<b>Stefan</b>)
       
   363 </li>
       
   364 <li>
       
   365 Mayavi (1 hr) (<b>Prabhu</b>)
       
   366 </li>
       
   367 <li>
       
   368 Cython (1 hr) (<b>Stefan</b>)
       
   369 </li>
       
   370 <li>
       
   371 Version Control (Hg/Git) (15 min) (<b>Madhu</b>)
       
   372 </li>
       
   373 <li>
       
   374 ReST &amp; Scipy/Numpy Documentation Editor (45 min) (<b>Stefan</b>)
       
   375 </li>
       
   376 </ul>
       
   377 
       
   378 
       
   379 <p>Any participants using their own laptops should have the required
       
   380 software installed on their machines, before coming to the venue of
       
   381 the tutorials. The installation instructions are available <a href="http://fossee.in/installation-how-to">here</a>.
       
   382 </p>
       
   383 
       
   384 
       
   385 <h3 id="sec-5"><span class="section-number-3"></span>Methodology </h3>
       
   386 
       
   387 <ul>
       
   388 <li>
       
   389 Completely hands on, exploratory mode with minimal lectures introducing essential concepts and techniques.
       
   390 </li>
       
   391 <li>
       
   392 Typically we will have short 15 - 20 minute lectures, followed by series of graduated problems. The participants will solve them exploring the documentation to do so and the solutions will be discussed.
       
   393 </li>
       
   394 <li>
       
   395 We shall be conducting quizzes during the course of the workshop to evaluate the degree to which the objectives have been accomplished.
       
   396 
       
   397 </li>
       
   398 </ul>
       
   399 
       
   400 <p>Laptops can be brought by participants, and additional laptops/computers can be provided for use for those required. Charging points will be available.
       
   401 </p>
       
   402 <p>
       
   403 As far as installations go, you would require the following:
       
   404 </p>
       
   405 <ul>
       
   406 <li>
       
   407 For Debian/ Ubuntu and the like:
       
   408 (a) IPython
       
   409 (b) Python doc
       
   410 (c) the Python Profiler
       
   411 (d) Scipy/Numpy
       
   412 (e) Matplotlib
       
   413 (f) Mayavi2
       
   414 
       
   415 </li>
       
   416 <li>
       
   417 For Windows XP (x86), Windows Vista (x86), Mac OS X 10.4+ (x86), RedHat 3 (x86, amd64), RedHat 4 (x86, amd64), RedHat 5 (x86, amd64), and Solaris 10 (x86, amd64) :
       
   418 (a) get the EPD (<a href="http://www.enthought.com/products/epd.php">http://www.enthought.com/products/epd.php</a>) bundle and you'll have everything you need! This is available for free for those in academia and others can utilize the free 30 day trial version for now.
       
   419 
       
   420 </li>
       
   421 </ul>
       
   422 
       
   423 <p>In any case, we will be providing live DVDs containing all the required installations and some additional tools on site. The iso can also be downloaded from the fossee.in site (<a href="http://fossee.in/download#DVDs">http://fossee.in/download#DVDs</a>).
       
   424 </p>
       
   425 
   319 
   426 {% endblock content %}
   320 {% endblock content %}