Errata
The errata list is a list of errors and their corrections that were found after the product was released.
The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.
Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update
Version | Location | Description | Submitted by | Date submitted |
---|---|---|---|---|
Page 23 In the SQL request of the first block of PHP code |
The "where" keyword is missing in the SQL request. |
fnor | Jul 15, 2010 | |
Printed | Page 32 php code |
The PHP code for index.php will send a subscription request for PubSubHubbub, but the callback from the hub will fail using the code from the book: |
rheotaxis | Sep 14, 2010 |
Printed | Page 82 starting tornado.web.Application in python code |
The following corrected code allows the UpdateHandler to be called. |
rheotaxis | Sep 09, 2010 |
Printed | Page 89 sample code |
I had to put the import statements inside the run methods of both the TweetFirehose and TweetProcessor thread classes. For instance: |
rheotaxis | Sep 10, 2010 |
Page 89 |
http://stream.twitter.com/1/statuses/sample.json |
Anonymous | May 24, 2013 | |
Printed | Page 90 setting message["html"] in the python code |
The python statement that sets the message["html"] is too long for the printed page and is not properly indented on the continuation lines below the start of the statement. After I combined the 4 printed lines into one single python statement, the problem was resolved. |
rheotaxis | Sep 09, 2010 |
Printed | Page 90 sample code, top of page |
Add import statement for uuid in the TweetProcessor run method. |
rheotaxis | Sep 10, 2010 |
Printed | Page 91 after 4th paragraph |
After adding the Python threads for pulling tweets from Twitter, the threads have to be started. The sample code does not show this, nor does the text describe it. I added it to the bottom of the runner.py file as shown here by the four lines in the middle of this code (from page 82.) |
rheotaxis | Sep 10, 2010 |
Printed | Page 97 5th paragraphy |
The last sentence says "the URL /updates...has been mapped in Tornado to the UpdateHandler method in runner.py." However, this does not seem to be the case. After starting the runner.py script on my server and visiting the page in Firefox with Firebug, the /updates is not found. I can see the POST being logged, but the UpdateHandler is not being called. |
rheotaxis | Sep 09, 2010 |
Printed | Page 97 5th Paragraph, last sentence. |
"The request is being made to the URL /updates, which has been mapped in Tornado to the UpdateHandler method in runner.py" |
Charlie Choiniere | Sep 16, 2010 |
Printed | Page 123 python code after comment #build and send the notification |
the indentation of the python code should match the rest of the code in the def post(self) method of the TypingHandler class. |
rheotaxis | Sep 11, 2010 |
Page 124 First block of Javascript code |
There should not be any ";" at the end of the last element in the object declaration. |
fnor | Jul 23, 2010 | |
Page 124 Last paragraph |
we?ll immediately send an HTTP request to /send |
fnor | Jul 23, 2010 | |
Page 145 Last paragraph of code |
The is_authenticated method should be called on an instance of the IMUser class, not on the class itself |
fnor | Jul 24, 2010 | |
Printed | Page 145 python code definition of is_authenticated() method in the IMUser class |
Running this sample code from the book in Google App Engine generated error message: |
rheotaxis | Sep 14, 2010 |
Printed | Page 145 Final code block (if not IMUser...) |
When I attempt to run the authentication code I get the following error in my appengine log: |
Jesse | Feb 14, 2011 |
Page 146 2nd paragraph of the "Introducing a Third Party" chapter |
searching the archive of he New York Times |
fnor | Jul 24, 2010 | |
Page 153 In the "The SMS Landscape" chapter |
The most complete option wold be to connect |
fnor | Jul 24, 2010 | |
Page 195 3rd line of code |
This line is incorrect and throws an exception: |
robflaherty | Oct 12, 2010 | |
Page 196 End of the code block |
Page 204, the developper is asked to create a directory called static. |
fnor | Jul 26, 2010 | |
Page 199 End of the code block |
if last_ping_in_seconds <(time.time() - Analytics.ping_timeout_time): |
fnor | Jul 26, 2010 | |
Page 200 End of the first code block |
logging.error("Error remove user: %s, %url: %s", uid, url) |
fnor | Jul 26, 2010 |