Name: [16797] Tim Bower
Member: 86 months
Authored: 8 videos
Description: Assistant Professor Computer Systems Technology Kansas State University at Salina `Tim Bower <>`_ My blog: `Open Source on the Prairie <>`_ ...

Demonstartion of multi-threaded chat server and client [ID:1544] (1/4)

in series: Python Network Programming

video tutorial by Tim Bower, added 07/09

(Showmedo is undergoing major changes. To report any problems viewing the videos please email us and include browser and OS specifics. Cheers - Kyran.)

This video demonstrates the usage of a multi-threaded chat server and associated client. This video shows how they are both started and used and discusses some chat application layer control (protocol) messages, which the client might be to send to the server.

A suggestion is made for a short programming project to add an additional feature to the server. This "assignment" is actually pretty simple, but it will spur the viewer to take a closer look at some interesting issues related to network programming with sockets, multi-threaded programming and the associated solution to a fairly complex synchronization problem (readers and writers problem).

The client program is implemented using wxPython, so reviewing the source code of it may help someone wanting try some new things with wxPython. wxPython code must all run from within the same thread, but as is explained in a follow-up video, wxPython has some hooks which allow other threads to alert and send data to the thread which controls the graphical environment.

Follow-up videos will provide a code walk through of the client program and the server program. All of the source code for this project is available on my online Network Programming Study Guide.

Here is a link to the specific page in the Study Guide where all the source code can be downloaded from.

Got any questions?

Get answers in the ShowMeDo Learners Google Group.

Video statistics:

  • Video's rank shown in the most popular listing
  • Video plays: 154 (since July 30th)
  • Plays in last week: 3
  • Published: 85 months ago

Thank-yous, questions and comments

If this video tutorial was helpful please take some time to say thank-you to the authors for their hard work. Feel free to ask questions. Let the author know why their video tutorial was useful - what are you learning about? Did the video tutorial save you time? Would you like to see more?

You may also want to see our ShowMeDo Google Group to speak to our active users and authors.

Your email address will not be published.

Show some quick comments >>

All comments excluding tick-boxed quick-comments

13. WillieZip Wed, 06 Oct 2010 13:40

Enjoyed the video, but really can't wait to see the implementation. I've been a programmer for a few years now, and enjoy it. I was wondering if you have any good resources for showing good ways to set up a MVC model for Python/wxpython

12. cost of viagra 100mg walmart Thu, 12 Aug 2010 09:24

am really interested in this client-server chat application on unix, found many features on the demo provided.. can you please mail me the source code for it to my email address

Thank you.

11. ray bans Thu, 08 Apr 2010 11:50

Really useful, was reading the study guide and decided to watch the video. The study guide is also a great guide.

Nice video, I look forward watching the rest in the series. I am implementing an python game server for simple games, such as TicTacToe etc, and multithreaded chat server is simular.

9. anonymous Thu, 29 Oct 2009 06:04

great, thank you

Good video, thank you for making it.

suggestion: move the mouse more at the beginning, because i could hear your voice but was not sure that the video was working for the first few seconds.

7. anonymous Sat, 08 Aug 2009 17:50

Good introduction

6. anonymous Sat, 18 Jul 2009 20:32

Hi Tim you have done a great job with what you are teaching. I have learned a lot from this video. Keep up the good work my friend.

Good point about the source code. The ShowMeDo video page only shows one file and this demo is showing 2 programs (client and server). The video showing the server code walk through shows the source code, but the client has three files. I show a link to the Network Programming Study Guide, which has all of the source code available for download. I will add a link to the specific page in the study guide that has the source code.

4. anonymous Sat, 18 Jul 2009 07:34

where is the source code , you should showed the source code at the same time and high light what is going on both the source code and the program?

Thanks for the kind words. The showMeDo videos on wxPython that you and Ian did were quite helpful when working on the client program.

Great stuff! Very smooth screencast - nice pacing, and I'm left eagerly anticipating seeing how the chat-system is put together. This sort of stuff is pure gold for budding programmers I think. Small, but not trivial, projects explained by their creators.

Sorry for the delay in publishing - I've just moved country to sunny Lisbon and am settling in. You're good to self-publish now and welcome to Showmedo. I'll be blogging about this later in the week. As I wrote, great material for a screencast set.

Showmedo is a peer-produced video-tutorials and screencasts site for free and open-source software (FOSS)- with the exception of some club videos, the large majority are free to watch and download.

how to help » about » faq »

Educating the Open-source Community With Showmedo

Although as important as the software it supports, education and documentation are relatively neglected in the Open-source world. Coders love to code, and explaining how best to use or improve the software tends to be deferred or even sidelined.

At Showmedo we believe the community can play a vital role here and also say thanks for the tools and software that make our lives easier. If you have a piece of software you love or a programming langugage you are enthusiastic about, why not make a screencast showing others how to use it? All the stuff you wish you'd been told, the tips, tricks, insights that would have saved you time and frustration.

Screencasting is easier than you think, and we're happy to help you. You can emailus for advice or just use some of the how-to screencasts on the site. This screencasting learning-pathis a good place to start.

Kudos and Thanks for Tim

Filtering Data Vertically with Cut and Awk

Cristal Clear!

Urban Decay Preen Shadow Box Fanciful Array Of Eye Shadows Colors
73 months ago
The structure of arguments passed to Unix commands

Good and simple

Urban Decay Preen Shadow Box Fanciful Array Of Eye Shadows Colors
73 months ago

By the Same Author



Showmedo's development is fairly rapid and bugs will inevitably creep in. If you have any problems please drop us a line using the contact address below. Likewise, any suggestions for improvements to the site are gratefully received.