Skip to content
This repository has been archived by the owner on Jan 3, 2018. It is now read-only.

Python motivation #623

Closed
wants to merge 12 commits into from
Binary file added img/slides/ipython-notebook.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
144 changes: 144 additions & 0 deletions slides/python-pitch.html
@@ -0,0 +1,144 @@
---
layout: slides
title: Why should I use Python?
root: ..
---
<section>
<h1>{{page.title}}</h1>
<aside class="notes">
Hello, and welcome to the Python section of the Software Carpentry bootcamp.
</aside>
</section>

<section>
<h2>Python is...</h2>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi! So, having a list like this is great. But, I wonder if a different order or a different breakdown might allow it to read more like a sentence, and therefore make more sense. Something like:

  • a popular,
  • powerful,
  • easy to learn,
  • programming language,
  • that is human readable,
  • whitespace delimited,
  • free,
  • and open source.

It has a number of excellent libraries for

  • plotting,
  • mathematics,
  • and domain sciences.

Something like that maybe?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe:

It has a number of excellent libraries for

  • mathematics,
  • plotting,
  • and domain sciences.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good ideas! I incorporated them.

<p class="fragment">
a popular,
</p>
<p class="fragment">
powerful,
</p>
<p class="fragment">
easy to learn,
</p>
<p class="fragment">
programming language,
</p>
<p class="fragment">
that is human readable,
</p>
<p class="fragment">
whitespace delimited,
</p>
<p class="fragment">
free,
</p>
<p class="fragment">
and open source
</p>
<aside class="notes">
So what is Python anyway? Python is a programming language which is used to:
- develop analysis pipelines
- process and analyse data
- visualize data, and generate publication-quality graphics
- develop new statistical methods
It is also a free open-source project, making it completely free to download and extend.
</aside>
</section>

<section>
It has a number of excellent libraries for
<p class="fragment">
mathematics,
</p>
<p class="fragment">
plotting,
</p>
<p class="fragment">
and domain sciences.
</p>
</section>>
<section>
<h2>Tasks that Python could help you do:</h2>
<p class="fragment">
Transform your data files from one arbitrary format to another.
</p>
<p class="fragment">
Analyze image files.
</p>
<p class="fragment">
Loop through all the files in a directory, perform an analysis on them, and plot the results.
</p>
<p class="fragment">
<strong>Almost anything!</strong>
</p>
<aside class="notes">
</aside>
</section>

<section>
<h1>Packages</h1>
<p>Contain extensions to the language for specific tasks</p>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Python Package Index has 46537 packages that includes some for

  • analyzing biological sequence data,
  • numerical analyses,
  • plotting and much more

<ul class="fragment">
<li>The Python Package Index has more than 48k packages including some for:
</li>
<p class="fragment">
analyzing biological sequence data,
</p>
<p class="fragment">
numerical analyses,
</p>
<p class="fragment">
plotting and much more
</p>
</ul>
</p>
<aside class="notes">
</aside>
</section>

<section>
<h2>Why Python and not ...</h2>
<p class="fragment">
Perl? <br>
It is easier to read and easier to learn. Also, popularity matters! If Python is what your collaborators are using, it may be a good idea for you to learn it too.
</p>
<p class="fragment">
Javascript or Ruby? <br>
Python has more good numerical libraries.
</p>
<p class="fragment">
MATLAB or SAS? <br>
It's free.
</p>
<p class="fragment">
R? <br>
Depends on the task at hand. R has some advantages in statistics and visualization, Python is better at manipulating text. It is a more flexible option that can perform many different tasks well.
</p>
<aside class="notes">
</aside>
</section>

<section>
<h1>IPython Notebook</h1>
<p> An interactive shell for using Python</p>
<ul class="fragment">
<li>Browser based notebooks to organize and display code </li>
<li>Simplifies data visualization</li>
<li>Makes it easy to share whole analysis pipelines</li>
</ul>
<img src="ipython-notebook.png">
</p>
<aside class="notes">
</aside>
</section>

<section>
<h1>Learn More</h1>
<a href="https://www.python.org/" alt="python.org">https://www.python.org/</a>
<br />
<a href="http://ipython.org/" alt="Link to IPython" class="fragment">http://ipython.org/</a>
<aside class="notes">
</aside>
</section>