Der dritte und letzte Teil zum Thema „Wie stellen wir den ganzen Datenwust denn nun eigentlich dar?“ ist der „View“ – auf Deutsch auch „Präsentationsschicht“ genannt. Man könnte auch „User Interface“ sagen, aber da vermischen sich ganz schnell Elemente der reinen Darstellung mit Elementen der Geschäftslogik. Insofern nehmen wir es mal ganz wortwörtlich und definieren: Unser „View“ – das ist das Gerüst der Webseite, in die unsere Daten quasi „hineinprojeziert“ werden. Und das will ich heute einmal zerpflücken.
„Veredlung und Vermarktung“
Vor wenigen Tagen hat Karoline Döring etwas an mir vorbeigezwitschert, das mich an einen alten Witz erinnert hat, den ich gerne gemacht habe, als ich noch als studentische Hilfskraft die „Manuskriptvorbereitung“ für Sammelbände gemacht habe. Der Witz ging so:
„Das einzige Lektorat, dass dieser Band verlagsseitig gesehen hat, ist das in der Emailadresse lektorat1@druckkostenzuschussverlag.de, an den das PDF geschickt werden musste“.
Vertiefung – der Controller
Nachdem der letzte Beitrag das Model eines Objekts der Winzen-Datenbank vorgestellt hat, soll es heute um den zweiten und zentralen Bestandteil der Trias Model-View-Controller gehen. Und das ist der Controller, nicht der View. In der Reihung MVC spricht es sich besser, aber trotzdem gehört der Controller in die Mitte.
Es wächst und gedeiht: Einstieg in Model-View-Controller
Für das Winzen-Projekt, das ich mit den Forschungsdaten von Christian Günther als eine Art öffentliches Tutorial für interessierte „Digital Humanities“-Anhänger baue, hatte ich ja CodeIgniter als Framework ausgewählt. Ursprünglich wollte ich ja gerne alles transparent von Grund auf programmieren, aber das wäre echt etwas zu heftig geworden, um es einigermaßen zeitnah neben der Arbeit zu machen. Inzwischen ist das erste Teilziel für das Winzen-Projekt erreicht und unter winzen.danielstange.de mit den elementarsten Funktionen auch nutzbar. „Es wächst und gedeiht: Einstieg in Model-View-Controller“ weiterlesen
Frontend-Kickoff
Mir ist irgendwie bewusst geworden, dass das Monate dauern wird, bis ich genug Programmieren erklärt habe, dass hier im Blog das Frontend zu Christians Daten der Winzen-Gruppe „live“ wachsen kann. Also habe ich CodeIgniter in meine OpenShift-Instanz installiert und ein schnelles Frontend für die Datenbank gebaut. Unter winzen.danielstange.de gibt’s eine bescheidene Webrepräsentation, wer parallel mitbasteln will, checkt das Projektrepository bei bitbucket aus. Dokumentation folgt dann hier im Blog.
„Hello world“ – es wird Zeit zu programmieren
In der Datenbank liegen die Winzen-Daten jetzt schon einmal recht gut. Aber wir wollen ja auch noch Dinge damit tun. Dafür ist eine Datenbank nur rudimentär geeignet. Es gibt zwar einige Möglichkeiten, Logik auch direkt in die Datenbank zur verlagern, und Daten anzeigen gehört nicht zu ihren Funktionen. Wir müssen also kleine Programme schreiben, die eine Abfrage ausführen, das Ergebnis holen und ausgeben. Und das ist gar nicht so schwierig, wie es klingt. Na gut: Es ist natürlich ein Unterschied zwischen professionellen Programmen und Scripts, die „mal eben“ etwas erledigen. Eins nach dem Anderen – wir wollen ja erstmal anfangen. „„Hello world“ – es wird Zeit zu programmieren“ weiterlesen
SQL Vertiefung: Keys und die Winzen-Relationen in Action
Ich musste erstmal die Tabellenstruktur nacharbeiten, aber jetzt geht’s dann weiter mit Beispielen für die Winzen-Datenbank zur Masterarbeit von @derguenther. Habt Ihr die unterschiedlichen Abfragen noch drauf? Wenn nicht, lest noch einmal schnell nach: Blogartikel zu den SQL-Basics. Und wer das Ganze mit den gleichen Daten nachspielen will, kann in meinem Bitbucket-Repo die SQL-Rohdaten auschecken oder herunterladen und in seinem mySQL-Server laden.
„SQL Vertiefung: Keys und die Winzen-Relationen in Action“ weiterlesen
Da schlummert was im Archiv
Gerade macht ein netter Artikel auf dem Aktenkunde-Blog die Runde und ganz ehrlich: Wunderbar spitz formulierter Beitrag, den es zu lesen lohnt. Es geht um die Überlegung, welchen Unterschied es wohl macht, welches Wort denn nun als Randnotiz geschrieben und unterstrichen wurde. Eine digitale Edition liefert hier den Beweis, dass schon immer da war, was für manch einen Experten früher nicht dagewesen zu sein scheint. Zumindest stellte es sich mal anders dar. Und dann fiel mir David Kriesel wieder ein, der am 28.12.2014 auf dem 31c3 einen tollen Vortrag (Video auf media.ccc.de – oder youtube)mit einer katastrophalen Botschaft gehalten hatte (sein Blogpost hier) „Da schlummert was im Archiv“ weiterlesen
„Weihnachtsprojekte“
Das mit diesen „Weihnachtsprojekten“ / „Zwischen den Jahren-Projekten“ ist irgendwie auch Murks. Oder ich habe zu viele Ideen. Jedenfalls ist in drei Tagen der Urlaub vorbei und auf der Bucket List für diesen Urlaub steht noch teilfertig:
- besser JavaScript können: Das ist ganz gut gediehen
- Vorbereitung für die Platform Developer Zertifizierung – Status: okayish
- Tweet-Dump-Application für den @paintitscience bauen – Status: naja, der gute Wille zählt.
- Das Gerüst einer generischen Randomizer-Funktion bauen, die im Process Builder in als Invocable Method läuft nach einer Idee von der @bethbrains – Status: okayish (es fehlen noch ein paar Feinheiten, aber da wird’s einen Open Source Release geben unter https://github.com/dstdia/SFDCRandomizer)
- Und jetzt hat mit wieder mal @derguenther auf zwei interessante Themen gebracht:
- Größere Texte ins Web publizieren und die Kommentare als Annotation denken. Ich weiß, da gibt’s Sachen wie thepund.it, hypothes.is, Annotate.JS und so. Aber ich finde das irgendwie schwach, dass man immer entweder ein Browser-Plugin braucht, sich bei einem 3rd-Party-Dienst anmelden muss oder nicht gemeinsam auf den Annotationen arbeiten kann.
- Die Daten der Winzengruppe mal richtig strukturieren. Irgendwie scheint das Interesse da zu sein. Ich würde dazu ja naturgemäß eigentlich gern eine Force.com-Application nehmen, aber das ist dann vielleicht zu heftig für die „Zielgruppe“. Also versuche ich mich mal zu bremsen und baue in mySQL / PHP, vielleicht mit Cake oder so?
OK, vermutlich sind das genug Vorsätze, um 2017 noch nicht fertig zu sein mit allem 🙂
„Chancen und Risiken“ my ass.
Ich bin ja inzwischen fast erheitert, wenn ich in der Diskussion um „Digital Humanities“ von „Chancen und Risiken“ / „Grenzen und Möglichkeiten“ lese – aus meiner Sicht ist das inzwischen fast das eindeutigste Indiz, dass der Text eine Hidden Agenda hat und eigentlich die Zeit nicht wert ist, ihn zu lesen (EDIT: Man muss sich wohl mal die Frage stellen, für wen oder was eigentlich „Chancen“ und „Risiken“ bestehen – diese Frage drängt sich mir beim nochmal nachdenken auf). Ich nutze die Zeit lieber für einen Rant und will man über drei Toptreffer im Bullshit-Bingo der DH-Diskussion schimpfen. „„Chancen und Risiken“ my ass.“ weiterlesen