LPIC-2 Zertifizierung

In diesem Beitrag möchte ich gerne auf die LPIC-Prüfungen eingehen und meine Erfahrungen hierzu weiter geben. 

An sich würde ich von meiner Seite sagen, dass die Prüfungen schon ein hohes Maß an Wissen voraussetzt und man sich gut auf die Prüfungen vorbereiten muss, da man gerade in dem Bereich keine vorbereiteten Prüfungsfragen bekommt, die man einfach auswendig lernen kann, wie es oft bei anderen Prüfungen möglich ist.

Natürlich ist es auch an dieser Stelle möglich Prüfungsfragen als „Braindumps“ zu kaufen und diese auswendig zu lernen. Hiervon würde ich allerdings abraten, da dies keinen weiter bringt. Wenn man am Ende die Prüfung nur geschafft hast, weil die Fragen und Antworten auswendig gelernt wurden aber die Inhalte nicht verstanden wurden, bringt es niemanden weiter. Natürlich sieht es am Ende ggf. schön aus aber Firmen, die jemanden mit der Qualifikation einstellen erwarten natürlich auch etwas.

Übersicht

Die LPIC-Prüfungen 1 und 2 Prüfungen bestehen aus 60 Fragen, die in 90 Minuten beantwortet werden müssen. Dabei sind die Bereiche mit „Gewichtungen“ versehen, wo richtigen Antworten mehr Punkte bringen, als andere Bereiche. 

Die Fragen bestehen zum Teil aus Multiple-Choice aber auch aus Fragen, wo ein Textfeld frei ausgefüllt werden muss. Für LPIC-1 und 2 müssen jeweils 2 Prüfungen bestanden werden, damit die Prüfung bestanden und das Zertifikat ausgestellt wird. Nach einigen Tagen werden alle Unterlagen und das Zertifikat per Post zugeschickt. 

Ab LPIC-3 bestehen die Prüfungen aus 100 Fragen und 120 Minuten Prüfungszeit. Hier muss dann aber auch nur noch eine Prüfung für die Zertifizierung bestanden werden, was schwer genug ist sein dürfte, da die Themenfelder in allen Bereichen recht umfangreich sind. 

Vorbereitung

Nun ist die Frage, wie man sich am Besten auf die Prüfung vorbereiten kann. Es gibt verschiedene Bücher und Seiten, die ich für die Vorbereitung genutzt werden können. 

LPIC-2: Linux Professional Institute

Das Buch kann ich wirklich empfehlen, da es eine wirklich detaillierte Erklärung aller Befehle und Parameter enthält. Das Buch wird auch vom LPIC, auf der Website, empfohlen. 

A Cloud Guru LPIC-2 Kurs

A Cloud Guru ist eine Online-Plattform, die Kurse hauptsächlich für Zertifizierungen anbietet. Es gibt einen guten LPIC-2 Kurs, der die Inhalte recht schnell, anhand von praktischen Beispielen, in Videos vermittelt. 

Zudem gibt es eine IPad-App von SYBEX, welche für die Prüfungsvorbereitung genutzt werden kann, allerdings sind die Fragen recht tief in der Materie und haben am Ende mit den richtigen Prüfungsfragen nicht mehr ganz so viel zu tun.

Die Prüfung

Natürlich möchte ich an dieser Stelle nicht zu viel vorweg nehmen aber die Fragen bestehen meist aus Multi-Choice Fragen, Wörter / Befehlen, die in Lücken eingesetzt werden müssen oder Abläufe, die anhand von vorgegeben Texten sortiert werden müssen. 

Wichtig ist, dass man so viele Parameter, wie möglich, auswendig lernt, da es sein kann, dass man in den Antworten verschiedene Varianten eines Befehls gezeigt bekommt und man den korrekt identifizieren muss. Dabei können sich die Antworten mit Parametern nur leicht unterscheiden, was es teilweise ein wenig schwierig macht. Wenn man sich nicht sicher ist sollte man am Besten die unwahrscheinlichen Möglichkeiten zuerst ausschließen und dann schauen, was übrig bleibt. 

Die Prüfungen sind schon gut und Umfangreich und man sollte sich gut darauf vorbereiten. 

Bei Fragen stehe ich natürlich gern zur Verfügung.

Warum Unit-Tests in der Programmierung?

Ja die Frage warum man Unit-Tests verwenden sollte ist recht spannend, da es viele Gründe dafür aber auch einige wenige Gründe dagegen gibt. Aber fangen wir erstmal von vorne an:

Was ist ein Unit-Test?

Mit einem Unit-Test kann man kleinere Bereiche (Funktionen) eines Programms automatisiert testen. Dies hat den Vorteil, dass man so sicherstellen kann, dass immer das erwartete Ergebnis, bei der getesteten Funktion, zurück kommt.

Aber warum sollte man dies tun? Ganz einfach man muss nicht jedes Mal alle Funktionen neu testen und das Ergebnis händisch überprüfen. Wenn ein Unit-Test korrekt implementiert ist kann man davon ausgehen, dass hier der erwünschte Wert, geschweige denn das erwünschte Verhalten aus einer Funktion zurück gegeben wird.

Tools

Damit man Unit-Tests durchführen kann braucht man ein Tool, welches diese ausführt. Hier gibt es in jeder Programmiersprache verschieden Tools. Unter PHP ist dies PHPUnit und unter Java zum Beispiel JUnit. Auch für Javascript es hier Tools wie Jasmine, QUnit und so weiter.

Es gibt hier auch noch verschiedene Arten von Tests. Manchmal ist es sinnvoll nicht kleinere Units zu testen, sondern die Abläufe einer Software. Am Beispiel eines Shops wäre dies, dass man beispielsweise eine Bestellung ausführt. Hierzu muss man den Prozess durchlaufen und alle benötigten Felder füllen. Hierfür bietet sich eine Kombination aus Selenium und einem Unit-Test Tool an. Meist gibt es hier auch schon Schnittstellen um beides miteinander zu verbinden.

Bestehende Projekte/Code testen?

Wenn man so an das Agenturleben denkt kommt es hier ja eher vor, dass man bestehende Projekte hat, die gewachsen sind und teilweise noch prozedural programmiert sind. Diese lassen sich in der Regel schlecht testen, da es hier keine kleineren Teile (Units) gibt, die man auch gut testen kann. Sollte das Projekt Klassen und Funktionen verwenden, kann man eines der Tools von oben wählen.

Manchmal ist es hier auch sinnvoll nachträglich verschiedene Teile in Klassen und Funktionen auszulagern, um diese testen zu können und die Strukturen ein wenig aufzuräumen und zu verbessern.

Fazit

Unit-Tests können einem sehr das Leben erleichtern, da man bestehende Funktionen testen und absichern kann. Dies ist sehr hilfreich wenn man größere Teile eines Projektes umbauen muss. Nach den Umbauarbeiten kann man durch die Tests weiterhin sicherstellen, dass die Funktionen das korrekte Ergebnis liefern.

Ein weiterer Vorteil ist, dass man beim Schreiben der Unit-Tests tiefer über die Funktionen nachdenkt und teilweise weitere Fehler findet und diese direkt beheben kann.