Need some basics

Sean Ross sross at connectmail.carleton.ca
Mon Mar 10 19:42:50 EST 2003


    http://www.ibiblio.org/obp/thinkCSpy/
"How to Think Like a Computer Scientist: Learning with Python"
by Allen B. Downey, Jeffrey Elkner and Chris Meyers
    is a good introduction to several comp.sci. topics, and it's free...

"Discrete Mathematics and its Applications" by Kenneth H. Rosen
    This is a good introductory text for logic, set theory, and other
fundamental concepts. You should probably
    read this before moving on to...

"Introduction to Algorithms" by Cormen, Leiserson, Rivest, Stein
    which is a more advanced and comprehensive study of algorithms and data
structures, and more.
    If you buy one book, I'd recommend this one. But, it's expensive.

"Elements of the Theory of Computation" by Lewis, Papadimitriou
    is also advanced. It covers the theory behind state and turing machines,
and other automata; grammars;
    P and NP problems. (I don't know how practical this will be for you, but
it's part of the foundations of computation,
    so, if you want to round out your studies, this'd be one way to go)

"Mastering Regular Expressions " by Friedl, would be generally useful.

I'm not sure what book to recommend for design patterns but, here's a link
to some course notes
http://www.scs.carleton.ca/~francis/Courses/304/Slides/

"Operating Systems: A Modern Perspective" by Gary Nutt or
"Operating System Concepts" by Silberschatz, Galvin, Gagne
    will be useful if you want to have a better understanding of the system
your code is running on, and

"Introduction to Assembly Language Programming" by Dandamudi
    can show you how your programs actually are run

You might want to have a look at some functional(scheme) and logic(prolog)
programming languages,
to understand a couple of different approaches to problem solving, and, in
particular, to get a solid
understanding of recursion.

This would be a good start. Of all of these, I'd recommend reading the free
ebook first and then, if you
want a very good book, get "Introduction to Algorithms". Be forwarned that
it is a more advanced text,
but it can also be very useful.

OK, then. Enjoy your studies,

Sean Ross


"L. B." <lorenzo at mysurname.net> wrote in message
news:KO9ba.1421$Lr4.44073 at twister2.libero.it...
> Hi all,
>
> seems that this is the right place to ask this question since many
> people who hang on this group are very much experienced in computer
> programming and the 99% knows more than just Python...
>
> I'm quite a newbie in programming and i'm soon getting tired of the VB
> crap (and that's why i'm learning Python)... i'd like, someday, to
> define myself a programmer, but i feel i'm missing some valuable
> basics of computer science: algorithms, data-structures, software
> engeenering... and when thinking about making even a simple game (like
> tic-tac-toe) i found myself screaming just for thinking how it should
> be done.
>
> So here is the question... assuming that i'm too old (26) for going
> back to college and study something else that Politics and Economics
> which doesn't seem to be anything computer-related ;-) which book
> should i study, which books shouldn't miss from a serious programmer's
> bookshelf?
>
> Thank You,
> Lorenzo
>
>






More information about the Python-list mailing list