Is standardisation before Lasso really necessary? I have read three main reasons for standardising variables before something such as Lasso regression:
1) Interpretability of coefficients.
2) Ability to rank the coefficient importance by the relative magnitude of post-shrinkage coefficient estimates.
3) No need for intercept.
But I am wondering about the most important point. Do we have reason to think that standardisation would improve the out of sample generalisation of the model? Also I don't care if I don't need an intercept in my model; adding one doesn't hurt me.
 A: Lasso regression puts constraints on the size of the coefficients associated to each variable. However, this value will depend on the magnitude of each variable. It is therefore necessary to center and reduce, or standardize, the variables.
The result of centering the variables means that there is no longer an intercept. This applies equally to ridge regression, by the way.
Another good explanation is this post: Need for centering and standardizing data in regression
A: The L1 penalty parameter is a summation of absolute beta terms. If the variables are all of different dimensionality then this term is really not additive even though mathematically there isn't any error.
However, I don't see the dummy/ categorical variables suffering from this issue and think they need not be standardized.  standardizing these may just reduce interpretability of variables
A: If by standardize you mean transform all variables to z-scores (as is often the case), then you may want to consider that z-scoring a pre-scaled dataset may result in amplification of noise. That is--variables with low variance may have measurement noise amplified more so after applying z-scoring. 
