diff --git a/docs/faq.tex b/docs/faq.tex
new file mode 100644
index 0000000..f187245
--- /dev/null
+++ b/docs/faq.tex
@@ -0,0 +1,66 @@
+%!TEX root = ceres.tex
+\chapter{Frequently Asked Questions}
+\label{chapter:faq}
+\commentsoff{Question}
+\commentsoff{Answer}
+\begin{enumerate}
+\item \begin{Question}
+Why does Ceres use blocks (ParameterBlocks and ResidualBlocks) ?
+\end{Question}\\ \\
+\begin{Answer}
+Most non-linear solvers we are aware of, define the problem and residuals in terms of scalars and it is possible to do this with Ceres also. However, it is our experience that in most problems small groups of scalars occur together. For example the three components of a translation vector and the four components of the quaternion that define the pose of a camera. Same is true for residuals, where it is common to have small vectors of residuals rather than just scalars. There are a number of advantages of using blocks. It saves on indexing information, which for large problems can be substantial. Blocks translate into contiguous storage in memory which is more cache friendly and last but not the least, it allows us to use SIMD/SSE based BLAS routines to significantly speed up various matrix operations.
+\end{Answer}
+
+\item \begin{Question}
+	What is a good ParameterBlock?
+\end{Question}\\ \\
+\begin{Answer}
+In most problems there is a natural parameter block structure, as there is a semantic meaning associated with groups of scalars -- mean vector of a distribution, color of a pixel etc. To group two scalar variables,  ask yourself if residual blocks will always use these two variables together. If the answer is yes, then the two variables belong to the same parameter block.
+\end{Answer}
+
+\item \begin{Question}
+	What is a good ResidualBlock?
+\end{Question}\\ \\
+\begin{Answer}
+While it is often the case that problems have a natural blocking of parameters into parameter blocks, it is not always clear what a good residual block structure is.  One rule of thumb for non-linear least squares problems since they often come from data fitting problems is to create one residual block per observation. So if you are solving a Structure from Motion problem, one 2 dimensional residual block per 2d image projection is a good idea.
+
+The flips side is that sometimes, when modeling the problem it is tempting to group a large number of residuals together into a single residual block as it reduces the  number of CostFunctions you have to define.
+
+For example consider the following residual block of size 18 which depends on four parameter blocks of size 4 each. Shown below is the Jacobian structure of this residual block, the numbers in the columns indicate the size, and the  numbers in the rows show a grouping of the matrix that best capture its sparsity structure. \texttt{X} indicates a non-zero block, the rest of the blocks are zero.
+
+\begin{equation*}
+\begin{matrix}
+ 	& 4	& 4	& 4	& 4 \\
+ 2	& \texttt{X}	& \texttt{X}	& \texttt{X}	& \texttt{X} \\
+ 4	& \texttt{X}	& 	& 	&   \\
+ 4	& 	& \texttt{X}	& 	&   \\
+ 4	& 	& 	& \texttt{X}	&   \\
+ 4	& 	& 	& 	& \texttt{X} \\
+\end{matrix}
+\end{equation*}
+
+Notice that out of the 20 cells, only 8 are non-zero, in fact out of the 288 entries only 48 entries are non-zero, thus we are hiding substantial sparsity from the solver, and using up much more memory. It is much better to break this up into 5 residual blocks. One residual block of size 2 that depends on all four parameter block and four residual blocks of size 4 each that depend on one parameter block at a time.
+\end{Answer}
+
+\item \begin{Question}
+Can I set part of a parameter block constant?
+\end{Question}\\ \\
+\begin{Answer}
+Yes, use \texttt{SubsetParameterization} as a local parameterization for the parameter block of interest. See \texttt{local\_parameterization.h} for more details.
+\end{Answer}
+
+
+\item \begin{Question}
+Can Ceres solve constrained non-linear least squares?
+\end{Question}\\ \\
+\begin{Answer}
+Not at this time. We have some ideas on how to do this, but we have not had very many requests to justify the effort involved. If you have a problem that requires such a functionality we would like to hear about it as it will help us decide directions for future work. In the meanwhile, if you are interested in solving bounds constrained problems, consider using some of the tricks described by John D'Errico in his fminsearchbnd toolkit~\footnote{\url{http://www.mathworks.com/matlabcentral/fileexchange/8277-fminsearchbnd}}.
+\end{Answer}
+
+\item \begin{Question}
+Can Ceres solve problems that cannot be written as robustified non-linear least squares?
+\end{Question}\\ \\
+\begin{Answer}
+No. Ceres was designed from the grounds up to be a non-linear least squares solver. Currently we have no plans of extending it into a general purpose non-linear solver.
+\end{Answer}
+\end{enumerate}
