Web based environment for OOP Learning

(Student proposal by Gastón N. Charkiewich and Nahuel Garbezza)

Mentor: Gabriela Arevalo
Second mentor: Alexander Lazarevic
Level: Intermediate
Submitted proposal to Melange: Gastón Charkiewicz
Invited students: Gastón Charkiewicz
Students interested: Gastón Charkiewicz(very), sree leela(very), Joaquin Segui(very), Nahuel Garbezza, YunJae Jang, Prasanth Karri, Federico Mieres, Krutarth Patel, Nirbhai Singh, Gisela Decuzzi(lightly)


Within the context of lectures of object-oriented programming/paradigm, most professors use learning environments: stand-alone applications that are installed in each student PC. During practical exercises, the professors have to check with each student how the exercises are solved and the feedback is based only on professors' comments. There is no so far a tool that allows to have a web-based access to the environment and to allow two different roles that can interact with the environment: professor and student.

This project proposes a web-based application to teach/learn object-oriented programming with the following functionalities:

  • The access is through a web-application
  • The student can save all the progress that she/he can do with their exercises
  • The professor can have access to all the progress done by the students
  • The professor can propose exercises (based on Lessons, such as Object Browser)
  • The student can make progress on the exercises and get rewards that are published on the social networks.

Technical Details

  • Model to support lessons (starting with only objects and then gradually introduce classes and more advanced concepts).
  • Basic tools (smalltalk-like browser, workspaces, test runner, code critics, etc)
  • Object diagrams (to see objects and references in a graphical way)
  • Login with two different roles (student, teacher)
  • Technologies: Amber/Seaside

Benefits to the Student

The student will learn to design complex web applications, and to identify aspects of the OOP teaching/learning process.

Benefits to the Community

The community will gain a very useful tool to any kind of course related to OOP. Teachers can prepare lessons easily, and keep track of the students' progress. Students can play with the environment only visiting a web site, without installing anything locally. Smalltalk can potentially attract new users.

Updated: 9.4.2013