The BSc Informatics course conducted by University of Calicut is based completely on Free Software. Students are required to study the Python programming language and also learn how to prepare technical documents using LaTeX. Majority of the students have a computing background limited to using Microsoft Windows for simple tasks like web browsing. An introduction to Python and LaTeX has the objective of providing a gentle introduction to computing to such an audience.
Because most of the readers would be either Mathematics teachers or undergraduate Math students, sample programs are structured around simple mathematical concepts. No attempt has been made to go deep into language syntax - my experience with conducting several workshops for teachers has been that any attempt to introduce syntax elements whose application can’t be demonstrated immediately through simple math examples usually leads to confusion. So, this book will not be an ideal resource for people who wish to master Python syntax and idioms in depth. There are plenty of great resources on the net for that, one of the best being Dive into Python (available at http://www.diveintopython.org).
Please note that this book is a work in progress.
Use your email id and subscribe to the book mailing list at: http://freelists.org/list/pymath.
Once you have joined the list, you can post messages to :
and everybody who is subscribed will get a copy of your message. You can use the list to get your doubts cleared, share ideas, point out errors, provide interesting exercise problems and pretty much anything interesting which you can imagine!
If you have any problems joining the list/posting messages, please do get in touch with:
This book is written using an excellent tool called Sphinx. Sphinx allows you to write in simple restructured text format - the conversion to HTML (for display in a browser) as well as LaTeX (for printing) is done by Sphinx. You are reading the Sphinx generated book right now! Source files are available from GitHub.
A little bit about my book-writing workflow. I maintain a git repo on my home machine from where I occasionally push to GitHub. I have another git repository on my Linode slice which hosts the book - occasional pulls from github combined with a build which directly delivers HTML files to the web server’s (I use Nginx - do try it out if you find Apache to be a memory hog) static files folder is all that is needed to “publish” the book!