Difference between revisions of "Eclipse IDE for Education"

From Eclipsepedia

Jump to: navigation, search
(Downloading and Installing)
(Downloading and Installing)
 
(31 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=Abstract=
+
The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog (though only Java is supported for the time being).
  
The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog.
+
Our initial efforts are focused on providing an environment with reduced clutter that allows students to focus on their immediate requirement of getting classroom work done. To that end, the current version provides a streamlined environment featuring <em>stripped down</em> versions of wizards for creating common elements. We anticipate that students will use this environment in their first months of learning and then progress to a [http://www.eclipse.org/downloads/ more complete Eclipse configuration].
 +
 
 +
Our next most immediate focus is to provide support for other languages commonly used in post-secondary education such as Scheme and Prolog (Scheme support is expected soon, pending a positive outcome from our IP due diligence process). We have discussed some <em>crazy ideas</em> of where we might take the Eclipse IDE for Education. It is has been suggested, for example, that it might be cool to use the ECF discovery APIs to allow an instructor to make assignments available through the environment itself; students might obtain those assignments by merely being in network proximity to their instructor's computer. These discussions are occurring and will occur in our [http://dev.eclipse.org/mailman/listinfo/ide4edu-dev mailing list].
 +
 
 +
The Eclipse IDE for Education certainly is ripe for contributions as part of student projects, master's theses, and more (hint, hint).
  
 
=Downloading and Installing=
 
=Downloading and Installing=
[Image:http://www.eclipse.org/images/egg-incubation.png]
+
[[Image:DTP_Egg-incubation.png | right | Incubation]]
We currently only support the Java programming language. Scheme support should (hopefully) be available shortly, followed by Prolog.
+
  
Download the Eclipse IDE for Education on the following platforms:
+
The project does not currently provide any downloads.
  
*[http://www.eclipse.org/downloads/download.php?r=1&file=/technology/soc/ide4edu/drops/0.1.0-20080902/eclipse-ide4edu-incubation-0.1.0-20080902-win32.win32.x86.zip Windows]
+
For more information about builds, please see:
*[http://www.eclipse.org/downloads/download.php?r=1&file=/technology/soc/ide4edu/drops/0.1.0-20080902/eclipse-ide4edu-incubation-0.1.0-20080902-linux.gtk.x86.tar.gz Linux GTK]
+
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=288663 Bug 288663]; and
*[http://www.eclipse.org/downloads/download.php?r=1&file=/technology/soc/ide4edu/drops/0.1.0-20080902/eclipse-ide4edu-incubation-0.1.0-20080902-macosx.carbon.ppc.tar.gz MacOSX]
+
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=242281 Bug 242281]
  
To install, extract the downloaded file onto your file system. To run, click on the &quot;eclipse&quot; executable (<em>eclipse.exe</em> on Windows). Windows users: There is a known problem with the decompression software built into Windows; if you have a problem decompressing the file, either try decompressing it into the root directory, or use alternative decompression software such as 7zip or WinZip.
+
=Development=
 +
We are actively soliciting feedback, input, and contributions for this project. If you are interested in participating in this project, please feel free to review the [https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&product=IDE4EDU&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED open bugs] and add your input; also feel free to [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=IDE4EDU open new bugs]. You can also participate in the conversation around Eclipse IDE for Education by joining the [http://dev.eclipse.org/mailman/listinfo/ide4edu-dev mailing list].
  
Please report any problems via Eclipse Bugzilla.
+
==Joining the Project==
 +
Joining the project is relatively easy. Add yourself to the mailing list so that you can keep up with any ongoing conversations (FWIW, the mailing list has periods of high and low volume). You can then just jump in and start doing work. This is how we do things at Eclipse: people show up and and they do work by way of providing patches or code in the Bugzilla system. We accept those patches, work with the contributor to push them into our code repository and make them part of our build. Over time, after some significant number of high-quality contributions are accepted, we may invite an individual to become a committer.
  
=Goals=
+
We have marked several of the bugs using the 'helpwanted' and 'bugday' keywords. The semantics of '[https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&keywords=helpwanted&product=IDE4EDU&bug_status=NEW helpwanted]' are pretty obvious: these are the bugs that we want help with. Those bugs marked as '[https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&keywords=bugday&product=IDE4EDU&bug_status=NEW bugday]' are ones that we believe are relatively easy to fix; these bugs should take no more than a couple of hours each to address (the time that it will take to get up to speed with Eclipse plug-in development notwithstanding). Sometimes we do get a little behind in keeping up with the helpwanted and bugday annotations; the [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=NEW;bug_status=REOPENED;classification=Technology;product=IDE4EDU complete list] of open bugs is also a good place to look.
  
* To provide an Eclipse IDE streamlined for the needs of university students
+
New to eclipse development? Here is an ongoing page to assist in bringing new developers up to speed on the project:
 +
[[Eclipse IDE for Education/New Developers | New Developers Help]].
  
=Fundamental Requirements=
+
==Development Environment==
 +
You can set up your own environment for developing on Eclipse IDE for Education as follows:
  
*The IDE is as small as possible; only absolutely-required components are included. This includes download size, as well as runtime footprint.
+
# Download and install the [http://eclipse.org/downloads/ Eclipse for RCP/Plug-in Developers]
 +
#* You'll need a Java 5 compatible runtime (JRE) installed on your workstation
 +
#* Unzip the downloaded package to install. You can find some help in the [http://wiki.eclipse.org/FAQ_Where_do_I_get_and_install_Eclipse%3F Eclipse FAQ].
 +
# Download the [http://www.eclipse.org/ide4edu/projectsets/ide4edu.psf ide4edu.psf] Team Project Set.
 +
# Import the Team Project Set using the <code>File &gt; Import &gt; Team Project Set</code> menu. When you are prompted, use "anonymous" as the user id with an empty (blank) password.
 +
 
 +
Following the above set of instructions should result in a workspace containing all the source code for the project. Note that while you can read the code and make local changes, you will not be able to commit any of your changes back to the server. To do so requires "committer" access.
 +
 
 +
To Run or Debug the Eclipse IDE for Education, open the "ide4edu.product" file  in the "branding" plug-in, org.eclipse.ide4edu.branding.  Under the "Testing" category, click on "Launch an Eclipse application", or "Launch an Eclipse application in Debug mode". This will create a proper launch configuration containing only the plug-ins that you need to run and test The Eclipse IDE for Education. That configuration will henceforth be accessible via the "Launch" and "Debug" toolbar icons.
  
 
=Background=
 
=Background=
The Eclipse IDE for Education, being constructed as a component under the [http://www.eclipse.org/soc Eclipse SOC] project, is a streamlined integrated development environment (IDE) which supports different languages used by first year students. The initially targeted languages are Java, Scheme and Prolog development.  
+
==Goals==
 +
 
 +
To provide an Eclipse IDE streamlined for the needs of university students that is as small as possible; only absolutely-required components are included. This includes download size, as well as runtime footprint.
 +
 
 +
==Fundamental Requirements==
 +
 
 +
The Eclipse IDE for Education is a streamlined integrated development environment (IDE) which supports different languages used by first year students. The initially targeted languages are Java, Scheme and Prolog development.  
  
 
Scaled down versions of Eclipse for Java development have been done in the past. One such version was produced by the GILD project. However, it is no longer supported, with its last release done on January 3, 2006, and intended for use with Eclipse version 3.1. Another version is Penumbra. It is plug-in developed at Purdue University for use in their introductory programming classes. It was intended to ease the transition to use of the full-featured functionality of Eclipse. Penumbra presents an Eclipse perspective that hides all but the basic actions of Eclipse's existing Java perspective, while packaging elements of other perspectives (e.g., the CVS perspective) into simpler actions that ease the downloading and turn-in of programming assignments, and adding new code views inspired by other environments for introductory programmers. Although neither version seems to be currently supported, they provide direction as to what a lite version of Eclipse for Java development might look like.
 
Scaled down versions of Eclipse for Java development have been done in the past. One such version was produced by the GILD project. However, it is no longer supported, with its last release done on January 3, 2006, and intended for use with Eclipse version 3.1. Another version is Penumbra. It is plug-in developed at Purdue University for use in their introductory programming classes. It was intended to ease the transition to use of the full-featured functionality of Eclipse. Penumbra presents an Eclipse perspective that hides all but the basic actions of Eclipse's existing Java perspective, while packaging elements of other perspectives (e.g., the CVS perspective) into simpler actions that ease the downloading and turn-in of programming assignments, and adding new code views inspired by other environments for introductory programmers. Although neither version seems to be currently supported, they provide direction as to what a lite version of Eclipse for Java development might look like.
  
Only one Eclipse based Scheme development environment exists: The SchemeWay project. It provides a set of Eclipse plugins for the Scheme programming language and features a powerful, fully extensible S-expression-based editor that integrates seamlessly with any Scheme interpreter. However, this environment does not come with the source code and it is not targeted at first year students. While not Eclipse based, [http://www.drscheme.org/ DR Scheme ] provides an environment that provides an integrated programming environment designed specifically with the needs of beginners in mind.
+
Only one Eclipse based Scheme development environment exists: The [http://sourceforge.net/projects/schemeway/ SchemeWay project]. It provides a set of Eclipse plugins for the Scheme programming language and features a powerful, fully extensible S-expression-based editor that integrates seamlessly with any Scheme interpreter. However, this environment is not targeted at first year students. While not Eclipse based, [http://www.drscheme.org/ DR Scheme ] provides an environment that provides an integrated programming environment designed specifically with the needs of beginners in mind.
  
 
One free Eclipse plug-in for Prolog exists created by an undergraduate student named Juliana Barby Simão. However, it was completed in 2004 and was not continued, even though it was reported that the project would continue during 2004 as a graduate project. Not Eclipse based, JLog is an implementation of a Prolog interpreter, written in Java. It includes a built-in source editor, query panels, online help, animation primitives, and a GUI debugger. It could be easily wrapped within an Eclipse UI, providing Prolog for Eclipse users.
 
One free Eclipse plug-in for Prolog exists created by an undergraduate student named Juliana Barby Simão. However, it was completed in 2004 and was not continued, even though it was reported that the project would continue during 2004 as a graduate project. Not Eclipse based, JLog is an implementation of a Prolog interpreter, written in Java. It includes a built-in source editor, query panels, online help, animation primitives, and a GUI debugger. It could be easily wrapped within an Eclipse UI, providing Prolog for Eclipse users.
  
Whether for Java, Scheme or Prolog development, the idea is to provide first year students with Eclipse-based lite IDEs. By doing so, the belief is that as students become more experience with the lite versions and the languages, they can and will want to transition to the full versions of the IDE.
+
Whether for Java, Scheme or Prolog development, the idea is to provide first year students with streamlined built-for-purpose Eclipse-based IDEs. By doing so, the belief is that as students become more experience with the lite versions and the languages, they can and will want to transition to the full versions of the IDE.
=Development Plan=
+
 
''To be formalized into a project plan''
+
We expect that a student will use the JavaLite perspective for a short period of time while they get used to Eclipse. After that short period of time (say a month or two), they'll be ready to be exposed to more of Eclipse and can easily transition to the other perspectives. For that reason, we feel that the "standard" Java functionality should be included in any packages produced to make the transition easy.
==August 29==
+
*Build what we currently have: lite Java, Scheme.
+
*Publish update site and Package on Eclipse download page and Dwight's server at Carleton University (CU)
+
*Submit Sigcse paper Getting Eclipse into the Classroom
+
==September 4-5==
+
*Introduce CU first-year students to Java Lite integration in the IDE for Education
+
*Introduce CU third-year students to the Scheme Integration in the IDE for Education
+
==October 3==
+
*Incorporate Prolog (JLog from SourceForge)
+
**Currently dual licensed GPL/MPL
+
*Q&A Feedback for first-year, and third-year students; initial reaction to environment
+
==November==
+
*Generalization of the Java Lite view
+
*Tighter integration of Scheme and Prolog into environment
+
**For example, Schema and Prolog projects, file creation wizards, ...
+

Latest revision as of 09:49, 20 April 2012

The Eclipse IDE for Education is a version of Eclipse streamlined specifically for use by university and college students. The environment provides support for programming languages that are commonly used in university courses, including Java, Scheme, and Prolog (though only Java is supported for the time being).

Our initial efforts are focused on providing an environment with reduced clutter that allows students to focus on their immediate requirement of getting classroom work done. To that end, the current version provides a streamlined environment featuring stripped down versions of wizards for creating common elements. We anticipate that students will use this environment in their first months of learning and then progress to a more complete Eclipse configuration.

Our next most immediate focus is to provide support for other languages commonly used in post-secondary education such as Scheme and Prolog (Scheme support is expected soon, pending a positive outcome from our IP due diligence process). We have discussed some crazy ideas of where we might take the Eclipse IDE for Education. It is has been suggested, for example, that it might be cool to use the ECF discovery APIs to allow an instructor to make assignments available through the environment itself; students might obtain those assignments by merely being in network proximity to their instructor's computer. These discussions are occurring and will occur in our mailing list.

The Eclipse IDE for Education certainly is ripe for contributions as part of student projects, master's theses, and more (hint, hint).

Contents

[edit] Downloading and Installing

Incubation

The project does not currently provide any downloads.

For more information about builds, please see:

[edit] Development

We are actively soliciting feedback, input, and contributions for this project. If you are interested in participating in this project, please feel free to review the open bugs and add your input; also feel free to open new bugs. You can also participate in the conversation around Eclipse IDE for Education by joining the mailing list.

[edit] Joining the Project

Joining the project is relatively easy. Add yourself to the mailing list so that you can keep up with any ongoing conversations (FWIW, the mailing list has periods of high and low volume). You can then just jump in and start doing work. This is how we do things at Eclipse: people show up and and they do work by way of providing patches or code in the Bugzilla system. We accept those patches, work with the contributor to push them into our code repository and make them part of our build. Over time, after some significant number of high-quality contributions are accepted, we may invite an individual to become a committer.

We have marked several of the bugs using the 'helpwanted' and 'bugday' keywords. The semantics of 'helpwanted' are pretty obvious: these are the bugs that we want help with. Those bugs marked as 'bugday' are ones that we believe are relatively easy to fix; these bugs should take no more than a couple of hours each to address (the time that it will take to get up to speed with Eclipse plug-in development notwithstanding). Sometimes we do get a little behind in keeping up with the helpwanted and bugday annotations; the complete list of open bugs is also a good place to look.

New to eclipse development? Here is an ongoing page to assist in bringing new developers up to speed on the project: New Developers Help.

[edit] Development Environment

You can set up your own environment for developing on Eclipse IDE for Education as follows:

  1. Download and install the Eclipse for RCP/Plug-in Developers
    • You'll need a Java 5 compatible runtime (JRE) installed on your workstation
    • Unzip the downloaded package to install. You can find some help in the Eclipse FAQ.
  2. Download the ide4edu.psf Team Project Set.
  3. Import the Team Project Set using the File > Import > Team Project Set menu. When you are prompted, use "anonymous" as the user id with an empty (blank) password.

Following the above set of instructions should result in a workspace containing all the source code for the project. Note that while you can read the code and make local changes, you will not be able to commit any of your changes back to the server. To do so requires "committer" access.

To Run or Debug the Eclipse IDE for Education, open the "ide4edu.product" file in the "branding" plug-in, org.eclipse.ide4edu.branding. Under the "Testing" category, click on "Launch an Eclipse application", or "Launch an Eclipse application in Debug mode". This will create a proper launch configuration containing only the plug-ins that you need to run and test The Eclipse IDE for Education. That configuration will henceforth be accessible via the "Launch" and "Debug" toolbar icons.

[edit] Background

[edit] Goals

To provide an Eclipse IDE streamlined for the needs of university students that is as small as possible; only absolutely-required components are included. This includes download size, as well as runtime footprint.

[edit] Fundamental Requirements

The Eclipse IDE for Education is a streamlined integrated development environment (IDE) which supports different languages used by first year students. The initially targeted languages are Java, Scheme and Prolog development.

Scaled down versions of Eclipse for Java development have been done in the past. One such version was produced by the GILD project. However, it is no longer supported, with its last release done on January 3, 2006, and intended for use with Eclipse version 3.1. Another version is Penumbra. It is plug-in developed at Purdue University for use in their introductory programming classes. It was intended to ease the transition to use of the full-featured functionality of Eclipse. Penumbra presents an Eclipse perspective that hides all but the basic actions of Eclipse's existing Java perspective, while packaging elements of other perspectives (e.g., the CVS perspective) into simpler actions that ease the downloading and turn-in of programming assignments, and adding new code views inspired by other environments for introductory programmers. Although neither version seems to be currently supported, they provide direction as to what a lite version of Eclipse for Java development might look like.

Only one Eclipse based Scheme development environment exists: The SchemeWay project. It provides a set of Eclipse plugins for the Scheme programming language and features a powerful, fully extensible S-expression-based editor that integrates seamlessly with any Scheme interpreter. However, this environment is not targeted at first year students. While not Eclipse based, DR Scheme provides an environment that provides an integrated programming environment designed specifically with the needs of beginners in mind.

One free Eclipse plug-in for Prolog exists created by an undergraduate student named Juliana Barby Simão. However, it was completed in 2004 and was not continued, even though it was reported that the project would continue during 2004 as a graduate project. Not Eclipse based, JLog is an implementation of a Prolog interpreter, written in Java. It includes a built-in source editor, query panels, online help, animation primitives, and a GUI debugger. It could be easily wrapped within an Eclipse UI, providing Prolog for Eclipse users.

Whether for Java, Scheme or Prolog development, the idea is to provide first year students with streamlined built-for-purpose Eclipse-based IDEs. By doing so, the belief is that as students become more experience with the lite versions and the languages, they can and will want to transition to the full versions of the IDE.

We expect that a student will use the JavaLite perspective for a short period of time while they get used to Eclipse. After that short period of time (say a month or two), they'll be ready to be exposed to more of Eclipse and can easily transition to the other perspectives. For that reason, we feel that the "standard" Java functionality should be included in any packages produced to make the transition easy.