blob: c20c0010c59e93d3c4d26df18cba5cfc486a4103 [file] [log] [blame]
<?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
#*****************************************************************************
#
# template.php
#
# Author: Denis Roy
# Date: 2005-06-16
#
# Description: Type your page comments here - these are not sent to the browser
#
#
#****************************************************************************
#
# Begin: page-specific settings. Change these.
$pageTitle = "The AspectJ Project: Teaching";
$pageKeywords = "AspectJ, AJDT, Aspect Oriented Software Development, Eclipse";
$pageAuthor = "Type your name here";
# Add page-specific Nav bars here
# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
# $Nav->addNavSeparator("My Page Links", "downloads.php");
# $Nav->addCustomNav("My Link", "mypage.php", "_self", 3);
# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 3);
# End: page-specific settings
# Paste your HTML content between the EOHTML markers!
$html = <<<EOHTML
<div id="maincontent">
<div id="midcolumn" style="width: 80%">
<h1>Who's teaching AOSD</h1>
<p> This list is a compilation of responses to a query sent out in November 2004 to find out
which establishments and individuals were teaching courses on the topic of
aspect-oriented software development, or courses that included some AOSD content. The
courses listed here are not exclusively teaching AspectJ, and nor are they in any way
"recommended" by the AspectJ team (we haven't taken them ourselves). </p>
<p>If you're teaching a course with some AOSD element in it and would like to be included on
this list then please let us know.</p>
<h2>Courses with online materials</h2>
<table border="1" cellspacing="0" cellpadding="5" width="100%">
<thead>
<tr>
<th>Lecturer(s)</th>
<th>Organisation</th>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>Prof. Oege de Moor</td>
<td>Oxford University</td>
<td>3rd year undergraduate course (also available as an MSc module) on AOP. Uses
the <a href="http://www.aspectbench.org">abc compiler</a> for AspectJ. [<a
href="http://web.comlab.ox.ac.uk/oucl/courses/topics04-05/ood/">Course materials</a>]
</td>
</tr>
<tr>
<td>Prof. Mira Mezini</td>
<td>Darmstadt University of Technology</td>
<td>Teaching AO as parts of two courses: Software Design, and Component Technology for Distributed Systems
[Course materials]
</td>
</tr>
<tr>
<td>Jeff Gray, Ph.D.</td>
<td>University of Alabama at Birmingham</td>
<td>Course on Reflective and Adaptive systems with 6 weeks of AOP content.
[<a href="http://www.cis.uab.edu/cs622/">Course materials</a>,
<a href="http://www.cis.uab.edu/gray/Pubs/scicop-2004.pdf">paper</a>]
</td>
</tr>
<tr>
<td>Dr Awais Rashid</td>
<td>Lancaster University</td>
<td>MSc. module on AOSD
[<a href="http://www.comp.lancs.ac.uk/postgraduates/mod_aosd.html">Course materials</a>]
</td>
</tr>
<tr>
<td>Paulo Borba, Sergio Soares</td>
<td>Federal University of Pernambuco</td>
<td>Aspect-Oriented Programming course
[<a href="http://www.cin.ufpe.br/~scbs/talp1/index_en.html">Course materials</a>]
</td>
</tr>
<tr>
<td>Sergio Soares</td>
<td>Catholic University of Pernambuco</td>
<td>Aspect-Oriented Programming course
[<a href="http://www.dei.unicap.br/~sergio/tac/">Course materials</a>]
</td>
</tr>
<tr>
<td>Francisco Reverbel</td>
<td>University of Sao Paulo</td>
<td>Object-Oriented Programming course (with aspect content)
[<a href="http://www.ime.usp.br/~kon/MAC5715/aulas/Aula16.html">Course materials</a>]
</td>
</tr>
<tr>
<td>Bedir Tekinerdogan, Ph.D.</td>
<td>University of Twente, The Netherlands</td>
<td>Aspect Oriented Software Development course
[<a href="http://www.cs.bilkent.edu.tr/taosd03">Course materials</a>]
</td>
</tr>
<tr>
<td>Wim Vanderperren</td>
<td>Vrije Universiteit Brussel (Belgium)</td>
<td>Masters course in Aspect-Oriented Programming
[<a href="http://ssel.vub.ac.be/index.php?sitecommand=./Courses/technieken/index.php">Course materials</a>]
</td>
</tr>
<tr>
<td>Constantinos Constantinides</td>
<td>Concordia University</td>
<td>Software Comprehension and Maintenance (including AOP and AO refactoring)
[<a href="http://www.cs.concordia.ca/~comp6431">Course materials</a>]
</td>
</tr>
<tr>
<td>Dr.Guenter Kniesel</td>
<td>Bonn University</td>
<td>AOSD course
[<a href="http://roots.iai.uni-bonn.de/teaching/vorlesungen/2004aosd/">Course materials</a>]
</td>
</tr>
<tr>
<td>Jonathan Aldrich</td>
<td>Carnegie Mellon University</td>
<td>Objects and Aspects: Language Support for Extensibility and Evolvability
[<a href="http://www-2.cs.cmu.edu/~aldrich/courses/819">Course materials</a>]
</td>
</tr>
<tr>
<td>Erik Ernst</td>
<td>Aarhus</td>
<td>Aspect Oriented Software Development
[<a href="https://mit.au.dk/da/uddan/udbudbeskriv.cfm?udbudid=1974&amp;lan=en">Course materials</a>]
</td>
</tr>
<tr>
<td>Walter Cazzola PhD</td>
<td>University of Milano</td>
<td>Reflection and Aspect-Oriented Programming [<a href="http://www.disi.unige.it/person/CazzolaW">
Course materials</a>]
</td>
</tr>
<tr>
<td>Mariano Ceccato, Filippo Ricca</td>
<td>University of Trento, Italy</td>
<td>Laboratory of Sofware Analysis (1 topic of many) [<a href="http://star.itc.it/ricca/swatII">
Course materials</a>]
</td>
</tr>
<tr>
<td>Dr Dirk Heuzeroth</td>
<td>University of Karlsruhe, Germany</td>
<td>Component Based Software Engineering [<a href="http://www.info.uni-karlsruhe.de/lehre/2004SS/swk">
Course materials</a>]
</td>
</tr>
<tr>
<td>Gary T. Leavens</td>
<td>Iowa State University</td>
<td>ComS541 - discusses AspectJ from the perspective of programming language design and semantics [
<a href="http://www.cs.iastate.edu/~leavens/ComS541/lectures/aspectj/">Course materials</a>]
</td>
</tr>
<tr>
<td>Gregor Kiczales</td>
<td>University of British Columbia</td>
<td>4th year undergraduate compiler course builds a simple AspectJ compiler [
<a href="http://www.ugrad.cs.ubc.ca/~cs411/">Course Materials</a>]
</td>
</tr>
<tr>
<td>Karl Lieberherr
</td>
<td>Northeastern University
</td>
<td>Several Masters Courses, see the
[<a href="http://www.ccs.neu.edu/research/demeter/course/AspectJ_For_Teaching/">Information Page</a>]
</td>
</tr>
<tr>
<td>Manuel Menezes de Sequeira</td>
<td>ISCTE (Instituto Superior de Ciencias do Trabalho e da Empresa)</td>
<td>5th year course on advanced programming with substantial part on AOP using AspectJ
[<a href="http://www.iscte.pt/PA/">Course Materials (Portuguese)</a>]
</td>
</tr>
</tbody>
</table>
<h2>Other academic courses</h2>
<table border="1" cellspacing="0" cellpadding="5" width="100%">
<thead>
<tr>
<th>Lecturer(s)</th>
<th>Organisation</th>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>Lodewijk Bergmans, Mehmet Aksit</td>
<td>University of Twente</td>
<td>Component and Aspect-Oriented Programming course (90% AOP), Advanced Programming Concepts course
</td>
</tr>
<tr>
<td>Lionel Seinturier, Renaud Pawlak, Laurence Duchien</td>
<td>University of Lille (France)</td>
<td>Course on distributed application servers, with approx 40% dedicated to AOP related issues</td>
</tr>
<tr>
<td>Gustav Bostrom</td>
<td>Royal Institute of Technology, Stockholm</td>
<td>AOSD module taught as part of two courses</td>
</tr>
<tr>
<td>Herman Tromp</td>
<td>Ghent University, Belgium</td>
<td>Planning to introduce AOSD material into fall 2005 courses.</td>
</tr>
<tr>
<td>Filippo Diotalevi</td>
<td>Politecnico of Milan-Como</td>
<td>Single lecture on AOP and AspectJ
[<a href="http://www.jugmilano.it/jsp/Wiki?seminario+policomo+gennaio+2005">
Slides</a> (Italian)].
</td>
</tr>
<tr>
<td>Bil Lewis</td>
<td>Tufts University, Boston</td>
<td>Course on bytecode instrumentation and the JVM. AOP content includes
creation of an Aspect byte code weaver.
</td>
</tr>
<tr>
<td>Paolo Falcarin, Marco Torchiano</td>
<td>Politecnico di Torino, Italy</td>
<td>Teach an "Advanced Software Development Techniques" course, with
approx. 50% AOSD materials. Topics include AspectJ, dynamic AOP, AO
Modeling and other AOP-related research.
</td>
</tr>
</tbody>
</table>
<h2>Open source offerings</h2>
<table border="1" cellspacing="0" cellpadding="5" width="100%">
<thead>
<tr>
<th>Instructor</th>
<th>Organisation</th>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>The AspectJ Team</td>
<td>
AspectJ
</td>
<td>Teach an introductory and advanced AspectJ tutorial. Materials
available in the AspectJ CVS repository under docs/teaching.
</td>
</tr>
</tbody>
</table>
<h2>Commercial offerings</h2>
<table border="1" cellspacing="0" cellpadding="5" width="100%">
<thead>
<tr>
<th>Instructor</th>
<th>Organisation</th>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>Gregor Kiczales, Ron Bodkin, Mik Kersten, Ramnivas Laddad, Nicholas
Lesiecki, Mira Mezini
</td>
<td>
<a href="http://www.aspectmentor.com">AspectMentor</a>
</td>
<td>A group of recognised experts in AOP and AOSD that offer two-day training
courses in AOP in addition to consultancy services.
</td>
</tr>
<tr>
<td>Antti Karanta</td>
<td>FCS Partners, Finland</td>
<td>A 2-day intensive course on AOP / AspectJ [
<a href="http://www.fcspartners.fi/koulutus/kurssit/1267.html">link</a>].
</td>
</tr>
<tr>
<td>
<a href="http://aspectjcookbook.com">Russ Miles</a>
</td>
<td>General Dynamics UK</td>
<td>Has developed an internal course for GD, and is able to offer courses
externally too.
</td>
</tr>
<tr>
<td>
Bill Burke
</td>
<td><a href="http://www.jboss.org">JBoss Group</a></td>
<td>Teaches a JBoss AOP unit at every JBoss training event</td>
</tr>
</tbody>
</table>
<br clear="all">
</div>
</div>
EOHTML;
# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>