Python 101 For The Net Developer

4,568 views

Published on

Given on Tuesday, June 23, 2009 at the Greater Cleveland PC Users Group C#/VB.NET SIG. A very basic intro to Python given to a .NET crowd with the assumption of little to no Python experience.

Published in: Technology, Education
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,568
On SlideShare
0
From Embeds
0
Number of Embeds
114
Actions
Shares
0
Downloads
131
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide
  • Used under the Creative Commons license. Taken from http://www.flickr.com/photos/krayker/2127435092/
  • Used under the Creative Commons license. Taken from http://www.flickr.com/photos/lady-madonna/534748896/
  • Picture used under the Creative Commons license. Taken from http://www.flickr.com/photos/ptshello/2312382235/
  • The Python logo is a trademark of the Python Software Foundation.
  • http://www.python.org/about/quotes/
  • Paraphrasing the description as listed on CodePlex -> http://www.codeplex.com/ironpython; current version is IronPython 2.0.1 as of 2/13/2009
  • http://www.xkcd.com/353 - Python
  • I will be speaking onIronPython in two talks – one to show off apps and its awesomeness and one to show how it works cross-platform through FePy.Special thanks to Martin Hebrank of the Northeast Ohio Open Source Society (http://www.nooss.org) for bringing this to my attention.
  • Official base language siteOfficial project siteAwesome example siteFellow IronPython presenter’s websiteLocal references
  • Just a few things about me…Running jokeTwitter – how many familiar? How many not following me? They should be after this presentation!Email and blogYes, I truly am a geek – I got the engineering degree to prove it!
  • Python 101 For The Net Developer

    1. 1. Python 101 for the .NET Developer<br />Sarah Dutkiewicz<br />http://www.clevelanddotnet.info<br />
    2. 2. What is Python?<br />
    3. 3. What is Python?<br />
    4. 4. What is Python?<br />
    5. 5. What is Python?<br />Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days.<br />- Taken from the official Python site, python.org<br />
    6. 6. Who’s Using Python?<br />Python plays a key role in our production pipeline. Without Python a project the size of Star Wars: Episode II would have been very difficult to pull off. From crowd rendering to batch processing to compositing, Python binds all things together. -- Tommy Burnette<br />
    7. 7. Who’s Using Python?<br />Python has been an important part of Google since the beginning. -- Peter Norvig.<br />http://code.google.com/appengine/<br />Python application servers and Python scripting to create the web UI for BigTable (their database project)<br />
    8. 8. Who’s Using Python?<br />We chose Python because it provides maximum productivity, code that&apos;s clear and easy to maintain, strong and extensive (and growing) libraries, and excellent capabilities for integration with other applications on any platform. -- Steve Waterbury<br />Workflow automation servers<br />
    9. 9. More Python in Action<br />
    10. 10. Features of Python<br /><ul><li>Free and open source
    11. 11. Great first language
    12. 12. Availability (cross-platform)
    13. 13. Interactivity (interpreted language)
    14. 14. Simplicity
    15. 15. Scalable – can play nicely with other languages
    16. 16. GUI support – GUIs typically developed with Tk</li></li></ul><li>Python’s Weaknesses<br /><ul><li> Can be slower than compiled C or C#
    17. 17. Relies on a locking mechanism called the Global Interpreter Lock (GIL) in multi-threading
    18. 18. Implementations in other languages get around – specifically Jython and IronPython</li></li></ul><li>Implementations<br /><ul><li>CPython - implemented in C, the primary implementation
    19. 19. Jython - implemented for the JVM
    20. 20. Pypy - implemented in Python
    21. 21. IronPython - implemented in C#, allows python to use the .NET libraries</li></li></ul><li>What is IronPython?<br />IronPython is the open source .NET implementation of the Python programming language, giving Python programmers the benefits of the .NET libraries while still maintaining compatibility with straight Python.<br />
    22. 22. Modules<br />Databases<br />PyGreSQL (PostGreSQL)<br />MySQLdb (MySQL)<br />cx_Oracle (Oracle)<br />Instant Messaging<br />Pymsn (MSN Messenger)<br />Jabberpy (Jabber)<br />
    23. 23. More Modules<br />PyOpenGL<br />
    24. 24. More Modules<br /> Graphics (gdmodule, VideoCapture, PIL)<br /> Math & Science (scipy, NumPy, numarray, matplotlib)<br /> Hardware<br /> Serial ports (pySerial, USPP)<br /> Parallel port (pyParallel)<br />
    25. 25. Frameworks<br /><ul><li> PyCon (http://www.pycon.org)
    26. 26. SuggestionBox.com
    27. 27. Curse.com (WoW add-ons)
    28. 28. BitTorrent
    29. 29. Reddit
    30. 30. IMDBTube
    31. 31. Streetspottings.com
    32. 32. IM Feeds</li></li></ul><li>Operating System Requirements<br />
    33. 33. XKCD<br />
    34. 34. Demos<br />
    35. 35. User Groups & Events<br />Cleveland Python Users Group<br />First Monday of the month<br />Past topics include:<br />Ingredients for a Python DSL<br />Dependency Injection Framework<br />Distributed Issue Tracking<br />Screenlets for making Linux desktop widgets<br />Guppy – a memory debugging package<br />
    36. 36. GiveCamp<br />What: A weekend of coding charity projects with other geeks<br />When: July 17-19, 2009<br />Where: Columbus, OH and Ann Arbor, MI<br />More info: http://www.columbusgivecamp.organd http://www.michigangivecamp.com/AnnArbor<br />
    37. 37. PyOhio<br />What: 2 day conference on Python<br />When: July 25-26, 2009<br />Where: The Ohio State University, Knowlton Hall, Columbus, OH<br />More info: http://pyohio.orgor Follow PyOhio on Twitter as@pyohio<br />
    38. 38. Python Web References<br /> Official Python Site: http://www.python.org/<br />User Groups & Events<br />Cleveland Python Users Group: http://clepy.googlegroups.com<br />PyOhio: http://www.pyohio.org<br />PyCon:http://www.pycon.org<br /> Modules<br />50 Modules for All Needs: http://www.catswhocode.com/blog/featured/python-50-modules-for-all-needs-10<br />Frameworks<br />Django:http://www.djangoproject.com/<br />Pylons:http://pylonshq.com/<br />
    39. 39. IronPython Web References<br /><ul><li>Official IronPython Site: http://www.codeplex.com/ironpython
    40. 40. IronPython Cookbook: http://www.ironpython.info
    41. 41. The Voidspace Techie Blog: http://www.voidspace.org.uk/python/weblog/
    42. 42. DevHawk’s Blog: http://www.devhawk.net/
    43. 43. The Mono Project: http://mono-project.com
    44. 44. FePy and IronPython Community Edition http://fepy.sourceforge.net</li></li></ul><li>Python Recommended Reading<br />Python Cookbook by Alex Martelli, Anna Ravenscroft, and David Ascher (ISBN: 978-0596007973)<br />Python Programming for the Absolute Beginner by Michael Dawson (ISBN: 978-1598631128)<br />Core Python Programming by Wesley Chun (ISBN: 978-0132269933)<br />
    45. 45. IronPython Recommended Reading<br />I recommend technical books typically based on their reference value, as I usually get bored within the first few sentences and end up turning them into references rather than reading through them. This book, however, was one that I read cover-to-cover...Overall, I would recommend IronPython in Action for anyone wanting to learn IronPython.<br />– Sarah Dutkiewicz<br />The Coding Geekette <br />(reviewed for Manning Publications)<br />http://www.ironpythoninaction.com<br />
    46. 46. Contact Information<br />Blog: http://www.codinggeekette.comEmail: sarah@codinggeekette.comTwitter:@sadukie<br />Blog: http://www.clevelandtechevents.com<br />Email: admin@clevelandtechevents.com<br />Twitter: @clevtechevents<br />

    ×