Surely the readers are grown up enough to know that they
don't HAVE to read all the chapters in the book if the
subject doesn't interest them!
I'm really looking forward to a good book on wxPython, and
I hope it's done soon. (Don't waste time on this list. Write
quickly!
While I hope to avoid C++ as much as possible, I would feel
that it would be sad if I got this nice (as I expect it to be)
reference on wxPython only to see that it leaves me clueless
if there is some wxWindows/C++-related problem that I run into.
I suppose I'd make the following assumptions about the reader:
* He knows Python already, or has other books that will teach
him the language. He has certainly programmed before. (I guess
wasting 9 pages to introduce Python, like in Grayson's book is
a reasonable compromise. But the only really important info about
python in general would be where to find it and where to find
the online docs etc.)
* Some readers will read all the book from beginning to end, and
others will read a little here and a little there... Many people
will make extensive use of the index and ToC.
* All readers will have access to the wxWindows reference which
is included in the package. There is really no reason to duplicate
that information, but the reader might need some help to be able
to understand and use this C++ biased information correctly.
* GUI programming and event driven programs might be new to him.
* He might not know all the features of Python, and his other
books might not cover the newest versions, so things like yield,
list comprehension and possibly even lambda might need a brief
explanation, or at least a reference to the python docs on the
first introduction.
* wxPython might be completely new to him, or he might be a long
time user, posting in this mailing list... He doesn't own any
other book on wxPython...
* Many will want a tutorial kind of guide, that will lead them from
zero knowledge of wxPython to being able to write proper applications.
* He'll want to be able to look things up when he gets stuck. This
is not so easy, since you might not know what to look for in an
index when you are lost... How many people who are clueless about
how to bind a key combination like Ctrl-X to a function would look
under "Accellerator..." in the index? (I'd spend a week or two looking
through the mailing list archive for common problems people run
into...)
* He'll want a fairly broad coverage of GUI programming from administrative
type text entry forms to graphical programs. I think Grayson focused too
much on exotic GUIs like the hardware rack, the multimeter, the calculator
and the ray-traced GUI. The descriptions should not be too shallow, but
they should be fairly brief.
* In short, the reader will expect there to be an answer to his wxPython
problems in the book. I assume the subjects of wxWindows and C++ must
be touched to handle this.
* The reader might not know a bit about C++. Issues related to the C++
nature of the toolkit must be explained, such as the need for manual
reference counting, and the possibility of python objects refering to
removed C++ objects etc.
* One might assume that a part of the readers have used Visual Basic
or a similar tool. (But by all mean not all of them.)
* It would probably be a good thing to talk about issues surrounding
GUI development such as the problems with GUI debugging, how to use
print statements effectively, how to use the tracebacks (Grayson
suggests replacing try/except with "if 1:" during debugging. I think
a simple "raise" after the except is a better suggestion.) There are
also issues such as modularity, thin GUI layers, how to achieve a high
coverage with automated tests in GUI apps etc.
So, satisfying these demands shouldn't be hard, right? I assume you
have had most of these thoughts already, but maybe there was some new
impulse.
···
At 17:12 2002-03-11 -0500, Gary wrote:
I have to decide the level of coverage of wxWindows. Some people don't want to deal with wxWindows at all (and from the responses I have received they are in the vast majority). Don't feel bad Horst that you are in the minority.
--
Magnus Lyckå, Thinkware AB
Älvans väg 99, SE-907 50 UMEÅ
tel: 070-582 80 65, fax: 070-612 80 65
http://www.thinkware.se/ mailto:magnus@thinkware.se