I recently read Joel Spolsky's book "Smart and Gets Things Done", which is a fun and interesting read. The book is built around the reality that very good developers are 10 times more efficient than average developers and the whole focus and goal of the book is to help you find these very good developers. A smart person who actually can get the work done as opposed to smart people who never deliver finished work is another main point in the book.
One part which I really liked in the book was an advice to stick with basic algorithmic questions during interviews and the importance of "c pointers" related questions, although a coder might be required to code using Ruby which isn't concerned with pointers at all. I feel that this is very much necessary since it is the fundamentals which are highly important and these fundamental concepts form the requirements for finding solutions to problems on higher levels. I'm sure that someone understanding how to reverse a linked list will be able to construct high quality code in Ruby since all software systems design seems like fractal extensions from simple fundamental concepts of computing such as the double indirection idea in pointers. Some experts even take this idea to the extremes and believe that bit manipulation techniques are even more important.
Strong fundamentals are crucial in almost any competence, sports, music, acting or even cooking. Phil Jackson had mentioned its importance once during their practices.Practices of team which had the world's best players and finished up with an unbelievable record of 72-10. The focus for THAT team was Fundamentals!
The secret of the masters is to practice the "Basics" continually.
Lets finish by a quote with Phil the Zen Master:
"Like life, basketball is messy and unpredictable. It has its way
with you, no matter how hard you try to control it. The trick is to
experience each moment with a clear mind and open heart. When you do
that, the game--and life--will take care of itself."
One part which I really liked in the book was an advice to stick with basic algorithmic questions during interviews and the importance of "c pointers" related questions, although a coder might be required to code using Ruby which isn't concerned with pointers at all. I feel that this is very much necessary since it is the fundamentals which are highly important and these fundamental concepts form the requirements for finding solutions to problems on higher levels. I'm sure that someone understanding how to reverse a linked list will be able to construct high quality code in Ruby since all software systems design seems like fractal extensions from simple fundamental concepts of computing such as the double indirection idea in pointers. Some experts even take this idea to the extremes and believe that bit manipulation techniques are even more important.
Strong fundamentals are crucial in almost any competence, sports, music, acting or even cooking. Phil Jackson had mentioned its importance once during their practices.Practices of team which had the world's best players and finished up with an unbelievable record of 72-10. The focus for THAT team was Fundamentals!
The secret of the masters is to practice the "Basics" continually.
Lets finish by a quote with Phil the Zen Master:
"Like life, basketball is messy and unpredictable. It has its way
with you, no matter how hard you try to control it. The trick is to
experience each moment with a clear mind and open heart. When you do
that, the game--and life--will take care of itself."
No comments:
Post a Comment