Posts mit dem Label CSS werden angezeigt. Alle Posts anzeigen
Posts mit dem Label CSS werden angezeigt. Alle Posts anzeigen

Sonntag, 16. November 2008

...und gleich noch eine Premiere

Eingeschlossen in mein Kämmerlein, abgeschottet von der Außenwelt, habe ich heute meine ersten php-Dateien gecodet. Nach den typischen Anlaufschwierigkeiten, die wohl auch mit leichter Programmierverrostung meinerseits sehr stark zu tun hatten, kam ich schön langsam wieder in Übung und konnte wirklich jede Stunde Fortschritte bemerken.

Zu Beginn fühlte ich mich etwas überfordert, weil ich nicht so recht wusste, wo ich anfangen sollte. Zum Glück kam mir dann natürlich als erstes gleich mal eine Klassendefinitionsdatei in den Sinn. Aber als diese fertig war, wusste ich auch nicht so recht, wo weiter, weil ich mir noch nicht ganz im Klaren darüber war, wie das ganze an sich aufgebaut sein sollte, mit Eingabemaske, Logik, etc. Im Endeffekt hab ich dann einfach mal mit dem Formular weitergemacht und danach war ich dann schon etwas in Fahr, sodass mir die restlichen Dinge auch schneller von der Hand gingen.
Die Serialisierung habe ich gleich in die Formulardatei miteingebunden und ich war im Endeffekt ziemlich überrascht davon, dass eigentlich fast alles auf Anhieb so geklappt hat, wie ich mir das gewünscht habe, selbst die lässlichen Syntaxfehler hielten sich ziemlich in Grenzen.
Ich wollte ursprünglich ja auch ein ganz neues HTML und CSS Gerüst basteln, aber habe das vorerst unterlassen..

Soweit bin ich ganz zufrieden mit dem, woran ich die letzten 10 Stunden gearbeitet habe, denn das steht mal soweit. Ich habe zwar noch keine speziellen Features eingebaut, aber ja, vielleicht geht sich das noch aus.
So würde ich zum Beispiel lieber die Ausgabe durch eine Schleife machen, sodass ich nicht jeden Track hardcoden brauche und vor allem die Tracklist nur so viele Einträge hat, wie eingegeben wurden. Momentan ist das bei mir noch etwas statisch.

[edit]
Huiuiui, und wie ich gerade beim Chef gesehen habe, könnte ich die übergebenen Tracks statt mit einer for-Schleife vermutlich auch viel einfacher und vor allem sauberer mit einem foreach zum Album hinzufügen. Ich hatte es zuvor schon kurz in Erwägung gezogen, allerdings dann nicht eingängig damit beschäftigt..
[/edit]

Aufgefallen ist mir auf alle Fälle, dass PHP um Welten netter ist als C++ und ich das ziemlich schnell bemerkt habe und deshalb nicht so defensiv programmieren musste, wie ich das bisher meistens tat. Wie auch immer habe ich eigentlich noch quasi keine möglichen Fehlerquellen bei der Eingabe versucht zu korrigieren, so kann man meinem Formular eigentlich alles übergeben, was man will und es wird einfach stupide ausgegeben, ohne zu überprüfen, ob bspw. bei der Tracklänge auch wirklich eine Zeitangabe in (hh:)mm:ss angegeben wird, was ich bisher eigentlich bei allen meinen Programmen immer sehr sorgfältig machte.

Wie auch immer, ich denke, für's erste Mal ist es soweit ganz okay, ich bin zumindest mehr oder weniger zufrieden mit meiner Leistung, allerdings habe ich wohl auch nicht so hohe Maßstäbe gesetzt, wie mein geschätzter Kollege auf der anderen Seite des Donaukanals :D


Achja, wer mein bescheidenes Werk betrachten will, kann das natürlich hier tun :)


*edited: Sun, 16 Nov 2008, 23:47

Dienstag, 28. Oktober 2008

Von ersten HTML/CSS-Gehversuchen und dem Urteil des Validators

Da saß ich nun also vor der allerersten Aufgabe des Semesters überhaupt und war voll motiviert. Wirklich!
Meine HTML und CSS Kenntnisse beschränkten sich bisher nur auf das, was man als MySpace-Kid und Web2.0-Opfer heutzutage halt so kann, das ist aber nicht viel, und schon gar nicht sauber. Kurz gesagt, meine Aktivitäten auf dem Gebiet waren vor allem von Zusammenkopieren aus diversen Source-Codes bestimmt ;)

Wie auch immer, blutiger Anfänger, der ich also war (und eigentlich mangels Erfahrung und fundierten Wissens immer noch bin, was sich aber hoffentlich bald ändern wird :)), kam mir sofort die immer wieder angesprochene und von mir auch schon früher ab und zu konsultierte Website selfhtml.org in den Sinn. Ich hatte mir ohnehin innerhalb der letzten vier bis fünf Jahre nicht nur einmal vorgenommen, mich einmal dort mehr oder weniger ausführlich einzulesen, um meine HTML Skills zu pimpen.

Gedacht - getan.

Wie auch immer, nachdem ich über die Inhalte der ersten Seiten bereits ziemlich gut bescheid wusste, fing ich an, die Seiten nur mehr zu überfliegen und im weiteren Verlauf dann zu überspringen, bis ich zu dem kam, was mich eigentlich interessierte: Tabellen. Ich wusste, dass ich mich irgendwann mal damit auseinandersetzen müssen würde, und war dementsprechend positiv davon überrascht, wie simpel diese eigentlich zu verwenden sind :).

Das Grundgerüst hatte ich dann also schonmal fertig (obwohl ich doch einige Zeit brauchte, um mich für ein passendes Album zu entscheiden - amüsanterweise war ich kurz davor, das selbe wie ein Kollege zu verwenden), schnell noch ein bisschen im CSS-Kapitel quergelesen und schon stand auch das Grundgerüst für meine .css-Datei. Nach ein paar Stunden hier und da an ein paar Parametern Rumdrehen und vergessene Semikola einsetzen, sah es dann auch in etwa so aus, wie ich es mir vorgestellt hatte :D.


Wunderbar, der Task konnte also als done abgehakt werden, die Dateien wurden gespeichert.... und da blieben sie erstmal auch. Nun ist es bei mir so, dass ich Kalendersoftware sehr dringend benötige, allerdings nicht aus dem Grund, weil ich mir nichts merke, sondern viel mehr, weil sich zwar Daten bei mir schnell einprägen, ich allerdings vergesse, wieso ich sie mir eigentlich gemerkt habe.
So kam es also, dass ich mich plötzlich daran erinnerte, dass am 30. ja irgendeine Deadline für irgendwas war :D Natürlich habe ich in Sunbird aber die Option "hide completed tasks" aktiviert, weshalb ich zunächst etwas verwirrt war, aber zum Glück nach wenigen Sekunden wieder draufkam.

Da ich heute sowieso seltsamerweise außerordentlich motiviert war, irgendetwas zu arbeiten (was man vermutlich mittlerweile auch schon an der Länge dieses Eintrages merkt :P), traf sich das ganz gut, ich jagte meine Datei durch einen HTML Validator und was macht der? - mir gleich mal 2 Warnings und 41 Errors ausspucken :(
Der Schock war groß, war allerdings auch schnell wieder weg, als ich mir das Ergebnis genauer betrachtete:

Die zwei Warnings waren beide mit diesem Kommentar versehen:
The sequence can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HTML 4.01 Strict, the '/' terminates the tag '). However, since many browsers don't interpret it this way, even in the presence of an HTML 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.

...und waren demnach also eigentlich mehr als korrekt (wie auch immer, hab ich sie jetzt dem Validator zuliebe ausgebessert :P)
Ähnlich sah es mit den 41 Errors aus, welche ebenfalls alle derselben Natur waren:
An "id" is a unique identifier. Each time this attribute is used in a document it must have a different value. If you are using this attribute as a hook for style sheets it may be more appropriate to use classes (which group elements) than id (which are used to identify exactly one element).

Wusste zwar zuvor nicht, dass id prinzipiell nur unique verwendet werden darf, aber das sei mir aufgrund meiner durch Unerfahrenheit bedingen Noobishness verziehen. Wie auch immer, zum Glück hat Notepad++ (wie eigentlich alle mir bekannten Texteditors :P - soll nur dokumentieren, womit ich gearbeitet habe ;)) aber eine "Suchen und Ersetzen" Funktion, somit war auch das kein Problem, das nicht schnell gelöst werden konnte.

Und so hatte ich schon circa 10 Minuten später als Result des Validators Passed und anstatt des bösen roten Favicons nunmehr ein beruhigend grünes :) und bekam obendrauf noch diesen wunderbaren Orden verliehen:


Nun musste ich also nur noch eine superstylishe Index-Datei erstellen, die auf die zwei eigentlichen Dateien verlinkt, um diese im CEWebS hochzuladen und tadaaaa - endlich konnte ich den Task wieder und guten Gewissens als done markieren :D