Non-normality in residuals I refer to this post  which seems to question the importance of the normal distribution of the residuals, arguing that this together with heteroskedasticity could potentially be avoided by using robust standard errors.
I have considered various transformations - roots, logs etc. - and all is proving useless in resolving completely the issue.
Here is a Q-Q plot of my residuals:

Data


*

*Dependent variable: already with logarithmic transformation (fixes
outlier issues and a problem with skewness in this data)

*Independent variables: age of firm, and a number of binary variables
(indicators) (Later on I have some counts, for a separate regression
as independent variables)


The iqr command (Hamilton) in Stata does not determine any severe outliers which rule out normality, but the graph below suggests otherwise and so does the Shapiro-Wilk test.
 A: One way you can add a "test-like flavour" to your graph is to add confidence bounds around them. In Stata I would do this like so:
sysuse nlsw88, clear
gen lnw = ln(wage)

reg lnw i.race grade c.ttl_exp##c.ttl_exp union

predict resid if e(sample), resid

qenvnormal resid, mean(0) sd(`e(rmse)') overall reps(20000) gen(lb ub)

qplot resid lb ub, ms(oh none ..) c(. l l)     ///
    lc(gs10 ..) legend(off) ytitle("residual") ///
    trscale(`e(rmse)' * invnormal(@))          ///
    xtitle(Normal quantiles)


A: One thing to keep in mind when examining these qq plots is that the tails will tend to deviate from the line even if the underlying distribution is truly normal and no matter how big the N is.  This is implied in Maarten's answer.  This is because as N gets larger and larger the tails will be farther and farther out and rarer and rarer events.  There will therefore always be very little data in the tails and they will always be much more variable.  If the bulk of your line is where expected and only the tails deviate then you can generally ignore them.
One way I use to help students learn how to assess their qq plots for normality is generate random samples from a distribution known to be normal and examine those samples.  There are exercises where they generate samples of various sizes to see what happens as N changes and also ones where they take a real sample distribution and compare it to random samples of the same size.  The TeachingDemos package of R has a test for normality that uses a similar kind of technique.
# R example - change the 1000 to whatever N you would like to examine
# run several times
y <- rnorm(1000); qqnorm(y); qqline(y)

