Hacker News new | past | comments | ask | show | jobs | submit login

Bring a few thumb drives for backup.

In addition to LPTHW and dbond's very complete suggestions:

$ sudo apt-get install python-doc

This is not installed by default. It will install the entire python.org documentation site, probably at /usr/share/doc/python/html/index.html

Decide whether you want to use python2 or python3. Python 2.7 is probably what's installed by default on your linux distro (unless you use Arch). The following is not in the installed docs, it's an external site:


Read PEP 8


$ aptitude search python |grep framework

Pick a lightweight framework or two to install before you leave (unless you've packaged up the repository as dbond suggests). bottle, flask and pyramid come to mind. When in doubt, install it. Don't start off using a framework though, learn the basics of plain html, then css, then javascript, then a lightweight framework (or the framework first then javascript).

$ sudo apt-get install sqlite3

Install a database. sqlite is lightweight and more than good enough for learning, and won't bog you down with learning how to run a database server. Alligators and swamps ...

I wouldn't bother installing a web server, python comes with a rudimentary web server module.

General background on python web programming: (skim it)


The module you'll likely use to play around:


Learn the python debugger, it's rudimentary but very helpful when you're learning.


Learn the python REPL, or the interpreter as they call it in the docs.


Install, learn and use a better python REPL:

sudo apt-get install ipython

If you can afford it, Oreilly has some good ebooks.







If you can't afford it, but you can afford the weight, search for books you like on AbeBooks: (used or internation edition books)


Dive Into Python is available online and downloadable: http://www.diveintopython.net/

Eventually you'll want to know more about sql: http://news.ycombinator.com/item?id=5087439

Learn you a shell:



Install vim and emacs and decide which one you like, but any simple arrow-key-based editor that comes with your desktop is good enough to get started.

Install git, eventually you'll lose some work and you'll see the light. Just go real basic with git if you haven't done much source control before. Don't get bogged down in learning git, you want to learn python and web programming. As you go, you'll eventually want to know more; you'll know when that is.

$ sudo apt-get install git



Appropriate first web projects would be any of the example projects that come with the lightweight framework docs.

Appropriate first python-specific projects would be the same, in whatever python tutorials you like.

Appropriate next projects would be whatever catches your interest as you're going through all of the above. Keep a notebook/file of project ideas. Actually that would be a nice first project right there, a simple web app for a project notebook.

EDIT: Also, learn to rely on the man pages.

$ man man

$ man bash

$ man python

$ man -k python

$ man woman

No manual entry for woman

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact