Interessen- und Angebotsmatrix

Programmiersprachen

... interessiert mich

... kann ich etwas zu beitragen

Assembler

Bernd, Harald, Oliver2

Harald, Bernd, Bernd2, Thomas, Axel

C

Moritz, Harald

Rolf, Bernd, Bernd2, Oliver2, Thomas

C++

Harald, Sabrina

Bernd2, Oliver2, Thomas, Axel

Cobol

Axel, Oliver2

Forth

Harald

Fortran

Axel

Gambas

Rolf, Oliver2

Haskell

Bernd, Harald

Harald

Java

Stefan, Harald, Thomas, Sabrina, Axel

Oliver, Oliver2

Javascript

Lisp (Common Lisp, Scheme, Clojure)

Harald

Lua

Bernd, Harald

Perl

Bernd, Oliver2, Harald

Php

Bernd, Stefan, Sabrina

Rolf, Nadja, Axel, Oliver2

Prolog

Bernd

Harald

Python

Sabrina, Oliver2

Bernd, Moritz, Harald

Scala

Harald

Tcl

Oliver2

Paradigmen und Konzepte

... interessiert mich

... kann ich etwas zu beitragen

Aspektorientierung

Oliver

GUI Design

Bernd2, Oliver2, Harald, Sabrina

Objektorientierung

Oliver2

Oliver

platformübergreifende ~

Oliver2

reguläre Ausdrücke

Moritz (Allgemeines und Praxis in Python), Thomas (Allgemeines)

Unit-Testing

Thomas (als Teil des Entwicklungsprozesses)

Linux-Systemprogrammierung

Multithreading

Axel, Harald, Oliver2

Agile Software Development

Harald

Domain Driven Design

Harad

Entwicklungsumgebungen / Frameworks

... interessiert mich

... kann ich etwas zu beitragen

Anjuta

Oliver2

Code::Blocks

Sabrina

Eclipse

Bernd2, Harald, Sabrina, Axel

Oliver

Maven

Harald

Oliver

Spring Framework /MVC /AOP /AspectJ

Oliver

Apache Wicket

Oliver

Selenium 2

Oliver

Hibernate

Harald

Oliver

JUnit

Oliver

Netbeans

Oliver2

Rails

Oliver

Ajax

Harald

Werkzeuge

... interessiert mich

... kann ich etwas zu beitragen

Assembler

Oliver2

Bernd, Thomas

Compiler

Harald, Oliver2

Bernd, Thomas

Debugger

Oliver2

Bernd, Thomas

Lexer- / Parsergeneratoren

Harald, Bernd, Thomas

Linker

Harald, Oliver2

Bernd, Thomas

Make

Moritz, Oliver2

Bernd, Thomas

cmake

Thomas

configure

Harald, Oliver2

Thomas (Übersicht, nicht die allerletzen Details)

diff, patch, quilt

Harald, Oliver2

Harald, Thomas

subversion

Axel

Harald, Thomas, Oliver2

git

Axel, Oliver2

Harald

mercurial

Axel, Oliver2

Harald

bugzilla

Harald

doxygen

Harald

Thomas

javadoc

LaTeX-listings

Harald

cweb

Harald

Libraries

... interessiert mich

... kann ich etwas zu beitragen

Xlib

Harald

Bernd

glib / gtk+

Axel, Oliver2

Bernd

openGL

Axel, Oliver2

Bernd

Qt / KDE

Harald, Oliver2

Thomas, Axel

Swing

Oliver, Oliver2

Compilerbau

... interessiert mich

... kann ich etwas zu beitragen

Lexer / Parser

Harald, Bernd

Grammatiken

Harald, Bernd

syntaxgerichtete Übersetzung

Bernd

Codeerzeugung

Bernd

(Bernd)

Optimierungsstrategien

Bernd

(Bernd)

Einschränkungen / zusätzliche Informationen

* Assembler (als Sprache): hier haben alle "Anbieter" im wesentlichen noch Kenntnisse aus den Anfangsgründen der Programmierung. Im Workshop ginge es dann darum, sich aktuelle Kenntnisse in der Linux-Umgebung zu erarbeiten.

* Assembler (als tool): hierbei geht es im Gegensatz zum oberen Thema um die Bedienung des GNU-Assemblers, von nasm und anderen tools.

* reguläre Ausdrücke: Hier können beide Anbieter nur allgemeine Grundlagen vermitteln, Moritz vorzugsweise am Besipiel von Python.

* Unit-Testing: Thomas kann dieses als Teil des Entwicklungsprozesses vorstellen.

* configure: Nur eine grobe Übersicht, keine Details

* lex & yacc: Nur oberflächliche Kenntnisse vorhanden, keine Praxiserfahrung

Ideen für Programmieraufgaben / Projekte:

Projekte

was?

Umgebung / Voraussetzungen

Vorschlag von

Projekt-Controlling Tool

XML, GUI, Qt, subversion

Thomas

Wikimedia-Picture-Picker

Java, Perl, Python, GUI

Harald

ICU-konforme utf8-Sortierung

Perl, Python, Java, C++, PHP

Harald

Text-Übersetzungs-Alignment

C, C++

Harald

Shoebox-Interlinearisator

GUI, Qt, Java, C++, PHP, Javascript/AJAX

Harald


Literatur

Literatur

Titel

Information

Bereitstellung

i486 Microprocessor Programmer's Manual

intel Corporation: Literature Sales, 1990

Bernd

Linux Kernelarchitektur

W. Maurer: Carl Hanser Verlag München, Wien 2004

Bernd

Understanding the Linux Kernel

D.P. Bovet, M. Cesati: O'Reilly, 2006

Bernd

Linux Device Drivers

J. Corbet, A. Rubini, G. Kroah-Hartman: O'Reilly, 2005

Bernd

Linux/Unix Systemprogrammierung

H. Herold: Addison-Wesley, 2003

Bernd

Compiler

A.V. Aho, M. Lam, R. Sethi, J.D. Ullman: Person Studium, 2008

Automatentheorie und formale Sprachen

G. Hotz, H. Walter: BI AG Mannheim, 1968

Endliche Automaten II

K-H. Böhling, D. Shütt, BI AG Mannheim, 1970

Programmieren in C