Project suggestions: Module 1

The Google api

How easy is it to programme add-on's to the Google products? Try to implement something for Google sidebar, Google earth, Desktop search, etc.

Su Do Ku

User interface design, algorithms for construction and solution.

Project suggestions: Module 2

Databases in programming languages

Look at database access as part of the language. The advantage will be that data will be statically typechecked. An idea could be to extend java with some extra features and make a small prepocessor that generate appropriate jdbc/sql code.
Links: C omega and Phil Wadler: links

Unit testing using metadata/annotations/reflection

The new language features in C# 2.0 and java 5.0 provides ways to make unit testing in a simpler way than junit where one must extend a junit class.

Comparison of C# attributes and java annotations

Compare similarities and differences between some of the features in these two competing languages.

Why is it so difficult to make simple interactive programs?

Look at BlueJ, C# Views etc. Make an api for simple/medium interactive programs.
Similarly one could look at ways to make it easy to use java as a cgi language.

Further ideas (in danish)

Profilering af forskellige JVM'er (Java Virtual Machine). Hvor lang tid tage f.eks. forskellige typer kald? Passer det at private og "final" kald er hurtigere end almindelige metode kald? Det er ikke trivielt at måle køretider med just-in-time oversættelse, cache, hopforudsigere mm i systemet og vore almindelige forestillinger om hvad der tager tid passer ikke altid.

Statisk check af PHP scripts. Lav et værktøj der gøre det lettere at finde fejl i PHP scripts. Vælg en passende lille delmængde af PHP og dets biblioteker. Et tilsvarende værktøj kan laves for JavsScript.

C# til java migrator Skriv et program der for en passende delmængde af java kan oversætte programmer til c#, og for andre dele skal det markeres i program at der skal rettes/tilpasses.

Fortolker til lego robot. Inddata til en legorobot er det landskab den bevæger sig i. Ud fra dets program kan man forsøge at simulere dens bevægelser.