As title says this book is the one my university linux programming class is using. The book is laid out well and explains a lot of concepts and is easy to read. The book is for someone wanting to program from command line for linux/unix. However I write all the programs in gedit using ubuntu 10.10. The book does a great job explaining the how makefiles work and gives a good overview of bash, korn, and c shell. The only downsides are that the book doesn't give any substantial help with perl. So if you are planning on using perl, you will need supplemental material. It also does not give a lot of help with understanding sed and awk, but this was expected as they are such powerful programs. Also the book could've done better in explaining some command line editors like vim and emacs, but since I use only gedit to write, then it wasn't something that I fretted over. I will say that this book isn't then end all, as it isn't one thousand pages, but its a great start. Especially for someone who hasn't programmed in linux before as it is a profound overview of how to program in most areas. I will say that a cookbook to supplement might help with learning specific tasks. Highly recommend.