Tuesday 15 November 2016

source: http://www.economist.com/styleguide/introduction

Long paragraphs, like long sentences, can confuse the reader. “The paragraph”, according to Fowler, “is essentially a unit of thought, not of length; it must be homogeneous in subject matter and sequential in treatment.” One-sentence paragraphs should be used only occasionally.

Clear thinking is the key to clear writing. “A scrupulous writer”, observed Orwell, “in every sentence that he writes will ask himself at least four questions, thus: What am I trying to say? What words will express it? What image or idiom will make it clearer? Is this image fresh enough to have an effect? And he will probably ask himself two more: Could I put it more shortly? Have I said anything that is avoidably ugly?”

Message/Words/Idioms/Freshness

Tuesday 6 September 2016

Want Clear Thinking? Relax

source: http://www.scientificamerican.com/article/want-clear-thinking-relax/

Dozing or being lazy for those 20 minutes is not the answer, however, in part because these states dull one's mental edge. Active relaxation relieves stress better yet keeps the mind primed.
The best active relaxation is a short mental vacation. Find a comfortable sitting position and close your eyes. Breathe calmly and regularly. In your mind, picture a particularly relaxing moment. Choose any scene you want, such as a quiet afternoon walk on a beach. During this imagined trip, think of as many sensations as possible—feel the soft sand between your toes, smell the salty air, hear the surf, enjoy the warmth of the sun on your face.
With only a modicum of practice, you will find that these “mental movies” can quickly lead to moments of deep relaxation.
To make your mental movies most effective, when you close your eyes think of a phrase to initiate the exercise each time, such as “I'm now going on vacation.” Then focus all your attention on your breathing. When you begin to breathe in and out, fully expand and contract your lungs: inhale slowly for six seconds, hold the air for three seconds and exhale for six seconds. To help control your breathing, imagine there is a candle in front of you; you are not trying to blow it out but simply to make the flame flicker. Do this exercise a second time and take note of the letting go you begin to feel.
If you can repeat this cycle numerous times, your epinephrine levels will subside and feelings of stress and anxiety should taper off. Then you can really enjoy your mental vacation, whether you are at the beach or on a mountaintop. When you want to end the exercise, be sure to return to your surroundings as gently as possible. Try mildly contracting all your body muscles while slowly opening your eyes.
Younger children may find such guided relaxation too restrictive. Instead of focusing on breathing, it may be easier for them to think of “quiet time.” Renowned Italian educator Maria Montessori discovered that most children love the quiet (which may seem unbelievable to many stressed-out parents) and respond well to the following instruction: “Close your eyes. Be completely quiet. Don't move. Hear the silence and listen to your body.” And if young people find it difficult at first to develop a soothing mental image like a beach, read them a story, and they will readily transport themselves to an imaginary world, which is the real goal.
If a child has great difficulty keeping still and silent, calm background music can provide an ideal bridge. The same applies to adults who have trouble relaxing. Listen to melodic, instrumental music, allowing your thoughts to flow freely. For a short break at the workplace, imagining such music is enough—close your eyes and turn on your mental CD player.

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