Abhivadaye Athreya Archanaanasa Shavasava treya rishiyaha pravaranvitha, Athreya gotra, Ashwalayana sutra rik shakha adhyayee Sridhara sharma namaha aham asmibho:
Saturday, February 21, 2009
The Pragmatic Programmer
Am I a programmer? What makes a good programmer? How do I become a good programmer? These are some of the questions that keep coming up to every mind of a budding programmer who want themselves to see in the niche of the programming world. So here is something I found when I was reading the book "The Pragmatic Programmer", that might answer some of your questions.
What Makes a Pragmatic Programmer?
Each developer is unique, with individual strengths and weaknesses, preferences and dislikes. Over time, each will craft his or her own personal environment. That environment will reflect the programmer's individuality just as forcefully as his or her hobbies, clothing, or haircut. However, if you're a Pragmatic Programmer, you'll share many of the following characteristics:
Early adopter/fast adapter. You have an instinct for technologies and
techniques, and you love trying things out. When given something new, you can grasp it quickly and integrate it with the rest of your knowledge. Your confidence is born of experience. Inquisitive. You tend to ask questions. That's neat—how did you do that? Did you have problems with that library? What's this BeOS I've heard about? How are symbolic links implemented? You are a pack rat for little facts, each of which may affect some decision years from now.
Critical thinker. You rarely take things as given without first getting the facts.
When colleagues say "because that's the way it's done," or a vendor promises the solution to all your problems, you smell a challenge.
Realistic. You try to understand the underlying nature of each problem you face. This realism gives you a good feel for how difficult things are, and how long things will take. Understanding for yourself that a process should be difficult or will take a while to complete gives you the stamina to keep at it.
Jack of all trades. You try hard to be familiar with a broad range of technologies and environments, and you work to keep abreast of new developments. Although your current job may require you to be a specialist, you will always be able to move on to new areas and new challenges.
We've left the most basic characteristics until last. All Pragmatic Programmers share them. They're basic enough to state as tips:
Tip 1
Care About Your Craft
We feel that there is no point in developing software unless you care about doing it well.
Tip 2
Think! About Your Work
In order to be a Pragmatic Programmer, we're challenging you to think about what you're doing while you're doing it. This isn't a one-time audit of current practices—it's an ongoing critical appraisal of every decision you make, every day, and on every development. Never run on auto-pilot. Constantly be thinking, critiquing your work in real time. The old IBM corporate motto, THINK!, is the Pragmatic Programmer's mantra. If this sounds like hard work to you, then you're exhibiting the realistic characteristic. This is going to take up some of your valuable time—time that is probably already under tremendous pressure. The reward is a more active involvement with a job you love, a feeling of mastery over an increasing range of subjects, and pleasure in a feeling of continuous improvement. Over the long term, your time investment will be repaid as you and your team become more efficient, write code that's easier to maintain, and spend less time in meetings.
Friday, February 6, 2009
Management
Management is an Art
Management is an art and not everybody can do that. If you feel that managing is all about dictating people and yelling at them this one is for you.
Feeling pretty good about his first firing, the CEO looks around the room and asks "Does anyone want to tell me what that goof-off did here?"
With a sheepish grin, one of the other worker utters: "Pizza delivery guy from Domino's".
The Little Bird
The Lighter Side
Corporate Lesson III:
Moral of the story:
1) Not everyone who drops shit on you is your enemy.
2) Not everyone who gets you out of shit is your friend.
3) And when you’re in deep shit, keep your mouth shut.
The Turkey And The Bull
A turkey was chatting with a bull, "I would love to be able to get to the top of that tree," sighed the turkey, "but I haven't got the energy." "Well, why don't you nibble on some of my droppings?" replied the bull. "They're packed with nutrients."
The turkey pecked at a lump of dung and found that it actually gave him enough strength to reach the first branch of the tree. The next day, after eating some more dung, he reached the second branch. Finally after a fortnight, there he was proudly perched at the top of the tree. Soon he was promptly spotted by a farmer, who shot the turkey out of the tree.
Moral of the story:
Bullshit might get you to the top, but it won't keep you there.
The Crow And The Rabbit
The Lighter Side
A crow was sitting on a tree doing nothing all day. A small rabbit saw the crow and asked him, "Can I also sit like you and do nothing all day long?" The crow answered: "Sure, why not". So the rabbit sat on the ground below the crow and rested. All of a sudden, a fox appeared, jumped on the rabbit and ate it.
Moral of the story:
To be sitting and doing nothing, you must be sitting very, very high up.
Wednesday, February 4, 2009
Interview Preparation
Initial preparation requires recent assesement of skills and interests, values, accomplishments and updating one's resume. Preparation also includes actual practice of typical and targeted interview questions.
Final preparation includes dress and appearence, location of the interview and what to expect.
General Preparation
Self assesement: "Do a lot of self assesement". Take time for reasseing current skills, talents, abilities, strengths, weakness and interests. Keep an accomplishment file: must contain all the articles, resumes, congratulatory letters, kudo's from boss, customers, etc.
Update Resume: The accomplishment file serves as a spring board for writing the resume.
Basic Questions:
" Why are you interested in this company ?"
" Why are you interested in this position ? "
Some tough questions:
" Your lack of experience ? "
" Your low grades ? "
" Your record of job hopping ?"
practice..... practice.... and .... practice
Review how you look and sound. Note your mannerisms, gestures, facial expressions, poise, energy, enthusiasm and body language.
Interviewing is a skill. You can only improve your style and accumen with practice.
Practice is important in reducing the fear and nervousness. Answering job interview questions correctly takes skill, practice and determination. All said, you must be lucky on that day to strike that particular job of your choice.