“The Art of Computer Systems Performance Analysis” is a comprehensive book by Raj Jain on a topic that is often ignored by computer programmers and architects or is approached in a haphazard manner: the analysis of the performance of computer systems. Such an analysis is useful for capacity-planning, selection of hardware or software for procurement, identification of bottlenecks in an under-performing system, etc. To be clear about the intent of this book, it is not a cookbook on building high-performance systems or on optimising code to make it run faster. Even though it was first published nearly 20 years ago, almost all of it still remains relevant and useful. It would perhaps not be hyperbolic on my part to term this book as one of the under-appreciated classics of computer programming.
Archive for 2010
[2010-12-23] “The Art of Computer Systems Performance Analysis”
[2010-11-17] “Electric Feather”
“Electric Feather” is a collection of erotic short stories by various writers and edited by Ruchir Joshi. It sets out to correct “a dearth of good erotic writing” (in English) in the Indian sub-continent. It is a commendable and courageous effort, given the excessive prudery of people in this part of the world in recent times. I would not term it an unequivocal success though.
[2010-10-28] “Predictably Irrational”
“Predictably Irrational” is an entertaining and insightful book by Dan Ariely that seeks to show how irrational we humans are, in sharp contrast to standard economic theory that assumes that people are perfectly rational beings acting in self-interest (Homo Economicus). This realisation forms the basis for the relatively-new field of Behavioural Economics that marries psychology with economics in an attempt to create better models for human economic behaviour. Even if you're not interested in the study of economics, this is a great book to help you understand how your behaviour impacts your ability to take rational decisions and use this awareness to minimise the effect of irrational decisions on your life.
[2010-10-17] On The 2010 Commonwealth Games in Delhi
The 2010 Commonwealth Games in Delhi (CWG) has thankfully ended, that too on a high note - the games went fairly well on the whole and India came second in the overall medals tally thanks to a gold-medal-winning match on the last day by Saina Nehwal. It was a big relief, coming as it did after revelations of shocking mismanagement, massive corruption and utter callousness of the concerned officials, which were threatening to derail the games and bring shame to India.
[2010-10-12] “On Beauty”
“On Beauty” is a lavishly-illustrated book by Umberto Eco and Girolamo de Michele (translated from the original Italian into English by Alastair McEwen) that explores the depiction of beauty in western art through the ages. It uses the art of a period as a reflection of the standards of beauty in that period and shows how these standards have evolved over time. The discussion excludes beauty in nature or literature as well as the depiction of beauty in the art produced by the eastern cultures.
[2010-09-20] “The Ascent of Money”
I wanted to read “The Ascent of Money” by Niall Ferguson after having watched a local broadcast of the eponymous documentary-series from Channel 4. Each episode of the documentary-series was about an aspect of finance and was presented by the author himself. As they were broadcast around the time of the latest financial crisis (called the “Great Recession” by many people), it made for some very interesting viewing. Hoping to find more depth and greater detail in the book, I have to report that I was mildly disappointed after reading it. If you are totally new to the world of finance though, you will very likely find the the documentary-series (or the book) entertaining and insightful.
[2010-09-07] Protecting Your Privacy on Linux
Some times you need to protect your documents containing sensitive information from prying eyes. Simply enforcing access-control on a document (e.g. "
chmod 600 foobar") is not enough in such cases as it can still be read by those with super-user access or with physical access to your storage media (e.g. when your laptop gets stolen or you misplace your backup media). It is also ineffective when you use on-line back-up solutions like SkyDrive, Google Docs or Dropbox. Fortunately Linux provides several tools to help you here depending on your needs.
[2010-09-01] “The Tipping Point”
“The Tipping Point” by Malcolm Gladwell is a book that expands upon an article by the author in the New Yorker published in 1996. It seeks to explore how ideas, products, messages and behaviours “tip over” and suddenly spread through or recede from society, just like pathological epidemics through a population. These are termed “social epidemics” by the author. Understanding such phenomena can help us effect a desired change in society (e.g. market a product or spread a message).
[2010-08-30] Web-Site Source-Code Now Available
I am sharing the source-code for this web-site as a Mercurial repository hosted on BitBucket. The repository can be found at bitbucket.org/rmathew/website. The source-code uses the m4 macro processor for generating the content. It also uses make and a few helper scripts for managing dependencies. It heavily depends on the availability of a UNIX-like environment, as provided by Linux for example.
[2010-08-06] “Train to Pakistan”
“Train to Pakistan” is a short and deeply moving novel by Khushwant Singh. It shows the effect of the partition of India, as the British left the country, on the simple folks of Mano Majra, a small Indian village on the banks of the river Sutlej near the border of India and Pakistan. The Sikhs and Muslims of the village, living happily together for centuries without any animosity towards each other, get caught up in forces beyond their control with the Muslims forced to flee to Pakistan and the Sikhs getting ready to kill unknown strangers who just happen to be Muslims.
[2010-07-30] “Above Average”
“Above Average” by Amitabha Bagchi is a novel about a smart boy with a middle-class background and his life before, during and after his stay at IIT Delhi. It is the story of friendships forged and lost, love blossoming and withering. It is a coming-of-age novel that has also been termed a “campus book” because of the many recent Indian novels based on life at the IITs and the IIMs. However it is certainly one of the better-written novels of the lot.
[2010-07-12] “Head First Statistics”
I have come to believe that statistics is one of those important subjects that most of us know woefully little about even as we increasingly rely on the results of various studies to drive our lifestyle choices or on data visualisation to take decisions at our workplace. That said, I have been procrastinating on my resolution to study this subject in greater depth than what was afforded by an introductory course I took in college ages ago. The first step towards that goal has now been precipitated due to the nature of my current work. Unfortunately for me, most of the books on this subject looked too dull or intimidating to serve as a useful review of the basic concepts. “Head First Statistics” by Dawn Griffiths presented a welcome contrast with its pages full of informal text and fun pictures, though I was sceptical at first of its utility. I am happy to report that my scepticism was entirely misplaced.
[2010-06-22] ICFP Programming Contest 2010
As has become customary for me, I participated in the annual ICFP programming contest this weekend. I participated as a lone coder this time with the team name "rmathew". The contest this year was irritating and frustrating, not to mention quite humbling (as usual).
[2010-04-15] “Distributed Systems”
“Distributed Systems: Concepts and Design” by George Coulouris, Jean Dollimore and Tim Kindberg is an introductory text-book on distributed computing. It provides a broad overview of the basic principles as well as the major issues in building such systems. Since I happened to have the second edition around, I decided to read that instead of going for the currently-available fourth edition (a fifth edition is in the works), as the two editions didn't seem to differ significantly. This turned out to be not that bad a decision.
[2010-03-22] “Introduction to Algorithms”
I put off reading Introduction to Algorithms by Thomas Cormen, Charles Leiserson, Ronald Rivest and Clifford Stein (popularly known as “CLRS”) for quite some time because I was somewhat intimidated by its bulk. The recent release of the third edition of this tome finally made me get a copy and give it a dekko. This compendium of a number of algorithms and data structures for computer programming is bulkier than its predecessors, but it does not disappoint. It should serve as a good reference for this field, though not quite as an introductory text for beginners. A serious professional will have a copy handy at all times. Somewhat surprisingly, it does manage to leave out some commonly-encountered data structures and algorithms, so it is not as comprehensive and up-to-date as I would have liked.
[2010-03-17] On Watching Films
Like many people, I like watching films for entertainment. Unfortunately for me, it seems that the film industry is hell-bent on making this as difficult as possible. They have succeeded to a large extent - I now watch far fewer films than I used to a little over a decade ago.
[2010-03-03] “Programming Pearls”
Programming Pearls by Jon Bentley is a book based on a collection of articles written by the author for the eponymous column in Communications of the ACM. True to its name, the book presents several pearls of programming wisdom based on the hard-won experience of a brilliant computer programmer who was also lucky enough to be associated with some of the brightest minds in computer programming (the group at Bell Labs). The icing on the cake is the clarity and brevity of the book. I have read the book at least three times over the years and I continue to learn new things from it - no wonder this book is considered a classic in computer programming.
[2010-02-24] “Code Complete”
Books filled with good practical advice about constructing software are rare. Code Complete by Steve McConnell is a well-written rarity in this field and has a well-deserved reputation as a classic. It is one of those books that every computer programmer ought to have read. I had read the first edition, published in 1993, as a budding programmer and the book left a lasting impression on me. With the benefit of several years of experience, I find myself agreeing almost entirely with the updated second edition, published in 2004. When someone asks me “How do I write good code?”, I point them to this book without hesitation.
[2010-01-23] “The Practice of Programming”
In their book The Practice of Programming, Brian Kernighan and Rob Pike aim to advise computer programmers on things like testing, debugging, style, performance, design, portability, etc. that they are not usually taught in computer science classes or programming courses. This is what they call the “practice” of programming. Many pick these up over the course of their careers with some trial and error; many simply don't. This is the kind of book that has lessons for both rookie and seasoned programmers and that deserves multiple readings over the course of one's career.
[2010-01-23] Spawner in the Works
I have started using Firefox 3.6 and it does feel a little faster than its predecessor, though it's definitely not as snappy as Chrome. I should note that this is how Firefox 3.0 and 3.5 also felt at the time of their release, only to not feel that fast as time wore on and we received successive security and stability updates. I wonder why.
[2010-01-11] Underwater Blues
The New York Times now encourages you to walk away if you have an "underwater mortgage" on a house, that is, you owe more money on the mortgage for the house than its value in the current housing market. I find such analysis based on the negative equity of a house somewhat puzzling. It might make sense if you have bought a house purely for investment, but not if you call it a home that provides you protection against the elements. If you give up your house, you still have to find an alternative accommodation and very likely pay rent for it.
[2010-01-10] “Economics: Private and Public Choice”
If you are looking for a comprehensive and accessible introduction to economics, “Economics: Private and Public Choice” by James D. Gwartney, Richard L. Stroup, Russell S. Sobel and David Macpherson is the book for you. It covers both microeconomics and macroeconomics in addition to the core principles of economics. Though it is a textbook meant for an undergraduate course in economics, it is also suitable as a gentle introduction to the dismal science for the lay person. I read the tenth edition of this book that was published in 2003.