|
|
Books and other resources |
|
No text is required for this course. We will use "Introduction to
Probabilistic Graphical Models" by Michael Jordan, of which we
will hand out chapters in class.
For extra reading and a web portal to the community of graphical models researchers go to http://www.auai.org the page of the Association for Uncertainty in AI. For graph theory a good book to have is West - "Introduction to graph theory". We will use only *very* small parts of it in this course. For algorithms and data structures, the book of choice is CRLS, aka Cormen, Leiserson & Rivest "Introduction to Algorithms". This contains many of the tree algorithms that we'll be learning about. Additional research articles that will be discussed in class will be posted on the Handouts page. What follows below is the old version of the resources, used until 2006. There will be no required textbook for this class. The Java book I recommend is K. Arnold, J. Gosling, D. Holmes, "The Java Programming Language". Each week I will assign reading by indicating a topic (for example "identifiers" or "inheritance") and you can read about it in the book of your choice. Below is an annotated list of Java books from which you can choose the one that best matches your style of learning. Some of them are available on line so before buying a book browse the links in the table and see if you like what you find there. For graphical probability models, I will occasionally use F.V. Jensen, "An introduction to Bayesian networks" plus articles that I will hand out. For graph theory a good book is West - "Introduction to graph theory". We will use only *very* small parts of it in this course and probably I will hand them out in class. For algorithms and data structures, the book of choice is CRLS, aka Cormen, Leiserson & Rivest "Introduction to Algorithms". This contains all the tree algorithms that we'll be learning about. http://java.sun.com The official Java site. Downloads, documentation, Java books for download, FAQs, sample code. In case you didn't know it yet, Java is free, open source, machine idenpendent and comes with lots of useful libraries. You can read about java or browse through the source code of the libraries or find more book recommendations. The API for the Java version on the departmental machines is here. MSCC/Stat
Fun
A list of books on Java The links by the book title take you to further reading or to free software resources provided by the book authors. Some of the books are entirely on the web. |
| Academicity index | Title | Author | Comments | Edition | Publisher | Publishing Date |
|---|---|---|---|---|---|---|
| 1 | The JavaTM Programming Language | Ken Arnold, James Gosling & David Holmes | My favorite so far | 3rd | Sun Microsystems, CA | 2000 |
| 6 | Just Java² (with CDRom) | Peter van der Linden | Sun's official Java book. Very tutorial and hands-on, with tips for novice computer users. Includes also a lot of advanced stuff (it has more than 1000 pages!) and some more or less interesting computer industry trivia. A "Unix/Linux compatible" book. | 5th | Sun Microsystems Press, California | 2002 |
| 17 | Big Java | Horstman, Cay | Also a CS textbook. Therefore includes chapters on data structures (there are standard libraries for that in Java) and less on the "system engineering" aspects. For complete novices, lots of screen shots and tips like "don't forget to save your files". Assumes you live in Windows world. | John Wiley & SOns, Inc | 2002 | |
| 106 | An Intro To Programming & OO Design Using Java | Niño, Jaime & Frederick A. Hosch | The current CSE 142-143 textbook. A textbook intended for students not programmers. Chapter 1 good introduction to computating in general. You can skim through chapters 1 and 2; chapters 3 and 4 start introducing lines of code but read quickly too, and by ch 5 you already (sic!) have a small Java program. Later on are some pretty useful chapters on lists, arrays, binary search, and so on. | John Wiley & Sons, Inc | 2002 | |
| 119 | Thinking In Java | Eckel, Bruce | For more experienced (especially C++) programmers, explains the philosophy behind Java and OOP. Nice introductory reading on many other things in todays computer world like multithreading, programming as a buisness, extreme programming. Can also be downloaded free of charge on the web, together with the supporting software. | 2nd | Prentice Hall, New Jersey | 2000 |
| NA | Practical Java-Programming Language Guide | Haggar, Peter | Tips for better Java coding. Useful for Java beginners. | Addison-Wesley | 2000 | |
| NA | Effective Java - Programming Language Guide | Bloch, Joshua | Advanced tips for better Java coding. | Sun Microsystems, CA | 2001 | |
| 3 | Programming for Everyone in Java | Hansen, Per Brinch | Too elementary. Not worth the trouble. | Springer-Verlag, NY | 1999 | |
| The JavaTM Tutorial, Third Edition - A Short Course on the Basics | Campione, Mary, Kathy Walrath & Alison Huml | Fine for the basics, especially if you aren't an experienced programmer yet. But for the more advanced stuff (I/O for example, library data structures), the treatment is confusing and oversimplified. | | 2001 |
|
Contact the instructor at: mmp@stat.washington.edu