Exercise 2.1.8 of Guillemin and Pollack asks us to prove that if $X^m \subset \mathbb{R}^n$ is an embedded submanifold with boundary, then the outward unit normal to $\partial X$ is a smooth function $\partial X \to \mathbb{R}^n$.
By a partition of unity we can get a smooth vector field consisting of outward-pointing vectors. Then intuitively, we want to project from $T_x(X)$ onto $T_x(\partial X)^\perp \subset \mathbb{R}^n$ at each $x \in \partial X$, and then normalize. What's troubling me is demonstrating that the projection is a smooth operation. Normally I'd just like to take slice charts for $X$ and $\partial X$, but these don't necessarily preserve orthogonality.
(I think this would all be OK if I was comfortable thinking about the induced Riemannian metric on $X$ and $\partial X$ from $\mathbb{R}^n$, but I haven't gotten that far yet.)
The projection can be obtained as follows: choose a smooth set of vector fields $X_i$, $1\le i < m$ spanning $T \partial X$, and use Gram Schmitt to orthonormalize them -- I will use the same letter to denote the result, for simplicity. Then consider any smooth vector field $Y$ in $TX$, transversal to $\partial X$ along $\partial X$, and consider $$Z:= Y-\sum_i <X_i, Y>X_i$$ This will be normal to $\partial X$ in $TX$ and everywhere nonzero. Then normalize $Z$. All operations are obvously smooth (why?), so the result is smooth.
This is of course a sketch, you still need to show that all the ingredients I used exist, for example, but that should not be too difficult.