OR Mapper: Der Epic Fail der letzten 15 Jahre

OR Mapper werden in heutzutage in vielen Softwareprojekten benutzt. Als ich noch am Tech war, entstanden gerade die ersten OR Mapper, bzw. ORM Frameworks. Dazumal fand ich das Konzept ziemlich toll. Ich musste mich nicht mehr mit SQL rumschlagen. Ehrlich gesagt, habe ich noch nie eine Affinität zu DB’s und SQL und Stored Procedures etc. gehabt. Und eine Abstraktionsschicht welche mir das alles abnahm fand ich schon toll.

Tja jetzt ein paar Jahre später durfte ich doch die eine oder andere Erfahrung mit Hibernate, NHibernate und Entity Framework machen. Erst letzte Woche habe ich laut geflucht, als ich herausfand, dass ein Nullable Foreign Key einfach wieder auf Null gesetzt wird, wenn der Wert des Keys sich nicht ändert. Man muss also ein doppeltes “update” fahren, damit der Null – Wert wieder auf den “richtigen” Wert zurückgeschrieben wird. Sehr logisch. Bin begeistert.

Im Zuge der Frustbewältigung, kam mir in den Sinn, dass es schon seit ein paar Jahren Leute gibt, welche ORM kritisieren. So Hat z.B. Jeff Atwood schon 2006 postuliert: “Object-Relational Mapping is the Vietnam of Computer Science“. Oder aber auch der Blog post auf seldo.com der da hiess: “ORM is an anti-pattern“. Und auch ich glaube mittlerweile die haben recht.

Ja ich hasse SQL. Aber im Gegensatz zu einem ORM weiss ich wenigstens dass ich der Depp war, welcher die falschen Statements geschrieben hat. Und warum. Ein ORM tut manchmal einfach etwas und alle schütteln dann den Kopf. Ein klassischer SQL Persistenzlayer mag nichts “schönes” sein. Aber es funktioniert. Es gibt mittlerweile einVersprechen von ORM dass ich definitiv nicht mehr glaube.

Ein ORM spart Zeit und Geld in der Entwicklung

So ein Blödsinn.  Erstens braucht es immer mindestens einen Engineer, welcher ein Spezialist für den Mapper ist. Ein Mapper bildet nicht alle benötigte Funktionalität einfach so ab (z.B. N:M Abhängigkeiten). Und wehe etwas passt nicht oder “merkwürdige Effekte” treten auf. Dann hat man schnell mal ein paar Personenmonate für’s Mapping verhauen. Wo ist denn die Entwicklung einfacher geworden? Früher musste ich die entsprechnede Funktion im Persistenzlayer aufrufen. Heute muss ich zuerst mal ein Mapping definieren (und das muss man auch richtig tun), dann den entsprechenden Adpater schreiben und mich noch mit einem DbContext, Session handling und Lazy Loading herumschlagen. Wo habe ich da Zeit gespart?

Ach ja und das tolle Argument: “Man kann einfach zwischen Oracle und MS SQL etc. wechseln.” Die Software muss ja auf jeder noch so möglichen DB laufen. Nach 10 Jahren als professioneller Hacker und drei Produkten am Markt, sowie meheren kleinen Projekten: ICH HABS NOCH NIEEEEEEEE GEBRAUCHT! Entweder Oracle oder MS SQL. Punkt. Das braucht es nur für ganz spezielle Projekte. Und die sollen sich mal überlegen wozu. Um den 2000 Kunden, welcher unbedingt eine andere DB braucht zu unterstützen?

Nee. NoSQL ist wahrscheinlich auch nicht die Lösung. Aber ORM ist überhaupt keine Lösung. Ich möchte doch nur ein LSD – Repository. Load, Store, Delete. Mehr braucht es nicht. Ich habe meine Objektbäume, die müssen persistiert werden und Punkt. Wenn klassische DB’s das so nicht können, dann sind sie ungeeignet. Bzw. die Konzepte E/R und OO passen nicht zueinander. Aber da Tage und Monate verbraten, nur um den ORM zu beherrschen, da ist mir ein SQL Persistenzlayer lieber.

MAS: Ende des Diplomjahres == Schreiben, schreiben, schreiben

Das Ende des Diplomjahres ist morgen früh erreicht. Endlich! In den letzen 2 – 3 Wochen habe ich vorallem eines getan (neben dem Umzug nach Bern): Schreiben. Man denkt sich immer so: “Ach die paar Seiten für ne Case Study oder ne Semsterarbeit krieg ich locker hin.”. Tja denkste. Alleine für die Seminararbeit habe ich ca. 60 – 80 Stunden investiert. Und das für mal knappe 20 Seiten. Ach ja Quellen musste man ja auch noch besorgen. Also mal flink einen Tag in der Zentralbibliothek verschwendet.

Und auch unsere beliebten Case Studies. Kaum hat man sie fertig, dann kommt einem plötzlich in den Sinn: Ach, ne Präsentation dazu muss ich auch noch machen. Also noch schnell Pöwerpunkt angeworfen und 15 Folien aus dem nix kreiert. Aber man tut es ja freiwillig.

Morgen früh habe ich meine Präsentation und dann zwei Wochen Ferien! Juhuuu.

Für alle die mal wissen wollen, was man da so für ein Masterstudium produzieren muss (so neben der Samtagsschule und diversen Aufgaben für andere Module und Prüfungen), habe ich eine extra Seite im Blog erstellt. Sollte man oben im Menu sehen. Heisst “MAS”, wie sinnvoll. Ansonsten für die Ahnungslosen -> ‘hier’ <- clicken

UniOS — oder wie zerstören ich die Träume eines Jungen

Ein Raunen ging durch die Fachwelt, als ein Junge aus dem westfälischen Lünen ankündigte, dass er ein neues revolutionäres Betriebssystem entwickelt habe. Es sollte in der Lage sein, Software plattformunabhängig laufen zu lassen. Es ist egal ob die Software für Unix, Linux, MacOS, Windows etc. gebaut wurde? Das wäre wirklich revolutionär.

Dann folgte eine Präsentation und es stellte sich heraus, dass die Fachinformatiklehrlinge eigentlich “nur” eine spezielle Version von Windows XP mit einem andLinux gebaut hatten. Golem.de (-> http://www.golem.de/1108/85776.html) und Gulli.com (-> http://www.gulli.com/news/16922-unios-schueler-schwindeln-sich-bis-zur-fachpresse-2011-08-22) sowie andere berichteten davon.

Und gleich ging eine Welle der Erleichterung durchs Netz. Puh, nochmals Glück gehabt. Wir, die wir so im tagtäglichen Untergrund vor uns hinhacken müssen, weil wir noch nie was bedeutendes geschrieben haben, müssen uns doch nicht ein paar 18 jährigen ergeben. Wie schlimm wäre das gewesen, wenn so ein paar Grünschnäbel besser gewesen wären als wir alle. Also sofort ein paar hämische Posts ins Netz stellen und die Jungs alle lächerliche Trolle hinstellen.

So meine lieben Liebenden. Wer sagt eigentlich, dass die Jungs so schlecht waren ? Wer von euch hat sich schon mal hingesetzt und sein eigenes persönliches OS zusammengestellt ? Das ist es was die Jungen gemacht haben, nicht mehr und nicht weniger. Und für einen Fachinformatiklehrling ist das schon mal echt nicht übel. Außerdem haben sie es ja ein wenig getweakt. Hallo, für Lehrlinge gar nicht mal so schlecht. Und das Ganze noch im Team!

Aber wir, wir die wir ja so viel besser sind, stürzen uns nun auf Maik. Wir lassen uns genüsslich im Netz an ihm aus. Stellt sich den niemand die Frage, warum die Jungs nicht besser beraten wurden ? Wo ist der Fachlehrer, der ihnen klar machen sollte, das die Geschichte keine Revolution oder so ist ? Wer hat die Jungs in die Medien gebracht, ohne abzuklären ob das Ganze fachlich Sinn macht ? Die Jungs sind Lehrlinge. Lehrlinge sollen Fehler machen, um daraus zu lernen. Dafür gibt es Lehrmeister, welche Sie begleiten und beraten müssen. Von denen keine Spur. Und wenn es doch ein Erfolg gewesen wäre? Ja dann wäre sicher einer aufgetaucht, der schon immer an sie geglaubt hätte etc. bla bla.

Maik und sein Team haben für ihre Verhältnisse eine sehr gute Arbeit abgeliefert. Dass man Sie den Medien zum Frass vorgeworfen hat, nur weil wohl jemand mit “Fachkompetenz” geglaubt hat, den grossen Wurf zu landen, ist grauenhaft. Anstatt auf Mike und seinen Jungs rumzutrampeln, sollten wir uns lieber auf die für die Ausbildung verantwortlichen Erwachsenen stürzen. Diese hätten die Jungs schützen müssen.

Sehen wir UniOS als das was es ist. Ein Lehrlingsprojekt, sehr gut gemacht. Würdigen wir sie dafür, und nicht für einen pseudohype, den wohl jemand im Hintergrund verursacht hat. Die Jungs haben Zukunft, verbauen wir sie ihnen nicht

MAS: Mein neues zeitraubendes Hobby

Das erste Semester ist rum, das zweite Semester hat auch schon wieder begonnen. Ja, ja so ein Weiterbildungsstudium nebenberuflich kostet viel Zeit. Soviel Zeit, dass ich nicht mal mehr dazu komme ein paar gute Bücher zu lesen. Gut, ich lese viel zur Zeit. Aber (leider) nur Fachbücher für’s Studium. Schon mal den Kerzner gelesen? Da sag ich nur wie die Klitschkos in der Werbung “Schweeere gost”.

Manche Leute fragen sich was ich da eigentlich studiere. Also: Das ganze nennt sich Master of Advanced Studies in IT Project Management. Früher hiess das mal NDS oder Nachdiplomstudium. Eine beliebte Weiterbildung für Ingenieure. Sozusagen: Wie wird aus einem Fachidioten ein brauchbarer Lenker und Denker. Irgendwann muss man ja mal den Managementunsinn sich antun. Als Fachmensch ist es sehr schwer mit denen zu Interagieren. Folglich, kenne deinen Feind.

Ja eben, ein halbes Jahr ist rum. Weitere 18 Monate fehlen noch. Hier eine kleine grafische Darstellung:

 

 

 

 

Total muss ich 60 ETCS sammeln. 15 habe ich schon im Sack!

Sommersemester gleich arbeiten schrieben. 11 Punkte gibt’s alleine durch Semestererbeit und Case Study. Also ran an den Speck, und lesen, lesen, lesen. Tja vor dem schreiben müssen erst noch die Quellen gesichtet werden.

Gelesen : Der Schrecksenmeister


Wieder mal ein Buch von Walter Moers verschlungen.

“Der Schneckenmeister” ist ein Märchen aus Zamonien. Der (fiktive) Autor ist (den Kennern von Zamonien bestens bekannte ) Hildegunst von Mythenmetz. Moers hat wie üblich nur als Übersetzer fungiert.J

Die Geschichte spielt in Sledwaya, der ungesundesten Stadt Zamoniens. Ungesund deshalb, weil ihre Bewohner unter allen möglichen Krankheiten leiden. Die Hauptdarsteller sind eine Kratze genannt Echo, der Schrecksenmeister Succubus Eispin und die einzige Schreckse von Sledwaya Izanuela. Die Geschichte wird als “kulinarisches Märchen” bezeichnet. Folglich dreht sich ein Teil der Handlung um das Essen, Kochen und verwandte Tätigkeiten.

Echo, unsere Kratze trifft in einer Notsituation (ihr Herrchen ist plötzlich verstorben) auf den Eispin. Sie schliessen einen Vertrag, bei dem die Kratze in den nächsten 30 Tagen zwar bei dem Meister lebt, aber im Anschluss ihr Leben verlieren wird. Der Schreckesenmeister sammelt das Fett von allen möglichen Lebewesen aus Zamonien. Dies benötigt er, nun einen ultimativen Trank zu brauen. Und das letzte Fettdas er benötigt, ist eben das einer Kratze.

Echo lebt nun also bei Eispin, und lernt ihn immer besser kennen. Natürlich versucht Echo alles zu tun, um aus dem Vertrag rauszukommen. Dazu tut sie sich mit der letzten Schreckse von Seldwaya zusammen. Den Schluss wollen wir nicht vorwegnehmen, aber wie ein einem Märchen üblich, es kommt gut.

Nun dieses Werk von Moers ist wieder mal gelungen. Zamonien ist immer ein Buch wert. Und wie üblich gibt es viele Verweise auf andere, frühere Bücher. Ausnahmsweise hatte ich bei diesen Buch dem Eindruck, dass der Mittelteil etwas dürftig war. Der Anfang und das Ende sind gut. Spannend. Und von Zeit zu Zeit kommt ein echtes ein Gefühl von Märchenstimmung auf.

Für alle die auf Moers stehen: “LESEN”