A customized table of contents for a course may be generated based off the needs of the teacher and/or the interests of the students. Core content for the course may be organized in a plurality of sections, e.g., chapters, topics, projects and/or reading assignments, with each section being broken down into one or more alternative blocks. The plurality of sections and alternative blocks may be stored in a database. Using answers from the teacher and/or determined interest of the students, the customized table of contents may be generated for the course. Current events may also be used in selecting and/or modifying alternative blocks for the course. Success rates from previously tried customized table of contents may be analyzed and feedback provided to the teacher in future courses to assist the teacher in creating better customized table of contents in the future.