Pre Script
One revelation that I seem to have forgotten from college was that
Programming is like the game of Chess: Most of the problems have probably already been solved by someone! You will benefit a great deal, if you can recognize patterns and piece things together, block by block..
In order to do that, you need to:
- learn about as many solutions existing out there as possible
- internalize the origins of the problem
- practice them enough to be able to callup the rough outline of the solution to reshape it to the answer you are looking for
In this journey you may embark on: from journeyman to craftsman
you may pickup on some xside goodness such as:
- best test practices
- templates and macros
- IDEs: pros and cons of the millions out there, and so on…
Algorithms and Data Structures:
Coming at this from a Non-CS background, what I felt I lacked getting into
Here is my compendium of books, courses and other material that may guide you through your own journey.
PS: I may be updating this list based on any suggestions or new things I stumble upon, pertinent to this generation in programming
Books
Courses
Training Ground
None of the above is of any use unless you hunker down and put in the time and sweat needed to give you the exp points to evolve. Like Bob Proctor rightly said:
No amount of reading or memorizing will make you successful in life. It is the understanding and application of wise thought that counts.
Clever algorithms are top contenders in what counts as wise thoughts these days, especially as they are provable to some degree of mathematical certainty!
In summary, this is the idea I would like to leave you with:
It doesn’t matter how clever the algorithm is, or even how smart the person who came up with it is.. It is only valuable based on how many people use it!