Sunday, April 29, 2012

What makes a pragmatic programmer

Here are some of my notes of the book

What makes a pragmatic programmer

  • Early adopter/fast adapter
  • Inquisitive, tend to ask questions
  • Critical thinker
  • Realistic, try to understand the underlying nature of each problem you face
  • Jack of all trades, familiar with a broad range of technologies
Care about your craft. Think! About your work. Always trying to place it in its larger context, always trying to be aware of the bigger picture.

The cat ate my source code

Take responsibility for everything they do. We can be proud of our abilities, but we must be honest about our shortcomings. Provide options, don't make lame excuses. Don't be afraid to ask, or to admit that you need help.

Software entropy

Don't leave "broken windows" (bad designs, wrong decisions, or poor code) unrepaired. Take some action to prevent further damage and to show you're on top of the situation.

Stone soup and boiled frogs

Be a catalyst for change

Good enough software

If you give your users something to play with early, their feedback will often lead you to a better eventual solution.

Your knowledge portfolio

Invest regularly in your knowledge portfolio It's important to continue investing. Once you feel comfortable with some new language or bit of technology, move on. Learn another one. The process of learning will expand your thinking, opening you to new possibilities and new ways of doing things. Critically analyze what you read and hear.

Friday, March 2, 2012

E575: viminfo: Illegal starting char in line

When you start vim/vi and get the this error message it means that your ~/.viminfo file is corrupted.

The .viminfo is a history file for vim/vi so deleting it cannot cause any problem.

After deleting it vim/vi starts without any problem.

Monday, February 27, 2012

Downloading Google Search History

You can use bookmarklets like
Geeklad's script

or you can do it manually with by entering the following into your browser

Saturday, February 11, 2012

Changing the escape/command character in GNU Screen

Using Colourlovers.com API with NodeJS

Colourlovers.com has a pretty good and straightforward API.

The following snippet fetches the top palettes with the help of NodeJS

Monday, January 30, 2012

Customizing The Mongodb Interactive Shell

When the shell is launched, it checks the user's home directory for a javascript file named .mongorc.js.
If this file is found, its contents are interpreted and run by the shell prior to displaying the prompt for the first time.
This allows the user to define variables, customize the prompt, or update information that they would like updated every time they launch a shell.

Here is my .mongorc.js

Tuesday, January 24, 2012

Show file history in git

There are two amazing tools to show a history of a file in git.

gitk /path/of/file
or
tig /path/of/file