Casey O’Brien Java Tutor
Python Java
Python 6.01 Java
Python Java
Python Java
Python Java
Python Java 6.005
Hello World
Learning Python at MIT
Take 6.00
Learning Python at MIT Take 6.00 Take 6.S189
Learning Python at MIT Take 6.00 Take 6.S189 Take 6.01
Learning Python at MIT Take 6.00 Take 6.S189 Take 6.01 Online Tutor
Python Online Tutor
Learning Java at MIT
Take 1.00
Learning Java at MIT Take 1.00 Take 6.S092
Learning Java at MIT Take 1.00 Take 6.S092 Take 6.005
Learning Java at MIT Take 1.00 Take 6.S092 Take ???
Learning Java in 6.005
Fall 2012 Semester: Java Oracle Tutorial
Learning Java in Fall 2012 Semester: Java Oracle Tutorial
Learning Java in 6.005
Spring 2013 Semester: Java Crash Course
Learning Java in Spring 2013 Semester: Java Crash Course
Learning Java in Other Options:
Problem Java is a lot harder than Python!
My Proposal
Online System
My Proposal Online System Interactive
My Proposal Online System Interactive “Convert” Python to Java
My Proposal Online System Interactive “Convert” Python to Java SuperUROP Supervisor: Professor Rob Miller Mentor: Max Goldman
Examples PythonJava
Examples PythonJava printSystem.out.println()
Examples PythonJava printSystem.out.println() __str__toString()
Examples PythonJava printSystem.out.println() __str__toString() ==equals()
Examples PythonJava printSystem.out.println() __str__toString() ==equals() listArrayList
Examples PythonJava printSystem.out.println() __str__toString() ==equals() listArrayList dictionaryHashMap
System Overview
Server
System Overview Server Student A
System Overview Server Student A Student B
System Overview Server Student A Student B Student C
System Overview Server Student A Student B Student C Student D
System Overview Server Student A Student B Student C Student D …
Tools
Server
Tools Server Development Machine
Tools Server Development Machine Languages
Tools Server Development Machine Languages Python Tutor: Python, Javascript
Tools Server Development Machine Languages Python Tutor: Python, Javascript Ruby on Rails
Tools Server Development Machine Languages Python Tutor: Python, Javascript Ruby on Rails PHP
Implementation 1.Back-End Structure 2.Web Interface 3.Testing 4.Publication
Implementation 1.Back-End Structure 2.Web Interface 3.Testing 4.Publication
Implementation 1.Back-End Structure
Implementation 1.Back-End Structure Examine Python Tutor
Implementation 1.Back-End Structure Examine Python Tutor Develop sample questions
Implementation 1.Back-End Structure Examine Python Tutor Develop sample questions Develop structure
Implementation 1.Back-End Structure 2.Web Interface 3.Testing 4.Publication
Implementation 2.Web Interface
Implementation 2.Web Interface Design UI
Implementation 2.Web Interface Design UI Handle online compiler
Implementation 2.Web Interface Design UI Handle online compiler Develop web interface
Implementation 1.Back-End Structure 2.Web Interface 3.Testing 4.Publication
Implementation 3.Testing
Implementation 3.Testing User Testing
Implementation 3.Testing User Testing Analysis
Implementation 1.Back-End Structure 2.Web Interface 3.Testing 4.Publication
Implementation 4.Publication Write publication
Implementation 4.Publication Write publication Final edits
Implementation 4.Publication Write publication Final edits Submit to Computer Human Interaction Conference (CHI)
Schedule Meet with Supervisor Examine Python Tutor Develop sample questions Design structure Design UI Handle online compiler Develop web interface User Testing Analysis Write publication Final Publication Edits Submit to CHI
Risks
Turns out similar to other options
Risks Turns out similar to other options Cannot be implemented in time
Risks Turns out similar to other options Cannot be implemented in time Online Tutor is not best fit
Risks Turns out similar to other options Cannot be implemented in time Online Tutor is not best fit Students do not find Tutor useful
Further Work
Testing in 6.005
Further Work Testing in Developing more complicated examples
Further Work Testing in Developing more complicated examples MITx
Further Work Testing in Developing more complicated examples MITx Generalizing beyond Java