documentation for advanced programmers