Ich habe in meinem anderen Beitrag bereits über die Shopware Developer Schulung gesprochen – hier setze ich diesen Bericht mit der Advanced Schulung fort.
Beginn
Start war wieder um 09:00 Uhr in Schöppingen. Man kannte sich mittlerweile etwas aus – also direkt Kaffee holen und damit in den Schulungsraum. Heute stand ExtJs auf dem Plan…
Dozenten und Teilnehmer waren schon alle da und es ging auch relativ fix los – es gab noch einmal die Einleitung und Vorstellung da zwei neue Teilnehmer dazu gekommen waren.
Insgesamt gab es 14 Teilnehmer (damit voll ausgebucht) – wie zuvor gab es hier absolute Rookies und erfahrene Entwickler.
Inhalte
Doctrine Models
Hier ging es um Doctrine Models in Shopware und wie man diese umsetzt und anwendet. Wir haben uns den Querybuilder im Detail angeschaut und welche Annotationen man wie und wo nutzen kann. Natürlich durften Getter und Setter nicht fehlen. Repositories wurden ebenfalls angeschaut – Sie bilden die Schnittstelle zwischen Logik und ORM.
Backend Entwicklung
Hier wurde gezeigt wie man das Backend erweitert – entweder mit dem bearbeiten von bestehenden Funktionalitäten oder komplettes aufsetzen eines eigenen Views (Listing, Detail etc.) Hier möchte ich nicht all zu sehr ausholen, es ist ein komplexes Thema. Hierbei wurden hauptsächlich Grundfunktionen vermittelt – wer sich davon einen tiefen Einblick in ExtJs erhofft wird enttäuscht. 2-3 interessante Fakts konnte ich hier auch mitnehmen.
Bundles
Ein ganz eigenes Thema seit Shopware 5 – Bundles. Seit Shopware 5.0 ist das ja von
- SearchBundle
- SearchBundleDBAL
- StoreFrontBundle
auf
- AccountBundle
- AttributeBundle
- ControllerBundle
- CustomerSearchBundle
- CustomerSearchBundleDBAL
- ESIndexingBundle
- EmotionBundle
- FormBundle
- MediaBundle
- PluginInstallerBundle
- SearchBundle
- SearchBundleDBAL
- SearchBundleES
- StoreFrontBundle
angestiegen. Wir haben uns das SearchBundle (FacetHandler) und das StoreFrontBundle angeschaut. Dazu gab es noch kurze Info was Context für Daten bereit stellt (kurz Context liefert Globale Shopdaten mit denen die Bundles dann arbeiten).
Programmieraufgaben
Zwischen diesen ganzen Themen gab es immer Programmieraufgaben. Hier gab es zwei verschiedene Dozenten pro Thema. Den ersten fand ich besser, da er eine Liste mit Dateien herunter geschrieben hat, die wir bearbeiten müssen. Im nachhinein hätte man im Plugin Ordner einfach nach den TODOs suchen müssen, in dem Moment hatte ich nicht daran gedacht. Sollte man eventuell kurz zu Anfang erwähnen.
Die Geschwindigkeit war relativ schnell – für Anfänger auf jeden Fall ein hartes Brot. Ich muss manchmal kurz stocken, da ich neben dem Notizen machen nicht mit dem zuhören hinterher kam.
Programmiert hat man unter Ubuntu 16.04 und PHPStorm. Falls man zur Schulung geht, sollte man sich sinnvollerweise Phpstorm schonmal angeschaut haben (hier gibt es eine 30 Tage Testversion)
After work
Am zweiten Tag (1 Tag der Advanced Schulung) kannte man schon so einige Gesichter. Man hat sich über Erfahrungen und den Job ausgetauscht (wie nutzt Ihr Shopware, was für Setups, Hoster etc.).
Da fast alle Teilnehmer in 2 Hotels untergebracht waren, hat man sich für später in einem der Hotels zum Abendessen getroffen. Wir waren ca. 6-7 Personen. Mit einer der interessantesten Parts der Schulung, da man sich mit „Leidensgenossen“ einmal austauschen konnte, von neuen Features erfahren hat die man nicht mitbekommen hat oder einfach lustige Entwicklergeschichten hört. Auf jeden Fall ein geselliges Ründchen! Falls das jemand von der Schulung lesen sollte, vielen Dank für die nette Gesellschaft 😉
Prüfung
Am Ende des zweiten Tages kam es dann zur Prüfung – uhhhhhhh! Anfangs wurde das noch etwas belächelt, ich wusste aber durch einen Kollegen, dass selbst in der Einführung für Entwickler (Developer Schulung) schon Teilnehmer kein Zertifikat bekommen haben (da hat aber jemand einfach nicht aufgepasst – die erste Schulung schafft jeder der sich hinsetzt und zuhört…)
Es gab ca. 20 Fragen rund um das Thema ExtJs, Models, Bundles etc. – ich wage mich zu erinnern das man davon 11-12 richtig haben muss um zu bestehen. Die Multiple Choice Fragen waren nun nicht mehr nur mit einer Antwort zu markieren, sondern konnten auch mehrere Antworten haben.
Nach Beendigung des Tests ging es kurz raus und die Dozenten haben die Tüten mit Zertifikat, T-Shirt und anderen Goodies beim Empfang geholt. Dabei hat man gesehen, dass 2 Zertifikate entfernt wurden – „Shit just got real“!
Einige nervöse Blicke unter den Teilnehmern. Ich war mir relativ sicher das ich bestanden habe, aber dennoch macht man sich so seine Gedanken. Gerade wenn die Firma oder man selbst 1000€ investiert hat. Ohne Zertifikat zurück zu kommen muss da schmerzhaft sein.
Der Dozent teilte am Anfang mit das es zwei leider nicht geschafft haben. Shopware macht das schon ganz nett, das Sie es einfach in die Tüte packen, so muss sich niemand vor den anderen schämen.
Unterlagen
Die Unterlagen der Schulung (Plugins, Slides) bekommt man ca. 5 Tage nach der Schulung per E-Mail zugesandt. Beim durchgehen der Slides ist mir noch aufgefallen, dass wir die API nur leicht angeschnitten haben. Das werde ich in Kürze mit den Daten noch nachholen. Zum stöbern sicher ganz nett und Beispiele die man schon mal erklärt bekommen hat, sitzen einfach besser als Doku Gestöber.
Fazit
Die Schulung hat mir im gesamten gut gefallen. Bei Shopware herrschte eine sehr entspannte Atmosphäre und es hat Spass gemacht zu lernen. Die Rechner haben (bis auf das Lizenzproblem am Anfang) gut funktioniert, die Dozenten waren immer pünktlich und man wurde gut verpflegt. Einziges Manko war das teilweise etwas schnell durch den Code „gerannt“ wurde – sicher auch ein Problem der Komplexität. Dabei haben wir uns vermutlich nur 0.1% des Codes und dessen Funktionalitäten anschaut.