python ecosystem for beginners - pycon uruguay 2013

76
From a python beginner to a django developer in 6 months* *The python eco system for beginners Hannes Hapke PyCon Uruguay, November 2nd, 2013 De principiante en python a desarrollador de Django en 6 meses* Friday, 8 November 13

Upload: hannes-hapke

Post on 08-May-2015

658 views

Category:

Education


2 download

DESCRIPTION

"From a python beginner to a django developer in 6 months" is a compilation of learning resources for programming beginners. Hannes tells his story of learning Python and shows how the Pros (e.g. Jacob Kaplan-Moss) learned the programming language.

TRANSCRIPT

Page 1: Python Ecosystem for Beginners - PyCon Uruguay 2013

From a python beginner to a django developer in 6 months**The python eco system for beginners

Hannes HapkePyCon Uruguay, November 2nd, 2013

De principiante en python a desarrollador de Django en 6 meses*Friday, 8 November 13

Page 2: Python Ecosystem for Beginners - PyCon Uruguay 2013

Who is that guy?

¿Quién es este tipo?Friday, 8 November 13

Page 3: Python Ecosystem for Beginners - PyCon Uruguay 2013

Python developer and co-founder of renooble.com

Electrical engineer with business experience

German living in Santiago, Chile at the moment

Absolute python beginner in 2010

Languages: Pascal, Delphi, Java, PHP, PythonPrincipiante total de Python en 2010 | Alemán

Hannes Hapke@hanneshapke

Friday, 8 November 13

Page 4: Python Ecosystem for Beginners - PyCon Uruguay 2013

What does he want?

¿Qué es lo que quiere?Friday, 8 November 13

Page 5: Python Ecosystem for Beginners - PyCon Uruguay 2013

Speed upthe learning process

for beginners

Acelerar el proceso de aprendizaje para principiantesFriday, 8 November 13

Page 6: Python Ecosystem for Beginners - PyCon Uruguay 2013

Compile best learningpractices

Compilar las mejores técnicas de aprendizajeFriday, 8 November 13

Page 7: Python Ecosystem for Beginners - PyCon Uruguay 2013

But why should I worryabout beginners learning?

¿Por qué debería preocuparme?Friday, 8 November 13

Page 8: Python Ecosystem for Beginners - PyCon Uruguay 2013

Let it not become the next Latin (or Basic)Que no se convierta en el próximo Latin

Friday, 8 November 13

Page 9: Python Ecosystem for Beginners - PyCon Uruguay 2013

User conversion* * Jacob Kaplan-Moss

StarTechConf, 25/10/13

Conversión de usuarios*Friday, 8 November 13

Page 10: Python Ecosystem for Beginners - PyCon Uruguay 2013

Tweet to @hanneshapke

Your thoughts will be addedto this presentation

Envíe sus ideas y las añadiremosFriday, 8 November 13

Page 11: Python Ecosystem for Beginners - PyCon Uruguay 2013

Vamos ...

Let’s start ...Friday, 8 November 13

Page 12: Python Ecosystem for Beginners - PyCon Uruguay 2013

In 2010 ...

En 2010 ...Friday, 8 November 13

Page 13: Python Ecosystem for Beginners - PyCon Uruguay 2013

Python was ...

Python era ...Friday, 8 November 13

Page 14: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 15: Python Ecosystem for Beginners - PyCon Uruguay 2013

Django was ...

Django era ...Friday, 8 November 13

Page 16: Python Ecosystem for Beginners - PyCon Uruguay 2013

Source: http://upload.wikimedia.org/wikipedia/commons/f/f5/Django_Reinhardt_(Gottlieb_07301).jpg

Friday, 8 November 13

Page 17: Python Ecosystem for Beginners - PyCon Uruguay 2013

and Celery was ...

y apio era ...Friday, 8 November 13

Page 18: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 19: Python Ecosystem for Beginners - PyCon Uruguay 2013

One night, @alphydan and I were dreaming about building a search engine

for renewable energy ...

Estábamos soñando con montar el google de la energía renovable ...Friday, 8 November 13

Page 20: Python Ecosystem for Beginners - PyCon Uruguay 2013

While envisioning renooble, he told me“Hey, I have heard about

something much better than PHP ...”

Hey, hay algo mejor que PHP ...Friday, 8 November 13

Page 21: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 22: Python Ecosystem for Beginners - PyCon Uruguay 2013

And so we had a goal ...

Y así que nos fijamos una meta ...Friday, 8 November 13

Page 23: Python Ecosystem for Beginners - PyCon Uruguay 2013

But now we had to learnPython, Django, tools, etc.

Pero ahora teníamos que aprender Python, Django, herramientas, etc.Friday, 8 November 13

Page 24: Python Ecosystem for Beginners - PyCon Uruguay 2013

django-extensions

deploymentstrategies

fabric

Friday, 8 November 13

Page 25: Python Ecosystem for Beginners - PyCon Uruguay 2013

We wanted to get to this ...

Queríamos llegar aqui...Friday, 8 November 13

Page 26: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 27: Python Ecosystem for Beginners - PyCon Uruguay 2013

3301 SE Belmont StCommercial Building

Solar: save $200/monthInsulation: $150/month

3305 SE Belmont StCommercial Building

Solar: save $120/monthInsulation: $100/month

914 SE 33rd StResidential Building

2 ApartmentsIncome level known

Solar: save $150/monthInsulation: $100/monthLighting: $30/months

Friday, 8 November 13

Page 28: Python Ecosystem for Beginners - PyCon Uruguay 2013

A long way starts with a small step ...

El camino se hace al andar, caminante ...Friday, 8 November 13

Page 29: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 30: Python Ecosystem for Beginners - PyCon Uruguay 2013

Wohoo, our first Django app

Wohoo, nuestra primera aplicación con DjangoFriday, 8 November 13

Page 31: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

DocumentationFirst Django App

Documentación > nuestra primera aplicación DjangoFriday, 8 November 13

Page 32: Python Ecosystem for Beginners - PyCon Uruguay 2013

Offline tools: Books

LibrosFriday, 8 November 13

Page 33: Python Ecosystem for Beginners - PyCon Uruguay 2013

Django Practices, Pro Django, Two Scoops for Django, Python Geospatial Development

Friday, 8 November 13

Page 34: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

BooksPostgreSQL

Libros > PostgreSQLFriday, 8 November 13

Page 35: Python Ecosystem for Beginners - PyCon Uruguay 2013

Online tools: Websites

Paginas webFriday, 8 November 13

Page 36: Python Ecosystem for Beginners - PyCon Uruguay 2013

planet.python.org

b-list.org

planetdjango.org

godjango.comFriday, 8 November 13

Page 37: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

Websites/BlogsGeoDjango,

South, Fabric

Paginas web/Blogs > GeoDjango, South, Fabric Friday, 8 November 13

Page 38: Python Ecosystem for Beginners - PyCon Uruguay 2013

Online tools: Stackoverflow

StackoverflowFriday, 8 November 13

Page 39: Python Ecosystem for Beginners - PyCon Uruguay 2013

Friday, 8 November 13

Page 40: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

StackoverflowDjango cities

Stackoverflow > Django citiesFriday, 8 November 13

Page 41: Python Ecosystem for Beginners - PyCon Uruguay 2013

Online tools: Learning from other projects

Aprender de otros proyectosFriday, 8 November 13

Page 43: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

Other projectsFolder structures

Otros proyectos > estructuras de carpetasFriday, 8 November 13

Page 44: Python Ecosystem for Beginners - PyCon Uruguay 2013

Offline tools: Meetups events

Eventos de Meetups / EncuentrosFriday, 8 November 13

Page 45: Python Ecosystem for Beginners - PyCon Uruguay 2013

Melbourne Python User Group

Source: https://pbs.twimg.com/media/Af4tnnzCMAIbyLR.jpg

Grupo de Usuarios de Melbourne PythonFriday, 8 November 13

Page 46: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

Python Meetups >The Zen of Python

Python Meetups > import thisFriday, 8 November 13

Page 47: Python Ecosystem for Beginners - PyCon Uruguay 2013

Offline tools: Interact with other Developers

Interactuar con otros desarrolladoresFriday, 8 November 13

Page 48: Python Ecosystem for Beginners - PyCon Uruguay 2013

Django shop: Common Code

Friday, 8 November 13

Page 49: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

Code shopProgramming styles

Code shop > estilos de programaciónFriday, 8 November 13

Page 50: Python Ecosystem for Beginners - PyCon Uruguay 2013

Santiago, August 2013

Django meetup at Startup Chile

Django meetup en Startup ChileFriday, 8 November 13

Page 51: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

Talks with devs >Django Packages

Conversaciones con los desarrolladores > paquetes de djangoFriday, 8 November 13

Page 52: Python Ecosystem for Beginners - PyCon Uruguay 2013

PyCon Australia, Hobart, 2012

Meet other developers at PyCons

Conoce a otros desarrolladores en PyConsFriday, 8 November 13

Page 53: Python Ecosystem for Beginners - PyCon Uruguay 2013

datetime(2010,9,12,1,0) datetime.now()

Learning Curve

PyCons >Implementation Ideas

PyCons > como implementar ideas nuevasFriday, 8 November 13

Page 54: Python Ecosystem for Beginners - PyCon Uruguay 2013

That was one story,but how did the pros learn?

¿Cómo aprenden los profesionales?Friday, 8 November 13

Page 55: Python Ecosystem for Beginners - PyCon Uruguay 2013

I interviewed

Eric@ericholscher

Jacob@jacobian

Yo entrevisté ...

Selena@selenamarie

Michelle@pythonchelle

Javier@candeira

Friday, 8 November 13

Page 56: Python Ecosystem for Beginners - PyCon Uruguay 2013

I asked 4 questions ...

Hice 4 preguntas ...Friday, 8 November 13

Page 57: Python Ecosystem for Beginners - PyCon Uruguay 2013

1) How did you get started with Python?¿Cómo empezaste con Python?

2) What on/offline resources are you using to stay up-to-date?¿Cómo te mantienes al día?

3) Your recommendation for a beginner?¿Qué recomendaciones tienes para un principiante?

4) How can an advanced beginner contribute to the community?¿Cómo puede contribuir a la comunidad un principiante avanzado?

Friday, 8 November 13

Page 58: Python Ecosystem for Beginners - PyCon Uruguay 2013

Selena DeckelmannContributor to PostgreSQL, organizer of Postgres Open and PyLadiesPDX@selenamarie

Started > Long-time contributor to PostgreSQL, got introduced to Python in 2010, develops with Python at Mozilla since 2012

ResoucesOnline > email, phoneOffline > PyCons, PyLadies, dev network

Recommendation > Start with a online programming class, seek a one-to-one mentor relationship, don’t be shy and ask questions

Contribute > Selena recommends women to join PyLadies, and everyone join their local Python group

Empieza con una clase de programación online, busca un mentor y no temas hacer preguntasFriday, 8 November 13

Page 59: Python Ecosystem for Beginners - PyCon Uruguay 2013

Clave es la mentoría y contacto con otros principiantes: escoje el programa que tus amigos usan

Michelle RowleyFounder of CodeScouts, organizer of PDXPython@pythonchelle

Started > Got introduced to Python/Django in 2007 by a friend

ResourcesOnline > email, planet pythonOffline > Meetups, CodeScounts.org, PyCons, dev network, Two scoops ...

Recommendation > Key is the mentorship or personal interaction with other users/beginners. Learn the programming language your friend is using/learning.

Contribute > Share your experience as volunteer at codescouts.org

Friday, 8 November 13

Page 60: Python Ecosystem for Beginners - PyCon Uruguay 2013

Busca feedback sobre proyectos (solo leer es demasiado pasivo), respeta el tiempo del mentor

Started > Started with Perl (2000) to cheat video games, trained by mentor, stumbled upon Python and Django

ResourcesOnline > b-list.org, pycoders.com, django-round-up, Planet PythonOffline > PyCons, meetups (Boston Python meetup), dev network

Recommendation > Seek active feedback, find a mentor (pythonmentors.com), respect their time, read the FAQs, learn best-practices from Two Scoops for Django

Contribute > Contributing to a projects documentation isn’t easy, but valuable; Also submit an app fix through github

Eric HolscherKey person behind readthedocs.org, worked for the Lawrence Journal@ericholscher

Friday, 8 November 13

Page 61: Python Ecosystem for Beginners - PyCon Uruguay 2013

Empieza un proyecto tan pequeño que lo puedas terminar, pero que sea un reto

Javier CandeiraTeaches at Monash University, helps organize Melbourne PUG@candeira

Started > Taught himself Python after becoming interested in Semantic Web and after he met Python programmersFirst project: Score screen for a pinball emulator

ResourcesOnline > reddit (/r/python), @raymondh, pymotw.com, wordaligned.orgOffline > Meetups, PyCons, dev network, Python Standard Library By Example (book by Doug Hellmann)

Recommendation > Find a project that is small enough to finish, but challenging enough (e.g. cataloguing your DVDs)

Contribute > PUGs are awesome and the culture is great, join them

Friday, 8 November 13

Page 62: Python Ecosystem for Beginners - PyCon Uruguay 2013

Busca un proyecto/problema que te importe a ti y resuelveló con Python

Jacob Kaplan-MossDjango core developer, Heroku Director of Security@jacobian

Started > Worked with Python since 1998, joined the Django dev team in 2004, proud to make Django open-source

ResourcesOnline > IRC, mailinglists, pyvideo.org, stackoverflow.comOffline > PyCons, dev network, books (two scoops for Django)

Recommendation > Have a project/problem, which is meaningful to you and solve it with Python

Contribute > Support a 3rd party app or put your work open-source

Friday, 8 November 13

Page 63: Python Ecosystem for Beginners - PyCon Uruguay 2013

Recommendationsfrom the

community

Friday, 8 November 13

Page 64: Python Ecosystem for Beginners - PyCon Uruguay 2013

• Books Two Scoops of Django (2scoops.org), Pro Django (prodjango.com), The Python Standard Library by Example (thanks @candeira)

• Websites pymotw.com (thanks @candeira)wordaligned.org (thanks @candeira)

• Newsletters Pycoder’s Weekly pycoders.com (thanks @ericholscher)

• Blogs Collection of Python blogs planet.python.orgCollection of Django blogs planetdjango.orgJames Bennett’s blog b-list.org

Friday, 8 November 13

Page 65: Python Ecosystem for Beginners - PyCon Uruguay 2013

• Podcasts Django Round Up bit.ly/13tRbwg (thanks @ericholscher)

• Twitter + Reddit reddit (/r/python)@raymondh (thanks @candeira)

• Videospyvideo.org (thanks @jacobian)godjango.comlearnpythonthehardway.org (thanks @alphydan)MIT Programming class bit.ly/Dkk11 (thanks @alphydan)

Friday, 8 November 13

Page 66: Python Ecosystem for Beginners - PyCon Uruguay 2013

Resourcesin Spanish

Friday, 8 November 13

Page 67: Python Ecosystem for Beginners - PyCon Uruguay 2013

• Python Python Argentina python.org.arGuía Python www.maestrosdelweb.com/guias/#guia-python Cursos de Programación cursos.eugeniabahit.com/curso-python(thanks @visigoten)

• Django Curso Django www.maestrosdelweb.com/guias/#guias-django(thanks @visigoten)

Friday, 8 November 13

Page 68: Python Ecosystem for Beginners - PyCon Uruguay 2013

Conclusions

ConclusiónFriday, 8 November 13

Page 69: Python Ecosystem for Beginners - PyCon Uruguay 2013

Have a challenging project

Contar con un proyecto desafianteFriday, 8 November 13

Page 70: Python Ecosystem for Beginners - PyCon Uruguay 2013

Learn with/from a friend

Aprenda con un/a amig@Friday, 8 November 13

Page 71: Python Ecosystem for Beginners - PyCon Uruguay 2013

Don’t be shy

No sea tímidoFriday, 8 November 13

Page 72: Python Ecosystem for Beginners - PyCon Uruguay 2013

Read the docs

Lea la documentaciónFriday, 8 November 13

Page 73: Python Ecosystem for Beginners - PyCon Uruguay 2013

Join a Python group early

Únase a un grupo Python prontoFriday, 8 November 13

Page 74: Python Ecosystem for Beginners - PyCon Uruguay 2013

OfflineOnline

Individual

DesconectadoEn-Línea

Individual

GroupsGrupos

blogs

planet python

pythonvideo

books

mailinglists

IRC

stackoverflow

PyCons

Python Meetups

PyLadies

Friday, 8 November 13

Page 75: Python Ecosystem for Beginners - PyCon Uruguay 2013

Thanks to ...

Gracias a ...

@jacobian @pythonchelle @selenamarie@ericholscher @candeira @commoncode@srikanth_chikoo @timdegraw @alphydan

The Python community

The Django community

Friday, 8 November 13

Page 76: Python Ecosystem for Beginners - PyCon Uruguay 2013

Gracias!

Thank you!

[email protected]@hanneshapke

Tweet your thoughts!

Friday, 8 November 13