Mercurial > js4py
annotate source/europython-tutorial.rst @ 90:347e10783e7f europython-2011
Minor changes.
| author | Jonathan Fine <jfine@pytex.org> |
|---|---|
| date | Wed, 15 Jun 2011 09:36:07 +0100 |
| parents | d57a5582a475 |
| children | 454054afcc0a |
| rev | line source |
|---|---|
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
1 EuroPython 2011 Tutorial |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
2 ======================== |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
3 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
4 Time, date and location |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
5 ----------------------- |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
6 |
| 90 | 7 This tutorial will take place on Tuesday 21st June, from 14.30 to |
| 8 18.30 (2.30pm to 6.30pm) in Training Pizza Napoli. | |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
9 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
10 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
11 Installed software |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
12 ------------------ |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
13 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
14 Participants should bring with them a laptop computer with the |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
15 following installed: |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
16 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
17 1. The Firefox web browser, with the Firebug add-on. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
18 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
19 2. A programmer's editor, preferably with a JavaScript mode. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
20 |
| 90 | 21 I use emacs, together with js2-mode. |
| 22 | |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
23 3. A command line JavaScript interpreter. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
24 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
25 * For Linux I suggest SpiderMonkey. |
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
26 |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
27 .. code-block:: bash |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
28 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
29 $ sudo apt-get install spidermonkey-bin # Ubuntu |
|
48
d3ef1c9d4ca2
europython-2010-tutorial.rst: spidermonkey-bin not in Ubuntu 10.4.
Jonathan Fine <jfine@pytex.org>
parents:
41
diff
changeset
|
30 |
|
d3ef1c9d4ca2
europython-2010-tutorial.rst: spidermonkey-bin not in Ubuntu 10.4.
Jonathan Fine <jfine@pytex.org>
parents:
41
diff
changeset
|
31 (No longer, I'm told, available for Ubuntu 10.4.) |
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
32 |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
33 * For Windows and Mac I suggest JSDB, from |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
34 http://www.jsdb.org/download.html. It also works on Linux. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
35 |
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
36 4. This documentation, downloaded from |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
37 `Bitbucket downloads <http://bitbucket.org/jfine/javascript-for-python-programmers/downloads>`_. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
38 |
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
39 5. The Python documentation, download from |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
40 `Python docs site <http://docs.python.org/download.html>`_. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
41 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
42 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
43 Timetable |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
44 --------- |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
45 |
| 90 | 46 We start at 14.30 prompt, with software already |
| 47 installed if possible. | |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
48 |
| 90 | 49 I hope to run seven sessions, each about 30 minutes long. They'll be |
| 50 about 20-30 minutes for breaks, as we need then. I hope each session | |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
51 will be 15 minutes of me talking followed by 15 minutes of |
|
53
e0b35ddff586
europython-2010-tutorial.rst: Minor revisions.
Jonathan Fine <jfine@pytex.org>
parents:
48
diff
changeset
|
52 programming. The topics I'm intending to cover are |
|
89
d57a5582a475
Start making revisions for presentation next week.
Jonathan Fine <jfine@pytex.org>
parents:
53
diff
changeset
|
53 |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
54 1. Demonstration and discussion of the counters example application. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
55 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
56 2. JavaScript gotchas. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
57 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
58 3. Objects and inheritance, class basics. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
59 |
| 90 | 60 4. JavaScript's *this* pseudo-variable (including *call* and *apply*). |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
61 |
| 90 | 62 We'll certainly have a break here. |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
63 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
64 5. Closures, modules and memory leaks. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
65 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
66 6. Delegation. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
67 |
| 90 | 68 7. JavaScript and Python objects and classes compared. |
| 69 | |
| 70 We finish at 18.30. | |
|
41
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
71 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
72 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
73 Is this tutorial for me? |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
74 ------------------------ |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
75 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
76 This tutorial aimed at Python web developers who already know a bit of |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
77 JavaScript, and who need to understand JavaScript better. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
78 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
79 The tutorial has two related objectives. One is a good understanding |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
80 of the counters example. The other is a good understanding of the |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
81 things that make JavaScript so different from Python (apart from |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
82 JavaScript being the only language supported by web browsers). |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
83 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
84 If you're thinking of taking this tutorial take the :doc:`gotcha-quiz` |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
85 and read through the :doc:`counters-example`. If you understand |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
86 what's there a bit, and would like to understand it more, then this |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
87 tutorial is for you. |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
88 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
89 Let me know |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
90 ----------- |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
91 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
92 If you're going to attend the tutorial, I'd appreciate an email from |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
93 you that tells me a little bit about yourself and what you'd like to |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
94 get from the tutorial. If you have specific questions about |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
95 JavaScript, I'd like to here them also. (I can be contacted at |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
96 Jonathan.Fine1 at gmail.com.) |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
97 |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
98 You can also, I believe, just turn up on the day, if there is |
|
630e8132250e
europython-2010-tutorial.rst: Drafted this page.
Jonathan Fine <jfine@pytex.org>
parents:
diff
changeset
|
99 space. Don't forget to install the software on your laptop. |
