Quantcast
Channel: Stefan Macke, Autor bei IT-Berufe-Podcast
Viewing all 452 articles
Browse latest View live

Tipps zur Durchführung des Abschlussprojekts – Anwendungsentwickler-Podcast #57

$
0
0

Nach der Vorbereitung des Abschlussprojekts beende ich nun meine zweiteilige Reihe zur Durchführung des Abschlussprojekts mit Projektantrag und Umsetzung in der siebenundfünfzigsten Episode des Anwendungsentwickler-Podcasts.

Inhalt

Der Weg zum Projektantrag

  • Geeignetes Thema auswählen.
  • Anforderungen strukturiert aufnehmen und gleich in verwertbarer Form dokumentieren (lassen), z.B. als Lastenheft.
  • Grobdesign der Anwendung erstellen.
  • Zu verwendende Artefakte planen.
  • Aufwand schätzen.
  • Projekt-/Iterationsplan erstellen.
  • Projektantrag schreiben.
  • Auf Genehmigung des Projektantrags warten.

Umsetzung der Projekts

  • Methoden anwenden und direkt dokumentieren und Artefakte sammeln.
  • Reihenfolge hängt vom gewählten Entwicklungsprozess ab.
    • Wasserfall: Design, Implementierung, Test, Abnahme usw. in einzelnen Phasen
    • Agil: Design/Test/Implementierung in Iterationen
  • Benötigte Zeit im Blick behalten.
  • Alle verwendeten Technologien und Begriffe sofort klären.
  • Projektdokumentation parallel zur Umsetzung schreiben (sonst vergisst man später die Hälfte).
  • Zwischenergebnisse dokumentieren (z.B. Entwürfe, Screenshots) und direkt in die Dokumentation einbauen.
  • Nicht zu viel Zeit mit Details verschwenden (z.B. pixelgenaue Positionierung in Weboberflächen, unwahrscheinliche Sonderfälle in Tests).
  • Laufend Feedback von Ausbilder/in einholen. Auch (oder gerade) für die Dokumentation.
  • Genug Zeit für den Feinschliff der Projektdokumentation einplanen (z.B. Textsatz mit Grafiken, Korrekturen durch Ausbilder/in).
  • Ggfs. schon Ideen für Projektpräsentation festhalten, z.B. Artefakte, die sich gut für Folien eignen oder witzige Ideen für die Foliengestaltung.

Literaturempfehlungen

Für die Durchführung des Abschlussprojekts habe ich – anders als für die Vorbereitung auf die schrifliche Prüfung – nur eine Buchempfehlung: Clevere Tipps für die Projektarbeit* von Anselm Rohrer. Das Buch habe ich auch bei der Erstellung meiner Vorlage für die Projektdokumentation verwendet.

Anselm Rohrer - Clevere Tipps für die Projektarbeit – IT-Berufe: Abschlussprüfung Teil A (Affiliate)*

Links


Word-Vorlage für die Projektdokumentation der IT-Berufe – Anwendungsentwickler-Podcast

$
0
0

In dieser Sonderausgabe des Anwendungsentwickler-Podcasts stelle ich meine Word-Vorlage für die Projektdokumentation der IT-Berufe vor.

Inhalt

Schon seit langer Zeit kannst du dir auf dieser Seite meine Vorlage für die Projektdokumentation herunterladen. Allerdings nur für LaTeX.

Wenn du stattdessen lieber mit Microsoft Word* arbeiten möchtest, gibt es nun unter dieperfekteprojektdokumentation.de meine Vorlage zum Download.

Word-Vorlage für die Projektdokumentation der IT-Berufe

Dies hier sind nur einige Beispiele der Inhalte:

  • Komplette Gliederung einer üblichen Projekdokumentation inkl. Anhang.
  • Beispielinhalte (z.B. Entity-Relationship-Model, Klassendiagramm, Kostenrechnung, Nutzwertanalyse) für zentrale Gliederungspunkte.
  • Gesamte Formatierung über leicht zu ändernde Formatvorlagen.
  • Verzeichnisse (Inhalt, Abbildungen, Tabellen, Listings) werden automatisch generiert.
  • Automatisch generiertes Abkürzungs- und Literaturverzeichnis.
  • Ansprechende Gestaltung inkl. Deckblatt und Kopf- und Fußzeile.
  • Einfache Konfiguration der Metadaten (z.B. Autor und Unternehmen) über Dokumenteigenschaften.
  • Inkl. Checkliste zur Projektdokumentation mit über 100 Punkten.

Alternativ kommst du über diesen Link direkt zum Shop bei Digistore24, wo du die Vorlage mit wenigen Klicks kaufen kannst:

Word-Vorlage für die Projektdokumentation der IT-Berufe

Links

Die Macht regulärer Ausdrücke

$
0
0

Ich schwärme immer mal wieder von regulären Ausdrücken. Das liegt wohl einfach daran, dass ich fast täglich mit ihnen arbeite. Sie sind einfach so unglaublich vielseitig verwendbar und machen ITlern das Leben leichter – wenn man sie beherrscht.

Nicht umsonst gibt es diesen „Witz“:

Ich hatte ein Problem und versuchte es mit regulären Ausdrücken zu lösen. Nun habe ich zwei Probleme.

In den Händen eines erfahrenen Anwenders sind reguläre Ausdrücke allerdings äußerst hilfreich. Gerade vor wenigen Tagen hatte ich die – eigentlich triviale – Aufgabe, ein paar Dateien umzubenennen, die ein bestimmtes Präfix hatten. Dieses Präfix sollte ausgetauscht werden. Anstatt die Dateien per Hand umzubenennen (oder die entsprechende Shell-Funktion zu nutzen 😉 ), habe ich mir mit einem simplen regulären Ausdruck in wenigen Sekunden ein Shell-Script gebaut, das die Aufgabe für mich löst.

prefix-Datei1.txt
prefix-Datei2.txt
...
prefix-Datei100.txt

Mit dem Suchen-/Ersetzen-Muster /^(prefix-(.*))$/move $1 neuerPrefix-$2/g wird daraus:

move prefix-Datei1.txt neuerPrefix-Datei1.txt
move prefix-Datei2.txt neuerPrefix-Datei2.txt
...
move prefix-Datei100.txt neuerPrefix-Datei100.txt

In diesem tollen Artikel geht Nikita Popov auf die Hintergründe von regulären Ausdrücken ein und erklärt ganz nebenbei noch die Chomsky-Hierarchie und warum man HTML nicht mit regulären Ausdrücken parsen sollte: The true power of regular expressions. Ein wirklich spannender Artikel, der mir wieder mal zeigt, wie sinnvoll es ist, reguläre Ausdrücke zu beherrschen.

Eine witzige Möglichkeit, reguläre Ausdrücke zu lernen, ist übrigens das Regex Crossword. Damit habe ich auch schon einige Stunden verbracht 😀


Wofür verwendest du reguläre Ausdrücke? Wie haben sie dir vielleicht schon deine Arbeit erleichtert?

Buchclub: Handbuch für Fachinformatiker (Teil 3: Netzwerkgrundlagen) – Anwendungsentwickler-Podcast #58

$
0
0
Dieser Beitrag ist Teil 3 von 3 in der Serie Buchclub.

Wir setzen den Buchclub zum Handbuch für Fachinformatiker von Sascha Kersken mit dem vierten Kapitel fort. In der achtundfünfzigsten Episode des Anwendungsentwickler-Podcasts geht es also um Netzwerkgrundlagen.

Inhalt

  • 4.1 Einführung
    • Paketvermittlung ist Grundlage.
    • Geschichte ist nice to know.
    • Hypertext usw. ist wichtig, wird aber in späteren Kapiteln noch vertieft.
  • 4.2 Funktionsebenen von Netzwerken
    • OSI-Referenzmodell ist absolutes Pflichtprogramm für jeden Prüfling.
    • Ebenso das DDN-Modell.
    • Beide werden auch für Einsteiger gut verständlich erklärt (schönes Beispiel mit Telefonverbindung).
  • 4.3 Klassifizierung von Netzwerken
    • LAN, MAN, GAN, WAN sind wichtig zu wissen.
    • Die verschiedenen Topologien sind absolut prüfungsrelevant.
    • Zu den verschiedenen Serverarten kommen häufig Transferaufgaben („Wählen Sie die Hardware aus.“) vor.
  • 4.4 Netzwerkkarten, Netzwerkkabel und Netzzugangsverfahren
    • IEEE-Standards muss man nicht (komplett) auswendig kennen.
    • CSMA/CD und CSMA/CA sind prüfungsrelevant.
    • Verkabelung ist ebenso relevant für die Prüfung.
    • Drahtlosnetzwerke gehören zum Grundwissen jedes ITlers. Hier darf man auch die IEEE-Standards kennen.

Literaturempfehlungen

Na was wohl? 😉

Sascha Kersken - IT-Handbuch für Fachinformatiker: Für Fachinformatiker der Bereiche Anwendungsentwicklung und Systemintegration. Inkl. Prüfungsfragen und Praxisübungen (Affiliate)*
(direkt beim Rheinwerk-Verlag bestellen*)

Links

Einsatz von Prezi für die Projektpräsentation

$
0
0

Jedes Jahr, wenn es auf die Gestaltung der Projektpräsentationen zugeht, stellen wieder Prüflinge die gleiche Frage:

Kann ich für meine Abschlusspräsentation auch Prezi [wahlweise auch durch „anderes hippes Präsentationstool“ ersetzbar] nutzen oder muss ich PowerPoint verwenden?

Die Antwort auf die Frage ist recht kurz: Ja, du kannst Prezi verwenden. Aber die Frage an sich ist schon falsch gestellt.

Worum geht es in der Projektpräsentation?

Das verwendete Präsentationstool ist zunächst einmal völlig irrelevant für die Bewertung der Projektpräsentation. Man kann sowohl mit PowerPoint*, als auch mit Keynote oder eben Prezi schlechte Präsentationen bauen. Es kommt immer auf den Inhalt an und nicht (nur) auf die Gestaltung oder das Werkzeug.

Wenn die wichtigen Inhalte (technisch und wirtschaftlich) gut rüberkommen, ist völlig egal, ob Prezi eingesetzt wurde oder nicht. Niemand wird einem Prüfling für Prezi eine bessere Note geben. Oder anders gesagt: Prezi ist kein Garant für eine gute Note (aber genauso wenig für eine schlechte). Wenn der Vortragende stocksteif neben der Leinwand steht, helfen auch tolle Animationen nicht.

Bewertungsschema für die Projektpräsentation

Schauen wir uns einmal die üblichen Bewertungskriterien für die Projektpräsentation an (Beispiel der IHK Niederrhein):

  • Aufbau und inhaltliche Struktur (20%)
  • Präsentationstechnik (20%)
    • Medieneinsatz
    • Methoden der Visualisierung
    • Gestaltung
  • Kommunikative Kompetenz (10%)
  • fachliche Kompetenz (50%)

Demnach entfallen auf die Präsentationstechnik lediglich 20% der Note. Und dazu zählen noch mehr Kriterien als nur die Visualisierungsmethoden (zu denen ich Prezi zählen würde).

Ich denke, das macht noch einmal deutlich, dass das Präsentationswerkzeug eine untergeordnete Rolle spielt – und auch spielen muss. Die Technik schreitet so schnell voran. Wer weiß, welches Werkzeug nächstes Jahr das heißeste ist!?

Klassische Präsentationen

Dennoch kommt die Ausgangsfrage aber natürlich nicht von ungefähr. Viele Prüflinge kennen nur die „klassische“ Form der Präsentationen, die (leider) immer noch von vielen Prüfungsausschüssen gefordert wird: langweilige Textfolien mit Corporate Design, mitlaufender Agenda und ab und an mal einem Clipart zur Auflockerung.

Beispiel für eine klassische Folie der Projektpräsentation

Da stellt sich natürlich die Frage, ob alle Präsentationen so aussehen müssen und man ggfs. Punkte verschenkt, wenn man es anders macht. Und Prezi-Präsentationen sehen (zumindest häufig) erstmal recht anders aus.

Erwartungen der Prüfer

Das Problem dabei ist, dass dir das niemand sagen kann. Denn das hängt zu 100% von den Vorlieben deines Prüfungsausschusses ab. Es gibt Prüfer, die moderne und ansprechende Präsentationen – wie ich sie propagiere – gut finden. Andere finden sie zu verspielt oder unprofessionell. Einige Prüfer kennen gar nichts anderes und bevorzugen den „guten alten“ Präsentationsstil. Es ist also letztlich auch ein wenig Glückssache, wie deine Präsentation bewertet wird. Ich persönlich würde dir für eine klassische Präsentation Punkte abziehen, die dir ein anderer Prüfer ausschließlich dafür geben würde.

Frag doch mal deine Berufsschullehrer, ob sie dir einen Tipp geben können, welche Form der Präsentation bei deiner IHK bevorzugt verwendet wird, wenn du ein wenig mehr Sicherheit für deine Entscheidung haben möchtest.

Kriterien für die Auswahl eines Präsentationsprogramms

Ich würde mich aber von den – mehr oder weniger geratenen – Vorlieben deiner Prüfer weniger beeinflussen lassen. Wichtiger ist, dass du sicher vorträgst. Daher würde ich vielmehr diese Kriterien zur Auswahl einer Präsentationssoftware anführen:

  • Du kannst sicher mit der Software umgehen und z.B. auch technische Herausforderungen lösen.
  • Du fühlst dich beim Vortrag wohl mit deiner Software.
  • Dein Vortragsstil passt zu dir und wirkt nicht aufgesetzt.
  • Du kannst produktiv mit der Software arbeiten (beim Erstellen der Präsentation).
  • Du hältst dich an eventuelle Vorgaben deines Unternehmens.
  • Du besitzt die ggfs. notwendigen Lizenzen.

Beispiele für Abschlusspräsentationen mit Prezi

Ich habe mich mal auf die Suche nach frei zugänglichen Beispielen für Projektpräsentationen mit Prezi gemacht und habe diese vier Präsentationen gefunden:

Beispiele für Projektpräsentationen mit PowerPoint

Ist ja klar, dass ich da gegenhalten muss, oder? 😉 Hier kommen die „perfekten“ Beispielpräsentationen mit PowerPoint:

Projektpräsentation von Gerda Feldhaus (mit 100% bewertet) Projektpräsentation von Markus Amshove (mit 100% bewertet)

Persönliche Erfahrungen aus Prüfungen

Ich habe selbst schon einige Projektpräsentationen mit Prezi gesehen. Es ist also nicht mehr hip genug, um Prüfer hinterm Ofen hervorzulocken 😉 Einige Kollegen finden Prezi toll, anderen ging das ständige Rein- und Rausgezoome auf die Nerven. Ich persönlich gehöre eher zu letzterer Gruppe. Denn die ultracoolen Animationen sehen zwar scheinbar hübsch aus, lenken aber spätestens nach dem dritten Mal nur noch vom eigentlichen Inhalt ab. Aber genau um den geht es bei der Präsentation nunmal.

Nicht falsch verstehen: Ich bin ein Freund von Animationen. Sofern sie den Inhalt unterstützen. Man kann z.B. unwichtige Teile von Diagrammen ausblenden oder in eine Entität im ERM reinzoomen. Aber wenn jeder Satz drehend reingeflogen kommt, ist das Ziel verfehlt.

Fazit

Prezi ist ein tolles Werkzeug, wenn man es verwendet, um den Inhalt bestmöglich zu transportieren. Wenn man es einsetzt, um von den mangelnden Präsentationsfähigkeiten abzulenken, ist es genauso gut oder schlecht wie jedes andere Werkzeug.


Welches Programm hast du für die Abschlusspräsentation verwendet oder wirst es verwenden? Womit fühlst du dich am sichersten?

Domänen- vs. Persistenzmodell

$
0
0

In diesem gut geschriebenen Artikel vergleicht Mehdi Khalili unterschiedliche Ansätze zur Trennung eines Persistenz- und Domänenmodells bei der Softwareentwicklung: ORM anti-patterns – Part 4: Persistence vs Domain Model. Obwohl der Artikel schon von 2011 ist, finde ich ihn immer noch höchst relevant für die Praxis. Gerade vor Kurzem habe ich mit meinen Azubis über die Vor- und Nachteile verschiedener Möglichkeiten bei der Trennung von Persistenz- und Geschäftslogik gesprochen.

Es gibt meiner Meinung nach kein Allheilmittel für die Abbildung von objektorientierten Domänenmodellen auf relationale Persistenzmodelle. Auch ORMs machen uns das Leben zwar grundsätzlich leichter (immerhin müssen wir kein SQL mehr schreiben), aber sie führen durchaus neue Probleme oder Fragestellungen ein. Alle vorgestellten Lösungsansätze haben Vor- und Nachteile, die es gegeneinander abzuwiegen gilt.

Der obige Artikel verdeutlich schön die zu berücksichtigenden Punkte verschiedener Ansätze, z.B. der kompletten Trennung beider Modelle (was zu Redundanzen und nervigen Mappings führt, aber eine freie Evolvierbarkeit beider Modelle ermöglicht). Ich empfehle ihn jedem Softwareentwickler, der sich mit der Speicherung seiner Daten in einer relationalen Datenbank auseinandersetzen muss.


Welche Technologien verwendest du für die Persistenz? Verfolgst du eine bestimmte Strategie bei der Speicherung deiner Daten in der Datenbank?

Buchclub: Handbuch für Fachinformatiker (Teil 4: TCP/IP) – Anwendungsentwickler-Podcast #59

$
0
0
Dieser Beitrag ist Teil 4 von 4 in der Serie Buchclub.

Wir beenden das Thema Netzwerkgrundlagen im Rahmen des Buchclubs zum Handbuch für Fachinformatiker von Sascha Kersken in der neunundfünfzigsten Episode des Anwendungsentwickler-Podcasts.

Inhalt

  • 4.5 Datenfernübertragung
    • Modems sind heute in der Praxis nicht mehr relevant.
    • ISDN wird immer noch gerne abgefragt.
    • DSL sollte heutzutage selbstverständlich sein.
    • Ebenso die Mobilfunkvarianten.
  • 4.6 Die TCP/IP-Protokollfamilie
    • Das komplette Kapitel ist prüfungsrelevant.
    • Allerdings war es für Einsteiger etwas harte Kost.
    • IP-Adressklassen benutzt niemand mehr. Sie sind aber historisch von großer Bedeutung und sollten auch heute noch verstanden werden.
    • Wichtig: Am besten gleich angewöhnen, in Binärschreibweise zu arbeiten.
    • Subnetting, Supernetting, CIDR: Höchst prüfungsrelevant. Ihre praktische Anwendung ist notwendiges Wissen.
    • Subnetting wird sehr gut und verständlich erklärt. Es ist aber wichtig, Aufgaben dazu zu machen, um es wirklich zu verstehen.
    • Die Tabellen waren ab und an etwas zu viel. Bitberechnungen kann man sich auch selbst zusammenklicken.
    • IP-Header (4 und 6) sind eher etwas für FISIs.
    • IPv6 ist absolut relevant für die Prüfung. Es kommen in fast allen Prüfungen Aufgaben dazu dran.
    • Routing ist sowohl für die Praxis, als auch für die Prüfung sehr wichtig. Die Diagramme sehen auch schon fast so aus wie in den Prüfungen.
    • Die Routingprotokolle sind eher etwas für FISIs.
    • Weitere wichtige Themen: DHCP, NAT.
    • TCP und UDP sind auch sehr wichtig, insb. der Three-Way-Handshake. Header sind eher nice to know.
    • Die Port-Liste enthält viele wichtige Ports, die man durchaus auswendig können sollte.
    • DNS als ein zentrales Basisprotokoll des Internets sollte jeder ITler in- und auswendig kennen.
    • Auch der Aufbau von Domains war schon Prüfungsbestandteil.
    • Protokolle
      • Telnet: irrelevant für die Praxis
      • FTP: wichtig, aber in der Praxis unsicher
      • E-Mail: wichtig, schön finde ich die Erläuterung des Ablaufs beim Versand mit SMTP
      • Newsgroups: praktisch irrelevant
  • 4.7 Andere Protokollstapel
    • In der neuen Auflage – zu recht – nicht mehr enthalten.

Literaturempfehlungen

Na was wohl? 😉

Sascha Kersken - IT-Handbuch für Fachinformatiker: Für Fachinformatiker der Bereiche Anwendungsentwicklung und Systemintegration. Inkl. Prüfungsfragen und Praxisübungen (Affiliate)*
(direkt beim Rheinwerk-Verlag bestellen*)

Links

Modelliere deine eigene Programmiersprache

$
0
0

Mein ehemaliger Azubi Markus und ich haben einen Artikel bei heise Developer veröffentlicht: Baumeister – Eine eigene Programmiersprache mit Xtext modellieren.

Passend zum Thema seiner Abschlussarbeit (Projektdokumentation und -präsentation findest du hier auf der Seite) geht es um die Modellierung einer eigenen Programmiersprache. Wir haben uns vor einiger Zeit für den Einsatz von Xtext zur Gestaltung von domänenspezifischen Sprachen entschieden und inzwischen mehrere solcher eigenen Programmiersprachen entwickelt, die auch bei der täglichen Arbeit zum Einsatz kommen.

In dem Artikel zeigen wir den Entwurf einer simplen DSL, mit der man die guten alten POJOs aus der Java-Welt generieren kann. Dabei handelt es sich allerdings nur um ein Beispielprojekt, das wir speziell für den Artikel umgesetzt haben. Die Sourcen gibt es in Markus‘ Repository bei GitHub: GitHub – MarkusAmshove/Datenmodell: Das Beispiel einer DSL aus dem Heise-Developer Artikel.


Doch warum schreibe ich hier darüber? Sind DSLs wichtiges Prüfungswissen? Muss ein Azubi seine eigene Programmiersprache modellieren können?

Für beides gilt: Nein.

Ich will nur zeigen, dass auch Azubis, die gerade erst ihre Prüfung bestanden haben (oder sie sogar noch vor sich haben), schon einen wichtigen Beitrag für ihre Unternehmen leisten können. Markus‘ Arbeit trägt bei uns dazu bei, dass viele vorher aufwändige Prozesse heute einfacher, schneller und weniger fehleranfällig abgearbeitet werden können. Und er kann darüber sogar bei heise Developer berichten. Das ist doch eine wirklich tolle Rückmeldung zu seiner Arbeit!

Ich denke, das sollte für dich ein bisschen Motivation sein, dich noch mehr in dein Unternehmen einzubringen und die Dinge, die du für die Ausbildung lernst, zur produktiven Anwendung zu bringen. Du lernst nicht nur für die Prüfung, sondern für die Praxis. Dafür sind wir doch Softwareentwickler geworden, oder? 😀


Wenn dich das Thema domänenspezifische Sprachen interessiert, empfehle ich zum Einstieg in Xtext und Xtend Implementing Domain-Specific Languages with Xtext and Xtend (Affiliate)* von Lorenzo Bettini.

Lorenzo Bettini - Implementing Domain-Specific Languages with Xtext and Xtend (Affiliate)*


Was sind die Projekte für dein Unternehmen, auf die du besonders stolz bist? Hast du vielleicht auch schon irgendwo über deine Arbeit berichtet? Ich freue mich über Kommentare und Links!


Vergleich aller Java EE 7 Application Server

$
0
0

In meinem CeBIT-Vortrag habe ich ja schon erläutert, dass moderne Webentwicklung mit Java EE 7 nicht mehr schwergewichtig und langsam sein muss. Und dieser Artikel von Antonio Goncalves belegt das noch einmal eindrücklich: O Java EE 7 Application Servers, Where Art Thou?

Antonio hat einen Benchmark aller möglichen Application Server durchgeführt und die Ergebnisse gegenübergestellt. Man kann z.B. deutlich erkennen, dass der Großteil der Server in unter 3 Sekunden gestartet ist, besonders leichtgewichtige Varianten sogar in 0,5 Sekunden. Wenn ich das mit rails server vergleiche, ist das schon ein sehr guter Wert 😉

Aber auch der geringe Speicherverbrauch der Application Server ist bemerkenswert: ein TomEE ist mit knapp 50 MB dabei, der von mir genutzte WildFly mit ca. 100 MB. Während ich diesen Artikel schreibe verbraucht mein aktuelles Firefox-Fenster hingegen 362 MB RAM! Und darin ist keine komplette Laufzeitumgebung und virtuelle Maschine für Java-Anwendungen enthalten.

Ich denke, die Zahlen belegen eindrucksvoll, dass nicht nur das Programmiermodell von Java EE 7 eine große Entwicklung darstellt, sondern auch die – lange Zeit als Ressourcenfresser verschrienen – Application Server inzwischen den Stempel „leichtgewichtig“ verdienen.


Welchen Ressourcenverbrauch haben deine Anwendungen bzw. ihre Laufzeitumgebungen? Findest du die obigen Angaben gut oder schlecht?

Ergonomie am Arbeitsplatz – Anwendungsentwickler-Podcast #60

$
0
0

Um am Arbeitsplatz lange gesund zu bleiben, gibt es eine Vielzahl von ergonomischen Eingabegeräten und Büromöbeln. In der sechzigsten Episode des Anwendungsentwickler-Podcasts zeige ich, wie mein Büro aussieht, und gebe Tipps für ergonomisches Arbeiten.

Inhalt

Hardware

  • Auf der Arbeit habe ich einen höhenverstellbaren Schreibtisch.
    Mein Work Office
  • Zu Hause arbeite ich mit einem höhenverstellbaren „Roboterarm“, dem Ergotron Workfit*.
    Mein Home Office
    Ergotron WorkFit A Single LD LCD-Monitor Sit-Stand (Affiliate)*
  • Wer nicht so viel Geld in den Schreibtisch investieren möchte, der kann sich für wenig Geld einen Stehschreibtisch selbst bauen (siehe Warum ich meinen Schreibtisch entsorgt habe von Markus Cerenak).
  • Egal ob du einen Stehschreibtisch hast oder nicht, wichtig ist, dass du oft deine Position wechselst.
  • Mein Bürostuhl ist der Topstar Open Art*. Er lässt sich sehr flexibel einstellen und ist bequem und ergonomisch.
    Amazon.de: Topstar Open Art 2010 OPA0TB900 Bürodrehstuhl mit Armlehnen / Sitz schwarz / Rückenlehne (Affiliate)*
  • Auf die Lehnen meines Bürostuhls habe ich weiche Ellenbogen-Auflagen montiert.
  • Wenn du zwei Monitore verwendest, achte darauf dass einer von beiden gerade vor deinem Gesicht platziert wird. Ansonsten hast du immer eine leichte Schräghaltung und das ist nicht gut für deinen Nacken.
  • Es gibt sogar einen Monitor, der dir Vorschläge zu deiner Körperhaltung macht. Ich habe ihn jedoch noch nicht selbst getestet.
    Philips 241P4QRYES/00 61 cm MVA-Monitor silber (Affiliate)*
  • Auf dem obigen Foto siehst du tatsächlich meinen Arbeitsplatz. Ich habe zwei vertikale Mäuse, jeweils eine für die linke* und die rechte* Hand.
    Evoluent Vertical Mouse 4 Maus für Rechtshänder (Affiliate)*
  • Als Mausunterlage verwende ich ein – bzw. zwei 😉ergonomisches Mauspad* mit Handballenauflage.
    Durable 574858 Handgelenkauflage Mouse Pad Ergotop mit Gel (Affiliate)*
  • Ich benutze jetzt seit vielen Jahren das Microsoft Natural Ergonomic Keyboard 4000*. Wichtig dabei ist, dass du das Zehnfingersystem lernst.
    Microsoft Natural Ergonomic Keyboard 4000 (Affiliate)*
  • Eine „perfekte“ Tastatur soll die Kinesis KIN-ADVWUSBHY* sein. Leider konnte ich sie noch nicht selbst testen.
    Kinesis KIN-ADVWUSBHY Advantage Tastatur schwarz (Affiliate)*
  • Auch Sauberkeit zähle ich zur gesunden Arbeit dazu. Reinige regelmäßig deine Eingabegeräte. Ich desinfiziere zum Beispiel alle zwei Wochen Maus und Tastatur mit Reinigungstüchern.

Software

  • Wer abends lange am PC arbeitet kann danach meist nur schlecht einschlafen. Die kostenfreie Software f.lux hilft dabei, indem sie die blauen Anteile des Lichts aus dem Monitor filtert.
  • Das gleiche geht auch mit dem Handy. Die entsprechende kostenlose Software heißt Twilight.
  • Um deine Arbeit in Pomodoros einzuteilen, ist ebenfalls kostenlose Software hilfreich. Ich verwende z.B. Clockwork Tomato auf dem Handy und Flowkeeper auf dem PC.
  • Wenn du häufig Texte tippen musst, dann schau dir als Alternative zum Tippen doch einmal eine Spracherkennungssoftware an. Ich habe diesen Text zum Beispiel in mein Android-Handy diktiert, und den Text danach nur noch kurz überarbeitet. Die Spracherkennung funktioniert heutzutage wirklich sehr gut und kann dir viel Tipparbeit abnehmen.

Tipps

  • Für regelmäßige Pausen und um daran erinnert zu werden, die Position zu verändern, kannst du die Pomodoro-Technik anwenden. In den Pausen kannst du auch gut ein paar kurze Übungen absolvieren (z.B. 18 geniale Tipps für mehr Bewegung am Arbeitsplatz).
  • Aber auch beim Tippen und bei der Arbeit mit der Maus ist Abwechslung wichtig. Fast alle für Softwareentwickler wichtigen Programme lassen sich sowohl mit der Tastatur, als auch mit der Maus steuern. Wechsel doch einfach mal das Eingabegerät.
  • Trink zwischendurch häufig Wasser. Auch das kannst du sehr gut mit der Pomodoro-Technik verbinden.
  • Da wir uns als Softwareentwickler ständig weiterbilden müssen, verbinde doch einfach Fortbildung und Gesundheit, indem du Lernvideos zum Beispiel auf dem Crosstrainer oder dem Laufband anschaust oder Podcast wie diesen während des Fitnesstrainings hörst.
  • Mach doch mal einen Gesundheitskurs – insb. für den Rücken – bei deiner Krankenversicherung oder der Volkshochschule mit. Meist reicht es schon, wenn du Ideen bekommst, was du ändern kannst.
  • Noch ein persönlicher Tipp bezüglich der Ernährung: Green Smoothies sind schnell zubereitet, lecker und eine gesunde Alternative zu Cola. Von der Autorin der Healthy Smoothie Bible* habe ich zum ersten Mal beim – sehr empfehlenswerten – Read to Lead Podcast gehört.
  • Und noch zwei kleine Tipps für mehr Bewegung. Parke dein Auto so weit weg wie möglich vom Eingang deines Unternehmens. Dadurch musst du wenigstens etwas mehr Bewegung an den Tag legen. Und wenn du die Toilette besuchst, nimm doch einfach die im anderen Geschoss deines Gebäudes. So baust du ein paar Treppenstufen in Deinen Alltag ein. Kleinigkeiten machen schon einen Unterschied.

Literaturempfehlungen

Links

Viel Erfolg bei der schriftlichen Prüfung!

$
0
0

Allen Prüflingen, die heute die schriftliche Abschlussprüfung in den IT-Berufen absolvieren, drücke ich beide Daumen und wünsche viel Erfolg! 😀

Vielleicht kann ja jemand was zu den abgefragten Themen sagen!?

Pseudocode in der Abschlussprüfung

$
0
0

In letzter Zeit habe ich von vielen Prüflingen die Frage gestellt bekommen, ob ich nicht eine Einführung in das Schreiben von Pseudocode geben könnte. Ich frage dann immer direkt zurück, was denn so schwierig an Pseudocode sei. Wie ich bereits in einem anderen Artikel erklärt habe, würde ich für die Programmieraufgaben in der Abschlussprüfung immer Pseudocode verwenden und niemals Struktogramme oder Programmablaufpläne. Die Diagramme sind meist deutlich aufwändiger zu erstellen und bei Fehlern sehr schwer zu korrigieren. Mit Pseudocode ist das deutlich einfacher. Dennoch scheinen viele Azubis Probleme mit Pseudocode zu haben.

Standards

Ehrlich gesagt habe ich mich noch nie intensiv mit Pseudocode auseinandergesetzt. Erst in der Mail eines Zuhörers habe ich erfahren, dass es sogar Standards für Pseudocode gibt (z.B. Jana, Pascal-Style oder nach Leierson, siehe Pseudocode). Ich habe weder in meiner eigenen Prüfung noch in der Prüfungsvorbereitung mit meinen Azubis das Thema Pseudocode jemals intensiv behandelt. Ich empfehle immer, anstatt sich eine eigene Syntax für den Pseudocode auszudenken, einfach normalen Code in der Prüfung zu schreiben.

Da es für Pseudocode keine allgemeinverbindlichen Vorgaben in der Prüfung gibt, kannst du auch einfach „echten“ Quellcode in irgendeiner Programmiersprache verwenden. Wichtig ist, dass die Prüfer verstehen, was du erreichen möchtest. Im Zweifel verstehen Prüfer das mit einer echten Programmiersprache sogar besser, als wenn du erzwungenen Pseudocode, den du dir selbst ausgedacht hast, verwendest.

Meine Empfehlung

Um dir die Arbeit etwas zu erleichtern, lass einfach alle geschweiften Klammern weg. Auch sonstige Syntaxelemente wie Semikolons am Ende der Zeile sind überflüssig. Achte darauf, dass dein Programm gut zu verstehen ist und überfrachte den wenigen Platz, den du auf dem Lösungsbogen zur Verfügung hast, nicht mit Textelementen, die zur eigentlichen Logik nichts beitragen.

Fokussiere dich stattdessen darauf, die gestellte Aufgabe zu lösen, also den Algorithmus abzubilden. Niemand interessiert sich in der Prüfung dafür, ob du die Syntax einer Programmiersprache beherrschst. Das ist nur Handwerkszeug. Deine eigentliche Fähigkeit, die du unter Beweis stellen musst, ist das Lösen von Problemen.

Ich bringe meinen Auszubildenden die Programmierung meist erstmal bei, indem sie Aufgaben auf Papier lösen sollen. Wenn du z.B. nicht einmal mit einem Bleistift auf einem Blatt Papier die Quadratwurzel einer Zahl berechnen kannst, wie willst du es dann einem Computer beibringen? Du musst das Problem verstanden haben, und wissen, wie man es lösen kann. Wenn du diesen Algorithmus in deinem Kopf hast, kannst du ihn auch in ein Programm überführen. Die konkrete Syntax, mit der du dies tust, ist dann irrelevant. Und darum geht es in der Prüfung.

Meine ganz einfache Empfehlung ist also: Benutze Java, und lass alle unnötigen Elemente weg. Also Klammern, Semikolons und so weiter. Aber achte auf eine korrekte Einrückung!

Beispiel

Aus diesem echten Java-Programm:

public int berechneAlter(Date datum, Date geburtsdatum)
{
    int alter = datum.getYear() - geburtsdatum.getYear();
    if (datum.getMonth() < geburtsdatum.getMonth())
    {
        alter--;
    }
    else
    {
        if (datum.getMonth() == geburtsdatum.getMonth())
        {
            if (datum.getDay() < geburtsdatum.getDay())
            {
                alter--;
            }
        }
    }
    return alter;
}

Wird dieser „Pseudocode“:

int berechneAlter d, g
    alter = d.year - g.year
    if d.month < g.month
        alter--
    else
        if d.month == g.month
            if d.day < g.day
                alter--
    return alter

Das könnte schon fast als Ruby-Code durchgehen 😉

Fazit

Da Pseudocode nicht standardisiert ist, kannst du in der Abschlussprüfung irgendeine Programmiersprache verwenden, die dir gut bekannt ist und in der du dich wohlfühlst. Konzentriere dich auf das Lösen des Problems und die nachvollziehbare Beschreibung deiner Problemlösung. Dann werden die Prüfer dir alle notwendigen Punkte geben.


Welche Form wirst du in der Abschlussprüfung verwenden? Setzt du auf Pseudocode oder wirst du eine Programmiersprache nutzen? Hast du vielleicht noch Tipps für eine Einführung in das Thema Pseudocode? Ich würde mich über deinen Kommentar freuen.

Ich bin ein Puts-Debuggerer

$
0
0

Mein Link der Woche ist dieses Mal ein Artikel von Aaron Patterson: I am a puts debuggerer. Der Autor beschreibt darin, wie er seine Software debuggt (ja, das schreibt man so 😉 ). Er verwendet keinen Debugger, sondern nutzt einfach die Konsolenausgabe für die Fehlersuche in seinen Programmen (puts in Ruby, daher der Name des Artikels).

Der Vorteil des puts-Debuggens zur Fehleranalyse ist, dass man keine aufwendige Entwicklungsumgebung dafür benötigt. Kommandozeilenausgaben kann man auch mit simplen Editoren in den Code einbauen. Aaron zeigt in seinem Artikel die Erfahrungen, die er in den letzten Jahren mit seiner Methode gemacht hat. Ich selbst konnte noch ein paar interessante Tricks aus dem Artikel mitnehmen. Auch wenn die Programmiersprache Ruby ist, sind die gezeigten Prinzipien auch auf jede andere Programmiersprache übertragbar. Witzig fand ich zum Beispiel den letzten Tipp, in dessen Konsolenausgabe ich mich selbst wiedergefunden habe. Die vielen Hashes (#), um die Debugausgaben schneller finden zu können, erinnern mich stark an meine eigene Fehlersuche. 😀

Ich selbst habe auch schon seit Jahren keinen Debugger mehr verwendet. In Zeiten von testgetriebener Softwareentwicklung ist das meiner Meinung nach auch völlig überflüssig, da mir die Tests zeigen, wenn es einen Fehler in der Software gibt. Und wenn ich mehr über den Zustand des Programms zur Ausführung wissen möchte, verwende ich genau wie Aaron die Konsolenausgabe, um mir Werte von Variablen, Schleifenzähler oder sonstige Inhalte auszugeben. Meine Azubis fragen mich teilweise nach mehreren Monaten oder ganzen Ausbildungsjahren, was überhaupt ein Debugger ist und wie man ihn verwendet. Und das ist gut so!


Wie suchst du Fehler in deiner Software? Verwendest du einen Debugger oder nutzt du auch die Kommandozeile, um den Zustand deines Programms zu untersuchen?

Buchclub: Handbuch für Fachinformatiker (Teil 5: Betriebssysteme, Windows und Linux) – Anwendungsentwickler-Podcast #61

$
0
0
Dieser Beitrag ist Teil von 5 in der Serie Buchclub.

Die Kapitel 5 bis 7 (Betriebssystemgrundlagen, Windows und Linux) des IT-Handbuchs für Fachinformatiker sind Thema der einundsechzigsten Folge des Anwendungsentwickler-Podcasts.

Inhalt

Die drei Kapitel enthalten dieses Mal wenig prüfungsrelevante Inhalte, dafür sehr viel Praxis. Ich wünschte, ich hätte die Kapitel schon vor einigen Monaten mit meinen Auszubildenden gelesen. Gerade die Inhalte von Kapitel 7 zum Thema Linux hätten meine Azubis direkt bei der Installation Ihrer Linux-Server anwenden können.

Betriebssystemgrundlagen

  • 5.1 Entwicklung der Betriebssysteme
    • Historie wie immer spannend, aber weder prüfungs- noch praxisrelevant.
  • 5.2 Aufgaben und Konzepte
    • Allgemeine Aufgaben von Betriebssystemen sind wichtig.
    • Beim Lernen den Fokus auf die Unterschiede zwischen Windows und Linux legen.
    • Verständnis von Prozessmodell, Threads und Deadlocks hilft bei der Programmierung.
    • Speicherverwaltung ist eher was fürs Studium.
    • Dateisysteme sind prüfungsrelevant.
  • 5.3 Die allgegenwärtige Virtualisierung
    • Wichtige Prüfungsinhalte!
    • Das Kapitel reicht aber zur Vorbereitung nicht aus.

Windows

Linux

Max OS

Literaturempfehlungen

Links

Vorlage für die Projektpräsentation der IT-Berufe

$
0
0

Wie ich schon oft geschrieben habe, ist die beliebteste Seite hier meine Vorlage für die Projektdokumentation. Und da es nun bald auf die mündlichen Prüfungen zugeht, dachte ich mir, dass eine ähnliche Vorlage für die Projektpräsentation sinnvoll wäre.

Daher habe ich mir die Mühe gemacht und eine Präsentationsvorlage für die Abschlusspräsentation der betrieblichen Projektarbeit in den IT-Berufen erstellt.

Corporate Design

Wer jetzt allerdings eine Art Unternehmensvorlage mit Kopf- und Fußzeile, Seitenzahlen und mitlaufender Agenda erwartet, den muss ich leider enttäuschen. Meine Vorlage besteht lediglich aus leeren Folien. Wie du vielleicht schon in dem ein oder anderen Artikel gelesen oder im Podcast gehört hast, halte ich überhaupt nichts von den klassischen Folien im Corporate Design. Im Gegenteil: Ich finde diese Art der Präsentation langweilig und unprofessionell.

Beispiel für eine übliche Folie im Corporate Design

Stattdessen erwarte ich heutzutage von Vortragenden, mich mit ihren Inhalten und den dazu passenden, ansprechend aufbereiteten in Folien zu überzeugen. Folien im Corporate Design machen bei mir nicht den Eindruck einer professionellen Präsentation, sondern eines faulen Präsentators. Denn wie kann man einfacher eine Präsentation erstellen, als lediglich ein paar Wörter in eine bereits vorgefertigte Vorlage einzufügen?

Wenn diese Sätze dann auch noch direkt aus der Projektdokumentation stammen, kann man in wenigen Minuten seine Präsentation zusammenstellen. Und dann hilft auch das schöne Unternehmenslogo oben rechts in der Ecke nicht, um den Eindruck einer oberflächlichen Präsentation zu mindern.

Inhaltselemente

Was ich als allererstes mache, nachdem ich Powerpoint geöffnet habe, ist, alle Inhaltselemente von den Folien – und insbesondere von den Masterfolien – zu entfernen. Die vordefinierten Elemente in PowerPoint sind so angeordnet, dass automatisch eine „klassische“ Präsentation entsteht. Doch das möchte ich auf keinen Fall.

Ich möchte mir nicht von PowerPoint vorschreiben lassen, wie meine Folien auszusehen haben. Stattdessen möchte ich die vorhandene Fläche auf der Leinwand so nutzen, wie ich es für richtig halte. Und das heißt, dass der Text nicht immer oben über der Folie steht, sondern gerne auch mal mitten drauf oder rechts unten in der Ecke. Je nachdem, was besser wirkt.

Außerdem enthalten meine Folien ohnehin kaum Text, da der Einsatz von Bildern und Diagrammen viel effektiver ist. Jeder kennt den Spruch: Ein Bild sagt mehr als tausend Worte. Nur warum hält sich niemand an diese Regel beim Erstellen von Präsentationen?

Inhalte der Vorlage

Meine Vorlage, die du hier herunterladen kannst, enthält nichts außer leeren Folien im Format 4:3. Der einzige wirklich hilfreiche Inhalt sind die vordefinierten Hilfslinien. Ich habe die Folien optisch gedrittelt, damit du es beim Platzieren deiner inhalte einfacher hast. Solltest du die Drittel-Regel noch nicht kennen, schau dir mal ein paar Beispiele für ihren Einsatz an. Du wirst feststellen, dass so gestaltete Folien automatisch ansprechender wirken.

Meinst du das ernst?

Ja, dieser Beitrag ist ernst gemeint. Auch wenn du dich vielleicht über die leere Vorlage ärgerst. Denn letztlich ist die Vorlage nicht mit der Vorlage für die Projektdokumentation zu vergleichen. Das gedruckte Dokument hat ganz eigene Anforderungen und Kriterien für die Gestaltung sowie inhaltliche Vorgaben, die es strikt einzuhalten gilt.

Bei der Präsentation solltest du dir stattdessen alle Freiräume lassen. Finde einen Weg, um deine Inhalte bestmöglich zu transportieren. Meiner Erfahrung nach ist der bestmögliche Weg fast nie eine Präsentationsvorlage von PowerPoint. Stattdessen solltest du die Präsentation als eine Chance verstehen, deine Inhalte optisch ansprechend zu transportieren. Die Folien unterstützen lediglich deinen Vortrag. Sie sollen ihn nicht ersetzen.

Beispielpräsentationen

Wenn du nicht weißt was ich damit meine, dann schau dir doch mal die beiden mit 100% bewerteten Beispielpräsentationen meiner ehemaligen Auszubildenden an. Die Folien verwenden weder Coporate Design, noch eine mitlaufende Agenda, noch Titel und Seitenzahl in Kopf- und Fußzeile. Und trotzdem – oder gerade deswegen – transportieren Sie die Inhalte der Projektarbeit sehr gut. Die Bewertung unterstreicht das noch einmal.

  • Projektpräsentation von Gerda Feldhaus (mit 100% bewertet)
  • Projektpräsentation von Markus Amshove (mit 100% bewertet)

Download

Hier kannst du meine Vorlage herunterladen. Über Feedback würde ich mich freuen 😉

Fazit

Lass dir nicht einreden, dass IHK-Präsentationen langweiliger Einheitsbrei sein müssen. Niemand schaut sich soetwas gerne an. Natürlich kann ich nicht für alle Prüfer sprechen und ich habe auch schon gehört, dass Prüfungsausschüsse den „klassischen“ Stil bevorzugen. Das kann ich nicht nachvollziehen, da lange bekannt ist, dass bei den Zuschauern viel mehr hängenbleibt, wenn die Folien nicht vollgestopft sind mit Text. Wenn du mir nicht glaubst, schau dir mal Presentation Zen* an.

Garr Reynolds - Presentation Zen (Affiliate)*

Letztlich musst du natürlich selbst entscheiden, auf welchen Stil du setzen willst. Ich würde mich freuen, wenn ich dir mit der Vorlage einen kleinen Hinweis für die richtige Entscheidung gegeben habe! 😉


Verwendest du für deine Präsentation eine Vorlage? Oder fängst du auch mit einem weißen Blatt an?


Ergebnisse der Entwickler-Umfrage 2016 von StackOverflow

$
0
0

In diesem Artikel fasst Quincy Larson einige überraschende Ergebnisse der aktuellen Umfrage von StackOverflow unter 50.000 Software-Entwicklern zusammen: Insights from Stack Overflow’s 2016 survey of 50,000 developers.

So kann man zum Beispiel gut erkennen, das es fast zehn Mal so viele männliche Entwickler gibt wie weibliche. Sehr interessant finde ich auch die Einkommensspanne amerikanischer Programmierer. Die Gehälter liegen deutlich über dem Durchschnitt der deutschen Anwendungsentwickler.

Interessant ist auch, dass die meisten Besucher der Seite sich anscheinend selbst programmieren beigebracht und keine „offizielle“ Ausbildung genossen haben. Das lässt sich so sicherlich nicht auf den deutschen Markt übertragen. Zumindest ist das meine Einschätzung.

Ich finde die Umfrage von StackOverflow sehr spannend, da die Seite selbst ja schon zum Synonym für Programmieren geworden ist. Letztens gab es passend dazu auch einen witzigen „Buchvorschlag“ für O’Reilly 😀


Findest du dich in den Umfrageergebnissen wieder? Wie bewertest du die einzelnen Ergebnisse?

Ansprechende Gestaltung der Projektpräsentation – Anwendungsentwickler-Podcast #62

$
0
0

Die ansprechende Gestaltung der Projektpräsentation ist das Thema der zweiundsechzigsten Episode des Anwendungsentwickler-Podcasts.

Inhalt

Mit der Projektpräsentation kannst du deine Endnote stark beeinflussen. Sie zählt nicht nur 25% der Note von Teil A, sondern gibt auch die Richtung für das Fachgespräch vor. Daher kannst und musst du dich von deiner besten Seite zeigen. Oftmals hat ein Großteil des Prüfungsausschusses deine Dokumentation gar nicht gelesen und sieht dich ausschließlich in der Präsentation (und dem anschließenden Fachgespräch). Also widme ihr die gebührende Vorbereitungszeit!

Achtung: Wenn deine IHK konkrete Vorgaben bzgl. Inhalt, Zielgruppe, Gestaltung usw. der Projektpräsentation macht, dann halte dich unbedingt daran!

Allgemeine Tipps

  • Picke dir nur die Highlights deines Projekts raus und unterstreiche diese durch entsprechende Abbildungen, Diagramme, Graphen.
  • Zeige dein methodisches Vorgehen. Das heißt: UML, ERM, MockUps, EPKs, Netzplan, Quelltext von coolen Algorithmen, Screenshots usw.
  • Den Aufbau würde ich relativ klassisch strukturieren, z.B. in Projektumfeld, Projektidee, Projektrealisierung und Projektergebnis.
  • Auf keinen Fall die Technik (= UML, ERM usw.) und Wirtschaftlichkeit (= Kosten, Amortisation usw.) vergessen!
  • Die Präsentation ist keine Verkaufsshow! Weder für dein Produkt, noch für dein Unternehmen.
  • Verlasse dich nicht auf funktionierendes Internet oder Technik!

Konkrete Gestaltungstipps

  • Auf ein stimmiges Gesamtbild (Farben, Schrift, Animationen immer gleich) achten.
  • Alle Texte und insb. Quelltexte und auch Grafiken müssen gut lesbar sein. Zoome ggfs. in wichtige Bereiche rein.
  • Ich empfehle als Folienformat 4:3.
  • Folien dritteln (Hilfslinien nutzen) und die Inhalte optisch ansprechend platzieren.
  • Ich würde wenn immer es geht, einen hellen Hintergrund und eine dunkle Schrift benutzen. Denn viele Beamer sind leider etwas schwach im Kontrast und bei umgekehrter Farbwahl erkennt man dank „grauem“ Hintergrund dann nichts mehr.
  • Bilder sind immer besser als Text.
    • Vorstellung des Azubis und des Unternehmens mit Fotos der Mitarbeiter oder des Gebäudes.
    • Fotos der bisherigen Papierdokumente bei der Ist-Analyse.
    • Architektur der Anwendung mit UML-Diagrammen verdeutlichen.
    • Mockups und Screenshots der Anwendung zeigen.
  • Cliparts sind gruselig!
  • Kein Corporate Design verwenden, sondern das Layout, das den Inhalt am besten transportiert. Ich würde gar keine Vorlage nehmen, sondern mit den weißen Folien anfangen. Weg mit dem Firmenlogo, der Seitenzahl und dem Datum auf jeder Folie! Rein mit den bildschirmfüllenden Grafiken, Bildern, Diagrammen usw.!
    • Das CI kann auch mit Farben usw. des Unternehmens umgesetzt werden.
  • Animationen sparsam und sinnvoll einsetzen, z.B. zur Unterstützung der Inhalte (Text/Grafiken nacheinander einblenden).
  • Keine mitlaufende Agenda verwenden (nimmt zu viel Platz weg), sondern Zwischenfolien.
  • Datenschutz beachten. Aber Daten nicht schwärzen, sondern durch Pseudodaten austauschen.
  • Vielleicht kannst du Videos der fertigen Anwendung einbauen.

Sonstiges

  • Du brauchst kein Handout!
  • Halte unbedingt die vorgegebene Zeit ein!
  • Das Tool (PowerPoint, Prezi usw.) ist irrelevant.

Beispielpräsentationen

  • Projektpräsentation von Gerda Feldhaus (mit 100% bewertet)
  • Projektpräsentation von Markus Amshove (mit 100% bewertet)

Literaturempfehlungen

  • Der Präsentationsmeister Garr Reynolds zeigt in Presentation Zen Design* viele praxisnahe Tricks und Gestaltungsmerkmale für ansprechende Präsentationsfolien. Eine absolute Leseempfehlung!
    Garr Reynolds - Presentation Zen Design (Affiliate)*
  • Nancy Duarte, die mit ihrem Unternehmen Duarte Design einen Oscar für die Präsentation von Al Gore in An Inconvenient Truth* bekommen hat, gibt in Slide:ology* viele praktische Tipps für ein ansprechendes Foliendesign.
    Nancy Duarte - Slide:ology (Affiliate)*

Links

Vorbereitung auf Projektpräsentation und Fachgespräch – Fachinformatiker-Podcast #2

$
0
0

Heute morgen habe ich die zweite Episode des Fachinformatiker-Podcasts bei fachinformatiker.de veröffentlicht. Hör doch mal rein!


Vorbereitung auf Projektpräsentation und Fachgespräch – Fachinformatiker-Podcast #2


Es geht um die Vorbereitung auf die Projektpräsentation und das Fachgespräch. Ich gebe folgende Tipps:

  • Zeige nur die Highlights deines Projekts.
  • Orientiere dich am Ablauf der Projektarbeit (Phasen, Prozessmodell).
  • Verwende so wenig Text wie möglich und nutze stattdessen Grafiken.
  • Üben, üben, üben: Mit Ausbilder/in, Kollegen, Freund/in, Eltern.
    • Ist der Aufbau nachvollziehbar und sinnvoll?
    • Ist das Foliendesign ansprechend?
    • Sind alle Folieninhalte klar erkennbar und lesbar?
    • Wird die Zeit eingehalten?
    • Ist der fachliche Inhalt korrekt?
    • Feedback einholen zu: Augenkontakt mit dem Publikum, Körpersprache, deutliche Sprache, Gestik, Mimik usw.
  • Sind alle verwendeten Begriffe aus der Projektpräsentation klar (und zwar nicht nur scheinbar)?
  • Die üblichen Verdächtigen durchgehen (am besten mit Ausbilder/in).
    • Objektorientierung (FIAE)
    • Datenbanken
    • Netzwerkgrundlagen (FISI)
    • Stundensatz
  • Praxisbeispiele für häufige Fragen bereitlegen (z.B. Vererbung in der Objektorientierung oder IP-Adressbereiche für Subnetting).
  • Fragen der Prüfer wie ein Wasserfall beantworten ohne nötige Rückfragen.

Warum ein sprechender Kurztitel für das Abschlussprojekt sinnvoll ist

$
0
0

Beim Lesen der Projektanträge und -dokumentationen finde ich es immer interessant, wie lang die Titel einiger Projektarbeiten sind. Einige Prüflinge benötigen für den Titel ihres Projekts drei Zeilen auf dem Deckblatt. Und das Interessante ist, dass ich meist trotzdem nicht genau weiß, was das Projekt dann eigentlich beinhaltet. 😉

(Fiktive) Beispiele

Ich habe hier mal ein paar (völlig fiktive) Beispiele für Titel von Projektarbeiten zusammengetragen.

  • Programm zum automatischen Import von Bestandsdaten aus dem Warenwirtschaftssystem in den selbstentwickelten Webshop mit PHP
  • Kommandozeilenwerkzeug zur Erfassung von Arbeitszeiten in Kundenprojekten mit automatischer Abrechnung über die REST-Schnittstelle des Systems ABC-XYZ2
  • Webanwendung zur Planung der Warengruppenanordnung im High-Price-Segment für Kunde XY im Supermarkt ABC
  • Integration der Service-Schnittstelle zur Buchhaltung im SAP-Modul ABC mit automatischer Abgleichsfunktion

Wofür ein kurzer Titel sinnvoll ist

Lange Projektnamen erschweren die Kommunikation. Du wirst in einem Gespräch über dein Projekt nie den gesamten Titel zitieren, sondern einfach „mein Projekt“ sagen oder den Titel abkürzen. Solange du nur ein einziges Projekt bearbeitest oder/und alle Beteiligten wissen, worüber du sprichst, ist das auch kein Problem. Aber spätestens deinen Prüfern wirst du mit dieser Kommunikation keine Freude bereiten, da sie sich bei mehreren Prüflingen am Tag nicht immer merken können, wer welches Projekt bearbeitet hat.

Denk dabei auch an die Projektpräsentation. Wenn dein Projekt keinen kurzen Namen hat, wirst du immer umständliche Formulierungen wählen müssen, um mit den Prüfern über dein Projekt zu sprechen.

Und der Kurztitel kann auch als Kopfzeile deiner Projektdokumentation verwendet werden oder in Diagrammen. Wenn du dein Programm zum Beispiel in eure Infrastruktur integrierst und diese Integration verdeutlichen willst, ist es viel einfacher, eine kleine Abkürzung auf einen Server zu malen, als einen langen Text. Auch Projektverzeichnisse, Package-Namen oder sonstige Inhalte deiner Software können mit dem Kurznamen benannt werden, sodass ein einheitliches Gesamtbild entsteht.

Wie komme ich auf einen Namen?

Mach dir einfach mal ein paar Minuten lang Gedanken, wie du das Projekt nennen kannst. Vielleicht bietet sich ein Teil des Titels als Name an, weil er schon eindeutig dein Projekt beschreibt. Oder du baust aus den Anfangsbuchstaben der Beschreibung ein Akronym. Oder du denkst dir einen Codenamen aus. Oder, oder, oder… Deiner Phantasie sind keine Grenzen gesetzt.

Aber denk dran:

There are only two hard things in Computer Science: cache invalidation and naming things.
(Phil Karlton, siehe TwoHardThings)

Meine Empfehlung

Ich empfehle, dass du dir für dein Abschlussprojekt einen kurzen, knackigen Titel überlegst. Am besten ein einziges Wort. Das kann auch ein Akronym sein, dass du dir selbst ausgedacht hast.

Für die Kommunikation ist es immer hilfreich, einen kurzen Titel für ein Projekt zu haben. Alles andere behindert nur, wenn man über das Projekt spricht. Du musst es immer umschreiben oder eben einen sehr langen Titel benutzen, wenn du mit jemandem (insb. den Prüfern) über dein Projekt sprechen möchtest.

Beispiele für Kurznamen

Zu den obigen Projekten könnte ich mir folgende Kurznamen vorstellen:

  • Shop-Import, WaWiExport, AutoImport, AIWAWI
  • Zeiterfassung, EAK, ZE-ABC
  • Warenplanung, Sortimentsplanung, Warengruppenanordnung, WaGruAn, WGA
  • ISS-SAP, ISS-ABC, Service-Schnittstelle, SAP-ABC

Fazit

Nimm dir ein paar Minuten Zeit und denk dir einen sprechenden kurzen Namen für dein Projekt aus. Diesen Namen verwendest du auf dem Deckblatt deiner Dokumentation und der Titelfolie deiner Präsentation. Mit diesem Namen kommunizierst du mit deinen Kollegen und den Prüfern. Das erspart Missverständnisse und erleichtert die Kommunikation.


Wie heißt oder hieß dein Projekt? Hattest du einen kurzen Projekttitel oder nur eine Langbeschreibung?

Wie man eine gute Git-Commit-Nachricht schreibt

$
0
0

In diesem Artikel beschreibt Chris Beams wie man eine gute Git-Commit-Nachricht formuliert: How to Write a Git Commit Message.

Er stellt dafür sieben Regeln auf:

  • Subject und Body mit einer Leerzeile trennen.
  • Subject auf 50 Zeichen beschränken.
  • Subject mit einem Großbuchstaben beginnen.
  • Subject nicht mit einem Punkt beenden.
  • Im Subject den Imperativ benutzen.
  • Den Body bei 72 Zeichen umbrechen.
  • Erklären was und warum geändert wurde und nicht wie.

Seit Markus mir den Artikel geschickt hat, versuche ich selbst, mich an die Empfehlung des Autors zu halten. Und ich denke, die Vorgabe ist gerade für junge Entwickler sehr hilfreich. Oftmals sehe ich nämlich Nachrichten im Log wie

Verschiedene Änderungen am Programm

oder

Refactoring

Besonders bitter ist es, wenn die letzten Commits alle dieselbe Nachricht enthalten. Da wusste der Programmierer wohl selbst nicht, was er eigentlich gemacht hat.

Das geht so lange gut, wie man die Historie nicht benötigt, um eine gewisse Änderung nachzuvollziehen. Dann wir es nämlich sehr schwer, die betreffenden Commits zu identifizieren.

Also meine klare Empfehlung an jeden Azubi: Gewöhn dir gleich an, sprechende und hilfreiche Commit-Messages zu formulieren, die beschreiben, warum etwas geändert wurde und nicht wie (denn dafür ist die Software da).


Wie formulierst du die Commit-Nachrichten in deinem Versionsverwaltungssystem? Gibt es Regeln, an die du dich hältst?

Viewing all 452 articles
Browse latest View live