Hi Guys,
As i'm new here as a user, i've been taking a lot of programming advice's on this forum, that's why i've decided to share a helpful post to give you the best methods to rank higher, get a better page rank and get authority in the eyes of Google, Bing and Yahoo.

So if you are completely new to SEO read the first part - second part - third part.
If you know the Basics of SEO read only the second and the third part.
If you are Advanced in SEO read both second and the third part too.

First Part:

What is SEO:
Search engine optimization is optimizing your website for a search engines, to be more exact (To rank a keyword on top of Google). Search engines are complicated and so it is ranking keyword on search engines. I will be talking more about Google as it is the most used Search Engine, but also Bing and Yahoo use the same concepts as i'll be talking here.
Google ranks sites taking in consideration : Links + Content + Website Design + Website Speed + Hosting + Some other things that we will be mentioning later.

In Search Engines the most important things when it comes to the rankings are: Links and the Content.

So for beginners, it is very important to create quality content if you want to go to the link building. It is very unnatural if you build low quality content to your site, firstly visitors won't stay on your page, (Bounce Rate - Will be high). Google will consider as low-quality content site and even if you build a lot of links, you won't be ranking high.

Links: Links are a very important factor when it comes to ranking. Sites with the most quality links are ranked on top of Google.

Website Design : Your Site Design, must be user friendly so your users will stay more on your site.
Website Speed : Speed is one of the factors that is considered on site ranking.

Hosting: Hosting is also a very important factor when it comes to ranking, always try to choose the right host for your website.

I won't be talking more for Newbies here, Search on Google if you want to learn more about SEO.

Part 2 :

What is Panda Update:
Panda update is released by Google to kill low quality content sites.
What is considered a low quality content site nowadays?

Low Quality Content sites are considered sites with grammar mistakes, Very Short Articles (not high Quality), Over-Keyword-Optimized, Tags.

1. Panda has hit the sites that were created for farming purpose. So if you have low quality on your site than it is possible that you have been hit by Panda.
Low quality content is an article which has grammatical errors
Users do not like it
Users do not stay enough on that article page.

Over Keyword Optimized sites are those sites that use the same keyword a lot of times in the content. (These sites have been hit hard by Panda).

Tags (Over using the same Keyword).
Always try to find Synonyms of your keywords when it comes to the Tags keywords.

What Google is looking nowadays is :
Quality Content (Original with no grammatical mistakes)
Low Bounce Rate.
Keywords (Do not over optimize).
Social Signals (Shares of your article, Likes, Tweets).
Links: (How you connect your inner pages).

You see, it is pretty simple, it is not a science but most of peoples fail to do right the simplest things.

Penguin Update:

We were hit by Panda, but just some days latter, Penguin came from the water and hit our sites again. I saw that a lot peoples were hit by Penguin.
Even though they may had the best Content, the problem was the links were not natural, low-quality, and had high outbound links.
A lot of peoples came to me and a lot of companies paid to re-cover their sites from Penguin. I've been doing pretty well with those sites.. I've achieved to re-cover most of the sites and right now i'm working just to rank them on the positions they were (first 5 positions) as they are in the first page right now.

Anyway, what i saw from this experience is :

Google is not being evil, it is just trying to give to visitors the best results. To bring the best results they have had to change some of the factors on their algorithms.
I know that you may ask me.. Common man what are the best methods of link building? Okay fellas, here is the list of the best methods to rank a keyword after a panda update.

1. Blog Posts:
Whether you agree or not, these are the best links right now and they will always be. Getting a link on a Blog post is like getting 100 other links.
But it is not just getting a link in a blog post that will help you gain rankings. The link in the post that you write should be posted in a blog with a Good Page rank (Because it will give you Page Rank too), Domain Authority should not be less than 30 and it shouldn't have a lot of outbound links.

2. Forum Posts:
Believe it or not, forum posts are a great way to build links, Remember do not build anchor links on forums or blog comments because it can hurt your rankings.

3. Blog Comments:
Even though i see a lot of peoples saying that blog commenting is dead, let me give you a piece of advice, Blog Commenting is still a great way to build links..
You just need to do it in the right way. Forget the times of creating automatic comments - nowadays you should build natural and manual links.

4. Infographics:
Infographics are a great way to get links, People like visual things as they understand better.

These are just 4 of the best methods of link building after Penguin update but remember co-citation are also a great way of ranking high on Google.

I've tried to explain some important factors of ranking nowadays on Google, if you achieve to build links as i said, i'm sure that you not only will recover from Panda and Penguin but you will also rank very high even for competitive keywords.

You can contact me if you need any help.