Studium – Seminare, Protokolle, UROP

SeminareNach einer Menge Posts über anderen Kram und neidischen Blicken zu Flos aufgeräumter Studiumsseite wollte ich mal noch ein paar Dokumente aus den letzten Semestern aus dem Schrank holen. Vielleicht hilft es ja dem ein oder anderen Studieninteressenten der sich nicht vorstellen kann was man überhaupt so während seines Informatikstudiums macht.

Seminare

Seminare bei uns in der Informatik funktionieren wie folgt: Man bewirbt sich auf ein Seminar zu einem groben Überthema bei einem der Informatik-Lehrstühle. Wenn man Glück hat kriegt man den Platz seiner ersten Wahl. Vor dem Semester sucht man sich dann eins der Themen aus und kriegt ein oder mehrere Paper auf denen man aufbauend seine Seminarausarbeitung schreiben soll. An der Stelle merkt man schon dass der Anteil origineller Arbeit beschränkt ist, was durchaus so vorgesehen ist. Ziel eines Seminars ist es schliesslich sich selbstständig in ein Thema einzuarbeiten und das Ganze dann in einen wissenschaftlich aussehenden Artikel zu gießen. Dafür hat man ein paar Monate Zeit, am Ende gibt es dann ein paar Tage lang Vorträge an denen man sein Seminar den anderen Teilnehmern vorstellt. Ich habe im Hauptstudium zwei Seminare gemacht (und ein Praktikum):

  • Praktische Informatik: The most efficient SHA-1 attacks (Prof. Meyer) – Ausarbeitung und Slides
  • Theoretische Informatik: Das Cross-Section-Theorem und nicht-mehrdeutige Transducer (Prof. Thomas) – Ausarbeitung und Slides

Prüfungsprotokolle

Bei uns im Hauptstudium schreibt man keine Klausuren mehr (abgesehen von ein paar Scheinklausuren) sondern hat mündliche Prüfungen. Manche Leute schreiben Gedächtnisprotokolle einer Prüfung, damit sich andere besser auf die Atmosphäre bei solchen Prüfungen und den Tiefgang vorbereiten können, den eigentlichen Stoff der abgefragt wird sollte man ohnehin komplett drauf haben ;)

  • Protokoll Theoretische Informatik: Angewandte Automatentheorie, Unendliche Spiele, Automaten auf unendlichen Wörtern, Cryptography I + II (Prof. Thomas, Prof. Mathar) – Protokoll
  • Protokoll Praktische Informatik: Datenbanken, Logic of Knowledge Bases, Logikprogrammierung (Prof. Lakemeyer) – Protokoll
  • Protokoll Vertiefung: IT Security I + II, Massively Distributed Systems I, Communication Systems Engineering I (Prof. Wehrle, Prof. Meyer) – Protokoll

UROP

Zusätzlich haben Flo und ich noch an UROP teilgenommen, dem Undergraduate Research Opportunities Programme der RWTH. Für UROP werden Projekte in unterschiedlichen Fachbereichen ausgeschrieben auf die man sich bewerben kann um dann schon während des Studiums erste Schritte im wissenschaftlichen Arbeiten zu machen. Unser Projekt, welches wir am LuFG Informatik 4 – Distributed Systems Group (Prof. Wehrle) durchgeführt haben hieß ALPHA – An Adaptive and Lightweight Protocol for Hop-by-Hop Authentication. Dabei ging es darum ein Protokoll zu implementieren (und zu erweitern), mithilfe dessen Netzwerkpakete an jeder Stelle im Netzwerk auf Integrität geprüft und ggf. direkt verworfen werden können, z.B. um mobile Endgeräte vor falschem Netzverkehr zu schützen der sonst die Resourcen (CPU und damit auch Batterie) dieser Geräte beanspruchen würde. Zu UROP werde ich bald noch einen eigenen Artikel schreiben. Für UROP mussten wir eine kurze Ausarbeitung schreiben, mit ein bisschen Hintergrundwissen sollte man das Prinzip von ALPHA verstehen.

  • Implementation and Improvement of ALPHA: Ausarbeitung für UROP und Slides des UROP Kolloquiums
  • ALPHA – An Adaptive and Lightweight Protocol for Hop-by-Hop Authentication: Das Original-Paper auf dem das Protokoll aufbaut

Bei Fragen oder Verbesserungsvorschlägen könnt ihr euch wie immer gern bei mir melden.

OpenSSH: Reuse existing connections / Reverse tunnel

OpenSSHYou often hear the phrase “the swiss knife of …”. Well, for networking, OpenSSH clearly deserves that title in my opinion. Besides the obvious feature of providing secure logins with different options for mutual authentication, it can also be used to transfer files. It is also a core component of software like git, which depend on ssh to securely push changes instead of reinventing their own server and dealing with the whole authentication/authorization stuff once again.

I’ve blogged about using SSH to access hosts behind a firewall/router more conveniently, and I really suggest you sit down and read the manpage front-to-back, it will probably be rewarding for your current workflow.

Reusing a connection

Anyway, today I wanted to present another advanced feature, one I only stumbled upon while learning for an upcoming exam. The slides mentioned the possibility to share connections on one SSH-channel (to the same destination, obviously). Now, why do you need more than one connection in the first place? Well, sometimes you just need the space, and using screen just doesn’t cut it. Or you use git or scp to the same host you’re logged in already interactively. In that case, you just have to establish one connection and any further connection will use the first one. The benefit? Login is way faster, almost instantly, because the whole handshake and authentication doesn’t have to take place again. The caveat: You’ll have to close your master-connection last, otherwise the other connections will drop too. For me that’s no problem, since the host I use most of the time is also the host I’ve got a session open with 24/7 (IRC).

I’m just gonna show the fully automated version here, though you can use it manually as well, just when you need it. A better description can be found here. To automate it, put this in your ~/.ssh/config (you don’t have a config yet? shocking!):

ControlMaster auto<br /> ControlPath /tmp/%r@%h:%pAs usual, you can put it at the very top to apply for all hosts or you can activate it for specific hosts by putting below a Host declaration. Now all you have to do is use ssh host as usual. You’ll see it’s working when you terminate the connection:

Shared connection to host.de closed.

Reverse tunnel

Yes, you can tunnel with OpenSSH. You can even have it act as a SOCKS proxy, which is really neat when combined with Firefox-plugins like FoxyProxy. But you can also reverse-tunnel your way out of a closed network (or NATed network for that matter) when you don’t have access to any intermediate host (like the router/firewall). It’s easy:

ssh -NR 12345:localhost:22 home.deThis assumes you’re issuing the command from the machine that you want to access (from home) later on. It will bind the port 12345 on home.de so that it is forwarded to port 22 (SSH) on the local host. Yeah, it requires some reverse thinking too to get it right ;) The -N-switch prevents a login, by the way. Obviously it is of little use if your home.de has a flaky dialup connection, so you might want to reverse-tunnel to a stable endpoint (or use something like autossh).

Photo recap for early 2010

Canon 430EX IIWow, the last few weeks I shot more photos (and learned more) than in a whole year, at least that’s how it feels.

First and foremost I got a new lens for my birthday. The Canon EF-S 18-200mm 3.5-5.6 IS. This was meant as a replacement for the rather basic 18-55mm that came with my 400D body. So far the 18-200 hasn’t disappointed me. I’m really using the big span of the focal length and since it is meant as my alround-lens I didn’t care to much about the 3.5 open aperture (I’ll mostly use it for trips or well-lit situations, my EF 50mm 1.4USM is still the basement-party weapon). Check out a few of my photos on flickr to get an idea of the lens. The IS is really nice, the handling feels rich. The only downsides of this lens are it’s weight and the autofocus which sometimes has a hard time in low light conditions.

A few weeks ago I decided to finally buy a flash. I didn’t hesitate long and bought the Canon 430EX II. Before that (and while waiting for DHL) I read a lot of strobist.com, so that I hit the ground running when the flash did arrive. The nice thing about buying flashes is that you don’t have to worry so much about capabilities/size, because you can buy a bigger one which can act as master at some point in the future should you feel the need to. Along with the flash I ordered some small utilities, like the Phottix Tetra radio-triggers for off-camera flash, the Roscoe Strobist Gel collection (gel from “gelatine”. It’s called “Effektfolien” in german) and a small diffuser (just for fun). The Phottix Tetra have been great as well, especially considering the price-tag of about 30€, which is next to nil compared to other wireless triggers which quickly add up to ten times that much. However the Phottix triggers don’t support TTL, which is a measuring-system so the camera knows how to adjust for the flash. Well, what better time to really get acquainted with the M mode ;)

Aachen Open 2010

Aachen Open 2010, which just ended today, was the only real event I looked forward to, photography-wise, and it turned out really nice. Not only was the event itself a smashing success (no other way to put it, the organisation was flawless, the attendance was record-breaking and the venue perfect for our needs), but also meant many diverse personalities to photograph. You can see my complete photos of the event here: photos.heipei.net/Aachen_Open_2010/ and photos by other people will be collected here: http://cube.hackvalue.de/ao10/media-de.

Reflective Umbrella DIY

Tonight I salvaged an old (and broken) Umbrella and simply covered the inside with white xerox paper. I sawed of the round part of the handle and now it fits into the grip of my tripod. The Phottix has a mount option for standard tripods. The results are amazing, and as usual I now feel much better when I buy an umbrella (I’m not quite sure whether I want reflective or shoot-through or both ;)

Reflective Umbrella DIYReflective Umbrella DIYReflective Umbrella DIY

Photo technique bits: Polfilter

A polfilter (pol for polarizing) can give you all kinds of nifty improvements in your outdoor pictures. Here is a little preview. I expect to achieve much more drastic differences come summer:

Kleine Polfilter-Demo

Left: No filter (or at least filter turned towards “normal”). Right: Filter set to the right angle. Make sure you check out the full-sized version of the photo and pay attention not only to the sky but also to the trees and the windows of the building. Image was sharpened with Gimp btw.

subscribe via RSS