How to prevent a page break before an itemize list?

\makeatletter 
\newcommand\mynobreakpar{\par\nobreak\@afterheading} 
\makeatother
.....
text\mynobreakpar
\begin{itemize}
....

LaTeX puts \beginparpenalty at the begin of a list. The standard classes set \@beginparpenalty to -\@lowpenalty (-51), i.e., they somewhat encourage page breaks before lists. If you want to avoid page breaks before lists at all costs, set \@beginparpenalty to 10000 in the preamble of your document.

\documentclass{article}

\makeatletter
\@beginparpenalty=10000
\makeatother

\usepackage{lipsum}

\begin{document}

\lipsum[1-5]

\begin{itemize}
\item \lipsum*[6]
\end{itemize}

\end{document}

Another solution, similar to Corbie's one, is use of samepage environment in way below. It's enough to use it on first item in list (or a few first ones), so you can use it without suppressing page-break either in preceding paragraph and in whole list. Also, minipage environment is probably overkill comparing to samepage and you need not specify line width, but it's matter of taste, you can use it too.

And here, finally, is the list of mission-critical items:
\begin{itemize}
\begin{samepage} % first item is tied to end of preceding paragraph
    \item first item...
\end{samepage}
    ... % second and following items
\end{itemize}