Foundations of Python Network Programming and over one million other books are available for Amazon Kindle. Learn more


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Kindle Edition
 
   
Sell Back Your Copy
For a $18.44 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals)
 
 
Start reading Foundations of Python Network Programming on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals) [Paperback]

John Goerzen (Author), Brandon Rhodes (Author)
3.7 out of 5 stars  See all reviews (7 customer reviews)

List Price: $49.99
Price: $31.49 & this item ships for FREE with Super Saver Shipping. Details
You Save: $18.50 (37%)
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Wednesday, February 1? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $28.34  
Paperback $31.49  
Sell Back Your Copy for $18.44
Whether you buy it new on Amazon for $31.49 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $18.44.
New Price$31.49
Trade-in Price$18.44
Price after
Trade-in
$13.05

Book Description

1430230037 978-1430230038 December 21, 2010 2

This second edition of Foundations of Python Network Programming targets Python 2.5 through Python 2.7, the most popular production versions of the language. Python has made great strides since Apress released the first edition of this book back in the days of Python 2.3. The advances required new chapters to be written from the ground up, and others to be extensively revised.

You will learn fundamentals like IP, TCP, DNS and SSL by using working Python programs; you will also be able to familiarize yourself with infrastructure components like memcached and message queues. You can also delve into network server designs, and compare threaded approaches with asynchronous event-based solutions.

But the biggest change is this edition's expanded treatment of the web. The HTTP protocol is covered in extensive detail, with each feature accompanied by sample Python code. You can use your HTTP protocol expertise by studying an entire chapter on screen scraping and you can then test lxml and BeautifulSoup against a real-world web site. The chapter on web application programming now covers both the WSGI standard for component interoperability, as well as modern web frameworks like Django.

Finally, all of the old favorites from the first edition are back: E-mail protocols like SMTP, POP, and IMAP get full treatment, as does XML-RPC. You can still learn how to code Python network programs using the Telnet and FTP protocols, but you are likely to appreciate the power of more modern alternatives like the paramiko SSH2 library. If you are a Python programmer who needs to learn the network, this is the book that you want by your side.

What you’ll learn

  • Understand low level networking
  • Handle sending and receiving email including composing and decoding emails, SMTP, POP and IMAP
  • Program the lower levels of web application programming such as FastCGI and WSGI and HTTP itself
  • Learn how to use memcached and message qeues using Python
  • Access web services using Python
  • Master multitasking with threads, forking, and asynchronous communication

Who this book is for

This book will be of interest to python programmers who need to program networked applications using Python. From web application developers, to systems integrators, to system administrators—this book has everything you need to know.

Table of Contents

  1. Introduction to Client/Server Networking
  2. UDP
  3. TCP
  4. Socket Names and DNS
  5. Network Data and Network Errors
  6. TLS and SSL
  7. Server Architecture
  8. Caches, Message Queues, and Map-Reduce
  9. HTTP
  10. Screen Scraping
  11. Web Applications
  12. E-mail Composition and Decoding
  13. SMTP
  14. POP
  15. IMAP
  16. Telnet and SSH
  17. FTP
  18. RPC

Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $5 in Amazon MP3 Credit. Here's how (restrictions apply)

Frequently Bought Together

Customers buy this book with The Python Standard Library by Example (Developer's Library) $32.72

Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals) + The Python Standard Library by Example (Developer's Library)
  • This item: Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals)

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • The Python Standard Library by Example (Developer's Library)

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details



Editorial Reviews

About the Author

John Goerzen is an accomplished author, system administrator, and Python programmer. He has been a Debian developer since 1996 and is currently president of Software in the Public Interest, Inc. His previously published books include the Linux Programming Bible, Debian Unleashed, and Linux Unleashed.

Brandon Craig Rhodes has been an avid Python programmer since the 1990s, and a professional Python developer for a decade. He released his PyEphem astronomy library in the same year that Python 1.5 was released, and has maintained it ever since. As a writer and speaker, Brandon enjoys teaching and touting Python, whether as the volunteer organizer of Python Atlanta or on stage at conferences like PyCon. He was editor of the monthly Python Magazine, was pleased to serve as technical reviewer for the excellent Natural Language Processing with Python, and has helped several open source projects by contributing documentation. Today, Brandon operates the Rhodes Mill Studios consultancy in Atlanta, which provides Python programming expertise and web development services to customers both local and out-of-state. He believes that the future of programming is light, concise, agile, test-driven, and enjoyable, and that Python will be a big part of it.

Product Details

  • Paperback: 368 pages
  • Publisher: Apress; 2 edition (December 21, 2010)
  • Language: English
  • ISBN-10: 1430230037
  • ISBN-13: 978-1430230038
  • Product Dimensions: 8.9 x 7.8 x 0.7 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (7 customer reviews)
  • Amazon Best Sellers Rank: #345,110 in Books (See Top 100 in Books)

 

Customer Reviews

7 Reviews
5 star:
 (4)
4 star:
 (1)
3 star:    (0)
2 star:    (0)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
3.7 out of 5 stars (7 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

13 of 13 people found the following review helpful:
5.0 out of 5 stars These guys know what they are talking about.., January 17, 2011
This review is from: Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals) (Paperback)
As I am relatively new to Python I originally felt that such advanced programming subjects were way above my head, not just due to my overal knowledge on Python itself, but mostly due to the lack of knowledge on all the underlying 'basic' matters on network programming. This, however, is exactly where John and Brandon did an amazing job and why I bought the book: they explain everything (from the TCP and UDP protocol to memcached) to the detail (in plain English!) before actually showing you an example how you can let Python do something magic with it. There are tons of practical examples that are applicable in daily life (varying from basic stuff such as leveraging Google Maps by calling a raw socket to wrapping a client socket with TSL) and all of these are well-written and elegant.

The book provides a solid foundation on all the basics you need to know to get started - and beyond - on network programming in Python. These guys clearly know what they are talking about (and do a good job sharing this knowledge!), which is clearly demonstrated by the vast amount of useful tips and best practices that you might otherwise only learn through trial and error yourself (call me lazy, but I prefer learning it from a set of experts). Foundations of Python Network Programming is not just a Python cookbook: it's a Python cookbook which also teaches you the foundations on networking while showing you some best practices. For beginners it's a must-have, and for the more advanced coders it's a great reference guide of which there's a lot to learn, without a doubt.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


7 of 7 people found the following review helpful:
5.0 out of 5 stars Exhaustive and Authoritative, January 31, 2011
By 
Amazon Verified Purchase(What's this?)
This review is from: Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals) (Paperback)
I wish I'd had this book years ago. It's a very solid introduction to both network protocols and to using Python to work with them. It demystifies some nasty parts of network programming and offers lots of good advice for real-world use for everything from UDP up the stack to SSH and RPC. I could imagine the book being the main assigned text for an upper-division undergraduate course or the go-to reference for a skilled web developer or Python-literate network admin.

And ... it's well enough written to be enjoyable reading, pretty much wherever you open the book.

I have to note that there are a couple of very low ratings here from a couple of folks who expected this to be a Python 3 book. I expected, and received, a book covering Python 2.5-2.7. If that's what you're after, I suggest you mentally subtract those ratings from the average. Their complaints with the publisher may be fair, but they tell you nothing about the quality of the real book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful:
5.0 out of 5 stars Good depth and breadth of topics, February 27, 2011
By 
Doug Hellmann (Athens, GA United States) - See all my reviews
This review is from: Foundations of Python Network Programming: The comprehensive guide to building network applications with Python (Books for Professionals by Professionals) (Paperback)
Why I picked it up: I know Brandon through PyATL and was confident that his years of experience would ensure that he put out a high quality book. He more than met my expectations.

Why I finished it: The conversational tone made it easy to zip through the sections covering material I was familiar with, saving more time to study the rest more completely.

I'd give it to: Any Python programmer who wants a better understanding of the fundamentals of network programming. Even an experienced Python programmer will learn a few new tricks from the sections covering more modern tools like ZeroMQ and paramiko.

This is the second edition of Foundations of Python Network Programming. The first edition by John Goerzen was released in 2004, and while a lot has changed in the way we use computer networks since then the fundamentals remain constant. Brandon Rhodes has improved the second edition by cleaning up the old examples that are still relevant, updating or replacing the ones that became obsolete, and adding new material. The results benefit from Brandon's high level of expertise and depth of knowledge in networking.

The book covers a broad range of topics, and is organized so that each section builds on the knowledge of the previous chapters. The discussions move from from raw TCP and UDP to encryption with TSL, and then on to application protocols like HTTP, SMTP, POP, IMAP, and ssh. Each section explains not just how to do a task, but why doing it that way works.

The examples in the book are clear and illustrate the concepts described in the text. There are a few places where the exposition would benefit from a diagram or two (especially in the description of TCP message windows), but the explanation given does stand on its own.

Every chapter of Foundations of Python Network Programming is filled with practical advice. After establishing the fundamentals of networking in the first few chapters, the book goes on to cover architectural issues that come up when creating client server applications. The different uses for RPC and message queue architectures are covered, as well binary versus text wire protocols. The latter chapters, which cover higher level protocols, discuss best-of-breed libraries, removing much of the guesswork for Python programmers choosing tools for new projects.

I recommend Foundations of Python Network Programming for programmers who want to move beyond the usual web framework-based development paradigm to learn more about what is going on behind the scenes. It is concise, but written in a conversational style that makes it easy to read. After reading the book, you will have a good grounding in the fundamentals of networking and be introduced to many more complex subjects. Brandon includes a number of references to other sources of more information, as well, for readers who want to go beyond the fundamentals covered here.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews





Only search this product's reviews



Inside This Book (learn more)
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
This book is available for Kindle 0 Dec 2, 2011
See all discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
   
Related forums



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject