IT-Berufe-Podcast

IT-Berufe-Podcast

Download on the App Store

IT-Berufe-Podcast episodes

  • Kostenpflichtige Informationsquellen zur Softwareentwicklung – Anwendungsentwickler-Podcast #23
    In der dreiundzwanzigsten Episode meines Anwendungsentwickler-Podcasts ergänze ich meine Empfehlungen zur Informationsbeschaffung um kostenpflichtige Quellen.
    TL;DR
    Ich empfehle dir kostenpflichtige Informationsquellen, mit denen du als IT-Azubi dein Fachwissen vertiefen und aktuelle Entwicklungen verfolgen kannst. Fachzeitschriften und Bücher ergänzen die Informationen aus dem Internet; Hörbücher und Online-Kurse bieten dir weitere Wege zum Lernen. Auch Gespräche in der Berufsschule oder Hochschule sowie Konferenzen geben dir Einblicke in die Praxis. Wenn dein Ausbildungsbetrieb Bücher oder Abos bezahlt, profitieren auch deine Kolleg:innen davon. Bei vielen Fachbüchern sparst du mit E-Books Geld, sodass sich ein E-Book-Reader nach einigen Käufen bezahlt machen kann.
    Kapitelmarken
    [00:00:01] Kostenpflichtige Informationsquellen für IT-Azubis
    [00:01:04] Fachbücher und Abos vom Ausbildungsbetrieb bezahlen lassen
    [00:04:26] Mit E-Books und einem E-Book-Reader Geld sparen
    [00:07:16] Internet und gedruckte Fachmedien ergänzen sich
    [00:08:52] c’t und iX für allgemeine und professionelle IT
    [00:11:12] Entwickler Magazin und OBJEKTspektrum
    [00:12:31] Fachzeitschriften für .NET und Java
    [00:14:32] Fachbücher und Early-Access-Ausgaben
    [00:16:20] Kommende Bücher als Hinweis auf Technologietrends
    [00:17:04] Empfehlungen für Fachbuchverlage
    [00:19:03] Günstigere Beta-Versionen von Büchern
    [00:19:46] Hörbücher und Audible
    [00:22:03] Informationen aus Berufsschule und Hochschule
    [00:23:05] Alte IHK-Prüfungen als Informationsquelle
    [00:24:43] Online-Kurse und Pluralsight
    [00:27:05] Konferenzen besuchen und Kontakte knüpfen
    [00:28:37] Kosten und Unterstützung durch den Betrieb
    [00:29:14] Weitere Empfehlungen und Shownotes
    [00:29:55] Kontakt und Feedback
    [00:30:40] Newsletter und Checklisten
    Inhalt
    Kostenpflichtige Informationsquellen
    Wem die Informationsquellen zu teuer sind, der sollte einmal sein Ausbildungsunternehmen fragen, ob die Kosten vielleicht übernommen werden.
    Wer viel liest, sollte sich überlegen, einen eBook-Reader anzuschaffen. Ich selbst nutze den günstigsten Kindle*. Er rentiert sich ggfs. bereits nach wenigen Büchern (Beispiel: POODR* kostet ca. 20 EUR anstatt 30 EUR als Taschenbuch).
    Zeitschriften
    c't* (Website)
    iX* (Website)
    Entwickler Magazin
    OBJEKTspektrum
    dotnetpro (.NET)
    Java Magazin (Java)
    JavaSPEKTRUM (Java)
    Bücher
    Viele Verlage bieten ein "Early Access"-Programm an. Dabei bekommt man neue Bücher schon (teils einige Monate) vor der Veröffentlichung.
    Pragmatic Programmers
    Manning
    O'Reilly
    Rheinwerk*
    Audiobooks
    Berufsschule/Studium
    IHK-Prüfungen
    Online-Kurse
    Pluralsight
    Vorlesungen online
    Konferenzen
    cim lingen
    Java-Forum-Nord
    NDC Oslo
    Øredev
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Smells like Java - Softwareentwicklung mit Natural (Artikel von mir im JavaSPEKTRUM)
    Zusammenfassung
    Kosten im Rahmen halten
    Frag dein:e Ausbilder:in, ob dein Ausbildungsbetrieb Fachbücher oder Zeitschriftenabos bezahlt. In meinem Unternehmen stehen regelmäßig angeschaffte Bücher in einer gemeinsamen EDV-Bibliothek, auf die auch Kolleg:innen zugreifen können. Dazu gehören beispielsweise die Java-Insel und Refactoring. In einer Abschlussprüfung habe ich außerdem eine Bibliotheks-App gesehen, die ein:e Prüfungsteilnehmer:in für die Büchersammlung des eigenen Unternehmens entwickelt hatte.
    Für ein Fachbuch fallen beispielsweise 50 bis 60 Euro an; eine einwöchige Schulung beim Softwareanbieter kann 3.000 bis 4.000 Euro kosten. Beim Lernen aus einem Buch spielen andere Bedingungen eine Rolle als bei einer Schulung. Über eine gemeinsame Bibliothek kann sich jedoch jede interessierte Person mit dem Thema beschäftigen. Auch Zeitschriften, die regelmäßig im Betrieb ausliegen, helfen dabei, fachlich auf dem Laufenden zu bleiben.
    Wenn du viele Fachbücher liest, rechne durch, ob sich ein E-Book-Reader für dich lohnt. Mein damals günstigster Kindle kostete etwa 60 Euro. Weil E-Books teilweise 10 bis 20 Euro günstiger waren als gedruckte Bücher, hatte ich die Kosten nach ungefähr fünf oder sechs Büchern wieder eingespart.
    Bei E-Books entfallen Möglichkeiten wie das gewöhnliche Verleihen eines gedruckten Buches. Dafür kann ich auf meinem Kindle Textstellen markieren und Notizen exportieren. Mit einem selbst geschriebenen Ruby-Skript übertrage ich diese Einträge in mein persönliches Wiki, sodass ich unterwegs darauf zugreifen kann. Für dich kommen auch andere E-Book-Reader infrage.
    Fachzeitschriften
    Wenn du aktuelle Meldungen im Internet verfolgst, kannst du sie durch ausführlich recherchierte Artikel aus Zeitschriften ergänzen. Durch die Zeit bis zum Druck erscheinen Nachrichten dort später. Längere Fachartikel und Anleitungen liefern dir Hintergrundwissen, während du mit einem Buch tiefer in ein Thema einsteigen kannst.
    Für die Ausbildung empfehle ich dir folgende Zeitschriften:
    c’t: Meine erste Empfehlung für IT-Azubis. Die Artikel decken viele IT-Bereiche ab, etwa Hardware und Betriebssysteme. Auch Softwareentwicklung gehört dazu. Ich empfehle die c’t ab dem ersten Ausbildungstag und habe sie im Unternehmen abonniert.
    iX: Behandelt professionelle IT und Themen aus dem Unternehmensumfeld. Nach ein bis zwei Jahren, wenn du dort Erfahrung gesammelt hast, empfehle ich dir einen Blick hinein.
    Entwickler Magazin: Enthält verständliche Artikel für Einsteiger:innen zu verschiedenen Programmiersprachen sowie Grundlagen der Softwareentwicklung. Eine Artikelserie zu Datenbanken und SQL verwende ich in meinen Schulungen.
    OBJEKTspektrum: Geht tiefer ins Softwareengineering, beispielsweise mit Artikeln zu Prozessanalyse oder Test-driven Development.
    dotnetpro: Meine Empfehlung, wenn du mit .NET arbeitest. Die Artikel enthalten ausführliche Beispiele und stammen von erfahrenen Autor:innen. Mit fast 15 Euro pro Ausgabe war die Zeitschrift zum Zeitpunkt meiner Aufnahme vergleichsweise teuer.
    Java Magazin: Bietet praxisbezogene Artikel für Java-Entwickler:innen.
    JavaSPEKTRUM: Greift auch Themen aus dem akademischen Umfeld auf und ist ebenfalls für Java geeignet.
    Für weitere Sprachen gibt es eigene Publikationen, etwa das PHP Magazin. Meine konkreten Empfehlungen konzentrieren sich auf Java und .NET, weil ich diese Bereiche kenne.
    Fachbücher und frühe E-Book-Ausgaben
    Wenn du dich länger mit einer Programmiersprache oder einem Framework beschäftigen möchtest, sind Fachbücher für mich die wichtigste Quelle. Bis eine gedruckte Ausgabe erscheint, können mehrere Monate vergehen. Einige Verlage bieten deshalb Beta- oder Early-Access-Ausgaben als E-Book an, die du schon vor dem gedruckten Buch lesen kannst.
    Bei den Pragmatic Programmers habe ich mehrfach solche Vorabversionen gelesen. Sie waren Wochen oder Monate früher verfügbar und sind teilweise günstiger. Gelegentliche Tippfehler gehören bei diesen Ausgaben dazu. Lesen kannst du sie auf einem E-Book-Reader, einem Tablet oder am Bildschirm.
    Diese Verlage empfehle ich dir:
    Pragmatic Programmers: Praxisorientierte Bücher, auch zu neueren Sprachen. Beispiele aus meinem Umfeld sind Ruby und Elixir.
    Manning: Ausführliche Bücher zu modernen Technologien.
    O’Reilly: Fachbücher rund um IT und Softwareentwicklung, häufig von bekannten Autor:innen. Der Verlag bietet auch ein Early-Release-Programm an.
    Rheinwerk Verlag, früher Galileo Press: Deutschsprachige Fachbücher, darunter das IT-Handbuch für Fachinformatiker:innen und die Java-Insel. Einige Bücher stehen als Open Book online zur Verfügung.
    Auf den Verlagsseiten schaue ich regelmäßig nach kommenden Büchern. Die behandelten Themen geben Hinweise darauf, welche Technologien gerade Interesse wecken, auch wenn du selbst kein Buch dazu kaufst.
    Hörbücher
    Auf dem Weg zur Arbeit oder beim Sport kannst du Hörbücher hören und so Zeit für Fachinhalte finden. Ich greife darauf zurück, wenn mir die Zeit zum Lesen fehlt. Mit etwas Übung lässt sich die Wiedergabegeschwindigkeit erhöhen; im Podcast beschreibe ich das Hören mit doppelter oder dreifacher Geschwindigkeit.
    Bei Audible gibt es ein monatliches Abo, über das du eine bestimmte Anzahl von Hörbüchern beziehen kannst. Zum Angebot gehören aktuelle Bücher, die teilweise von den Autor:innen selbst vorgelesen werden.
    Berufsschule, Hochschule und IHK-Prüfungen
    Frag deine Lehrer:innen oder Dozent:innen nach den Technologien, mit denen sie arbeiten, und nach Entwicklungen, die sie verfolgen. Ich empfehle dir, diese Gespräche gezielt zu suchen. Berufsschule und Studium kosten Zeit; je nach Angebot fallen auch Gebühren an oder dein Unternehmen trägt Kosten.
    Für deine Prüfung kannst du alte IHK-Aufgaben kaufen. Im Podcast nenne ich dafür ungefähr zehn Euro pro Prüfung. An den Aufgaben erkennst du, welches Wissen die Prüfer:innen erwarten. Neue Technologien gelangen mit zeitlichem Abstand in die Prüfungen.
    Zum Zeitpunkt meiner Aufnahme beobachtete ich aktuellere Themen vor allem in der Systemintegration. In der Anwendungsentwicklung kamen seit Jahren ähnliche Inhalte vor, etwa UML und Programmieren auf Papier. Wenn weitere Technologien in Aufgaben auftauchen, gibt dir das einen Anlass, dich auch im Berufsalltag damit zu beschäftigen.
    Online-Kurse
    Wenn du anderen Entwickler:innen beim Programmieren zuschauen möchtest, bieten dir Online-Kurse dafür einen passenden Rahmen. Über Videos kannst du Arbeitsschritte verfolgen und dich geführt mit einem Thema beschäftigen.
    Ich bin selbst Kunde bei Pluralsight und empfehle dir die Plattform aus eigener Erfahrung. Dort unterrichten bekannte Entwickler:innen aus unterschiedlichen Technologiebereichen. Tests helfen dir dabei, zu prüfen, ob du die Inhalte verstanden hast.
    Als weiteren Anbieter erwähne ich lynda.com, mit dem ich selbst keine Erfahrung habe. Kostenlose Konferenzvideos auf YouTube oder Vimeo ergänzen solche Angebote. Ihr Format ist auf einen Vortrag ausgelegt, während ein Online-Kurs ein Thema als Unterricht aufbereitet.
    Konferenzen
    Wenn dein Unternehmen eine Konferenz bezahlt,...
    32 min
  • Kostenlose Informationsquellen zur Softwareentwicklung – Anwendungsentwickler-Podcast #22
    In der zweiundzwanzigsten Episode meines Anwendungsentwickler-Podcasts gebe ich eine Übersicht guter kostenloser Informationsquellen rund um die Ausbildungsinhalte, mit denen man als ITler auf dem Laufenden bleibt.
    TL;DR
    Mit den kostenlosen Quellen, die ich dir empfehle, bleibst du als IT-Azubi und nach deiner Ausbildung fachlich auf dem Laufenden. Auf Websites und in Podcasts findest du aktuelle IT-Themen, während Konferenzvideos und kostenlose E-Books dir helfen, tiefer einzusteigen. Über Feeds oder Newsletter bekommst du neue Beiträge automatisch; im Gespräch mit deinem/deiner Ausbilder:in und anderen IT-Interessierten lernst du weitere Perspektiven kennen. Plane außerdem Zeit ein, um neue Technologien selbst auszuprobieren und einzuschätzen, wie sie zu deiner Arbeit passen.
    Kapitelmarken
    [00:00:20] Kostenlose Quellen für IT-Azubis und die Zeit danach
    [00:02:18] IT-Nachrichten auf Websites
    [00:03:58] Blogs von Softwareentwickler:innen
    [00:05:22] RSS, Atom und Feedreader
    [00:06:48] Reddit und Social Bookmarks
    [00:08:40] Fachforen und fachinformatiker.de
    [00:10:06] Neue Beiträge über Feeds und Newsletter erhalten
    [00:10:47] Podcasts finden und abonnieren
    [00:12:57] Kostenlose Konferenzvideos
    [00:14:28] E-Books und online verfügbare Fachbücher
    [00:15:43] Von Ausbilder:innen und Kolleg:innen lernen
    [00:18:02] Mit anderen IT-Azubis und Mitschüler:innen sprechen
    [00:18:41] Regionale Treffen und einen eigenen Stammtisch organisieren
    [00:20:11] Gelegenheiten für persönliche Gespräche schaffen
    [00:21:00] Twitter und berufliche Kontakte in sozialen Netzwerken
    [00:24:23] Neue Technologien selbst ausprobieren
    [00:26:26] Zeit zum Ausprobieren einplanen
    [00:26:58] Shownotes und weitere Quellen empfehlen
    [00:28:06] Feedback und Themenwünsche
    [00:29:02] Mein Newsletter und Checklisten für das Abschlussprojekt
    Inhalt
    Kostenlose Informationsquellen
    Websites
    News
    Blogs
    Aggregatoren
    Social Bookmarks
    Foren
    Lernplattformen
    Auf dem Laufenden bleiben: Newsletter oder Feed abonnieren.
    Podcasts
    Auf dem Laufenden bleiben: In iTunes oder im Podcatcher* abonnieren.
    Konferenzvideos
    Auf dem Laufenden bleiben: Feeds abonnieren, auf Twitter folgen, bei YouTube/Vimeo abonnieren usw.
    eBooks
    Auf dem Laufenden bleiben: Newsletter abonnieren oder Neuheiten regelmäßig checken.
    Andere ITler
    Ausbilder/in
    Kollegen (auch aus anderen Abteilungen)
    Mitazubis
    Klassenkameraden
    Lokale Events, Veranstaltungen von Hochschulen, User Groups, Code Retreat, Barcamps
    Auf dem Laufenden bleiben: An Veranstaltungen teilnehmen, gemeinsam Mittagessen, um Zeit für Gespräch bitten, regelmäßige Meetings einberufen usw.
    Soziale Netzwerke
    Twitter
    Xing
    Facebook
    Auf dem Laufenden bleiben: Die jeweilige App des Netzwerks, Bookmarks auf Timeline setzen und regelmäßig abrufen.
    Selbst neue Technologien ausprobieren
    Programmiersprachen
    Tools
    Betriebssysteme
    Auf dem Laufenden bleiben: Zeit für Ausprobieren einplanen.
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Tools
    Tiny Tiny RSS
    BeyondPod*
    RSSOwl
    Websites
    News
    heise.de
    neuerdings.com
    Blogs
    IT-Pro Bloggers
    DotNetGerman Bloggers (.NET)
    Werd Fachinformatiker
    Aggregatoren
    Subreddit: programming
    The Morning Brew (.NET)
    Social Bookmarks
    Delicious
    Foren
    Fachinformatiker ausbilden
    Fachinformatiker.de
    Prüfungsfragen
    Lernplattformen
    Codecademy
    Konferenzvideos
    InfoQ
    Confreaks (Ruby)
    MSDN Techwiese (.NET)
    JAXenter (Java)
    eBooks
    Rheinwerk*
    Google Books
    Andere ITler
    Softwareentwickler-Stammtisch
    Diepholzer Kolloquium
    Gesellschaft für Informatik, Regionalgruppe Bremen Oldenburg
    Global Day of Coderetreat
    Soziale Netzwerke
    Stefan Macke bei Twitter
    Xing-Gruppe Softwareentwicklung im Raum Oldenburger Münsterland
    Xing-Gruppe Fachinformatiker Systemintegration und Anwendungsentwicklung
    Xing-Gruppe Softwareentwickler
    Zusammenfassung
    Websites und aktuelle Beiträge
    Für aktuelle IT-Nachrichten schaue ich täglich auf heise.de vorbei. Hinter der Website steht der Verlag, der auch c’t und iX herausgibt. Dort bekommst du einen Überblick darüber, was sich im IT-Bereich gerade bewegt.
    Wenn du dich genauer mit einer Technologie beschäftigen möchtest, findest du in den Blogs von Softwareentwickler:innen ausführliche Artikel direkt von den Menschen, die daran arbeiten. Wähle Blogs passend zu deinem Arbeitsgebiet und deinen Interessen aus. Als .NET-Entwickler:in kannst du beispielsweise den entsprechenden Fachleuten folgen und zusätzlich Einblicke in andere Programmiersprachen sammeln.
    Neue Beiträge automatisch erhalten
    In meinem Feedreader abonniere ich die Quellen, die mich interessieren. Dafür gibt es die XML-basierten Formate RSS und Atom, über die Websites ihre Beiträge bereitstellen. RSS steht für "Really Simple Syndication".
    Ein Feedreader zeigt dir neue Artikel an, sobald sie im abonnierten Feed erscheinen. Solche Programme gibt es online und offline.
    Den passenden Feed findest du häufig über ein orangefarbenes Symbol, das an ein Funksignal erinnert.
    Auch Foren und andere Websites bieten Feeds an. Newsletter schicken dir neue Informationen direkt per E-Mail, wobei du deine E-Mail-Adresse angeben musst.
    Themen über Empfehlungen entdecken
    Bei Reddit schaue ich morgens nach neuen Beiträgen zur Programmierung. Dort stellen Nutzer:innen Links ein und bewerten sie. Hoch bewertete Beiträge geben Hinweise darauf, welche Themen gerade viele Menschen beschäftigen. Über Subreddits kannst du die Themen auswählen, die dich interessieren, und dabei auf Beiträge aus unterschiedlichen Bereichen der Softwareentwicklung stoßen.
    Mit Social Bookmarks, etwa bei Delicious, teilen Menschen ihre gespeicherten Links öffentlich. An der Zahl der gespeicherten Lesezeichen lässt sich erkennen, welche Inhalte häufig gelesen werden.
    Fragen in Foren stellen
    In einem Forum kannst du eigene Fragen stellen und mit anderen Mitgliedern diskutieren. Suche nach einem Forum, das zu deinen Technologien oder Interessen passt, beispielsweise zu Java oder .NET.
    Für die Ausbildung empfehle ich fachinformatiker.de. Dort findest du Themen rund um die Ausbildung und Fragen zu Prüfungen. Auch einzelne IT-Themen und Programmiersprachen werden behandelt.
    Podcasts im Alltag hören
    Auf meinem Arbeitsweg höre ich abonnierte Podcasts, deren neue Folgen meine App automatisch herunterlädt. Mit BeyondPod auf meinem Android-Handy lasse ich sie morgens aktualisieren.
    Du kannst Podcasts etwa beim Sport hören oder während du Hausarbeiten erledigst. Für viele Programmiersprachen gibt es eigene Angebote. In längeren Folgen können Entwickler:innen ausführlich über aktuelle Themen und neue Frameworks sprechen, beispielsweise bei Ruby Rogues.
    Nach passenden Podcasts kannst du in Verzeichnissen wie Podcast.de suchen. Auch iTunes und Stitcher werden als Anlaufstellen genannt. Durch ein Abo erhältst du neue Folgen automatisch.
    Konferenzvideos kostenlos ansehen
    Über Videos von Entwicklerkonferenzen kannst du Vorträge online verfolgen. Viele Konferenzen stellen ihre Aufzeichnungen kostenlos bereit, sodass du dir aktuelle Technologien anschauen kannst, ohne Eintritt für die Veranstaltung zu bezahlen.
    Als Beispiele nenne ich Ruby- und Rails-Konferenzen sowie NDC und Øredev. Auch von JAX beziehungsweise W-JAX und BASTA! gibt es Videos im Internet.
    Je nach Anbieter erfährst du über RSS-Feeds oder Twitter von neuen Aufzeichnungen. Auf YouTube und Vimeo kannst du entsprechende Kanäle abonnieren.
    In kostenlosen E-Books nachlesen
    Bei Google Books findest du teilweise vollständige Bücher, die du online lesen und im Volltext durchsuchen kannst. Schau dort nach, wenn du zu einem bestimmten Thema ein Buch suchst.
    Der Rheinwerk Verlag stellt einige Bücher vollständig online bereit, häufig in älteren Ausgaben. Dazu gehört auch das IT-Handbuch für Fachinformatiker:innen. Die Inhalte sind auf einzelne Webseiten verteilt, durch die du dich zum Nachschlagen klickst.
    Mit anderen Menschen sprechen
    Wenn ich einen passenden Artikel finde, gebe ich ihn an meine IT-Azubis weiter. Gerade zu Beginn deiner Ausbildung hilft dir dein:e Ausbilder:in dabei, geeignete Quellen zu finden und interessante Inhalte auszuwählen. Frage gezielt nach Leseempfehlungen oder bitte um Zeit für ein Gespräch über neue fachliche Themen.
    Mit Kolleg:innen aus deiner Entwicklungsabteilung kannst du über andere Programmiersprachen und Frameworks sprechen. So erfährst du auch, welche Technologien im Unternehmen gerade ausprobiert werden.
    Menschen aus anderen Abteilungen bringen weitere Perspektiven mit. In der Administration erhältst du beispielsweise andere IT-Einblicke; aus Fachabteilungen erfährst du etwas über betriebliche Abläufe oder wirtschaftliche Themen.
    Andere IT-Azubis und deine Mitschüler:innen können Quellen empfehlen und von ihren Erfahrungen erzählen. Wenn du studierst, gilt das auch für deine Kommiliton:innen.
    Bei regionalen User-Groups kannst du zuhören und mitdiskutieren. Auch Code-Retreats oder Barcamps bieten Gelegenheiten, IT-Interessierte kennenzulernen.
    Weil es in meiner ländlichen Umgebung wenige passende Gruppen gab, habe ich einen eigenen Softwareentwickler:innen-Stammtisch gegründet. Über eine solche Gruppe kannst du dich regelmäßig mit Menschen austauschen, die ähnliche Interessen haben. Gespräche ergeben sich auch beim gemeinsamen Mittagessen mit Kolleg:innen.
    Kontakte über soziale Netzwerke finden
    Auf Twitter verfolge ich kurze Hinweise und Links zu ausführlicheren Beiträgen. Von Konferenzen berichten Teilnehmer:innen zeitnah über Vorträge und teilen beispielsweise Fotos oder Links zu Folien. Du kannst dich selbst an diesen Gesprächen beteiligen.
    Über Gruppen auf Xing oder Facebook kommst du mit Menschen in Kontakt, die sich für ähnliche Themen interessieren. Für berufliche Kontakte empfehle ich Xing. Dort gibt es Gruppen für Fachinformatiker:innen und Softwareentwickler:innen, in denen du dich über Foren austauschen kannst.
    Für meinen Stammtisch habe ich eine Xing-Gruppe eingerichtet,...
    31 min
  • Tipps zum erfolgreichen Einstieg in die Ausbildung – Anwendungsentwickler-Podcast #21
    In der einundzwanzigsten Episode meines Anwendungsentwickler-Podcasts gebe ich einige Tipps zum Berufseinstieg für neue Azubis.
    TL;DR
    Für deinen Ausbildungsstart als IT-Azubi empfehle ich dir, von Anfang an neugierig zu lernen und bei offenen Fragen nachzuhaken, damit du Aufgaben später selbstständig lösen kannst. Kläre früh die Regeln im Betrieb, führe dein Berichtsheft regelmäßig und arbeite in der Berufsschule mit, während du dich mit deinem Ausbildungsbetrieb und den IT-Grundlagen vertraut machst. Als angehende:r Fachinformatiker:in Anwendungsentwicklung lernst du, Probleme mit Software zu lösen; dabei helfen dir auch wiederkehrende Aufgaben, die du automatisierst, und passende Werkzeuge, die bereits vorhanden sind. Sobald du die Abläufe kennst, bring eigene Ideen ein und besprich sie mit deinem:r Ausbilder:in.
    Kapitelmarken
    [00:00:01] Einstieg und Themenüberblick
    [00:01:11] Lernen für die Prüfung und den Beruf
    [00:02:43] IT-Themen im Alltag entdecken
    [00:03:39] Nachfragen und Zusammenhänge verstehen
    [00:05:33] Besprechungen protokollieren
    [00:06:32] Betreuung einfordern und Abläufe hinterfragen
    [00:07:45] Durch Dokumentieren lernen
    [00:08:58] Fachbücher und das IT-Handbuch
    [00:10:37] Austausch mit anderen IT-Interessierten
    [00:12:22] Früh für die Abschlussprüfung lernen
    [00:13:20] Wissen im eigenen Blog festhalten
    [00:14:14] Arbeitszeiten und Urlaub klären
    [00:15:50] Das Berichtsheft regelmäßig führen
    [00:16:43] In der Berufsschule mitarbeiten
    [00:18:00] Kolleg:innen und Ausbilder:in kennenlernen
    [00:20:10] Produkte und Abläufe im Betrieb verstehen
    [00:21:18] IT-Grundlagen aufbauen
    [00:22:29] Office-Programme und Textverarbeitung beherrschen
    [00:23:45] Probleme mit Software lösen
    [00:25:32] Wiederkehrende Aufgaben automatisieren
    [00:26:40] Vorhandene Werkzeuge und Make-or-Buy
    [00:28:01] Eigene Ideen einbringen
    [00:29:49] Abläufe hinterfragen und Aufgaben selbst finden
    [00:30:46] Shownotes und Feedback
    [00:31:37] Den Podcast weiterempfehlen
    [00:32:03] Fragen zur Ausbildung stellen
    [00:32:20] Newsletter und Projektchecklisten
    Inhalt
    Ihr habt nur eine Aufgabe: Lernen.
    Seid neugierig.
    Haltet die Ohren offen.
    Fragt nach.
    Führt freiwillig Protokolle.
    Schreibt Dokumentationen.
    Lest Bücher*.
    Sucht Gleichgesinnte zum Erfahrungsaustausch (offline oder online).
    Bereitet euch so früh wie möglich auf die Abschlussprüfung vor.
    Startet ein Blog.
    Haltet notwendige Formalien ein.
    Klärt wichtige Rahmenbedingungen (Urlaub, Arbeitszeit usw.) gleich zu Beginn.
    Führt euer Berichtsheft von Anfang an regelmäßig.
    Beteiligt euch aktiv in der Berufsschule.
    Lernt euren Ausbildungsbetrieb kennen.
    Integriert euch von Anfang an in das Unternehmen. Nehmt alle Möglichkeiten wahr, eure Kollegen kennenzulernen.
    Sprecht regelmäßig mit eurem/r Ausbilder/in.
    Sprecht mit anderen Azubis über die Ausbildung.
    Geht offen auf eure neuen Kollegen zu und tauscht euch aus.
    Lernt die Produkte und Prozesse des Unternehmens kennen.
    Lernt zentrale IT-Grundlagen.
    Betriebssysteme
    Netzwerkinfrastruktur, Internet
    Office-Produkte
    Datenbanken
    HTML
    Lernt vernünftig zu programmieren.
    Lernt nicht eine Programmiersprache, sondern das Lösen von Problemen.
    Wenn ihr eine Sache zum zweiten Mal macht, automatisiert sie.
    Evaluiert und verwendet die besten Tools, die ihr findet könnt.
    Bringt eure eigenen Ideen ein.
    Haltet die Augen offen: Wo kann man Prozesse automatisieren?
    Hinterfragt Prozesse im Unternehmen.
    Werdet selbst aktiv, anstatt auf Aufgaben zu warten.
    Literaturempfehlungen
    Meine Empfehlung für alle Azubis. Gut geschrieben und mit über 1.000 Seiten sehr umfangreich. Alle für die Ausbildung relevanten Themen werden zumindest gestreift. Am besten direkt im ersten Ausbildungsjahr mit dem Lesen anfangen ;-)
    *(direkt beim Rheinwerk-Verlag bestellen*)
    Das Standardwerk, das alle Ausbildungsinhalte enthält.
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Meine Ausbildungsinhalte - Anwendungsentwickler-Podcast #3
    How To Ask Questions The Smart Way
    Softwareentwickler-Stammtisch
    Fachinformatiker.de (Forum)
    Vorbereitung auf die schriftliche Abschlussprüfung - Anwendungsentwickler-Podcast #4
    Tipps zum Berichtsheft
    Zusammenfassung
    Von Anfang an lernen und nachfragen
    Wenn du während der Ausbildung Wissen sammelst, bereitest du dich auf die Abschlussprüfung und auf deinen späteren Beruf vor. Nach der Ausbildung sollst du Projekte selbstständig bearbeiten können. Deshalb empfehle ich dir, auch außerhalb deines Fachgebiets Erfahrungen zu sammeln, etwa in der Netzwerkadministration oder im Kontakt mit Kund:innen. Ein Einblick in die Buchhaltung hilft dir, wirtschaftliche Zusammenhänge zu verstehen.
    Hör in Besprechungen und bei Gesprächen mit Kolleg:innen aufmerksam zu. Auch in der Berufsschule erfährst du, welche IT-Themen gerade beschäftigen. Unbekannte Begriffe kannst du dir aufschreiben und anschließend recherchieren.
    Wenn du eine Erklärung nicht verstehst, frag direkt nach. Gerade betriebsinterne Kürzel lassen sich oft nur im Gespräch klären. Erfahrene Kolleg:innen haben ihre Abläufe so verinnerlicht, dass sie einzelne Schritte beim Erklären übergehen. Durch deine Fragen erfahren sie, wo du Hilfe brauchst. Programmieren lernst du während der Ausbildung; dein Code sollte für dich nachvollziehbar sein.
    Von deinem Ausbildungsbetrieb kannst du erwarten, dass er Zeit für dich einplant und deine Fragen beantwortet. Fordere diese Hilfe aktiv ein. Falls du dauerhaft als billige Arbeitskraft eingesetzt wirst und beim Lernen alleinbleibst, empfehle ich dir, dich an die IHK zu wenden oder einen anderen Ausbildungsbetrieb zu suchen.
    Durch Schreiben genauer verstehen
    Beim Protokollieren einer Besprechung sammelst du Themen, mit denen du dich anschließend beschäftigen kannst. Recherchiere die Begriffe, die du aufgeschrieben hast, und kläre offene Punkte mit deinem:r Ausbilder:in. In den ersten Wochen prüfe ich solche Protokolle und frage nach, was der jeweilige Eintrag bedeutet.
    Wenn du ein Produkt oder eine selbst entwickelte Software dokumentierst, musst du die technischen Zusammenhänge so weit verstanden haben, dass du sie anderen erklären kannst. Biete an, eine solche Aufgabe zu übernehmen. Dabei gehst du die bisherige Arbeit noch einmal durch und übst zugleich für die Dokumentation deines Abschlussprojekts.
    Mit einem eigenen Blog kannst du festhalten, was du gelernt hast. Auch Beiträge in einem Forum oder Wiki helfen dir, dein Wissen verständlich zu formulieren. Ein Blog macht deine Arbeit zudem sichtbar und kann dir später beruflich helfen. Wenn du einen startest, kannst du mir den Link schicken; ich verlinke solche Blogs auf meiner Seite.
    Bücher lesen und Erfahrungen austauschen
    Für Themen, mit denen du dich ausführlich beschäftigen möchtest, empfehle ich dir Fachbücher. Sie behandeln Zusammenhänge über viele Seiten hinweg, etwa zu deiner Programmiersprache. Wähle gezielt Bücher zu Grundlagen und zu den Themen aus, die du brauchst.
    Das IT-Handbuch für Fachinformatiker:innen umfasst über 1.000 Seiten und behandelt die verschiedenen Bereiche der Ausbildung. Du kannst bereits zu Beginn regelmäßig darin lesen.
    Im Gespräch mit anderen IT-Azubis erfährst du, wie deren Ausbildung abläuft. Kolleg:innen und Lehrkräfte können dir fachlich weiterhelfen; online findest du Austausch in Foren und Blogs. Versuche bei recherchierbaren Problemen zunächst selbst, eine Antwort zu finden. Wenn du festhängst, frag nach.
    Bei meinem Softwareentwickler:innen-Stammtisch im Raum Oldenburg im Münsterland kannst du dich auch als IT-Azubi beteiligen. Dort geht es darum, in lockerer Atmosphäre über Softwarethemen zu sprechen. Deine Erfahrungen und dein Blick auf neue Entwicklungen können auch für erfahrene Entwickler:innen interessant sein.
    Früh für die Prüfung lernen und in der Berufsschule mitarbeiten
    Wenn du ab dem ersten Ausbildungstag regelmäßig lernst, verteilt sich der Stoff über die Ausbildungszeit. Das erleichtert dir später das Lernen für die Abschlussprüfung und hilft dir, Wissen langfristig zu behalten. Besprich mit deinem:r Ausbilder:in, welche Literatur geeignet ist und wie du dich gezielt vorbereitest.
    Arbeite auch in der Berufsschule von Anfang an mit. Dort kannst du fachliche Fragen mit Lehrkräften besprechen und prüfungsrelevante Inhalte üben. Gerade wenn du im Betrieb wenig betreut wirst, bietet dir der Unterricht Gelegenheit, fehlendes Wissen aufzubauen.
    Arbeitszeiten, Urlaub und Berichtsheft klären
    Sprich zu Beginn mit deinem:r Ausbilder:in über die Regeln, die deinen Arbeitsalltag betreffen:
    Kläre, welche Arbeitszeiten gelten und wann du bei Gleitzeit anwesend sein sollst. Dabei spielt auch eine Rolle, wann dein:e Ausbilder:in erreichbar ist.
    Frag nach, wie du Urlaub beantragst und mit wem du ihn abstimmen musst. Besprich auch, welche Regeln während der Probezeit gelten und wie eine Vertretung organisiert wird.
    Halte deine Tätigkeiten von Anfang an im Berichtsheft fest, beispielsweise jede Woche. Lass es regelmäßig kontrollieren und unterschreiben.
    Mit einem laufend geführten Berichtsheft sparst du dir das spätere Nachtragen. Es wird für die Prüfung gebraucht und hält fest, welche Aufgaben du während der Ausbildung übernommen hast. Bei Problemen mit dem Betrieb kannst du damit belegen, wie deine Ausbildung verlaufen ist.
    Den Ausbildungsbetrieb kennenlernen
    Geh auf Kolleg:innen aus anderen Abteilungen zu und lass dir zeigen, womit sie arbeiten. Wenn du ihre Aufgaben und Schwierigkeiten kennst, kannst du besser verstehen, wo IT ihnen hilft. Durch den persönlichen Kontakt wirst du als Ansprechpartner:in wahrgenommen.
    Mit deinem:r Ausbilder:in solltest du früh offen sprechen, weil diese Person deine Ausbildung begleitet. Andere IT-Azubis können dir erzählen, welche Erwartungen im Betrieb bestehen und was dich im weiteren Verlauf erwartet.
    Schau dir außerdem die Produkte deines Unternehmens an und lass dir die Abläufe erklären. Du solltest wissen, womit der Betrieb Geld verdient....
    34 min
  • Rückblick auf die Sommerprüfung 2015 – Anwendungsentwickler-Podcast #20
    In der zwanzigsten Episode meines Anwendungsentwickler-Podcasts blicke ich auf die Abschlussprüfung im Sommer 2015 zurück und gebe Tipps für die kommenden Prüflinge.
    TL;DR
    Bei meinen 21 Prüfungen im Sommer 2015 fielen mir vor allem sprachliche Fehler und Lücken beim fachlichen Verständnis auf. Für deine Abschlussprüfung als Fachinformatiker:in Anwendungsentwicklung solltest du sorgfältig geprüfte Texte abgeben, dein methodisches Vorgehen sichtbar machen und zeigen, was du selbst entwickelt hast. Im Fachgespräch musst du deinen Code sowie die eingesetzten Technologien erklären und deine Entscheidungen begründen können. Wenn dein Betrieb dich fachlich kaum ausbildet, wende dich frühzeitig an die IHK.
    Kapitelmarken
    [00:00:01] Einstieg und Rückblick auf die Sommerprüfung 2015
    [00:01:15] Schriftliche Prüfung: WiSo und Algorithmenaufgaben
    [00:03:23] Sprachliche Fehler in der Projektdokumentation
    [00:05:48] Rechtschreibung auf Präsentationsfolien
    [00:07:10] Methodisches Vorgehen bei der Softwareentwicklung
    [00:09:58] Eigene Arbeit und fachliche Tiefe im Abschlussprojekt
    [00:11:51] REST und JSON im Fachgespräch erklären
    [00:14:21] Programmiersprachen und Typisierung verstehen
    [00:16:21] Häufige Fachgesprächsfragen vorbereiten
    [00:18:39] Funktionale Sprachelemente und Generics
    [00:20:04] Eigenen Quelltext verstehen: using in C#
    [00:21:22] Technische Entscheidungen begründen
    [00:24:01] Präsentationen mit Bildern ansprechend gestalten
    [00:25:38] Mangelhafte betriebliche Ausbildung und Hilfe durch die IHK
    [00:29:41] Rückblick auf die wichtigsten Prüfungsprobleme
    [00:30:36] Shownotes und Kontaktmöglichkeiten
    [00:31:51] Newsletter und Checklisten für dein Abschlussprojekt
    Inhalt
    Die schriftliche Prüfung hat dieses Jahr viele Prüflinge ihre gute Note gekostet. Insb. WiSo hat viele Prüflinge runtergezogen.
    Die Rechtschreibprüfung und ein Korrekturleser sind die Freunde jedes Prüflings.
    Das gilt auch für die Projektpräsentationen.
    Methodik fehlt häufig in den Präsentationen und Dokumentationen.
    Wenige Zeilen Code reichen nicht als Abschlussprojekt.
    SAP-Projekte fallen auffällig oft in diesen Bereich.
    REST zusammen mit JSON kommt immer häufiger zum Einsatz. Leider kann fast niemand definieren, was das eigentlich ist.
    Das gleiche gilt für die zentralen Eigenschaften der eigenen Programmiersprache (z.B. Typisierung).
    Standardfragen können immer noch nicht beantwortet werden. Das reißt teils sogar gute Prüflinge rein.
    Funktionale Programmierung wird noch nicht angewendet.
    Programmierfeatures (wie z.B. Lambdas, Generics) werden eingesetzt, ohne sie zu verstehen.
    Die Frage nach dem "Warum" wird selten gestellt. Einige Vorgaben werden einfach hingenommen.
    Die Präsentationen werden langsam farbenfroher und ansprechender.
    Mehrere Prüflinge wurden von ihren Betrieben im Regen stehen gelassen. Wenn euch das auch so geht, macht euch frühzeitig Gedanken, was ihr dagegen tun könnt (z.B. bei der IHK melden).
    Literaturempfehlungen
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Die 17 häufigsten Fehler in der Projektdokumentation - Anwendungsentwickler-Podcast #9
    Die 11 häufigsten Fehler in der Projektpräsentation - Anwendungsentwickler-Podcast #7
    Mythen der Projektpräsentation (Blog-Artikelreihe)
    Representational State Transfer – Wikipedia
    JavaScript Object Notation – Wikipedia
    Zusammenfassung
    Schriftliche Sommerprüfung 2015
    Bei meinen 21 Prüfungen im Sommer 2015 sah ich viele interessante Projekte, darunter auch solche mit modernen Technologien. Die schriftlichen Ergebnisse drückten bei vielen IT-Azubis die Abschlussnote, selbst wenn ihre Projektdokumentation und Präsentation gut ausfielen.
    WiSo: Viele Prüfungsteilnehmer:innen erreichten eine 3 oder schlechter. Dieser Bereich machte damals 20 Prozent von Teil B aus und konnte die Gesamtnote an einer Notengrenze verschieben. Als mögliche Ursache fielen Fragen auf, die in den Prüfungen der vorherigen Jahre kaum vorkamen. Meine bisherige Empfehlung, die Aufgaben der letzten fünf Jahre auswendig zu lernen, reichte in dieser Prüfung für viele kaum aus.
    Ganzheitliche Aufgabe 1: Zwei umfangreiche Aufgaben verlangten Algorithmen in Pseudocode. Auch nach dem Streichen einer Aufgabe blieb eine größere Programmieraufgabe übrig. Wegen des hohen Zeitbedarfs empfehle ich bei solchen Aufgaben, sorgfältig abzuwägen, welche du streichst. Vielen Prüfungsteilnehmer:innen fehlte anschließend Zeit für weitere Aufgaben.
    Texte und Folien sorgfältig prüfen
    Beim Lesen der Projektdokumentationen begegneten mir Fehler, durch die einzelne Sätze kaum verständlich waren. Teilweise fehlten Wörter oder Kommas; auch offensichtliche Schreibfehler standen schon in den ersten Sätzen.
    Aktiviere die Rechtschreibprüfung deiner Software und korrigiere die markierten Stellen. Word bietet diese Funktion, ebenso lässt sie sich in Eclipse einschalten, wenn du dort mit LaTeX arbeitest. Ich empfehle LaTeX für die Projektdokumentation und stelle auf meiner Website eine Vorlage bereit.
    Für verständliche Inhalte brauchst du zusätzlich jemanden, der deinen Text gegenliest, etwa dein:e Ausbilder:in oder eine Person aus deiner Familie. Dabei lassen sich unklare Sätze und schwer nachvollziehbare Inhalte entdecken.
    Auch deine Präsentationsfolien solltest du mehrfach durchlesen. PowerPoint hat ebenfalls eine Rechtschreibprüfung. Fehler in gewöhnlichen deutschen Wörtern fallen Prüfer:innen schnell auf. Bei mir führen solche Fehler dazu, dass ich auch den Code genauer prüfe.
    Dein Vorgehen bei der Softwareentwicklung zeigen
    Vor dem Programmieren solltest du klären, was die Anwender:innen brauchen und wie du die Software aufbauen möchtest. In einigen Prüfungsprojekten blieb dieses Vorgehen kaum erkennbar, weil die Dokumentation vor allem allgemeine Beschreibungen oder Quelltext enthielt.
    Je nach Projekt kannst du deine Überlegungen mit folgenden Mitteln sichtbar machen:
    Use Cases sowie einem Lastenheft oder Pflichtenheft, um die Anforderungen festzuhalten.
    Anwendungsfalldiagrammen und Klassendiagrammen, die deine Software beschreiben.
    ER-Modellen für die Datenbank.
    Aktivitätsdiagrammen oder EPKs für Abläufe und Prozesse.
    Zu einem fachlich durchdachten Projekt gehören außerdem Tests und Maßnahmen, mit denen du die Qualität prüfst. Auch im damals vorgesehenen 70-Stunden-Projekt erwartete ich, dass du einen Plan verfolgst und auf Änderungen reagierst. Wenn dieses Vorgehen in der Prüfungsleistung kaum sichtbar wurde, wirkte sich das auf die Note aus.
    Deine eigene Arbeit und fachliche Tiefe erkennbar machen
    Aus deinen Unterlagen muss hervorgehen, welchen Teil des Projekts du selbst umgesetzt hast und welche technischen Aufgaben du dabei gelöst hast. Bei Projekten, in denen du eine Anwendung entwickelst, erwarte ich einen entsprechenden Umfang an selbst geschriebenem Code. In den besprochenen Prüfungen lag meine Erwartung bei mehreren hundert Zeilen.
    Bei einigen SAP- und ERP-Projekten entfiel viel Zeit auf Analysen oder das Konfigurieren vorhandener Software. Für ein Projekt, das eine Anwendung erstellen soll, musst du zeigen, wie du Logik in Code abbildest. Ein Abschlussprojekt, dessen Aufgabe ausdrücklich darin besteht, ein Pflichtenheft zu erstellen, ist ebenfalls legitim.
    Technologien im Fachgespräch erklären können
    In fünf Projekten wurde REST eingesetzt. Auf meine Frage konnte eine Person die Abkürzung Representational State Transfer nennen. Bereite dich darauf vor, die Grundlagen der Technologien zu erläutern, auf denen dein Projekt beruht.
    Bei REST gehören dazu die Bedeutung des Begriffs und die HTTP-Methoden GET, POST, PUT und DELETE samt ihrer Zuordnung zu CRUD-Operationen. Wenn deine gesamte Architektur auf REST beruht, kann auch Roy Fieldings Dissertation als Ursprung des Ansatzes eine Frage im Fachgespräch sein.
    JSON kam ebenfalls häufig vor. Du solltest erklären können, was das Format ist und warum es für deinen Einsatzzweck passt. Dazu gehört, seine Eigenschaften sowie Vor- und Nachteile im Verhältnis zu XML zu kennen. In einem Projekt wurde JSON innerhalb einer CSV-Datei gespeichert, was Fragen zum gewählten Format aufwarf.
    Eigenschaften deiner Programmiersprache kennen
    Für das Fachgespräch brauchst du grundlegendes Wissen über die Sprache, mit der du arbeitest. Besonders häufig fragte ich nach der Typisierung. In einem Projekt mit Java im Backend und JavaScript im Frontend fehlte dazu das nötige Wissen.
    Java: Im besprochenen Beispiel gehörten Objektorientierung sowie starke und statische Typisierung zu den erwarteten Grundlagen.
    JavaScript: Hier waren das prototypbasierte Modell sowie schwache und dynamische Typisierung relevant.
    Prüfe beim Vorbereiten, ob du deinen Quelltext einer anderen Person fachlich erklären kannst. Das gilt auch für Code, den du aus dem Internet übernommen hast.
    Häufige Fragen vorbereiten
    Mit dein:er Berufsschullehrer:in und dein:er Ausbilder:in kannst du mögliche Fragen für das Fachgespräch durchgehen. Weitere Erfahrungsberichte findest du in Foren; ich habe dazu auch eine Podcast-Reihe veröffentlicht.
    Bereite dich auf Grundlagen der Objektorientierung und auf Datenbanken vor. Ebenso gehören Datenstrukturen, Programmierung und Datenschutz zu den naheliegenden Themen. Verarbeitet dein Projekt beispielsweise Namen oder Gehaltsdaten von Mitarbeiter:innen, solltest du Fragen zum Datenschutz fachlich beantworten können.
    Den Code im Anhang verstehen
    In den Projekten von 2015 sah ich kaum rein funktionale Programme. Funktionale Sprachelemente tauchten jedoch häufig auf, etwa Lambdas in Java 8 oder LINQ in C#. Auch Funktionen als Parameter oder Rückgabewerte und Generics kamen vor.
    Jedes Element deines eingereichten Codes kann im Fachgespräch aufgegriffen werden. Ein Beispiel aus meinen Prüfungen war ein using-Block in C#: Beim Verlassen des Blocks wird die Dispose-Methode aufgerufen, damit die betreffende Ressource freigegeben wird. Der/die Prüfungsteilnehmer:in konnte diese Bedeutung des selbst verwendeten Schlüsselworts kaum erläutern.
    Alles,...
    34 min
  • SQL – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #19
    In der neunzehnten Episode meines Anwendungsentwickler-Podcasts setze ich die Reihe der häufigen Fragen im Fachgespräch mit dem Thema SQL fort.
    TL;DR
    SQL gehört zum Grundwissen für IT-Azubis und wird häufig im Fachgespräch gefragt, besonders wenn dein Abschlussprojekt mit einer relationalen Datenbank arbeitet. Ich gehe die fünf SQL-Befehlsgruppen durch und zeige dir, wie du Abfragen mit SELECT aufbaust. Dazu gehören die Begriffe Selektion und Projektion, die verschiedenen Joins sowie Aggregatsfunktionen mit GROUP BY. Für die Wahl der Datentypen konzentriere ich mich auf grundlegende Gruppen, wobei Datumswerte einen passenden Datumstyp erhalten sollten.
    Kapitelmarken
    [00:00:01] Einstieg und Informationen zum Fachgespräch
    [00:00:37] SQL als häufiges Prüfungsthema
    [00:02:30] Was ist SQL?
    [00:05:14] SQL-Befehle in fünf Gruppen einordnen
    [00:05:51] DDL: Tabellen und Strukturen definieren
    [00:06:35] DML: Daten bearbeiten
    [00:07:26] DQL: Daten mit SELECT abfragen
    [00:08:23] DCL: Zugriffsrechte vergeben und entziehen
    [00:09:06] TCL: Transaktionen mit COMMIT und ROLLBACK steuern
    [00:09:54] Fragen zur SQL-Syntax im Fachgespräch
    [00:10:34] Selektion und Projektion
    [00:11:49] Aufbau eines SELECT-Statements
    [00:12:55] Eindeutige Ergebnisse mit DISTINCT
    [00:13:53] Tabellen mit Joins verknüpfen
    [00:14:26] INNER JOIN
    [00:15:35] LEFT, RIGHT und FULL OUTER JOIN
    [00:17:56] NATURAL JOIN und mögliche Fehlerquellen
    [00:21:03] Aggregatsfunktionen und Performance
    [00:23:10] GROUP BY und passende Spalten im SELECT
    [00:25:54] Datentypen in Datenbanken
    [00:29:39] Ausblick auf weitere Datenbankthemen
    [00:30:25] Shownotes, Feedback und Fragen zur Prüfung
    [00:31:20] Newsletter und Checklisten für die Prüfung
    Inhalt
    SQL
    Was ist SQL?
    Structured Query Language, Abfragesprache für relationale Datenbanken.
    Was sind die Untergruppen von SQL und was sind übliche Statements?
    DDL: CREATE TABLE; DML: INSERT, UPDATE, DELETE; DQL: SELECT; DCL: GRANT, REVOKE; TCL: COMMIT, ROLLBACK.
    Was bedeuten Selektion und Projektion?
    Selektion: Auswahl von Zeilen (Datensätzen), Projektion: Auswahl von Spalten.
    Wie sieht ein übliches SELECT-Statement aus?
    SELECT Spalten FROM Tabellen WHERE Bedingung GROUP BY Spalten HAVING Bedingung ORDER BY Spalten
    Was macht ein SELECT DISTINCT?
    Liefert aus einer Ergebnismenge nur die eindeutigen Werte.
    Welche Arten von JOINs gibt es?
    INNER, [LEFT|RIGHT|FULL] OUTER, NATURAL
    Was ist eine Aggregatsfunktion?
    Aggregiert mehrere Werte zu einem Wert (z.B. Summe, Anzahl, Mittelwert).
    Was macht ein GROUP BY?
    Gruppiert bei der Anwendung einer Aggregatsfunktion nach bestimmten Spalten.
    Welche Datentypen gibt es in Datenbanken?
    Zeichenketten (z.B. VARCHAR), Zahlen (z.B. NUMBER) und Datum reichen (für die Prüfung). Einige Datenbanken bieten noch mehr Möglichkeiten: Boolean, Text usw.
    Literaturempfehlungen
    *(direkt beim Rheinwerk-Verlag bestellen*)
    Das passende Kapitel im OpenBook: 12 Datenbanken - Rheinwerk Computing :: IT-Handbuch für Fachinformatiker
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    SQL – Wikipedia
    DML, DDL, DCL - Kommandos
    Datenbank/Einführung in Joins – SELFHTML-Wiki Weitere Infos zum FachgesprächDu suchst noch mehr Tipps rund um das Fachgespräch? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um das Fachgespräch.Kennst du schon meine Hörbücher zur Vorbereitung auf das Fachgespräch? Unter dasperfektefachgespraech.de kannst du sie herunterladen. In insg. über 10 Stunden gehe ich über 200 Fragen im Detail durch und gebe Tipps für die Beantwortung.Und wenn du dich für meinen Newsletter einträgst, bekommst du immer direkt alle Neuigkeiten von dieser Seite in dein Postfach geliefert.Jetzt anmelden!
    Zusammenfassung
    SQL im Fachgespräch
    Wenn du dich als IT-Azubi auf dein Fachgespräch vorbereitest, solltest du SQL beherrschen. Fragen dazu kommen häufig vor, weil viele Abschlussprojekte mit relationalen Datenbanken arbeiten. Auch in den schriftlichen Prüfungen gehört SQL regelmäßig zu den Aufgaben. Das Thema betrifft sämtliche IT-Berufe.
    SQL steht für Structured Query Language und ist eine Abfragesprache für relationale Datenbanken. Der SQL-Standard legt einen gemeinsamen Bestand an Befehlen fest, mit dem du in standardkonformen Datenbanksystemen arbeiten kannst. Dazu zählen beispielsweise Oracle und Microsoft SQL Server. Für Stored Procedures bieten Datenbanksysteme eigene Sprachen an, etwa PL/SQL bei Oracle oder T-SQL bei Microsoft SQL Server.
    Die fünf SQL-Befehlsgruppen
    Ich ordne SQL in fünf Gruppen ein. Je nach Quelle findest du auch andere Einteilungen, bei denen einzelne Befehle anders zugeordnet werden.
    | Gruppe | Aufgabe | Typische Befehle |
    | --- | --- | --- |
    | DDL: Data Definition Language | Tabellen und ihre Struktur festlegen oder verändern | CREATE TABLE, ALTER TABLE, DROP TABLE |
    | DML: Data Manipulation Language | Daten in Tabellen bearbeiten | INSERT, UPDATE, DELETE |
    | DQL: Data Query Language | Daten abfragen | SELECT |
    | DCL: Data Control Language | Zugriffsrechte vergeben oder entziehen | GRANT, REVOKE |
    | TCL: Transaction Control Language | Transaktionen steuern | COMMIT, ROLLBACK |
    Als Merkhilfe gehe ich den Weg einer Datenbank durch: Zunächst lege ich die Tabellen an. Sobald die Struktur steht, füge ich Daten ein, die ich anschließend abfragen kann. Zusätzlich lege ich fest, welche Rechte ein:e Benutzer:in erhält.
    Mit COMMIT schreibe ich Änderungen einer Transaktion dauerhaft fest. ROLLBACK nimmt sie zurück.
    Selektion und Projektion
    Bei einer Selektion wählst du bestimmte Zeilen aus einer Tabelle aus, beispielsweise über eine WHERE-Bedingung.
    Die Projektion bestimmt, welche Spalten du abfragst. Wenn du in einem SELECT nur Vorname und Nachname angibst, erhältst du diese Spalten als Ergebnis.
    Ein SELECT-Statement aufbauen
    Für das Fachgespräch solltest du diesen Aufbau beschreiben können:
    sql
    SELECT Spalten
    FROM Tabellen
    WHERE Bedingung
    GROUP BY Spalten
    HAVING Bedingung
    ORDER BY Spalten;
    Welche Klauseln du brauchst, hängt von deiner Abfrage ab:
    Mit SELECT legst du die gewünschten Spalten fest.
    FROM nennt die Tabellen, aus denen du Daten liest.
    Über WHERE schränkst du die Zeilen anhand von Bedingungen ein.
    GROUP BY fasst Datensätze anhand bestimmter Spalten zu Gruppen zusammen.
    Mit HAVING schränkst du die Ergebnisse nach dem Gruppieren ein.
    ORDER BY sortiert das Ergebnis.
    Bei SELECT ist es sinnvoll, den Aufbau auch mündlich wiedergeben zu können. Fragen zur genauen Syntax anderer Befehle sind ebenfalls möglich, etwa zu CREATE TABLE oder INSERT.
    DISTINCT
    Durch SELECT DISTINCT erhältst du eindeutige Werte aus der Ergebnismenge. Wenn viele Personen denselben Nachnamen haben, erscheint dieser bei einer entsprechenden Abfrage einmal. Du kannst DISTINCT auch auf eine Kombination mehrerer Spalten anwenden.
    Tabellen mit Joins verknüpfen
    Als Beispiel dienen eine Personentabelle und eine Adresstabelle, die über eine Personen-ID zusammenhängen.
    INNER JOIN
    Ein INNER JOIN liefert Datensätze, bei denen die angegebenen Spaltenwerte auf beiden Seiten zusammenpassen. Im Beispiel erscheinen Personen mit einer passenden Adresse. Voraussetzung ist, dass die Join-Bedingung erfüllt ist.
    OUTER JOIN
    Mit einem Outer Join kannst du Datensätze erhalten, für die auf der anderen Seite eine passende Zeile fehlt.
    LEFT OUTER JOIN: Alle Datensätze der linken Tabelle bleiben erhalten. Steht die Personentabelle links, erscheinen alle Personen. Bei einer fehlenden Adresse enthalten die Adressspalten NULL.
    RIGHT OUTER JOIN: Alle Datensätze der rechten Tabelle bleiben erhalten. Im Beispiel erscheinen sämtliche Adressen, auch wenn ihnen keine Person zugeordnet ist.
    FULL OUTER JOIN: Datensätze beider Tabellen bleiben erhalten. Wo die passende Gegenseite fehlt, werden deren Spalten mit NULL ausgegeben.
    NATURAL JOIN
    Ein NATURAL JOIN verknüpft Tabellen automatisch anhand gleichnamiger Spalten. Du musst ihn ausdrücklich angeben. Wenn beide Tabellen eine Spalte PersonID enthalten, zieht die Datenbank diese für die Beziehung heran.
    Ich bevorzuge ausdrücklich angegebene Join-Beziehungen, weil gleiche Spaltennamen unterschiedliche Bedeutungen haben können. So kann ID in einer Tabelle die Person bezeichnen und in der anderen die Adresse. Auch eine später ergänzte gleichnamige Spalte kann verändern, welche Datensätze ein Natural Join liefert.
    Aggregatsfunktionen
    Mit einer Aggregatsfunktion fasst du mehrere Werte zu einem Ergebnis zusammen. COUNT(*) ermittelt beispielsweise, wie viele Personen eine Tabelle enthält. Über SUM(Gehalt) erhältst du die Summe ihrer Gehälter; eine Mittelwertfunktion berechnet den Durchschnitt.
    Solche Berechnungen sollten direkt in der Datenbank stattfinden. Wenn du dafür sämtliche Datensätze in dein Programm lädst, müssen sie zunächst übertragen und dort verarbeitet werden. Das erzeugt Netzwerkverkehr und beansprucht Speicher. Datenbanken sind für das Verarbeiten großer Datenmengen ausgelegt.
    GROUP BY mit Aggregatsfunktionen
    Wenn du Gehälter nach Abteilungen zusammenfassen möchtest, gruppierst du die Datensätze über die Abteilung:
    sql
    SELECT Abteilung, SUM(Gehalt)
    FROM Person
    GROUP BY Abteilung;
    Dadurch erhältst du eine Gehaltssumme pro Abteilung. Indem du die Abteilung mit ausgibst, kannst du jede Summe zuordnen.
    Achte bei solchen Abfragen darauf, welche Spalten du zusätzlich zur Aggregatsfunktion auswählst und nach welchen Spalten du gruppierst. Für das Beispiel gehören Abteilung im SELECT und GROUP BY Abteilung zusammen. Wenn du weitere Angaben wie Name und Vorname in die Gruppen aufnimmst, verändert sich, welche Datensätze zusammengefasst werden.
    Datentypen auswählen
    Für Prüfungsaufgaben konzentriere ich mich auf folgende grundlegende Gruppen:
    Zeichenketten: Je nach Datenbanksystem heißen passende Typen beispielsweise VARCHAR oder VARCHAR2. Manche Systeme bieten außerdem TEXT an.
    Zahlen: Du solltest angeben, ob du ganze Zahlen oder Zahlen mit Nachkommastellen brauchst. Bezeichnungen sind beispielsweise NUMBER, DECIMAL,...
    33 min
  • Normalisierung – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #18
    In der achzehnten Episode meines Anwendungsentwickler-Podcasts setze ich die Reihe der häufigen Fragen im Fachgespräch zum Thema Datenbanken mit dem Themenbereich der Normalisierung fort.
    TL;DR
    Ich gehe mit dir typische Fragen zur Normalisierung relationaler Datenbanken im Fachgespräch durch. Dabei erfährst du, wie mehrfach gespeicherte Daten zu Anomalien führen und wie du die ersten drei Normalformen anhand einer CD-Datenbank erklärst. Außerdem geht es um referenzielle Integrität und darum, wie eine Datenbank mit bestehenden Fremdschlüsselbeziehungen beim Löschen von Datensätzen umgeht. Für deine Prüfung empfehle ich dir ein vertrautes Beispiel aus deinem Abschlussprojekt oder deinem Betrieb.
    Kapitelmarken
    [00:00:01] Einstieg ins Fachgespräch
    [00:00:37] Datenbanken als Thema im Fachgespräch
    [00:01:34] Warum relationale Datenbanken normalisiert werden
    [00:02:20] Redundante Daten und Denormalisieren im Data-Warehouse
    [00:04:31] Einfügeanomalie
    [00:05:38] Änderungsanomalie
    [00:06:28] Löschanomalie
    [00:07:11] Antworten zu Normalformen im Fachgespräch strukturieren
    [00:08:40] Definitionen der ersten drei Normalformen
    [00:09:32] Ein eigenes Beispiel für die Prüfung wählen
    [00:10:46] Erste Normalform und atomare Werte
    [00:12:57] Zusammengesetzte Werte und Listen aufteilen
    [00:15:49] Zweite Normalform und vollständige Schlüsselabhängigkeit
    [00:19:58] m:n-Beziehungen und Zuordnungstabellen
    [00:21:50] Dritte Normalform und transitive Abhängigkeiten
    [00:23:49] Daten zu Interpret:innen in eine eigene Tabelle auslagern
    [00:25:25] 1:n-Beziehung zwischen Interpret:innen und CDs
    [00:26:38] Prüfungsrelevanz weiterer Normalformen
    [00:27:34] Referenzielle Integrität
    [00:29:04] Umgang mit Fremdschlüsselbeziehungen
    [00:29:26] Ungesicherte Referenzen unter der Bezeichnung No Action
    [00:30:25] Restrict: Löschen bei bestehenden Referenzen sperren
    [00:31:40] Cascade: abhängige Datensätze automatisch löschen
    [00:32:34] Set Null: Fremdschlüssel auf NULL setzen
    [00:33:41] Ausblick auf Datenbankmodellierung und SQL
    [00:34:30] Kontakt, Shownotes und Newsletter
    Inhalt
    Normalisierung
    Warum werden Datenbanken normalisiert?
    Vermeidung von Redundanzen, die zu Anomalien führen können.
    Welche Anomalien gibt es und was sind Beispiele dafür?
    Einfüge-, Änderungs- und Löschanomalie
    Normalformen
    Normalform: nur atomare Werte
    Normalform: 1. Normalform und alle Attribute sind voll funktional vom Primärschlüssel abhängig (hier werden die m:n-Beziehungen aufgelöst)
    Normalform: 2. Normalform und keine transitiven Abhängigkeiten (hier werden die 1:n-Beziehungen aufgelöst)
    Was bedeutet referentielle Integrität?
    Alle Fremdschlüssel zeigen auf gültige Datensätze.
    Welche technischen Maßnahmen zur Wahrung der referentiellen Integrität gibt es?
    No Action, Restrict, Cascade, Set Null
    Literaturempfehlungen
    *(direkt beim Rheinwerk-Verlag bestellen*)
    Das passende Kapitel im OpenBook: 12 Datenbanken - Rheinwerk Computing :: IT-Handbuch für Fachinformatiker
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Normalisierung (Datenbank) – Wikipedia
    mysql - Setting up table relations what do "Cascade", "Set Null" and "Restrict" do? - Stack Overflow
    Advanced MySQL - Referentielle Integrität - Fremdschlüssel - Referenzaktionen Weitere Infos zum FachgesprächDu suchst noch mehr Tipps rund um das Fachgespräch? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um das Fachgespräch.Kennst du schon meine Hörbücher zur Vorbereitung auf das Fachgespräch? Unter dasperfektefachgespraech.de kannst du sie herunterladen. In insg. über 10 Stunden gehe ich über 200 Fragen im Detail durch und gebe Tipps für die Beantwortung.Und wenn du dich für meinen Newsletter einträgst, bekommst du immer direkt alle Neuigkeiten von dieser Seite in dein Postfach geliefert.Jetzt anmelden!
    Zusammenfassung
    Warum Datenbanken normalisiert werden
    Wenn ich Kundendaten zusammen mit gekauften Artikeln in einer Tabelle speichere, stehen dieselben Kundeninformationen bei jedem Kauf erneut in einem Datensatz. Solche mehrfach abgelegten Daten heißen Redundanzen. Daraus können Anomalien entstehen, die durch das Normalisieren vermieden werden sollen:
    Einfügeanomalie: Du möchtest eine:n Kund:in anlegen, bevor eine Bestellung vorliegt. Sind die Artikeldaten in derselben Tabelle als Pflichtfelder definiert, lässt sich der Datensatz erst mit diesen Angaben speichern.
    Änderungsanomalie: Ändert sich der Nachname einer Person, müssen sämtliche Datensätze mit diesem Namen angepasst werden. Wird dabei ein Datensatz übersehen, enthält die Datenbank widersprüchliche Angaben.
    Löschanomalie: Beim Löschen eines Artikeldatensatzes verschwinden zugleich die darin gespeicherten Kundendaten. Hat die betreffende Person nur diesen Artikel gekauft, gehen ihre Daten vollständig verloren.
    Bewusst redundant gespeicherte Daten im Data-Warehouse
    Für ein Data-Warehouse kann ich Daten bewusst redundant ablegen, damit große Datenmengen schnell abgefragt werden können. Enthält eine Tabelle bereits die Kundendaten zusammen mit den Bestellungsdaten und den zugehörigen Artikeln, entfallen zusätzliche Joins für diese Informationen.
    Ein klassisches Data-Warehouse enthält häufig einen zeitlichen Ausschnitt aus der Produktionsdatenbank. Dieser sogenannte dispositive Datenstand dient dazu, Auswertungen durchzuführen. Wenn dadurch Abfragen schneller werden, kommt auch das gezielte Denormalisieren einer Datenbank infrage.
    Deine Antwort im Fachgespräch vorbereiten
    Bei einer offenen Frage zu Normalformen empfehle ich dir, zunächst die allgemeinen Definitionen zu nennen und anschließend ein Beispiel schrittweise durchzugehen. Daran kannst du auch Fremdschlüssel und Beziehungen zwischen Tabellen erläutern.
    Wähle möglichst eine Datenbank aus deinem Abschlussprojekt oder deinem Betrieb, mit der du vertraut bist. So kannst du gegenüber den Prüfer:innen begründen, warum bestimmte Daten auf diese Weise abgebildet wurden. Für die folgenden Schritte verwende ich eine CD-Datenbank aus dem Wikipedia-Artikel zum Normalisieren.
    Erste Normalform: atomare Werte
    Die erste Normalform verlangt, dass eine Tabelle ausschließlich atomare Werte enthält. Jeder Wert steht dabei für eine einzelne Information.
    Eine vollständig in einem Feld gespeicherte Adresse wird dafür auf passende Spalten verteilt, etwa eine eigene Spalte für die Postleitzahl und eine für den Ort. Dadurch lässt sich gezielt nach diesen Angaben suchen, ohne den gesamten Adresstext zerlegen zu müssen.
    Auch eine Liste gekaufter CD-IDs in einem einzelnen Feld enthält mehrere Werte. Im beschriebenen Beispiel entsteht deshalb für jede gekaufte CD eine eigene Zeile, die zunächst auch die Kundendaten erneut enthält. Jede Zelle enthält nun einen einzelnen Wert. Die wiederholten Kundendaten führen allerdings zu Redundanzen, die in weiteren Schritten bearbeitet werden.
    Zusätzliche Spalten wie CD1 oder CD2 würden bei weiteren Käufen Änderungen an der Tabellenstruktur erfordern. Bei Personen mit wenigen Käufen blieben außerdem viele dieser Felder leer.
    Zweite Normalform: abhängig vom gesamten Schlüssel
    Damit die zweite Normalform vorliegt, muss die erste erfüllt sein. Alle Nichtschlüsselattribute müssen vollständig funktional vom gesamten Primärschlüssel abhängen.
    In meinem CD-Beispiel enthält die Ausgangstabelle pro Zeile einen Track samt Albumdaten. Ein Datensatz wird durch die Kombination aus CD-ID und Track-ID eindeutig bestimmt. Der Albumtitel hängt dabei bereits von der CD-ID allein ab. Damit besteht eine Abhängigkeit von einem Teil des zusammengesetzten Schlüssels.
    Die Albumdaten werden deshalb in eine eigene Tabelle ausgelagert:
    Die Tabelle CD enthält die CD-ID und den Albumtitel sowie zunächst Angaben zur interpretierenden Person.
    Die Tabelle Track enthält die CD-ID als Fremdschlüssel, die Track-ID als weiteren Teil des Primärschlüssels und den Titel des Tracks.
    In der CD-Tabelle hängt der Albumtitel von der CD-ID ab. Der Track wird in der Track-Tabelle über die vollständige Kombination aus CD-ID und Track-ID bestimmt.
    Eine CD kann mehrere Titel enthalten, während derselbe Titel auf mehreren CDs erscheinen kann, etwa auf einem Best-of-Album. Diese m:n-Beziehung wird im Podcast im Zusammenhang mit der zweiten Normalform besprochen. Eine Zuordnungstabelle enthält die Schlüssel der beteiligten Datensätze.
    Dritte Normalform: transitive Abhängigkeiten auflösen
    Die dritte Normalform setzt die zweite voraus. Transitive Abhängigkeiten entstehen, wenn ein Nichtschlüsselattribut über ein weiteres Nichtschlüsselattribut vom Primärschlüssel abhängt.
    In der CD-Tabelle steht zunächst neben der interpretierenden Person auch deren Gründungsjahr. Dieses Jahr gehört zur Person beziehungsweise zur Band. Über diese Angabe hängt es mittelbar von der CD-ID ab.
    Ich lagere die entsprechenden Daten in eine eigene Tabelle aus. Daraus ergibt sich folgendes Modell:
    CD: CD-ID, Albumtitel und Interpret:innen-ID.
    Interpret:innen: Interpret:innen-ID, Name und Gründungsjahr.
    Track: CD-ID, Track-ID und Titel des Tracks.
    Das Gründungsjahr hängt damit direkt vom Schlüssel der Interpret:innen-Tabelle ab. Zwischen dieser Tabelle und der CD-Tabelle besteht im Beispiel eine 1:n-Beziehung: Eine interpretierende Person kann mehrere CDs veröffentlichen. Dabei gilt die Annahme, dass jede CD genau einer Person beziehungsweise Band zugeordnet ist. Alben mit mehreren beteiligten Künstler:innen sind in diesem Modell ausgeklammert.
    Für deine Prüfung empfehle ich dir, die ersten drei Normalformen anhand eines Beispiels erklären zu können. Weitere Formen wie die Boyce-Codd-Normalform werden erwähnt; in meinen bisherigen schriftlichen und mündlichen Prüfungen habe ich dazu keine Fragen erlebt.
    Referenzielle Integrität
    Wenn die Interpret:innen-ID einer CD auf einen vorhandenen Datensatz in der Interpret:innen-Tabelle verweist, lässt sich diese Beziehung korrekt auflösen. Referenzielle Integrität bedeutet, dass Fremdschlüssel auf gültige Datensätze zeigen.
    ...
    36 min
  • Relationale Datenbanken – Häufige Fragen im Fachgespräch – Anwendungsentwickler-Podcast #17
    In der siebzehnten Episode meines Anwendungsentwickler-Podcasts geht es um relationale Datenbanken und mögliche Fragen dazu im Fachgespräch.
    TL;DR
    Für dein Fachgespräch als IT-Azubi gehe ich häufige Fragen zu relationalen Datenbanken und verschiedenen NoSQL-Datenbanken durch. Du erfährst, wie Tabellen aufgebaut sind, welche Aufgaben Primärschlüssel und Fremdschlüssel haben und wie du Beziehungen über Kardinalitäten beschreibst. An Beispielen mit Bestellungen und Artikeln wird deutlich, wo Fremdschlüssel stehen und wann du eine Zwischentabelle brauchst. Ein objektrelationaler Mapper (ORM) verbindet die Tabellen mit den Objekten deiner Programmiersprache.
    Kapitelmarken
    [00:00:01] Informationen zum Fachgespräch
    [00:00:37] Datenbanken als Thema im Fachgespräch
    [00:01:30] Datenbankformen und ihre Prüfungsrelevanz
    [00:03:06] NoSQL in der Praxis und im Abschlussprojekt
    [00:04:47] Objektorientierte Datenbanken
    [00:05:44] Key-Value-Stores und das Warenkorb-Beispiel
    [00:06:29] Dokumentendatenbanken
    [00:07:50] Graphdatenbanken und Graphalgorithmen
    [00:09:39] Spaltenorientierte Datenbanken
    [00:11:19] NoSQL als Ergänzung relationaler Datenbanken
    [00:12:15] Aufbau relationaler Datenbanken
    [00:13:08] Mengenlehre und flexible SQL-Abfragen
    [00:14:20] Bekannte relationale Datenbanksysteme
    [00:15:25] Primärschlüssel und Fremdschlüssel
    [00:16:41] Natürliche und künstliche Schlüssel
    [00:18:10] Anonyme Schlüssel und sprechende Materialnummern
    [00:20:24] Kardinalitäten in beide Richtungen erklären
    [00:21:59] Beispiele für Beziehungen zwischen Tabellen
    [00:24:52] 1:n-Beziehungen mit Fremdschlüsseln umsetzen
    [00:26:49] Fremdschlüssel bei 1:1-Beziehungen
    [00:28:01] Zuordnungstabellen für m:n-Beziehungen
    [00:29:22] Objektrelationale Mapper
    [00:30:52] Ausblick auf weitere Datenbankthemen
    [00:31:23] Shownotes, Feedback und Kontakt
    [00:32:47] Newsletter und Checklisten
    Inhalt
    Datenbanken
    Welche Formen von Datenbanken gibt es?
    relationale, hierarchische, spaltenorientierte, objektorientierte Datenbanken, Key-Value-Stores, Dokumentendatenbanken, Graphendatenbanken
    Was ist NoSQL und wofür braucht man das?
    Steht für "Not only SQL". Fasst die "modernen" Datenbanken zusammen. Sinnvolle Ergänzung zu relationalen Datenbanken.
    Relationale Datenbanken
    Wie sind relationale Datenbanken aufgebaut?
    Tabellen (Relationen) und Beziehungen zwischen diesen.
    Was ist der Vorteil relationaler Datenbanken?
    Sie sind flexibel mit SQL abfragbar.
    Nennen Sie einige bekannte relationale Datenbanken.
    Oracle, Microsoft SQL Sever, MySQL, DB2, PostgreSQL, SQLite
    Was sind Primär- und Fremdschlüssel?
    Primärschlüssel identifizieren einen Datensatz eindeutig.
    Was sind natürliche und künstliche Schlüssel?
    Natürliche Schlüssel sind Attribute der Entitäten, die diese bereits eindeutig identifizieren. Künstliche Schlüssel werden zusätzlich für die Entität vergeben.
    Was sind anonyme Schlüssel?
    Schlüssel ohne Bedeutung (z.B. forlaufende Nummer im Vergleich zu Materialnummern wie "HO12CM0").
    Welche Kardinalitäten gibt es und was sind Beispiele?
    1:1 (Benutzer/Login), 1:n (Benutzer/Bestellung), m:n (Benutzer/Benutzergruppe)
    Wie werden die einzelnen Kardinalitäten (1:1, 1:n, m:n) in Tabellen umgesetzt?
    1:1: Fremdschlüssel in beliebiger Tabelle, 1:n: Fremdschlüssel in n-Tabelle, m:n: Zwischentabelle für Fremdschlüssel
    Was ist ein ORM?
    Objekt-relationaler Mapper, verknüpft objektorientiere Programmierung mit der relationalen Datenbank.
    Literaturempfehlungen
    *(direkt beim Rheinwerk-Verlag bestellen*)
    Das passende Kapitel im OpenBook: 12 Datenbanken - Rheinwerk Computing :: IT-Handbuch für Fachinformatiker
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Zusammenfassung
    Datenbanken im Fachgespräch
    Für dein Fachgespräch empfehle ich dir, passende Beispiele aus deinem Abschlussprojekt vorzubereiten. Gerade bei Beziehungen zwischen Tabellen hilft es, wenn du ein konkretes Beispiel bereits durchdacht hast. Relationale Datenbanken und SQL gehören zu den Themen, die in den Prüfungen der IT-Berufe regelmäßig vorkommen. Auch aktuelle Datenbanktechnologien wie NoSQL können im Fachgespräch angesprochen werden.
    Welche Datenbankformen gibt es?
    Neben relationalen Datenbanken gibt es hierarchische Datenbanken sowie objektorientierte und spaltenorientierte Systeme. Hinzu kommen Key-Value-Stores, Dokumentendatenbanken und Graphdatenbanken.
    Unter NoSQL fasse ich folgende fünf Formen zusammen:
    Objektorientierte Datenbanken, beispielsweise db4o, speichern Objekte aus der objektorientierten Programmierung. Dabei können sie auch die Verweise zwischen Objekten abbilden. Das erleichtert es, Objekte dauerhaft abzulegen.
    Key-Value-Stores speichern Schlüssel-Wert-Paare und lassen sich als große Hashmap vorstellen. Sie sind auf schnelle Zugriffe ausgelegt. Als Beispiel kann ein kompletter Warenkorb unter einem Schlüssel gespeichert werden, sodass ein Zugriff seinen gesamten Inhalt liefert.
    Dokumentendatenbanken wie CouchDB oder MongoDB speichern Dokumente, häufig im JSON-Format. Durch ihren schemalosen Ansatz lassen sich Dokumente mit unterschiedlichen Attributen ablegen und durchsuchen. Das passt beispielsweise zu einem XML-Format, das in mehreren Varianten vorkommt.
    Graphdatenbanken wie Neo4j bilden Beziehungen durch Knoten und Kanten ab. Damit lassen sich etwa Kontakte in sozialen Netzwerken über mehrere Ebenen durchsuchen. Eigene Abfragesprachen und etablierte Graphalgorithmen helfen dabei, beispielsweise einen kürzesten Weg zu finden.
    Spaltenorientierte Datenbanken legen die Werte einer Spalte zusammenhängend ab. Wenn eine Abfrage nur bestimmte Spalten auswertet, muss dadurch ein kleinerer Datenbereich gelesen werden. Das ist etwa für Data-Warehouse-Anwendungen und große Datenmengen relevant. Als Vertreter nenne ich Apache Cassandra.
    Die verbreitete Lesart "Not Only SQL" beschreibt, wie sich solche Systeme mit relationalen Datenbanken kombinieren lassen. Ein Key-Value-Store kann beispielsweise einen Warenkorb zwischenspeichern. Für Analysen können Daten aus einer relationalen Datenbank in ein spaltenorientiertes System übertragen werden.
    Wie sind relationale Datenbanken aufgebaut?
    In Tabellen, auch Relationen genannt, stehen die Datensätze zeilenweise. Die Spalten beschreiben ihre Attribute. Eine Personentabelle kann etwa Namen und Adresse enthalten. Zwischen den Tabellen bestehen Beziehungen.
    Die mathematische Grundlage stammt aus der Mengenlehre, für die seit Langem etablierte Algorithmen existieren. Mit SQL lassen sich flexible Abfragen formulieren, auch wenn diese beim Entwurf der Datenbank noch nicht vorgesehen waren. So kannst du verschiedene Bedingungen zu einer Suche kombinieren.
    Zu den bekannten relationalen Datenbanksystemen gehören Oracle, Microsoft SQL Server, IBM Db2, MySQL, PostgreSQL und SQLite.
    Welche Aufgaben haben Schlüssel?
    Ein Primärschlüssel identifiziert einen Datensatz innerhalb einer Tabelle eindeutig.
    Ein Fremdschlüssel verweist auf einen Datensatz in einer bestimmten Tabelle. Der Verweis kann auch innerhalb derselben Tabelle liegen.
    Wenn in meiner Personentabelle die Berufs-ID 3 steht, verweist sie auf den entsprechenden Beruf in der Berufstabelle. Dort identifiziert die 3 beispielsweise den Datensatz "Softwareentwickler:in". In der Personentabelle ist diese ID der Fremdschlüssel; in der Berufstabelle dient sie als Primärschlüssel.
    Natürliche und künstliche Schlüssel
    Ein natürlicher Schlüssel ergibt sich aus vorhandenen Attributen, sofern diese im jeweiligen Datenmodell eindeutig sind. Eine ISBN kann dafür ein Beispiel sein.
    Bei einem künstlichen Schlüssel wird ein zusätzlicher Wert vergeben. Häufig ist das eine fortlaufende Zahl, die beim Einfügen eines Datensatzes erhöht wird.
    Anonyme Schlüssel
    Ein anonymer Schlüssel trägt keine fachliche Bedeutung. Eine fortlaufende ID eignet sich dafür. Eine Materialnummer kann dagegen Angaben über das Material oder seine Stärke enthalten.
    Für Beziehungen zwischen Tabellen empfehle ich dir anonyme Schlüssel. Wenn sich die Bedeutung einer sprechenden Materialnummer ändert, müssten sonst auch die Schlüssel und ihre Verweise angepasst werden. Eine Materialnummer kannst du als zusätzliches Attribut speichern, damit ein:e Sachbearbeiter:in damit arbeiten kann.
    Wie beschreibst du Kardinalitäten?
    Bei einer Beziehung gibst du an, wie viele Datensätze einander zugeordnet sind. Beschreibe dabei immer beide Richtungen.
    | Kardinalität | Beziehung und Beispiel |
    | --- | --- |
    | 1:1 | Ein Datensatz aus Tabelle A gehört genau zu einem Datensatz aus Tabelle B und umgekehrt. Ein Beispiel sind Benutzer:innendaten und Login-Daten, wenn jede:r Benutzer:in genau einen Login hat und jeder Login genau einer Person gehört. |
    | 1:n | Einem Datensatz aus Tabelle A können mehrere Datensätze aus Tabelle B zugeordnet sein. Jeder dieser Datensätze aus B gehört zu einem Datensatz aus A. Beispielsweise kann ein:e Kund:in mehrere Bestellungen aufgeben, während jede Bestellung genau einer Person zugeordnet ist. |
    | m:n | Auf beiden Seiten können mehrere Datensätze miteinander verbunden sein. Eine Bestellung kann mehrere Artikel enthalten; derselbe Artikel kann in mehreren Bestellungen vorkommen. |
    Wenn Benutzer:innendaten und Login-Daten in getrennten Tabellen stehen, lassen sich Zugriffsrechte gezielt vergeben. Ein:e Administrator:in, der/die ein Passwort zurücksetzt, braucht beispielsweise keinen Zugriff auf Gehaltsdaten. Für ein:e Sachbearbeiter:in, der/die Gehaltsdaten bearbeitet, können die Login-Daten gesperrt bleiben.
    Wie setzt du diese Beziehungen um?
    Über Fremdschlüssel verknüpfst du die Tabellen miteinander:
    Bei 1:n steht der Fremdschlüssel auf der n-Seite. In der Bestellungstabelle wird also die ID der zugehörigen Person gespeichert. Deren Bestellungen findest du anschließend über diese ID. Mehrere Bestell-IDs in einem einzelnen Feld der Personentabelle würden die erste Normalform verletzen.
    Bei 1:1 kann der Fremdschlüssel grundsätzlich auf beiden Seiten stehen....
    34 min
  • Häufige Fragen zur mündlichen Prüfung (FAQ zu Präsentation und Fachgespräch, Teil 2) – Anwendungsentwickler-Podcast #16
    In der sechzehnten Episode meines Anwendungsentwickler-Podcasts beende ich die häufigen Fragen rund um die mündliche Prüfung, also die Projektpräsentation und das Fachgespräch. Die Fragen sind auf zwei Episoden aufgeteilt. In dieser Episode geht es um das Fachgespräch und die Benotung.
    Inhalt
    Fachgespräch
    Welche Fragen werden im Fachgespräch gestellt?
    Das wüsste ich auch gerne ;-)
    Wie antwortet man optimal auf die gestellten Fragen?
    Strukturiert und prägnant. Direkt zum Punkt kommen. Trotzdem so viel Wissen wie möglich zeigen.
    Was soll ich machen, wenn ich eine Frage nicht beantworten kann?
    Ehrlich sein, ggfs. um Rückstellung der Frage bitten.
    Was soll ich machen, wenn ich eine Frage nicht verstehe?
    Einen Moment nachdenken. Ansonsten Rückfrage stellen.
    Sollte man im Fachgespräch die Tafel nutzen (z.B. für ERM)?
    Ich empfehle nein.
    Wie macht man komplexe Fragestellungen deutlich?
    Mit Beispielen. Am besten aus dem eigenen Projekt (also z.B. nicht Klasse/Objekt -> Auto/BMW).
    Wie reagiere ich auf gefundene Fehler in meinem Projekt?
    Am besten ehrlich. Nicht rausreden oder die Schuld von sich weisen.
    Benotung
    Wie wird die mündliche Prüfung benotet?
    Die mündliche Prüfung (Präsentation und Fachgespräch) bildet die Hälfte der Note von Prüfungsteil A. Die andere Hälfte bildet die Projektdokumentation. Für Präsentation und Fachgespräch gibt es eine gemeinsame Note; es wird nicht zwischen den beiden Teilen unterschieden.
    Wann bekommt man die Noten mitgeteilt?
    Nach dem Fachgespräch. Das Zeugnis bekommt man aber erst einige Zeit später.
    Was passiert bei Unstimmigkeiten bzgl. der Note?
    Der Prüfling kann Einspruch einlegen.
    Wann ist meine Ausbildung offiziell beendet?
    Nach Bestehen der mündlichen Prüfung und Vorlage der Bestätigung beim Arbeitgeber.
    Literaturempfehlungen
    *
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Checkliste für die Projektpräsentation und das Fachgespräch
    Häufige Fragen im Fachgespräch
    Fragen Fachgespräch (fachinformatiker.de)
    Weitere Infos zur ProjektpräsentationDu suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.Jetzt anmelden!
    27 min
  • Häufige Fragen zur mündlichen Prüfung (FAQ zu Präsentation und Fachgespräch, Teil 1) – Anwendungsentwickler-Podcast #15
    In der fünfzehnten Episode meines Anwendungsentwickler-Podcasts geht es um häufige Fragen rund um die mündliche Prüfung, also die Projektpräsentation und das Fachgespräch. Die Fragen sind auf zwei Episoden aufgeteilt. In dieser Episode geht es um die Rahmenbedingungen, die Unterlagen und Hardware sowie die Präsentation.
    Inhalt
    Rahmenbedingungen
    Wann sollte ich am Prüfungsort eintreffen?
    So früh wie möglich, z.B. eine Stunde vor Beginn der Prüfung.
    Welche Kleidung soll ich anziehen?
    Vernünftige Kleidung, eher over- als underdressed. Wichtig: Wohlfühlen!
    Unterlagen und Hardware
    In welcher Form muss ich das Berichtsheft vorlegen?
    In einer vernünftig lesbaren, chronologisch sortierten Form (z.B. Schnellhefter).
    Was passiert, wenn ich das Berichtsheft vergesse?
    Du wirst nicht zur Prüfung zugelassen.
    Muss ich meinen eigenen Beamer mitbringen?
    Kommt auf die IHK an. Ist ggfs. zu empfehlen, wenn man eine besondere Hardware oder Auflösung verwendet.
    Soll ich ein Handout meiner Präsentation mitbringen?
    Nein, das ist völlig überflüssig und landet nur im Müll.
    Darf ich Karteikarten als Gedankenstütze für die Präsentation nutzen?
    Ja, aber ich empfehle eher den Präsentationsmodus. Am besten ist natürlich, wenn man alles auswendig kann.
    Präsentation
    Muss ich PowerPoint für die Präsentation nutzen?
    Nein, ist aber der Standard.
    Welche Zielgruppe soll ich für die Projektpräsentation wählen?
    Den Prüfungsausschuss (und nicht Kunden/Kollegen).
    Achtung: Die Vorgaben der IHK sind zu beachten. Wenn der Prüfungsausschuss nicht als Zielgruppe gewählt werden kann/darf, hat man sich danach zu richten!
    Soll ich Zwischenfragen der Prüfer während der Präsentation erlauben?
    Nein.
    Darf ich Firmengeheimnisse in der Präsentation zeigen?
    Muss der Chef entscheiden. Der Prüfungsausschuss ist zur Verschwiegenheit verpflichtet.
    Soll ich die Präsentation im Format 16:9 oder 4:3 gestalten?
    Ich empfehle 4:3.
    Soll ich mein fertiges Programm mit zur Prüfung bringen?
    Gerne, aber besser nicht in die Präsentation einbauen.
    Soll ich eine Live-Demo meiner Anwendung zeigen?
    Besser nicht.
    Literaturempfehlungen
    *
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Checkliste für die Projektpräsentation und das Fachgespräch
    Projektpräsi ohne Powerpoint? (fachinformatiker.de)
    Präsentation - Kleiderordnung (fachinformatiker.de)
    Präsentation aufnehmen (fachinformatiker.de)
    Fragen - Präsentation (fachinformatiker.de)
    Projektvortrag - Zielgruppe (fachinformatiker.de)
    Projektarbeit Vortrag - Tipps (fachinformatiker.de)
    Projektarbeit Vortrag (fachinformatiker.de)
    Präsentation - Abschlussprojekt mitbringen? (fachinformatiker.de)
    Präsentation: 16:9 oder 4:3? (fachinformatiker.de)
    Präsentationsunterlagen fürs Projekt mit Doku abgeben oder erst später? (fachinformatiker.de)
    Weitere Infos zur ProjektpräsentationDu suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.Jetzt anmelden!
    34 min
  • Ablauf der mündlichen Abschlussprüfung (Präsentation und Fachgespräch) – Anwendungsentwickler-Podcast #14
    In der vierzehnten Episode meines Anwendungsentwickler-Podcasts geht es um den Ablauf am Tag der mündlichen Abschlussprüfung.
    Inhalt
    Der Ablauf der mündlichen Prüfung ist sicherlich von IHK und Prüfungsausschuss abhängig, aber meiner Erfahrung nach wird das folgende Vorgehen sehr häufig angewendet.
    Vorbereitung der Präsentation
    Prüfer verlassen den Prüfungsraum und geben Zeichen zum Aufbauen
    Hardware aufbauen (meist während der Vorgänger abbaut)
    Präsentation testen (Kontrast/Lesbarkeit, Auflösung, Presenter)
    Dokumente bereitlegen: Prüfungseinladung der IHK, Personalausweis, Ausbildungsnachweis (Berichtsheft)
    Getränk bereitstellen
    Warten (ggfs. auch ein wenig länger)
    Begrüßung durch den Prüfungsausschuss
    Kurze Vorstellung der Ausschussmitglieder
    Überprüfung der Identität des Prüflings
    Frage nach Gesundheit des Prüflings
    Ablauf der Prüfung klären
    Präsentation des Abschlussprojekts
    Exakt 15 Minuten einhalten!
    Presenter* nutzen!
    Keine Zwischenfragen erlauben!
    Zielgruppe: Prüfungsausschuss (nicht Kunden oder Kollegen)
    ggfs. Programm zeigen
    Raum verlassen (Prüfer bewerten Präsentation und überlegen sich Fragen für das Fachgespräch)
    Fachgespräch
    Einstieg mit Verständnisfragen (falls vorhanden)
    technische/wirtschaftliche Fragen zum Projekt
    sonstige technische/wirtschaftliche Fragen (insb. Dinge, die nicht im Projekt bearbeitet wurden)
    Raum verlassen (Prüfer bewerten Projektdokumentation, Präsentation und Fachgespräch)
    Bewertung
    Bekanntgabe der Noten mit kurzer Besprechung der Abzüge (falls vorhanden ;-) )
    Aushändigung des Nachweises der bestandenen Prüfung (nur ein Zettel mit Kreuz, noch kein Zeugnis!)
    ggfs. Berufsschulzeugnis abgeben, falls die Note auf das IHK-Zeugnis soll
    Nach der Prüfung
    Chef bescheid sagen und Gehaltserhöhung fordern ;-)
    Feiern! :-D
    Zeugnis kommt irgendwann per Post oder wird auf der Abschlussfeier übergeben
    Bei Nichtbestehen
    der nicht bestandene Teil kann bei der nächsten Prüfung in einem halben Jahr wiederholt werden
    Literaturempfehlungen
    *
    Links
    Permalink zu dieser Podcast-Episode
    RSS-Feed des Podcasts
    Checkliste für die Projektpräsentation und das Fachgespräch
    Die 11 häufigsten Fehler in der Projektpräsentation - Anwendungsentwickler-Podcast #7
    Häufige Fragen im Fachgespräch
    Logitech R700 Professional Presenter*
    *
    Welche Fragen könnten die Prüfer stellen? (fachinformatiker.de)
    Weitere Infos zur ProjektpräsentationDu suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.Jetzt anmelden!
    34 min

About IT-Berufe-Podcast

From the publisher's feed

Der Podcast rund um die Ausbildung in den IT-Berufen (insb. Fachinformatiker für Anwendungsentwicklung) von Stefan Macke.

More shows like IT-Berufe-Podcast

Streitkräfte und Strategien by NDR

Streitkräfte und Strategien

43 Listeners

Sternengeschichten by Florian Freistetter

Sternengeschichten

45 Listeners

Geschichten aus der Geschichte by Richard Hemmer und Daniel Meßner

Geschichten aus der Geschichte

176 Listeners

c’t uplink - der IT-Podcast aus Nerdistan by c’t Magazin

c’t uplink - der IT-Podcast aus Nerdistan

10 Listeners

MORD AUF EX by Leonie Bartsch & Linn Schütze

MORD AUF EX

112 Listeners

{ungeskriptet} - Der Meinungsfreiheit verpflichtet. by Ben Berndt

{ungeskriptet} - Der Meinungsfreiheit verpflichtet.

48 Listeners