Pages

Friday, July 22, 2011

Read, so that you don't end up loosing data, the first time you install linux.

Have you already lost your data while installing Linux for the first time? Never mind, you are not the first one :) . Almost everybody, mostly Indians who have a tendency of trying out before reading manuals end up loosing all their data when they install Linux for the first time (I did too :P). It so happened that a friend who had taken some free advice from me on which distro he should choose, for beginning with Linux fooBaar'd his system. And I am writing this post so that I can point people to read it before they embark on the "dangerous" yet exciting path.
There are quite a few things one has too keep in mind beforehand. Primarily, one has to have a firm belief in the fact that, nothing that one does, while installing Linux, may cause serious injuries to the hardware. Also, Linux is not responsible for the loss of your data, if you select the partition containing data, for formatting / change of Filesystem - so the user has to be alert. And one more thing to be noted is, no one can become an expert in the art of installing Linux, without getting the hands dirty. So if you were thinking of reading a lot of text before setting your sails, trust me, you may as well wait for ever. However, it will be good if you at least follow the links shared in this post and skim through to get an idea.
Okay so that was a long moral lecture, now lets get down to business. First of all you need to select which distro you are going to get started with. And selecting can be a real task if you get to know how many of them are there. You can get more information about distros on Distrowatch. As for a beginner, the community generally recommends
  • Ubuntu  - I won't recommend because of experimental change in interface.
  • Kubuntu (Ubuntu with KDE) - more info
  • Linux Mint - more info
Take a look at article on Desktop Linux on Wikipedia for more information on GNOME and KDE.
Another thing a newcomer needs to etch on his brain is, it doesn't matter which distro / desktop environment he uses because, ultimately, all of it boils down to a personal preference. And there will be a lot of time in life for flame wars on topics like "my distro is cool and yours is crappy".
So once a distro is chosen, you need to get it's installer on a bootable medium. The installer is generally an iso file which needs to be burnt to a CD / DVD via some generic disk writing software or written to a usb drive using UNetBootIn. One can also get it along side various Tech - magazines like Linux For U or Digit. I don't think someone reading this would be n00b enough to be unable to search the Internet, visit the site of the distro, locate the ISO and download it.

Now, that a bootable installer is there, one can easily boot from it. If restarting the computer while the installation medium (i.e CD / DVD is plugged in) does not work take a look at this link. After booting, things will be as simple as custard, except for disk partitioning. For somebody who has no experience with
Next and the most important task is to create partitions in which the installation will take place. For detailed info on the directory structure and filesystem of Linux and preparing yourself to quit the clumsy comfort of C: and D: drives do go through the content on Aasis Vinayak's blog. I intend to clearly and crisply introduce the simplest and safest partitioning scheme for a dual boot system with a Windows installation.
One (or two in case of Win 7) primary partition for Windows.
An extended partition containing:
 An NTFS formatted partition to be used as your D drive. (data should never be on the same partition as operating system - in case the OS needs to be re installed  - data would be safe.)
 An ext journaling filesystem for / (root) on linux. (essential)
 An ext partition for /home (read Aasis Vinayak's blog for explanation)
 A swap partition (essential - size should be double the RAM).
The process of creating partitions may differ from one installer to another but since everything is in GUI, it is extremely intuitive and self explanatory so nobody can misunderstand.
The rest all too obvious to be taken into consideration. In future if a newbie develops distro hopping tendencies wishes to setup a multi-boot environment a previous post of mine might come to the rescue.

While I was searching the Internet for appropriate links to include in this post, I came across these, which intrigued me :
http://www.vias.org/linux-knowhow/wrapnt414D24_newbie_guide.html
http://www.tldp.org/LDP/intro-linux/html/index.html
Linux portal on wikipedia :-
https://secure.wikimedia.org/wikipedia/en/wiki/Portal:Linux

All the best for your venture.

Thursday, July 21, 2011

Interning at AmiWorks

The curriculum for B.Tech (CSE) in my college, like many others, requires me to pursue industrial training in my third year. Just as my batchmates, I too was anxious to secure a place for myself in an organisation related to my field of work and my area of interest. Meanwhile, I volunteered to take a session on Introduction to Qt at  OSS Camp 11.03 Lucknow and there, I met Amit Singh who offered me a place as a Summer Intern in his company, Amiworks, Pune. The offer was appealing and I accepted it.
After my exams I reached Pune and joined AmiWorks on my birthday. It took me a week to settle on a project, but once that was set, there was no looking back. I tried and developed a File Sharing and Syncing Application using PyQt. While Qt was something I was familiar with, I chose python because firstly, I wanted to learn it and second, my room-mate cum Co-founder of AmiWorks, Aman Jain  motivated me enough to embark on an unknown path. I won't bore you with the details of the project, as that is to be submitted to the college in a report which is hardly read by anyone. What I intend to share is the exhilarating experience I had while interning at AmiWorks.


First of all, my residence and office were in the same three storey building. All I had to do was climb a flight of stairs to get to my office, so I was spared the travelling woes and I was able to sleep an hour extra everyday ;) . The office itself was cool, big windows, balconies, greenery all around and pleasant weather of Pune. The working environment was even more awesome - a comfortable chair, bean bags, dual monitor setup, 16Mbps Internet etc made it feel like heaven for a programmer. 
Ah !! it wasn't all work and no play. We used to have musical afternoons where Advait's talent covered everybody else's musical n00bh00d. And I also watched quite a mouthful of movies in the two month span with my room mates cum colleagues, both in theatre and on Youtube ( the 16Mbps belonged to just four of us after office ;) ).
I miss - the saturday nights - anna ki idli - evenings at crossword - dinner at vaishali - ghar jaisa khana at Delhi Kitchen - morning walks and movies with colleagues / room-mates - exclamations of Vivek - questions of Ankur - Neha's comments - Aman's advice -  Amit's support -  programming sprints - daily stand-up meets - and the list goes on !!!


In short "I am missing my internship days" and I can't wait for PyCon 11 which is being hosted at Symbiosis Pune, which is when I will be meeting friends cum colleagues again !!