Hire People, Not Skills

May 14th, 2012 No comments

A nice post shared by David Cancel explaining why is it important to hire people with personal traits rather than professional skills.

http://davidcancel.com/why-i-hire-people-not-skills/

Categories: Uncategorized Tags:

Nice talk on building web reputation systems

January 27th, 2012 No comments
Categories: Tech Tags:

Start Wars IV in Ascii

November 20th, 2011 No comments

Just type the following on your command line,

telnet towel.blinkenlights.nl

and have fun watching Star Wars 4 in ascii text. The server is up now for more than 10 years.

Categories: Tech Tags:

Linux hardware list using lshw

November 17th, 2011 No comments

Command to list entire hardware specification in linux,

 sudo lshw -html

 

Categories: Uncategorized Tags:

What every programmer should know about memory

November 8th, 2011 No comments

A very good (and big) paper from Ulrich Drepper of  RedHat explaining the details of memory in modern computers.

You can read the paper at the following link,

http://www.akkadia.org/drepper/cpumemory.pdf

 

 

Categories: Uncategorized Tags:

Changing Linux I/O Scheduler ( includes disk scheduler )

October 19th, 2011 No comments

While studying for my operating systems exam, I found it interesting to connect all the theory I learnt to how they are implemented in actual systems like Linux. One such concept is disk scheduling. Since disk operations are expensive, it is good to have more bytes read/write per second when multiple read/write requests are to be served.  This is achieved by using disk scheduling algorithms. There are lots of disk scheduling algorithms which can be used and a lot of good explanation about them can be found on web, hence, I won’t mention any more details here.

How do you check which scheduling algorithm your kernel is using?

You can use the following command to check the disk scheduling algorithm used by your kernel,

cat /sys/block/sda/queue/scheduler

The output produced by my system is,

noop deadline [cfq]

which tells me that my Linux kernel is using cfq (in square brackets) scheduler. cfq is the abbreviation for completely fair queue.

To change the scheduler, issue,

echo noop > /sys/block/sda/queue/scheduler

this will change your scheduler from cfq to noop. You can find the details of these scheduling algorithms on the web (http://en.wikipedia.org/wiki/I/O_scheduling)

Categories: Linux, operating systems, Tech Tags:

Removing extra booting options from Grub 2 in Linux Mint.

July 3rd, 2011 2 comments

After updating my kernel couple of times (via regular Mint updates), I realized that the list of booting options during start-up is continuously growing. Now, I have option to boot from latest as well as older versions of kernel, a memtest86+ option, a recovery option and my Win XP option. I have seen such things before and quickly realized that I need to update my /boot/gurb/menu.lst file. To my astonishment, I found that menu.lst file trick doesn’t work anymore as I have Grub 2.

I started looking for the solution and found the following,

  1. Instead of menu.lst, grub2 now has main config file called grub.cfg. It is configured by changing files and execution permissions of files in /etc/grub.d/ directory and then executing sudo update-grub command.
  2. Any files in /etc/grub.d/ which are not executable are not considered, hence, it is good to back up the files and make them non-executable.
  3. Removed my memtest86+ option by making 20_memtest86+ file non-executable.
  4. Removed my recovery mode option by editing /etc/default/grub file and un-commenting the option  GRUB_DISABLE_LINUX_RECOVERY=”true”
  5. The easiest way to remove the older versions of kernel from the Grub2 start-up list is to uninstall the older versions of kernel and Grub2 will automatically take care of it. Use synaptic to locate older versions of linux-image & linux-header files and remove them. Synaptic didn’t show them for me, but I had older versions of vmlinuz & initrd files still present in my /boot directory. I backed them up, kept only the latest kernel version (uname -a) and voila :)
Categories: Linux Tags: ,

Google C++ Style Guide

April 28th, 2011 No comments

For those who wonder how such a giant company like Google manage their C++ code base, below is the link to their C++ style guide which I believe is made from the lessons learnt by their programmers. Have a look.

Google C++ Style Guide

Categories: C++, Tech, Uncategorized Tags:

Original Line Drawings for Computer Systems: A Programmer’s Perspective

April 28th, 2011 No comments

The link below presents the graphical view of computer systems from programmers point of view i.e. it provides a graphical answer to questions like how does a RAM interact with CPU, what is Cache, What is L1 cache & L2 cache, how does a disk work, how does a stack & heap look like and many more.. I believe its a nice resource, hence, indexing it for my future reference  :-)

Computer Systems – A programmers perespective

Categories: Tech, Uncategorized Tags:

Statistical Aspects of Data Mining (Stats 202)

April 27th, 2011 No comments

These videos on youtube very well provide the fundamental statistics knowledge required to understand advanced data mining concepts. Just follow the first video below on youtube and check out the subsequent videos from the suggested list.

Categories: Uncategorized Tags: