Pages

How to learn to type really fast on Keyboard

Today is the world of technology. Technology has made the life of people really fast and with it the need of  hard work for those people who wants to catch the technology has also increased. If you are slow in anything, it will be difficult for you to survive. I remember my days in the beginning of engineering when my typing was slow, I was always behind in every work. I knew the algorithms the theory, but while programming or testing a work, my hands move very slow and I could not catch with other  guys. If similar is your story or you just want to type fast, read below and implement it.

Well, brain in needed in every part of our life now a days. All tools you need to have to learn typing faster are
  • A computer system (monitor, Keyboard)
  • Memory power
  • Will to learn
There are a few steps you need to take which are listed below.

  1. Select the proper keyboard

    There are many types of keyboards available in the market. Even layouts of the keys are different in some extent. You should select a proper keyboard for your practice. Changing from one keyboard to another will certainly confuse you in the early stage. Once you are comfortable in one, then it won't be a great problem. Even the hardness of keys could also disturb you in learning. Don't choose too small keyboard with small keys. Use a moderate size keyboard. Select particular type of keyboard and stick to it.
  2. Make a rule for your hand placement

    Whenever you put your hand over the keyboard, place it in a particular way. Not having any particular standard, will not help you and sooner or later you will have to make a rule to yourself about that. I usually place my forefingers on the keys 'f' and 'j' and all other fingers sequentially on the same key row. Most keyboards also have a mark on the two keys to put your forefingers.
  3. Memorize finger vs key

    Most people have the habit of using their forefingers to press every keys in the beginning because they find it easier. What I mean by finger vs key is that you should use particular finger to deal with a particular set of key. For example. I use the left forefinger to press the key set (f,r,t,g,c,v). Don't use the fore fingers to press every keys in the beginning because you will never progress by this habit. First practice to use particular finger to press unique set of keys. Later you can overlap the sets according to the world.
  4. Use a good Typing tutor software

    There are lots of free as well as non-free software to practice typing. Use any one of them and practice a lot. Practice for a few days, then rest for a few days then again check. You can also chat with people on the internet or play 3d games with cheats to type on them, which really helps to increase your speed. Don't feel discouraged in the beginning. It takes few months before you really start feeling some different according your dedication, and ability.

Even though you feel that you are slower in the beginning, practice from all your fingers and give enough time to memorize your finger-key mapping. You will get better and better. Best of luck.

Three Dimensional Computer Graphics Best and Complete Example

Before going through this post you might like to read my previous post, to understand the general things.


Last time, I have discussed about some of the general theory needed to draw a three dimensional Sphere on the computer screen. Today, I am going to demonstrate the actual drawing of the sphere on the screen. The complete working code to draw the sphere will be provided in this post.

For working with Three D graphics, You need a good grasp of two main concepts:
  • Point and its operations ( translations)
  • Concept of projections in space geometry
First of all, you need every thing about the point. There are different types of coordinate systems you could work on, and each system has its own points and its meaning. In two dimensional geometry you have X and Y Coordinates, where as there is another Z coordinate in the three dimensional space coordinate(Cartesian system). The point has different operations like reflection, rotation, translation, etc. This class contains all the basic properties of Point that you need.
/**
 *
 * @author Rajan Prasad Upadhyay
 * class RPoint.java
 */
public class RPoint {
    public double x;
    public double y;
    public double z;
    public RPoint(){}
    public RPoint(double x,double y,double z){
        this.x=x;
        this.y=y;
        this.z=z;
    }
    public void viewPoint(){
        System.out.println("("+x+","+y+","+z+")");
    }
    public int getX(){
        int i=(int)Math.rint(x);
        return i;
    }
    public int getY(){
        int i=(int)Math.rint(y);
        return i;
    }
    public int getZ(){
        int i=(int)Math.rint(z);
        return i;
    }
    
    public RPoint getRotateAlongTheta(int radius,double theta,RPoint center){
        double tx=x-center.x,ty=y-center.y,tz=z-center.z;
        double tx1,ty1,tz1;
         tx1=tx*Math.cos(Math.toRadians(theta))-tz*Math.sin(Math.toRadians(theta));
         tz1=tx*Math.sin(Math.toRadians(theta))+tz*Math.cos(Math.toRadians(theta));
         tx=tx1+center.x;
         tz=tz1+center.z;
        RPoint p=new RPoint(tx,y,tz);
        return p;
    }
    public RPoint getRotateAlongPhi(int radius,double phi, RPoint center){
        double tx=x-center.x,ty=y-center.y,tz=z-center.z;
        double tx1,ty1,tz1;
         tx1=tx*Math.cos(Math.toRadians(phi))-tz*Math.sin(Math.toRadians(phi));
         ty1=tx*Math.sin(Math.toRadians(phi))+tz*Math.cos(Math.toRadians(phi));
         tx=tx1+center.x;
         ty=ty1+center.y;
        RPoint p=new RPoint(tx,ty,z);
        return p;
    }
    //unit vectors
    public double getL(){
        double a=x/Math.sqrt(x*x+y*y+z*z);
        return a;
    }
    public double getM(){
        double a=y/Math.sqrt(x*x+y*y+z*z);
        return a;
    }
    public double getN(){
        double a=z/Math.sqrt(x*x+y*y+z*z);
        return a;
    }
    
    //project coordiantes functions
    public int getViewX(int cz){
        int a=(int)Math.rint(cz*x/z);
        return a;
    }
    public int getViewY(int cz){
        int a=(int)Math.rint((cz)*y/z);
        return a;
    }
    public int getViewZ(int cz){
        int a=(cz);
        return a;
    }
    //3d translations functions
    public RPoint translate( RPoint p){
        RPoint a=new RPoint(x-p.x,y=p.y,z-p.z);
        return a;
    }
    public RPoint inverseTranslate( RPoint p){
        RPoint a=new RPoint(x+p.x,y+p.y,z+p.z);
        return a;
    }
    public void RotateAlongTheta( double theta, RPoint center){
        double tx=(x-center.x)*Math.cos(Math.toRadians(theta))-(z-center.z)*Math.sin(Math.toRadians(theta));
        double tz=(x-center.x)*Math.sin(Math.toRadians(theta))+(z-center.z)*Math.cos(Math.toRadians(theta));
        x=tx+center.x;
        z=tz+center.z;
    }
    public void RotateAlongPhi( double phi, RPoint center){
        double tz=(z-center.z)*Math.cos(Math.toRadians(-phi))-(y-center.y)*Math.sin(Math.toRadians(-phi));
        double ty=(z-center.z)*Math.sin(Math.toRadians(-phi))+(y-center.y)*Math.cos(Math.toRadians(-phi));
        y=ty+center.y;
        z=tz+center.z;
    }
    
    public RPoint RotateAlongX(int theta, RPoint center){
        //x does not change
        double tz=(z-center.z)*Math.cos(Math.toRadians(-theta))-(y-center.y)*Math.sin(Math.toRadians(-theta));
         double ty=(z-center.z)*Math.sin(Math.toRadians(-theta))+(y-center.y)*Math.cos(Math.toRadians(-theta));
         return new RPoint(x,ty+center.y,tz+center.z);
    }
    public RPoint RotateAlongY( int theta, RPoint center){
        //ie rotating along y axix , clockwise
        double tx=(x-center.x)*Math.cos(Math.toRadians(theta))-(z-center.z)*Math.sin(Math.toRadians(theta));
        double tz=(x-center.x)*Math.sin(Math.toRadians(theta))+(z-center.z)*Math.cos(Math.toRadians(theta));
        return new RPoint(tx+center.x,y,tz+center.z);
    }
    public RPoint RotateAlongZ(int theta, RPoint center){
        //z constant
        double tx=(x-center.x)*Math.cos(Math.toRadians(theta))-(y-center.y)*Math.sin(Math.toRadians(theta));
        double ty=(x-center.x)*Math.sin(Math.toRadians(theta))+(y-center.y)*Math.cos(Math.toRadians(theta));
        return new RPoint(tx+center.x,ty+center.y,z);
    }

    //prospective view coordinate giving functions
    public void RevolveAlongY(double theta, RPoint sample){
        double tx=(x-sample.x)*Math.cos(Math.toRadians(theta))-(z-sample.z)*Math.sin(Math.toRadians(theta));
        double tz=(x-sample.x)*Math.sin(Math.toRadians(theta))+(z-sample.z)*Math.cos(Math.toRadians(theta));
        x=tx+sample.x;
        z=tz+sample.z;
    }
    public void RevolveAlongX(double theta, RPoint sample){
        
    }
    public RPoint getPerspective( RPoint viewPoint){
        double xp=x-(-z)/(viewPoint.z-z)*(x-viewPoint.x);
        double yp=y-(-z)/(viewPoint.z-z)*(y-viewPoint.y);
        double zp=0;
        return new RPoint(xp,yp,zp);
    }
    public RPoint rotateAlongY(double angle){
        double x2=x*Math.cos(Math.toRadians(angle))-z*Math.sin(Math.toRadians(angle));
        double y2=x*Math.sin(Math.toRadians(angle))+z*Math.cos(Math.toRadians(angle));
        return new RPoint(x2,y2,z);
    }
}


Then on top of the RPoint, You could generate another object with the properties of a sphere. Sphere has a center, radius, and lots of points through its surface. It can rotate, translate etc.
/**
 *
 * @author Rajan Prasad Upadhyay
 * class RSphere.java
 */

import java.awt.Color;
import java.awt.Graphics;

public class RSphere {
    RPoint center;
    RPoint viewPoint=new RPoint(600,400,2000);
    int radius;
    public Graphics g;
    int delphi;//used to determine the number of rows in mat[][] ie point matrix
    int deltheta;//determine the num of cols in the mat
    int numOfRows;
    int numOfCols;
    RPoint mat[][];//matrix of points// actual world coordinates
    RPoint mat1[][];//to hold projected coordinates
    RPoint mat2[][];//matrix according to view points angle with the z axis;;

    int angle=0;
    
    public RSphere(){
        center=new RPoint(0,0,0);
        radius=50;
        deltheta=20;
        delphi=20;
        numOfRows=180/delphi;
        numOfCols=360/deltheta;
    }
    public void setGraphics(Graphics gh){
        if(gh != null){
            this.g = gh;
        }else{
            System.out.println("Your graphics context is null.");
        }
    }
    
    public void setColor(Color c){
        g.setColor(c);
    }
    
    public void set_Center( RPoint p){
        //this funciton should be called at the beginning only
        center=p;
    }
    public void set_viewer(int x,int y,int z){
        viewPoint=new RPoint(x,y,z);
    }
    public void set_Center(int x,int y,int z){
        center=new RPoint(x,y,z);
    }
    public void setRadius(int r){
        radius=r;
    }
    public void initialize(){
        numOfRows = 180/delphi+1;
        numOfCols = 360/deltheta+1;
        mat = new RPoint[numOfRows][numOfCols];
        mat1 = new RPoint[numOfRows][numOfCols];
        mat2 = new RPoint[numOfRows][numOfCols];
        System.out.print("center=");
        center.viewPoint();
        System.out.println("radius="+this.radius);
        double theta = 0;
        double phi = 90;
        for(int row = 0; row<numOfRows; row++){
            for(int col = 0;col < numOfCols; col++){
                //creating the matrix
                mat[row][col] = new RPoint(
                        center.x+radius*Math.cos(Math.toRadians(theta))*Math.cos(Math.toRadians(phi))
                        ,center.y+radius*Math.sin(Math.toRadians(phi))
                        ,center.z+radius*Math.sin(Math.toRadians(theta))*Math.cos(Math.toRadians(phi))
                  );
                mat1[row][col] = mat[row][col].getPerspective(viewPoint);
                theta += deltheta;
                theta %= 360;
            }
            phi -= delphi;
            theta = 0;
        }
    }//initialize
    
    public void drawLatitudes(){
        int cz = -20;
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<(numOfCols-1);j++){
                g.drawLine(mat[i][j].getX(), mat[i][j].getY(), mat[i][j+1].getX(), mat[i][j+1].getY());
            }
        }
    }
    public void drawLongitudes(){
        int cz=0;
        for(int i=0;i<numOfRows-1;i++){
            for(int j=0;j<numOfCols;j++){
                g.drawLine(mat[i][j].getX(), mat[i][j].getY(), mat[i+1][j].getX(), mat[i+1][j].getY());
            }
        }
    }
    
    public void rotateAlongX(int angle){
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<numOfCols;j++){
               mat[i][j]=mat[i][j].RotateAlongX(angle,center);//perfect
            }
        }
    }
    public void rotateAlongY(int angle){
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<numOfCols;j++){
              mat[i][j]= mat[i][j].RotateAlongY(angle,center);//perfect
            }
        }
    }
    public void rotateAlongZ(int angle){
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<numOfCols;j++){
               mat[i][j]=mat[i][j].RotateAlongZ(angle,center);//perfect
            }
        }
    }
    
    public void updatePerspective(){
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<numOfCols;j++){
                mat1[i][j]=mat[i][j].getPerspective(viewPoint);
            }
        }
    }
    public void calculatePrespective(){
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<numOfCols;j++){
                mat1[i][j]=mat[i][j].getPerspective(viewPoint);
            }
        }
    }
    public void prospectiveView(){
        calculatePrespective();
       viewTheLines(mat1);
    }
    public void viewTheLines( RPoint mat1[][]){
         //longitute
        for(int i=0;i<numOfRows-1;i++){
            for(int j=0;j<numOfCols;j++){
                g.drawLine(mat1[i][j].getX(), mat1[i][j].getY(), mat1[i+1][j].getX(), mat1[i+1][j].getY());
            }
        }
        //latitude
        for(int i=0;i<numOfRows;i++){
            for(int j=0;j<(numOfCols-1);j++){
                g.drawLine(mat1[i][j].getX(), mat1[i][j].getY(), mat1[i][j+1].getX(), mat1[i][j+1].getY());
            }
        }
    }
    
}

and finally to display the frame we have
/**
 *
 * @author Rajan Prasad Upadhyay
 * class RFrame.java
 */
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;


public class RFrame extends JFrame{
    RSphere earth = new RSphere();
    RPoint earthCenter=new RPoint(600,400,-1500);
    int viewAngle = 0;
    Graphics g;
    
    private void arrangeGraphics(){
        earth.set_Center(earthCenter);
        earth.setRadius(200);
        
        earth.initialize();
        g = this.getGraphics();
        if(g != null){
            earth.setGraphics(g);
        }else{
            System.out.println("The g is null, Frame.java");
        }
        if(earth.g != null){
            earth.setColor(Color.blue);
        }else{
            System.out.println("Graphics is null");
        }
    }
    public RFrame(){
        initComponents();
        
        arrangeGraphics();
        earth.drawLatitudes();
        earth.drawLongitudes();
    }
    
    private void initComponents(){
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        this.setMinimumSize(new Dimension(1000,800));
        addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                formKeyPressed(evt);
            }
        });
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 483, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 320, Short.MAX_VALUE)
        );

        pack();
    }
    private void formKeyPressed(java.awt.event.KeyEvent evt){
        RPoint p = earth.center;
        if(evt.getKeyCode()==KeyEvent.VK_LEFT){
            g.clearRect(0, 20, this.getWidth(), this.getHeight());
            earth.rotateAlongZ(5);
            earth.drawLatitudes();
            earth.drawLongitudes();
        }if(evt.getKeyCode()==KeyEvent.VK_SPACE){
            g.clearRect(0, 20, this.getWidth(), this.getHeight());
            earth.rotateAlongY(1);
            earth.drawLatitudes();
            earth.drawLongitudes();
        }
    }
   
    @Override
    public void paint(Graphics g){
        earth.drawLatitudes();
        earth.drawLongitudes();
    }
    
    public static void main(String [] args){
        RFrame f = new RFrame();
        f.setVisible(true);
    }
}


Now try running the code and press the Space and Left arrow button on the key-board. Have fun.

Jagjit Singh Full Life History



Jagjit Singh(8 Feb 1941-10 Oct 2011) was one of the most famous Ghazal singers of the modern times. Jagjit Singh, aka Jagmohan Singh was born in Ganganagar in Rajasthan. The name Jagjit means the one who triumphs over the world.His father Sardar Amar Singh Dhiman was a Government official and his mother Sardarni Bachchan Kaur had a religious family background. He has four sisters and two brothers and is fondly addressed as "Jeet" by his family. He graduated in Arts from DAV College located in Jalandhar. Jagjit learnt classical music under Pundit Chaganlal Sharma and achieved expertise in classical forms like Khayal, Thumri and Dhrupad.

He moved to Bombay in the year 1965 searching for better opportunity in music. Initially he was limited to singing in weddings, and other functions. His first album was "The Unforgettables", which was a collection of semi-classical Indian music. Jagjit singh got married to another singer named Chitra in the year 1969. They had sung many songs together and were very liked by the audiences. The songs, the music the voice everything were very pleasing. They also sung in many hindi movies. Beside hindi, Jagjit singh also sung in many different languages like panjabi, urdu, Nepali etc. He died in 2011 due to a massive cerebral haemorrhage.
Koi Yeh kaise bataye, Too nahi to Zindagi Mein aur kya rah jayega, Yun zindagi ki raah Mein, Jhuki Jhuki si Najar, Tum Itna jo Muskura Rahe Ho, Pyar Mujh se jo kiya tumney etc were his great creations which will cretainly be evergreen master pieces for a long time.
Jagjit singh was the type of personality and talent that not everyday are born in the world. Once in a million years, is such a combination found in a person.

Mary Leakey the short history


Mary Leakey (6 February 1913 – 9 December 1996) is widely known for discovering the first fossil skull of a proconsul ( an early ape which is supposed to be the ancestors of humans, lived about 35 millions years ago). She also invented the system of classifying the stone tools found at Olduvai.

Mary Leakey along with her husband, uncovered the tools and the fossils of these ancient animals. It was in 1933, and she was only twenty when she was working as a archaeological illustrator in London when she met Louis Leakey and married her later.
They started traveling around the globe searching for the remains of ancient animals.
Louis and Mary Leakey found fossils in Tanzania and Kenya that indicated mans evolution began in east Africa 2 million years ago. This was far earlier than what was believed.
However, she made a point clear that it is impossible to pinpoint exactly the time when man became fully human. She had three sons and her partner who assisted her in search for the origin of man all round the east Africa.
She had no formal education in Archeology or Paleontology. After Louis died in 1972, she become a scholar of her own. It was then when she made the most important discovery. It was frozen for millions of years in the volcanic mud. It showed that early man walked upright much earlier than what was previously thought.
Everyone should give a respect to this great lady detective, who spent her life trying to reveal the secrets of human evolution.

Anger and its theory

According to wikipedia "Anger is an emotion related to one's psychological interpretation of having been offended, wronged, or denied and a tendency to react through retaliation." It is a feeling of antagonism towards someone, something, or some situation that is not in your favor.
Anger is a natural thing and everybody feels angry in their life. Those who do not, have some problem in them. Anger is both a good thing and a bad thing.


Anger is good

Good thing because it can provide you motivation, inspiration to do something good, and it can fuel you with high energy level. At times, nothing acts as a good motivator than anger. Anger of being disrespected, anger of being hated for your weakness , anger of being rejected in something because you were not good in something - certainly burns a strong desire in you to do something great that the world will wish they would be you, every body would be talking about how awesome you are. All right, that one part of anger.

Anger is bad

The fuel of anger could also burn you negatively if you do not have the ability to control it. This again creates anger inside you which in turn could again harm you and this goes on in a cycle until you realize it and struggle to stop it. Till then you might become totally weak to fight, psychologically. Excessive anger could also cause physical problems like blood pressure, heart disease, obsessiveness, lack of concentration in anything. (Encyclopedia of Psychology)
In anger, people often say too much to others and regret later. There is a problem of social rejection for their behavior.

How to control anger

William DeFoore, an anger-management writer, described anger as a pressure cooker: we can only apply pressure against our anger for a certain amount of time until it explodes. Don't try too hard to control your anger. Frequently release your anger time after time because if you accumulate anger inside, it's going to explode at some moment. Anger is a healthy emotion.

There are these tips that can help you control your anger, and take only advantage out of it.


  1. Get angry time after time

    Getting angry is so much important in life. It's as important as feeling other emotions like love, interest, hobbies, being happy, etc. A person who gives time to all his natural emotions is a relatively healthy person. Imagine a person, who never gets angry. One part of his life is totally gone. These are the emotions that makes the life of a person interesting enough to live it. Otherwise what is the achievement of life. Nothing. You born, grow up, live, think what other people put to think in your sub-conscious, get controlled by your hormones, do different stuffs produce children and die. So get angry.
  2. Get a basic understanding of how life works

    Ignorance is bless my friend. But if you think that you know a significant amount of psychology, learn it completely. In that way, you can control being too much angry for something and manage your behavior. Normal people undergo so many difficult situations, and they get out of it normally, without having any psychological ill-effect. The reason is, they do not over think. Over-thinking is becoming one of the major cause of psychological disorders now a days as ability to think is increasing the thinkings are not managed properly. A person who is able to imagine is more likely to fall in trap of the loop-hole of over-thinking trying to imagine every possible consequences of a certain act. Being foolish is sometimes much healthier than being over-smart.
  3. Take frequent break from your life

    Its the defect but of age, that people are not able to make a free time for themselves. Always taking tensions day and night, always being obsessed with the thinking of success, always thinking thinking is not what our mind is made for. Its also for relaxation. Take complete break from your life, go to a totally different place, relax, and do not think a bit about your work, or what you do, or about any problems these places might have. Just think good things, do not be hard on yourself, spend money on things you have always wanted to buy or you are fascinated about. Go to dance, sing, talk to people, flirt what ever that you like to feel better. But do not do anything that you get embarrassed later which in turn will increase you stress.
  4. Express your dis-satisfaction

    This is very important. Make a network of friends, may be with similar problems, similar age and habits. Frequently talk to them and talk what ever you like about your problem. You might not believe but it works like an effective medicine. An outside perspective can help you focus on the actual problem and work on it. Otherwise, you are lost in your emotions and you can't even recognize the actual problem.
  5. Adopt a hobby

    Diverting your mind is a very good way to remain healthy, considering uncontrolled anger as a disease. Get a hobby for example, get physical exercise, start blogging in a topic, start making some designs, or compose poems/songs etc. Adopting something you are better in doing will help you be happy. How your mind works is that, until things are good, everything will work great. Once problems start appearing in your life, everything is messed up. It's not actually so in real but your mind projects that way. Being happy is the best way to keep everything in order. Don't do something that will give you the feeling of failure for the rest of your life. Always give priority to things that you are good yet. Remember that other people might be better and there is always of chance of loosing.
  6. Be Flexible

    In-flexible person are generally very great in the early part of their life, until they fell in the trap of some problem, which arise because of their mis-concept. Once they fall in the trap, its years before they recover from their disease. The need to change, cause conflict in them whether to believe what they have always believed, or to change their concept and adopt what seems to be right at that moment. There is no remedy for the conflict inside your mind. It sucks all you mental computation power, like a computer, making you tired, confused, and you will feel anger but you don't know whom. Anger could also be decreased by saying bad things to the person, but in this case there is no person.

Eight Tips to be a professional

We often hear things like we should be professional at our work. Professional people have more chance to grow in the corporate world than unprofessional one. But what does it really mean to be professional. Ok, I want to be a very successful person and I am ready to be a professional, but what do I do to be a professional. Lets watch out.
To be a professional does not mean anything so great that a normal person could not have. Rather its something normal persons always have in some form but they did not recognize it, or they do not present it in a serious way as to gain advantage. This means not the skills and qualifications you should struggle hard to achieve, but the skills on you that you overlook and ignore. Doing small things regularly and properly will be the best thing to help you gain success and be a professional.
You are good in playing football, or might be you are good in study and can do it very well without making very much effort. Then its best to try make it your profession. That way, your confidence will always be high because you have less chance of failure. Also there are lots of ideas to innovate, in your career that will help you keep going to success. If unfortunately , you end up adopting something hard for you to do, you will have to spend good amount of time through the learning curve and gaining confidence before you get going to success.
Here are a list of few things you could do to be a professional.
  1. Avoid Being Unprofessional

    There are lots of things you might do that will make you unprofessional. For example, not keeping control over yourself, not pre thinking anything you do, lack of preparation in meetings or work, unpunctuality, late submission of job, not meeting deadlines etc. Keeping these things under control required daily discipline and work and do a magic to increase your reputation.
  2. Be Passionate

    This means love what you do. If you do not like what you are doing, you can certainly not work hard for it to make it better. Thats how your mind work, and you will certainly fail. Once you fail, everything breaks down, your confidence, your reputation, your self-respect, your energy. Without these vitals you are left alone in the complex world to start up again. So NEVER GET CURIOUS ABOUT HOW WILL IT FEEL TO FAIL. Because you do once, you are out of competition. Choose something you love to do, and do it with your full effort.
  3. Be Reliable

    Reliability means dependence. Its a good character of a professional. If you promise someone to do something, then do it in time. Otherwise pre inform that you might not do it, and don't take the responsibility. This will certainly help people to have a good attitude towards you, and will give a good message to the people who evaluate you.
  4. Eagerness

    Self motivation is always one of the key components to keep you work hard and get success. Motivation makes you eager to do new things, innovate new ideas, and do your work in a better way. If a person stops feeling eager, and starts getting of his/her job, Its the path to the be a looser. Nobody likes looser.
  5. Flexibility

    This means to move from one state of thinking to another without much effort and as per time and need. Be ready to do what ever it takes to reach the success, and do what ever you have to , to get it. Don't lie to yourself. People often think that, after I finished my collage I will not read again, and I will earn money by doing a job. This is a self lying, and when You do realize that you have do study even harder when you are working, Your confidence of forecasting your life will break. Loosing confidence has a very bad disadvantage for your energy level. So be flexible in almost everything you think, be ready to change your concept if need be. Be ready to work late night, be ready to research, etc etc.
  6. Start Somewhere

    Its strange but true that, Lots of people are afraid to start a new thing because they are afraid of failure. Well, if you don't start and try to succeed, you are a failure anyway. Its a good idea to research and learn something before you start a new business or a new work etc, but don't take forever to learn. Make a schedule that I will learn this much in this time, and by this, I will start working in it. Don't estimate too small time, neither too long. Take your time and do it right.
  7. Be a Problem Solver

    Complaining is a sign of a weak and lazy person. Those who always complain, are afraid to go forward and deal with the problem and make it right. Everybody likes a problem solver, than a problem pointer. A professional always tries to find the root cause of the problem, whether it is avoidable or not, alternatives, ways to minimize its affects etc. Think logically and always try to solve the problem rather than complain in front of others.
  8. Know YourSelf

    Nobody is perfect. At least not in everything. Every now and then, you will hear things like 'companies want to hire a rock-star' , be confident in what you do, Be perfect in everything. But always believe only those things that you should, and don't let these nonsense change your behavior. Properly decide what you want to present yourself in front of others and then don't change frequently.

Got to think BIG

Abstract
All the great things that seems to exist in the human world, are the result of big thinkings. Before we create something, we should have the ability to visualize it in our mind, call thinking it. Its all about how you think that takes you where you want to go, and where you actually reach. Its a bit psychological to work with and to understand for self motivation.

Background
Lots of people are talented at the early stages of their life. They have and adopt the habit of thinking in a particular way, and work in a particular way. They will never feel the need to change the way of their life unless they feel that there is something wrong or lacking in the way they are solving problems. It might be sufficient in the early days of their life but totally not sufficient later. Well thats the most sensitive time for them mentally and psychologically. There is no experimental evidence but we believe that more than sixty percent of people could not gain the same state of mind they used to have , when they try to change their way of things. Things get aggrevated and they remain fighting with themselves for like ever.

Theory
If anybody is not getting it, then don't try to because you have no experience and pre-thinking of it. One thing everybody should understand is that, we should try to avoid change as much as possible. Even if it is a good change, it should be implemented slowly requiring a significant amount of time to do it. For example. If you have a habit of feeling excessive pride about your achievements, and it recently occured to you. People normally hurry to control their behaviour, becomming strict for themselves, and change it asap. Don't do it, be normal. It's the thing you have done for you life and you have succeeded doing so. It might be the source of your happiness, your motivation. Giving it up like this might do no good to anybody. Our psychology do not work the straight way we think it does. Our sub-conscious is much more complex. Changing things so fast from our conscious level will only create a malfunction inside us and it requires lots of psychological management to restore that normal functioning of mind. The elements like confidence, will, motivation, concentration will break down, and will be displaced by things like confusion, fear, hesitation, feeling-self-pity, weakness mentally.