Tuesday 9 August 2016

Review: Qasd us Sabeel

Qasd us Sabeel Qasd us Sabeel by Ashraf Ali Thanvi
My rating: 5 of 5 stars

As the name suggests, the book speaks to a person who has made up his mind of travelling the path of Islamic sprituality and has decided to do tawbah. He or she does not think the rules of Shariat are below them, or that, they're impossible to follow. They have agreed to follow them all.

The book first introduces Islamic Spirtuality, and followed by some insightful lessons. Depending on the reader's experience and knowledge, they can be obvious or, pose much depth and require delibration. The last third of the book is mainly advice in the way of "Do this, not this".

It's not a motivational book for all Muslims. It's not a defense of Spirtuality arguing to convince people of it's validity and virtues. It's not a book of knowledge where one may learn the lessons of Quran or Hadees. This is a compact book which shuns away the misconceptions that become the reason for people not wanting to follow this path, or not treading the path successfully.

Not only is it an important book, it's one that should be read again and again.

View all my reviews

Monday 18 July 2016

“The life of every man is a diary in which he means
to write one story, and writes another; and his hum-
blest hour is when he compares the volume as it is
with what he vowed to make it.”
—J.M. Barrie
“Enter ye in at the strait gate: for wide is the gate,
and broad is the way, that leadeth to destruction,
and many there be which go in thereat: Because
strait is the gate, and narrow is the way, which lead-
eth unto life, and few there be that fi nd it.”
—Matthew 7:13-14

Monday 30 May 2016

What is the single most influential book every programmer should read?

From Stackoverflow
  • Code Complete (2nd edition) by Steve McConnell
  • The Pragmatic Programmer
  • Structure and Interpretation of Computer Programs
  • The C Programming Language by Kernighan and Ritchie
  • Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein
  • Design Patterns by the Gang of Four
  • Refactoring: Improving the Design of Existing Code
  • The Mythical Man Month
  • The Art of Computer Programming by Donald Knuth
  • Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman
  • Gödel, Escher, Bach by Douglas Hofstadter
  • Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
  • Effective C++
  • More Effective C++
  • CODE by Charles Petzold
  • Programming Pearls by Jon Bentley
  • Working Effectively with Legacy Code by Michael C. Feathers
  • Peopleware by Demarco and Lister
  • Coders at Work by Peter Seibel
  • Surely You're Joking, Mr. Feynman!
  • Effective Java 2nd edition
  • Patterns of Enterprise Application Architecture by Martin Fowler
  • The Little Schemer
  • The Seasoned Schemer
  • Why's (Poignant) Guide to Ruby
  • The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
  • The Art of Unix Programming
  • Test-Driven Development: By Example by Kent Beck
  • Practices of an Agile Developer
  • Don't Make Me Think
  • Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin
  • Domain Driven Designs by Eric Evans
  • The Design of Everyday Things by Donald Norman
  • Modern C++ Design by Andrei Alexandrescu
  • Best Software Writing I by Joel Spolsky
  • The Practice of Programming by Kernighan and Pike
  • Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt
  • Software Estimation: Demystifying the Black Art by Steve McConnel
  • The Passionate Programmer (My Job Went To India) by Chad Fowler
  • Hackers: Heroes of the Computer Revolution
  • Algorithms + Data Structures = Programs
  • Writing Solid Code
  • JavaScript - The Good Parts
  • Getting Real by 37 Signals
  • Foundations of Programming by Karl Seguin
  • Computer Graphics: Principles and Practice in C (2nd Edition)
  • Thinking in Java by Bruce Eckel
  • The Elements of Computing Systems
  • Refactoring to Patterns by Joshua Kerievsky
  • Modern Operating Systems by Andrew S. Tanenbaum
  • The Annotated Turing
  • Things That Make Us Smart by Donald Norman
  • The Timeless Way of Building by Christopher Alexander
  • The Deadline: A Novel About Project Management by Tom DeMarco
  • The C++ Programming Language (3rd edition) by Stroustrup
  • Patterns of Enterprise Application Architecture
  • Computer Systems - A Programmer's Perspective
  • Agile Principles, Patterns, and Practices in C# by Robert C. Martin
  • Growing Object-Oriented Software, Guided by Tests
  • Framework Design Guidelines by Brad Abrams
  • Object Thinking by Dr. David West
  • Advanced Programming in the UNIX Environment by W. Richard Stevens
  • Hackers and Painters: Big Ideas from the Computer Age
  • The Soul of a New Machine by Tracy Kidder
  • CLR via C# by Jeffrey Richter
  • The Timeless Way of Building by Christopher Alexander
  • Design Patterns in C# by Steve Metsker
  • Alice in Wonderland by Lewis Carol
  • Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig
  • About Face - The Essentials of Interaction Design
  • Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky
  • The Tao of Programming
  • Computational Beauty of Nature
  • Writing Solid Code by Steve Maguire
  • Philip and Alex's Guide to Web Publishing
  • Object-Oriented Analysis and Design with Applications by Grady Booch
  • Effective Java by Joshua Bloch
  • Computability by N. J. Cutland
  • Masterminds of Programming
  • The Tao Te Ching
  • The Productive Programmer
  • The Art of Deception by Kevin Mitnick
  • The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan
  • Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp
  • Masters of Doom
  • Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett
  • How To Solve It by George Polya
  • The Alchemist by Paulo Coelho
  • Smalltalk-80: The Language and its Implementation
  • Writing Secure Code (2nd Edition) by Michael Howard
  • Introduction to Functional Programming by Philip Wadler and Richard Bird
  • No Bugs! by David Thielen
  • Rework by Jason Freid and DHH
  • JUnit in Action
  • Discrete mathematics for computer scientists


Wednesday 18 May 2016

Review: Thinner Leaner Stronger: The Simple Science of Building the Ultimate Female Body

Thinner Leaner Stronger: The Simple Science of Building the Ultimate Female Body Thinner Leaner Stronger: The Simple Science of Building the Ultimate Female Body by Michael Matthews
My rating: 5 of 5 stars

If you're trying to lose weight, and have access to a gym, this could be the 2nd or 3rd best way to go about it. I like the book because it's to the point, short yet comprehensive. The author talks in a very genuine, clear tone, and describes everything in scientific enough way to make sense spilling any jargon around.

The book does a great job of motivating and inciting action, not by BSing you, but by simply making it look so easy. This book made Mike one of favs.

View all my reviews

Tuesday 10 May 2016

10 ways to have a better conversation


  1. Don't multitask. Don't think about anything else. If you want to get out of the conversation, get out of the conversation. Don't be half in it. 
  2. Don't pontificate. If you want to talk about without listening, write a blog (lol). Everybody you ever meet, will know something you don't. Everybody is an expert is something. Strive to learn that. Assume that you have something to learn. 
  3. Use open ended questions. Who What When Where How.
  4. Go with the flow. Ideas and stories are gonna come to you during the listening period, let them go. 
  5. If you don't know, say that you don't know. 
  6. Don't equate your experience with theirs. It's not the same. It's never the same. Every experience is the same. Secondly, it's not about you. Conversations are not a promotion opportunity. Conversations. Are. Not. A. Promotional. Opportunity!
  7. Don't repeat yourself.
  8. Stay out of the weeds. Forget the details. People don't care. 
  9. Listen! If you're moth is open, you're not learning. No man ever listened his way out of a job. 
  10. Be Brief.