Sunday 30 August 2015

From Beginner to Professional Programmer

Top 10 books you need to become a professional Programmer:

1) Linux Programming Interface by Michael Kerrisk
Linux programming comes around as a ninjitsu skill for most of the people. So here's a book that takes you to next level of programming. It is written by Michael Kerrisk who is responsible for maintaining Linux man pages. The book is thorough with code examples ranging from basic I/O to kernel
programming.
I would recommend it for anyone who would love to get into some serious programming. The book is totally written in consideration with current trends in programming.

2) Expert C programming (Deep C secrets) by Peter Van der Linden
This book is specifically designed for advanced level programmers. It focuses of majority of pitfalls of C programming and anomalies that you experience in real programming environment. The wisdom this book provides is quite helpful to avoid bugs that could cause million dollar projects to halt
down.

3) Understanding and using C pointers by Richard Reese
If you ask any programmer what was the worst thing to understand and apply in C, you will get majority votes for pointers. As one of the best features which gives C the upperhand
over other high level languages, pointers gives learners a real hard time to master.

4) Advanced Programming in UNIX Environment by Richard Stevens
Late Richard Stevens was one of the best programmers in the Linux environment. He had done an extensive research and had a contribution to the popularity of UNIX
amongst programming community. Advanced Programming in UNIX Environment is the best reference you can ever have for UNIX programming.

5) Advanced Linux Programming by Mark Mitchell, Jeffrey Oldham and Alex Samuel
This book is one of the oldest references for Linux users. It has covered all major aspects of programming in Linux environment. It also provides extreme level shortcuts to programming which you've probably never heard of. The authors of this book have a quirky humor, so you would definitely enjoy reading this book.

6) Accelerated C++ by Andrew Koenig, Barbara Moo
Accelerated C++ is an advanced level reference for C++ programmers. The difference here in this book is that it devotes to problem solving rather than exploring library features. This book would actually teach you what to use when and how. This is the book you need when you are
actually up and running writing code.

7) Jumping into C++ by Alex Allain
As the name suggests, this book is introductory level text which advances to an intermediate level. I've added this book in the list because this book gives you a quick tour to all aspects of C++ without much heavy theory.

8) Sed & awk by Dale Dougherty, Arnold Robbins
This book is about a set of oddly named UNIX utilities, sed and awk. These utilities have many things in common, including the use of regular expressions for pattern matching. Since pattern matching is such an important part of their use, this book explains UNIX regular expression
syntax very thoroughly. Because there is a natural progression in learning from grep to sed to awk. The focus of this book is on writing scripts for sed and awk that quickly solve an assortment of problems for the user. Many
of these scripts could be called “quick-fixes.”

9) Foundations of GTK+ development by Andrew Krause
User Interface is one of the most important aspects of application. GUI is now the choice of interface for majority of the computer users all around the world. For building cross-platform, feature rich GUI, GTK+ library is the obvious
choice. But the problem is GTK+ lacks documentation. So this book comes to your rescue. The author taken proper care to
balance the content which proves useful to intermediate as well as advanced users.

10) Definitive guide to GCC by William van Hogen
GCC is the old uncle of all the compilers which has a great fan base due to its ability to produce quick fast code and is very easy to port to different architectures. GCC has a comprehensive documentation, but that is intended for advanced level programmers, so most of programmers use GCC with a set of basic commands they have learnt in some high school programming classes. But this way you can't unleash the potential of GCC, so this book perfectly serves the purpose. It is written specifically for learners and avoids any unintentional use of technical jargon.

No comments:

Post a Comment