People are often asking me for book recommendations. Here is a list of my favorites that I have on my own bookshelf. I've listed by category. |
Build Your Own ASP.NET 2.0 Web Site, by Cristian Darie & Zak
Ruvalcaba
SitePoint, ISBN 978-0-975-24028-1
This is the text I use for my Web Programming course . Cristian Dariehas an easy-going writing style with excellent examples that demonstrate the power of ASP.NET. His examples are given using C# as well as Visual Basic .NET.
The book covers all the major aspects of ASP.NET including dynamic pages built using ADO.NET. It is based on the free version of Microsoft Visual Web Developer Express and is easily adapted to Visual Studio 2008.
ASP.NET Data Web Controls, by Stephen Walther
SAMS, ISBN 0-672-32501-2, 2003
This book is an excellent addition to Stephen Walther's book, ASP.NET. In this book he goes into much more detail on how to use the DataGrid and repeater controls.
I've discovered that the Microsoft interface for Visual Studio changes with every new version. In this book Walther's presents solutions as code examples. I've used the examples in this book with several versions of Visual Studio, Matrix, and Web Developer Express without a problem. Once you get away from the click and drag interfaces and the automated wizards, you'll find that the code is all the same, making this book an excellent long-term investment.
Drupal 5 Themes, by Ric Shreves
Packt Publishing, ISBN 978-1-847191-82-3
Drupal is an excellent CMS framework that allows you to create interactive websites very quickly.
Ric has written an excellent reference that takes you through Drupal themes with clear instructions and very effective screen shots. For the first two chapters he starts out describing how to install existing themes and then how to modify them quickly and easily using Drupal's built-in tools.
The remainder of the book focuses on the PHPTemplate engine that allows you to build themes from scratch.
If your clients are asking for interactive web pages with forums, polls, blogs, and file exchange, than this is the book for you. You will be able to customize the Drupal framework quickly and maintain it with minimum effort.
Eric Meyer On CSS and More Eric Meyer On CSS by Eric A. Meyer
New Riders, ISBN 0-7357-1425-8, 2004
Eric Meyer is considered one of the guru's of CSS. These two books have been very instrumental in helping people move from tables into the more modern design concepts offered by CSS.
This book is very project based. If you need to write and understand a CSS menu, a photo collection, a financial report, or setting up a blog design, than this is the book for you.
He also includes a chapter showing how to design for the CSS Zen Garden , which is shows what can be done with CSS.
This is a great book that will gently guide you into CSS and show you best practices at the same time. Spend your time with this book and the web journal A List Apart and you'll have enough CSS ideas for any project that comes your way.
transcending CSS, The fine art of web design by Andy Clarke
New Riders, ISBN: 0-321-41097-1, 2007
One of my students, Matt Stanton, showed me this book after the Holidays. He had received it as a Christmas present and was very excited about it.
Andy Clarke is an English web designer who is an invited expert to the W3C's CSS Working Group. He has written a very intriguing book that discusses the use of CSS from a designer point of view. The book is a delight to read. It is filled with lots of images, and unlike most technical books incorporates strong design elements on every page.
Andy breaks the topic into four areas: Discovery, Process, Inspiration, and Transcendence. Much of the work focuses on using a grid layout much like newspapers and magazines do. The "transcendence" is using the grid to make dynamically active pages that are fun to look at and relay LOTS of information.
This book would be a great addition to any library that is filled with code-intensive CSS books. It's like adding color to a boring black and white photograph, or striking photo to a dense page of text.
Macromedia Flash Professional 8 Hands-On Training by James Gonzalez
PeachPit Press, ISBN 0321293886, 2006
This is the text I use for my Flash - Independent Study course. It offers hands-on training using an easy-to-follow format.
Essential ActionScript 3.0 by Colin Moock
O'Reilly, ISBN 978-0-596-52694-8
If you are working with Flash or Flex programming you will want a copy of this book as a reference. I have tape flags marking the section on E4X, data types, XML, and animation.
The index is excellent and allows you to find things quickly. Many times I've simply typed in the sample code because it is almost exactly what I am looking for.
Flex Solutions, Essential Techniques for Flex 3 Developers by
Marco Casario
Apress, ISBN 978-1-59059-876-4
Flex can be a bit overwhelming when you are first learning it. It uses both MXML code (a special Adobe version of XML) and ActionScript 3.0. Often the MXML code just isn't powerful enough and you need to know how to do the same thing in ActionScript.
I first discovered Marco Casario out on the Web as I was looking for some solutions. He teaches Flex seminars around the world and has several sample chapters and demonstration videos that I found very helpful. Now that I have the book I can pull together a Flex project quickly.
I also use the "Expert Tips" section to expand what I already have learned on a topic.
ActionScript 3.0 Game Programming University by
Gary Rosenzweig
QUE, ISBN 978-0-7897-3702-1
If you want to be a game programmer, or need to learn basic programming techniques in the Flash environment, than this is a fun book to learn from.
Gary works quickly, showing you many basic techniques used by Flash programmers in the first two chapters. After that, each chapter is dedicated to a different game including matching, word search, action games, and game worlds.
Along the way you'll end up with some great games that you can expand on as well as an excellent knowledge of ActionScript 3.0 and the Flash environment.
I use this book as part of the TechNow Summer programming Institute.
How to Cheat in Photoshop CS3 (4th edition) by Steve Caplin
Focal Press, ISBN:978-0240520629
This is a great book if you are doing any work in Photoshop. It is filled with great effects you can use to create some really great graphics. Each effect is shown step-by-step with shortcut keys for both the PC and the Mac.
I've used this book to create cellophane "tape", make a photo look like a bedraggled poster hanging on a wall, and making photos look old and curled.
If you have an older version of PhotoShop Steve has books for those as well.
The Non-Designers Design Book by Robin Williams
Peachpit Press, ISBN: 0321193857, 2003
One of my students, John Hinnenthal, brought this little book to my Web Programming I class one day. This is a wonderful book. It's one of those books that you'll never stop reading. Every time I open it up I get a new idea for a layout or page design. And each time I find new things and ideas.
The basic concepts of design are wonderfully presented and Robin's little quick quizzes help jumpstart you out of "just-looking-at-the-pictures" mode and into "designer" mode. It's like a coloring book. You just have to fill in the spaces, you can't just look at it.
A little book that packs a lot of wallop.
This is used in a lot of college courses so there are lots of used copies. Buy this one used. You can't afford not to have a copy.
Web Development & Design Foundations, 4th Edition, by Terry Felke-Morris
Pearson/Addison Wesley, ISBN 978-0-321-53019-6
Just learning how to make web pages? This is the book for you. All the techniques are presented in a simple, step-by-step manner with lots of graphics and easy-to-follow code. I use this text in my Web Development course.
Even more important, the techniques that you will be learning are the most current including using CSS for design and layout (instead of old fashioned tables) and writing code that is accessible to everyone.
Of course, I still use HTML for the Web by Elizabeth Castro (see below) as my XHTML reference but this book is very good for teaching you how to build web sites that will look and feel very professional.
HTML for the World Wide Web - 6th Edition by Elizabeth Castro
PeachPit Press, ISBN 0321430840, 2006
This is an excellent reference for web development work. I use mine all the time. It covers XHTML as well as CSS in a quick, easy-to-find informative format. Now in its sixth edition, this book has become a classic. The web master at South Central College noticed my copy of Castro one day and told me that this was his first HTML book and that he is still using it as a reference today (although he did confess he has a newer edition.)
Elizabeth Castro uses one column for facts and one column to display the results and long explanations. This is one of those type-in-the-code-and-noodle-around type of books.
I use the appendixes to look up tags and CSS attributes almost on a daily basis. And anytime I need a color I just grab my Castro and flip open the color chart folded inside the back cover.
Adobe DreamWeaver CS3 - Comprehensive Concepts and Techniques,
by Shelly, Cashman, Wells, Freund
Thomson Course Technology, ISBN 978-1-4239-1242-2
This is the text I use for the DreamWeaver sections of my Web I course . Like all Shelly Cashman textbooks, this book designed to help you learn using proven techniques from the cognitive sciences. First they describe a concept. Then, they take you through an example, step-by-step. Finally, you can apply what you've learned by doing the case studies. Companion files for the book are available as a free download and include all the graphics and content used for the hands-on demonstrations.
The only down-side of this text is its strong reliance on using tables for page layout instead of CSS.
The book is laid out very well and is a delight to the eyes. The projects presented in the text also demonstrate very good page design.
HeadFirst Java, 2nd Edition by Kathy Sierra & Bert Bates
O'Reilly Media, ISBN 0596009208, 2005
Most books are the same. Step-by-step the text plods through from simple to difficult. blah, blah, blah... Nice for reference but not inspiring.
The Head First series breaks the rules. Using cognitive science it presents the material but in a fun and challenging way. The examples take subjects such as objects/classes and inheritance and makes them fun and easy to understand.
Kathy Sierra and Bert Bates are the founders of Java Ranch , a wonderful forum where Java greenhorns and experts work together. The same spirit of adventure and fun that you will find at Java Ranch is found throughout this book.
I own this book and have used many of Kathy's and Bert's examples as the basis for my Java labs.
Introduction to Java Programming - Comprehensive Version, 7th Edition, by Y. D. Laing
Pearson/Prentice Hall, ISBN: 978-0136012672, 2008
I've used this as the textbook for my Java II course for several semesters. It is very complete and covers valuable topics such as Swing, JSP and Servlets, JDBC, internationalization, and data structures. This book is an excellent reference after the course is complete and I refer to it often when I'm writing Java code.
Dr. Laing has also set up some excellent quiz pages on line for each chapter. Instead of just reading the text I recommend that you go through the quiz questions, putting the code in a small Java program and looking at that section of the book as you figure out the quiz question. It's more like doing puzzles than reading a book and you will learn LOTS!
Java Programming - From Problem Analysis to Program Design, 3rd Edition
by D.S. Malik
Thomson Course Technology, ISBN 978-1423901358, 2007
This is the text I use for my Java I course . Each semester the people taking my course give universal praise for the book, saying it is easy to read and understand. There are lots of code examples that clearly show the concepts being presented.
This text covers the new features of Java 6.0. It is a great tool for learning the basics of the language as quickly and easily as possible
Alice & Java by John Lewis & Peter Depasquale, Pearson/Addison Wesley, ISBN 978-0-321-51209-3
I also use this text in my Java
class especially for new programmers that have
experience using Alice, an introduction programming environment. The authors do
an excellent job of translating concepts that are easy to do in Alice into the
more complex code of Java.
The explanations of things such as classes and objects are short and sweet and easy
to understand.
Simply JavaScript, by Kevin Yank & Cameron Adams
SitePoint, ISBN 978-0-9802858-0-2
This is the text I use in my Programming Fundamentals course. It presents all of the essentials needed to learn JavaScript in an easy-to-understand format. SitePoint does an especially nice job with their use of color and illustrations in the book, making concepts clear and easy to understand.
Topics include the DOM, animation, JavaScript libraries, and AJAX.
DOM Scripting by Jeremy Keith
friendsof, ISBN: 1-59059-533-5, 2005
Jeremy Keith has presented at several conferences. I use his podcasts of these presentations in my courses. You can find them here on his blog http://www.domscripting.com/blog
Jeremy's book changed how I program JavaScript as well as my approach to the DOM. He writes with an easy narrative and his examples and explanations are very clear.
He is a strong proponent of writing web pages that will degrade gracefully if JavaScript
or the DOM is not available. This is an important skill to have in today's competitive
web development world.
This book also shows how to separate the JavaScript code from your XHTML content, much as
we have learned to separate styles using CSS.
I own this book and refer to it often.
ppk on JavaScript By Peter-Paul Koch
New Riders, ISBN: 978-0-321-42330-6, 2007
Peter-Paul Koch is a web designer from Holland and the creator of the popular website QuirksMode You can check out his writing style on his blogs.
I've used many of his examples as part of my class labs. They are very well presented and easy to follow. Here's an excerpt from the book with examples on textarea maxlength, useable forms, form validation, and other really excellent techniques.
My Job Went To India by Chad Fowler
Pragmatic Bookshelf, ISBN: 0-9766940-1-8, 2005
It just so happens that programmers from India are buying this book. Why? Because they are losing their jobs to China...
This book has 52 ways to save your job as well as position yourself better in today's global market.
Each chapter is short (1-3 pages) and ends with specific action items you can take which will make your career. That's an action item for each week of the year.
Chad writes from experience in a down-to-earth manner. Use this as a instruction manual for positioning yourself where you want to be in the job market.
The Art of Changing the Brain by James Zull
Stylus Publishing, ISBN: 1-57922-054-1, 2002
Reading this book is like reading the instruction set for your brain. It is a fascinating book about how we learn. It is written for teachers, but anyone interested in learning how to learn will really enjoy this book.
Zull takes his biology background as well as his teaching experiences and shows how actual learning takes place. And, believe me, it isn't sitting for hours listening to a lecture. It's all about participating in what is going on around you.
He literally uses the techniques he is describing as he unfolds each chapter, taking you deeper and deeper into the brain. You can't help but learn as he unfolds the mysteries.
Learning to Program with Alice, by Wanda Dann, Stephen Cooper, and Randy
Pausch
Pearson/Prentice Hall, ISBN 0-13-187289-3, 2006
Alice is a fun way to learn about programming fundamentals, and this is a great guide into this 3-D World of animated objects and characters.
I use this book during the TechNow Summer Programming Camp as well as for the first half of my Programming Fundamentals course. There are lots of excellent screen shots and the text has many interesting things to do. You will hardly know you are learning along the way.
A copy of the Alice programming environment comes with the book or you can download it from alice.org . This is a free, open-source language from Carnige Mellon University.
Emergence, by Steven Johnson
Scribner, ISBN 0-684-86875-X, 2001
The final lecture for my
Web III (XML)
course is always my favorite. Not because it is the last lecture,
but because I get to re-read one of my favorite books: Emergence by Steven
Johnson.
This book
tells a fascinating story describing how systems like the Web can develop without a central planner.
Johnson, a writer for Wired magazine, spins an interesting tale of slime
mold, harvester ants, SlashDot.org and the SIMS. This is a fascinating book that will give you an
excellent background on how the Web is evolving, giving you insight into the future.
In my last lecture I show how XML is becoming the main communication link to our world and the Semantic Web concepts of Tim Berners-Lee. The Semantic or "smart" web will take us forward beyond the current web in much the same power that we moved from printed materials to web communications in the 1990's.
Beginning PHP5 by Dave Mercer, Allan Kent, et al
WROX, ISBN: 0-7645-5783-1
This is the textbook I've choosen for my Web Programming course.
This is an excellent book for learning PHP as well as as a reference. WROX books almost always have excellent explanations and very good example code.
The book covers all the basics of PHP as well as more advanced subjects such as:
-- Use of XML
-- Using MySQL as a database engine
-- Object oriented programming using PHP
-- PEAR (a database library that has become a programming standard)
-- Using PHP to handle email automation.
The Programmer's Guide to SQL, by Christian Darie and Karli Watson
Apress, ISBN 1-59059-218-2, 2003
This is an excellent reference book that I use everytime I start writing SQL statements. It includes examples for Access, SQL Server, DB2, MySQL, and Oracle highlighting nuances for each of these databases when they handle things differently. For example, the trick of using # signs around date fields in Access: STR(#2003-01-01#)
This book will give you a quick reference to the many forms of JOIN as well as how to set up stored procedures using variables, triggers, and pattern matching when using SELECT statements.
Getting Things Done, by David Allen
Penquin Books, ISBN 0-14-200028-0
"It's possible for a person to have an overwhelming number of things to do and still function productively with a clear head and a postive sense of relaxed control." - David Allan
I've tried many systems, trying to be more efficient. David Allen uses the skills we all have and applies them so they work. Along the way he points out why to-do lists only lasted a few days until I got discouraged with them and why a calendar system alone doesn't do the trick in today's world. This book is based on years of practical experience training very busy people who need to get things done.
Although David Allen doesn't promote any particular software, I've been using the open-source program named Chandler which was designed using the Getting Things Done concepts. This book is an excellent how-to manual for the Chandler program.
This book will help you:
(1) Overcome feelings of confusion, anxiety, and being overwhelmed
(2) Plan and unstick projects
(3) Reassess goals and stay focused in changing situations
Visual Basic.NET - Primer Plus, by Jack Purdum
SAMS, ISBN 0-6723-2485-7, 2003
This is the text I use for my VB.NET course . It covers all the essential elements of the VB.NET language in a direct, no-frills manner. Jack Purdum's writing style is easy-to-read and doesn't get bogged down in details.
This book has an excellent index and is not only a good learning tool, but will serve as an excellent reference text as well.
Beginning XML, 3rd Edition, by Hunter, Watt, Rafter
WROX, ISBN 0-7645-7077-3, 2004
This is an excellent reference book for XML. I first used this text for the XML course as part of my Master's degree. The material is presented smoothly and with very good examples. There's no extra clutter.
I especially like the chapter on XSLT and SOAP. XML introduces many technologies and requires a lot of tools. I really appreciated the fact that this text uses all open-source tools such as RelaxNG, the XMLDistilled Editor and the Topologi Schematron Validator.
I use this as my textbook for my Web Programming III (XML) course.
I also have the WROX Professional XML, 2nd Edition. But, I prefer the Beginning XML as a great overall reference to anything XML. It is often said that the more authors a book has the lower the quality. This is certainly true between WROX's Beginning XML (5 authors) and WROX's Professional XML (13 authors).
If you want an good overall reference book for your XML work, than this is the one to have on your bookshelf.