123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- [[history_lesson]]
- == Appendix: History Lesson
- I first started with Python when I needed to write an installer for software I had written called
- 'Diamond' so that I could make the installation easy. I had to choose between Python and Perl
- bindings for the Qt library. I did some research on the web and I came across
- http://www.python.org/about/success/esr/[an article by Eric S. Raymond], a famous and respected
- hacker, where he talked about how Python had become his favorite programming language. I also found
- out that the PyQt bindings were more mature compared to Perl-Qt. So, I decided that Python was the
- language for me.
- Then, I started searching for a good book on Python. I couldn't find any! I did find some O'Reilly
- books but they were either too expensive or were more like a reference manual than a guide. So, I
- settled for the documentation that came with Python. However, it was too brief and small. It did
- give a good idea about Python but was not complete. I managed with it since I had previous
- programming experience, but it was unsuitable for newbies.
- About six months after my first brush with Python, I installed the (then) latest Red Hat 9.0 Linux
- and I was playing around with KWord. I got excited about it and suddenly got the idea of writing
- some stuff on Python. I started writing a few pages but it quickly became 30 pages long. Then, I
- became serious about making it more useful in a book form. After a _lot_ of rewrites, it has
- reached a stage where it has become a useful guide to learning the Python language. I consider
- this book to be my contribution and tribute to the open source community.
- This book started out as my personal notes on Python and I still consider it in the same way,
- although I've taken a lot of effort to make it more palatable to others :)
- In the true spirit of open source, I have received lots of constructive suggestions, criticisms and
- <<who_reads_bop,feedback>> from enthusiastic readers which has helped me improve this book a lot.
- === Status Of The Book
- - The book was last updated on {localdate} and generated using
- http://www.asciidoctor.org[AsciiDoctor] {asciidoctor-version}.
- - Last major update of this book was in Mar-Apr 2014, converted to
- http://asciidoctor.org/docs/what-is-asciidoc/[Asciidoc] using
- http://swaroopch.com/2013/10/17/emacs-configuration-tutorial/[Emacs 24] and
- https://github.com/sensorflo/adoc-mode/wiki[adoc-mode].
- - In Dec 2008, the book was updated for the Python 3.0 release (one of the first books to do
- so). But now, I have converted the book back for Python 2 language because readers would often
- get confused between the default Python 2 installed on their systems vs. Python 3 which they had
- to separately install and all the tooling, esp. editors would assume Python 2 as well. I had a
- hard time justifying why I had to aggravate readers and make them go through all this when the
- fact is that they can learn either one and it would be just as useful. So, Python 2 it is.
- The book needs the help of its readers such as yourselves to point out any parts of the book which
- are not good, not comprehensible or are simply wrong. Please {contact}[write to the main author] or
- the respective <<translations,translators>> with your comments and suggestions.
- [[revision_history]]
- == Appendix: Revision History
- * 3.0
- ** 31 Mar 2014
- ** Rewritten using http://asciidoctor.org/docs/what-is-asciidoc/[AsciiDoc] and
- https://github.com/sensorflo/adoc-mode/wiki[adoc-mode].
- * 2.1
- ** 03 Aug 2013
- ** Rewritten using Markdown and http://jblevins.org/projects/markdown-mode/[Jason Blevins'
- Markdown Mode]
- * 2.0
- ** 20 Oct 2012
- ** Rewritten in http://johnmacfarlane.net/pandoc/README.html[Pandoc format], thanks to my wife
- who did most of the conversion from the Mediawiki format
- ** Simplifying text, removing non-essential sections such as `nonlocal` and metaclasses
- * 1.90
- ** 04 Sep 2008 and still in progress
- ** Revival after a gap of 3.5 years!
- ** Rewriting for Python 3.0
- ** Rewrite using http://www.mediawiki.org[MediaWiki] (again)
- * 1.20
- ** 13 Jan 2005
- ** Complete rewrite using https://en.wikipedia.org/wiki/Quanta_Plus[Quanta+] on
- http://fedoraproject.org/[Fedora] Core 3 with lot of corrections and updates. Many new
- examples. Rewrote my DocBook setup from scratch.
- * 1.15
- ** 28 Mar 2004
- ** Minor revisions
- * 1.12
- ** 16 Mar 2004
- ** Additions and corrections
- * 1.10
- ** 09 Mar 2004
- ** More typo corrections, thanks to many enthusiastic and helpful readers.
- * 1.00
- ** 08 Mar 2004
- ** After tremendous feedback and suggestions from readers, I have made significant revisions to
- the content along with typo corrections.
- * 0.99
- ** 22 Feb 2004
- ** Added a new chapter on modules. Added details about variable number of arguments in functions.
- * 0.98
- ** 16 Feb 2004
- ** Wrote a Python script and CSS stylesheet to improve XHTML output, including a
- crude-yet-functional lexical analyzer for automatic VIM-like syntax highlighting of the
- program listings.
- * 0.97
- ** 13 Feb 2004
- ** Another completely rewritten draft, in DocBook XML (again). Book has improved a lot - it is
- more coherent and readable.
- * 0.93
- ** 25 Jan 2004
- ** Added IDLE talk and more Windows-specific stuff
- * 0.92
- ** 05 Jan 2004
- ** Changes to few examples.
- * 0.91
- ** 30 Dec 2003
- ** Corrected typos. Improvised many topics.
- * 0.90
- ** 18 Dec 2003
- ** Added 2 more chapters. https://en.wikipedia.org/wiki/OpenOffice[OpenOffice] format with
- revisions.
- * 0.60
- ** 21 Nov 2003
- ** Fully rewritten and expanded.
- * 0.20
- ** 20 Nov 2003
- ** Corrected some typos and errors.
- * 0.15
- ** 20 Nov 2003
- ** Converted to https://en.wikipedia.org/wiki/DocBook[DocBook XML] with XEmacs.
- * 0.10
- ** 14 Nov 2003
- ** Initial draft using https://en.wikipedia.org/wiki/Kword[KWord].
|