Learning MPI