freiesMagazin 10/2011 erschienen

freiesMagazin 10/2011 Titelseite

Heute ist die Oktoberausgabe von freiesMagazin erschienen und bringt viele spannende Artikel aus den Bereichen Linux und Open Source mit.

Inhalt der Ausgabe 10/2011

  • Die Nachteile der Paketabhängigkeiten
  • Der September im Kernelrückblick
  • PHP-Programmierung – Teil 1: HTML
  • Remote-Actors in Scala
  • Python – Teil 9: Ab ins Netz!
  • Aptana Studio – Eine leistungsfähige Web-Entwicklungsumgebung
  • Rezension: Einführung in die Android-Entwicklung
  • Rezension: VirtualBox – Installation, Anwendung, Praxis
  • Vierter freiesMagazin-Programmierwettbewerb
  • Veranstaltungskalender und Leserbriefe

Update 09:18 Uhr: So früh ist also jemand schon wach und hat auch gleich die Quizfrage aus der VirtualBox-Rezension korrekt beantwortet. Das Buch ist damit vergeben!

Downloads

Unter der Adresse http://freiesmagazin.de/mobil/ finden Sie immer die aktuelle und alle bisher erschienenen HTML-Ausgaben. Über den Tab Magazin können die letzten drei Ausgaben von freiesMagazin abgerufen werden, ältere Ausgaben finden Sie in unserem Archiv.

Kontakt

Wer jeden Monat an die neue Ausgabe erinnert werden will, kann auch den RSS-Feed abonnieren. Leserbriefe mit Lob, Kritik, Anregungen oder Fragen und neue Artikelvorschläge können an die Redaktion geschickt werden.

Pingback

[...] ist die Oktoberausgabe von freiesMagazin erschienen und bringt viele spannende Artikel aus den Bereichen Linux und Open Source mit. Inhalt [...]

Rezension: VirtualBox

Schöne Rezension.

Zur Beantwortung der Frage: Innotek hat vorher an VirtualPC mitgearbeitet, bevor deren Kooperationspartner aufgekauft wurde.

Das ist richtig. Bitte lasse

Das ist richtig. Bitte lasse uns Deine Anschrift zukommen, damit wir Dir das Buch zusenden können.

Dominik Wagenführ
freiesMagazin-Redaktion

Vielen Dank!

Vielen Dank!
Das Buch ist angekommen und ich möchte mich auf diesem Weg nochmal bedanken!

Rezension: VirtualBox

Virtual PC von Connectix denk ich mal.
lg, Bene

Das ist richtig, aber Andre

Das ist richtig, aber Andre war 4 Minuten schneller (siehe oben).

Rezension: VirtualBox

Hallo,
zu der Frage:
„An welcher Virtualisierungsoftware hat Innotek mitprogrammiert, bevor mit der Entwicklung des eigenen Produkts VirtualBox begonnen wurde?
Innotek entwickelte das heute Microsoft gehörende Virtual PC mit

Gruß Uwe Becker

Korrekt, aber leider etwas zu

Korrekt, aber leider etwas zu spät (siehe oben).

Python - Teil 9: Ab ins Netz!

Hallo Herr Nögel :-)
Lange her und lange nicht gemeldet.
Sehr interessant , bisher habe ich immer das python-mechanize Modul benutzt und quasi Webformulare vom Script her ausfüllen lassen aber diese Methode ist eine schöne Alternative .... Danke !

Mein Video zu Mechanize:
http://www.youtube.com/watch?v=BkTnlUc0_jo

Mein Video zum query mit Google anstelle Bing :
http://www.youtube.com/watch?v=KjUCWOxxSaA

Übrigens bin ich dank Dank Ihrer hilfreichen Tutorials erst zu python gekommen und konnte meine Kentnisse bereits nutzen um dem mit python programmiererbaren NAO Roboter das Spiel 4 Gewinnt beizubringen ... :-)

Siehe hierzu auch meine Videos (Making of) auf
http://developer.aldebaran-robotics.com/news/
oder in meiner NAO Playliste
http://www.youtube.com/user/TheRegRunner#grid/user/073B0795292C1494

Nochmal vielen vielen Dank und weiter so
LG
Bernd

... Auch ich habe mit der

... Auch ich habe mit der ersten Ausgabe begonnen Python zu lernen. Zwar hatte ich zuvor ein Buch über Python gekauft,
in dem man allerdings nur lernte, wie die Standard-Matheoperationen funktionieren ( + Modulo), und wie man mit einer Schildkröte Muster zeichnen kann. Damals war Python für mich eine Entäuschung...
Jetzt ist ist Sie einer meiner Favoriten. (Python, PHP, C)
Die Beispiele sind jeweils gut erklärt, und es macht Spass so zu lernen.
@ Herr Nögel: Gratulation zu den gelungenen Artikeln!
@ TheRegRunner: Schönes robot Skript ;)

Viele Grüsse
Patrick

Die Nachteile der Paketabhängigkeiten

Es gibt eine ganz einfache Möglichkeit, diesen Fehler zu beheben:
Man legt fest, dass die 3. Ziffer der Versionsnummer für Bugfixes / Sicherheitsupdates reserviert wird. Ein Paket könnte dann von z.B. einer Qt-Bibliothek der Version 4.6.* abhängig sein, dann gäbe es keine Probleme bei kleinen Updates! Dazu bräuchte man allerdings ein Gremium, das sich auf diesen "Standard" einigt und Repository Maintainer sowie Entwickler, die sich an diese Standards halten.
Da jedes Programm seine eigene Versionspolitik fahren kann, könnte es aber schwer werden, sich auf eine Ziffer zu einigen. Beim Linux-Kernel war bis vor kurzem der 4. Ziffernblock für Sicherheitsupdates reserviert, bei Firefox + Thunderbird ist es seit März die 2. Ziffer.

Ja, das könnte so klappen,

Ja, das könnte so klappen, nur denke ich wie Du, dass es an der Einigung, welche Stelle der Versionsnummer denn nun dafür zuständig ist, scheitern wird.

Gruß
Dominik

Gibt es das Perl-Tutorial

Gibt es das Perl-Tutorial nicht mehr?

Doch, gibt es, aber der

Doch, gibt es, aber der nächste Teil wird voraussichtlich erst in der nächsten Ausgabe erscheinen.

Pingback

[...] ist die Oktoberausgabe von freiesMagazin erschienen und bringt wieder viele Artikel aus den Bereichen Linux und Open [...]

PHP-Tutorial (HTML-Code)

Hallo liebes Freies-Magazin-Team,
ich finde es etwas schade, dass im HTML-Teil eures PHP-Tutorials das veraltete font-Element vorgestellt wird oder der Doctype wegelassen wurde. Natürlich liegt der Fokus hier auf PHP, aber meiner Meinung nach sollte auch durch PHP erzeugtes HTML valide sein.
Ich freue mich aber trotzdem mal ein bisschen PHP zu lernen und freue mich auch schon auf die nächsten Teile.
Viele Grüße
Julian

Antwort auf deinen Kommentar

Hallo Julian,
Danke für deinen Kommentar!
Ich habe bereits in Betracht gezogen, ein Artikel der Reihe über CSS zu machen. Bis dieser erscheinen wird, wird es allerdings noch ein wenig dauern, es folgen noch 5-6 weitere Artikel.
CSS hätte aber - in meinen Augen - bereits einen Artikel gefüllt. Die Leser sollten aber langsam in das Thema eingeweiht werden. Ausserdem hätte man
die CSS-Datei noch über einen zusätzlichen Tag einbinden müssen.
Zu DOCTYPE: Ich schreibe generell aus meiner Erfahrung, wie es funktioniert, und nicht wie es gewisse Standards verlangen.
Als kleine Ergänzung dazu:
Oberhalb des HTML-Tags könnte man noch
eines der folgenden DOCTYPEs schreiben:
http://www.w3.org/QA/2002/04/valid-dtd-list
Dies zeigt dem Browser, dass man sich an die vom W3C festgelegten Standards hält -
an den man sich dann auch halten sollte!
In den folgenden Artikeln wird oft auch nur alles im Body-Bereich der Webseite geschrieben. Dies mehr aus
Platzgründen, aber auch aus dem Grund, nicht immer alles schreiben zu müssen. Ein Browser interpretiert eine Tabelle
ohne sämtlichen HTML Code herum ebenfalls richtig.
(Natürlich ist dies nicht mehr valid, aber es funktioniert!)

Wer Wert auf validen HTML Code legt, kann hier seinen Code überprüfen lassen:
http://validator.w3.org/
Der Validator erstellt auf Wunsch auch automatisch korrekten Code.

Viele Grüsse
Patrick

Die Nachteile der Paketabhängigkeiten

Das in dem Beispiel mit den Qt-Paketen die ganzen anderen Pakete auch aktualisiert werden mussten, liegt aber nicht primär daran, dass die von einer ganz bestimmten Version des Binärpakets libqtcore4 abhängen, sondern daran, *dass die alle aus dem selben Quellpaket gebaut werden*, nämlich qt4-x11 (http://packages.ubuntu.com/source/natty/qt4-x11).

Die Debian- und Ubuntu-Repositories funktionieren (aus Sicht der Paketmaintainer) nicht auf Basis von Binärpaketen, sondern eben von Quellpaketen. Man kann nicht einfach eine neue Version eines Binärpakets hochladen, sondern nur eine neue Version des Quellpakets, und daraus werden dann erst die Binärpakete erzeugt und in den Repositories veröffentlicht. In dem Beispiel wurde nicht per sé das Paket libqtcore4 angepasst, sondern das Paket qt4-x11 (und auch kein anderes, vermute ich mal).

Sicher, diese ganzen Qt-Pakete hängen alle von einer ganz bestimmten Version von libqtcore4 ab, aber das ist irrelevant, weil diese Pakete immer nur als Set gebaut und veröffentlicht werden. Selbst wenn die Abhängigkeiten laxer wären, hätte man trotzdem neue Versionen dieser ganzen Pakete. Ich weiß außerdem nicht, wie eng die einzelnen Qt-Bibliotheken untereinander verzahnt sind, insofern bin ich mir nicht sicher, dass das überhaupt ginge.

Jedenfalls, die Abhängigkeiten sind nicht die Ursache dieses Phänomens, sondern die Art, wie Repositories und Paketbau bei Debiansystemen funktionieren.

Was alles natürlich nichts daran ändert, dass Deltapakete pretty sweet wären ;)

-Felix

Re:

Verdammt, ich fürchte, Du hast Recht. Ich werde dann eine Richtigstellung in den Leserbriefen nächsten Monat abdrucken. Mensch, ist das peinlich ...

Immerhin die Essenz des Artikels bleibt korrekt. Paketverwaltungen haben Nachteile, auch wenn ich die Ursache der Massenupdates falsch interpretiert habe. Es ist ja dennoch komisch, dass bei einer Codeänderung in einem Quellpakete alle daraus erstellten Binärpakete neu gebaut werden müssen. Konkret: Wenn im Codeteil von gimp-svg ein Fehler behoben wirde, müssen auch gimp, gimp-data und libgimp2.0 neu erstellt werden, da es nur ein Quellpaket "gimp" gibt.

Wie Du sagtest, wären da Delta-Updates schön. :)

PHP-Programmierung - Teil 1: HTML

Ok, nur damit ich das verstehe: warum sollte man ernsthaft in Erwägung ziehen, auf einem Ubuntu XAMPP zu installieren, wenn man keine speziellen Versionsanforderungen an die einzelnen Komponenten hat? Der Autor behauptet "Wer ganz schnell und einfach, ohne große Mühe – und nur zum Testen – eine Serverinstallation einrichten will, der sollte sich XAMPP (Apache, MySQL, PHP, Perl) ansehen." Was ist denn an einer Installation aus den Paketquellen schwer oder mit Mühe verbunden? Folgendes ist zu tun (der konkreten Paketnamenangabe zufolge geht der Autor von einem Ubuntu oder Debian aus, was er allerdings auch nicht schreibt):

sudo apt-get install apache2 php5 # libapache2-mod-php5 ist seit jeher eine Abhängigkeit in Ubuntu und Debian
# folgendes vereinfacht das Bearbeiten einer PHP-basierenden Website ungemein, wird aber nicht erwähnt
sudo a2enmod userdir
# jetzt noch Apache neustarten
sudo service apache2 restart

Und das war's ... fast! Leider muss man ab Ubuntu 10.04 nochmal Hand an die PHP-Konfiguration für Apache legen (/etc/apache2/mods-available/php5.conf). Aber das ist schon als Bug gemeldet und wahrscheinlich bald nicht mehr nötig ... und es ist wesentlich einfacher und nachvollziehbarer als das Umbiegen sämtlicher Rechte in /var/www.

Und jetzt frage ich nochmal: welche Vorteile bietet XAMPP ernsthaft auf einem Ubuntu oder Debian? Die Installation ist NICHT einfacher als die aus den Paketquellen. Außerdem bekommt man Support für eine Installation aus den Paketquellen sehr viel eher und kompetenter. Die Updates über die Paketverwaltung hat der Autor erwähnt und sogar, dass es unsicherer ist.

RE:

Hallo dAnjou!
Danke auch dir für deinen Kommentar.

Zitat aus dem ubuntuusers Wiki: "Ziel von XAMPP ist es, eine besonders einfache Installation zu erreichen. Mit wenigen Mausklicks erhält man eine brauchbare Vorkonfiguration, die alleine teilweise recht lange dauern würde." (Siehe http://wiki.ubuntuusers.de/XAMPP)
Ein grosser Vorteil wird XAMPP aber für Windowsnutzer bieten. Ausserdem kann man (leider nur für Windows) XAMPP auch portabel erhalten, und so seine Konfigurationen überall hin mitnehmen. (http://portableapps.com/apps/development/xampp)
Du hast Recht, wer zum Beispiel auf die Perl Unterstützung verzichten kann, oder die Module dann sowieso individuell
konfiguriert, der ist mit den sicher Paketquellen besser bedient.
Damit aus meinem Artikel kein Artikel über die Installation von Apache wird, habe ich die Installation des usermod-Plugins weggelassen, und mich an
die systemweite Installation gehalten. (Siehe http://wiki.ubuntuusers.de/Apache)

Viele Grüsse
Patrick

Rezension: VirtualBox

Hallo,

bin wahrscheinlich viel zu spät, aber die Antwort auf Ihre Frage ist "Microsoft Virtual PC"

Viele Grüße,
Arno Wagner

Ja, leider etwas, siehe

Ja, leider etwas, siehe erster Kommentar ganz oben.

Rezension: VirtualBox

Preisfrage "Mitarbeit von Innotek"

Antwort "Hypervisor Virtual PC"

Danke für die (richtige)

Danke für die (richtige) Antwort, sie kommt aber etwas zu spät (siehe oben).

PHP-Programmierung - Teil 1: HTML

Ein dickes Minus für diesen Beitrag. Nach Jahren des Kampfes schaffen es nun endlich zunehmend mehr Seiten, halbwegs ordentliches HTML auszuliefern, und dann werden in diesem Tutorial-Artikel ungültige HTML-Dokumente präsentiert; dazu ein Tag (font), der in einem HTML-Dokument nichts verloren hat und den es gottseidank bald nicht mehr geben wird. Auch wenn HTML einfach ist, ist es nicht dazu gedacht, hirnlos eingesetzt zu werden. Nicht genügend, setzen.

Stichworte:

  • Doctype
  • HTML5
  • CSS
  • Semantic Markup

RE:

Hier meine Ansicht:
HTML5 ist ein noch nicht vollendete Sprache. (http://de.wikipedia.org/wiki/HTML5)
font, u, ... sind leichter verständlich als style="text-decoration: None;", ...
Es ist doch total unsinning aus br br/ zu machen, nur wegen diesem Standard, der jetzt alles ablösen soll!
In HTML5 sollte font nicht mehr gebraucht werden. (http://www.w3.org/wiki/HTML/Elements/font) Ich halte mich aber noch an das HTML4.
Da font ist durchaus erlaubt.

Übrigens: Mein Beispiel (http://www.freiesmagazin.de/mobil/2011-10-listings/Beispiel.html)
ist zu nach dem W3C Validator HTML 4.01 Transitional valide!
"Congratulations:
The document located at was tentatively checked as HTML 4.01 Transitional. This means that with the use of some fallback or override mechanism, we successfully performed a formal validation of it. In other words, the document would validate as HTML 4.01 Transitional if you changed the markup to match the changes we have performed automatically, but it will not be valid until you make these changes. "

Es sind jediglich die Warnungen, dass kein DOCTYPE und keine Zeichenkodierung am Anfang der Datei angegeben wurde.
Und der DOCTYPE muss ja nur wegen diesen sogenannten "Standards" geschrieben werden!

Und den DOCTYPE bräuchte es auch nicht, wenn nicht jeder meinen müsste,
dass es jetzt Zeit für einen neuen Standard ist, der dann natürlich sofort alle Browser
unterstützen müssten, und auf den alle Webseiten umstellen müssen. Vor ein paar Jahren unterstützte
jeder Browser das normale HTML4, dann kam XHTML, HTML5, usw... und dann sollten alle sofort ihren Code umschreiben!?!?

Vergisst man hier das normale HTML4?
HTML4 wird noch unterstützt!

Ausserdem sollte man den ersten Artikel nicht als (X)HTML(4)|(5)-Referenz nehmen, es sollte nur eine kurze Einführung zu PHP sein.

Viele Grüsse
Patrick

Hallo Patrick, HTML5 wird

Hallo Patrick,

  • HTML5 wird per Definition auch keine »vollendete« Sprache werden, sondern ist vor geraumer Zeit ausdrücklich als »Living Standard« deklariert worden.
  • Wenn man – aus welchem Grund auch immer – meint, ein br zu benötigen, so ist man mitnichten dazu gezwungen, br/ zu schreiben, solange man kein XHTML5 produzieren will. Man kann eine an XML angelehnte Schreibweise verwenden, muß aber nicht.
  • Das font-Element ist bei HTML 4.01 Strict verboten und nur mehr bei der Transitional-Variante erlaubt – aber auch dort bereits als »deprecated« markiert und sollte nicht verwendet werden. Abgesehen davon geht es bei HTML darum, die Struktur und nicht das Aussehen eines Dokuments abzubilden, auch wenn man noch so sehr mit font-Tags um sich wirft. Schlechte Gewohnheiten bringt man sich später noch zur Genüge selbst bei; das muß man hier nicht noch unterstützen.
  • Auch wenn der W3C-Validator nur eine Warnung ausspuckt: Abschnitt 7.2 der Spezifikation von HTML 4.01 sagt eindeutig: A valid HTML document declares what version of HTML is used in the document. Auch bei HTML5 ist eine Doctype-Angabe übrigens Pflicht.
  • Selbstverständlich muß der Doctype »nur« wegen des Standards geschrieben werden – dazu ist der Standard schließlich da! Es kann auch im Straßenverkehr nicht jeder einfach so fahren, wie er lustig ist.
  • Es wird niemand dazu gezwungen, XHTML und/oder HTML5 zu verwenden. Wer mit HTML 4.01 arbeiten möchte, soll das tun; wer mit dessen Weiterentwicklung HTML5 arbeiten will, ebenfalls; und wer XHTML 1.0, XHTML 1.1 oder XHTML5 verwenden will, dem sei das ebenso unbelassen. Mit der Doctype-Deklaration (und gegebenenfalls mit dem HTTP-Content-Type-Header) gibt man an, wofür man sich entschieden hat. Wie denn auch sonst?
  • Ein PHP-Artikel soll keineswegs eine Markup-Referenz darstellen. Wenn man aber schon eine Einführung darin geben möchte, dann sollte das Markup auch richtig und ordentlich verwendet werden. Es wäre ja schließlich ebenso ein Fehler, bei einem PHP-Codeschnipsel einen Syntaxfehler einzubauen oder auch nur stillschweigend davon auszugehen, daß beispielsweise short_open_tag konfiguriert ist. Browser sind im Gegensatz dazu leider nur allzu gutmütige Wesen, die meinen, aus jedem Tag-Soup-Mist heraus noch etwas Brauchbares anzeigen zu müssen.

Liebe Grüße,
Clemens

RE:

Quote:
"Browser sind im Gegensatz dazu leider nur allzu gutmütige Wesen, die meinen, aus jedem Tag-Soup-Mist heraus noch etwas Brauchbares anzeigen zu müssen."

-> Was eher ein Vorteil ist.
Wie gesagt, es wird wahrscheinlich noch ein Artikel CSS folgen.
Erst aber nach dem PHP Teil.

Viele Grüsse
Patrick

Zitat: Browser sind im

Zitat:

    • Browser sind im Gegensatz dazu leider nur allzu gutmütige Wesen, die meinen, aus jedem Tag-Soup-Mist heraus noch etwas Brauchbares anzeigen zu müssen.
    • Was eher ein Vorteil ist.

Genau das ist es eben meiner Meinung nach nicht; im Gegenteil. Vor allem diesem Umstand ist es zu verdanken, daß sich die große Mehrheit eine Ist-ja-eh-wurscht-Mentalität zugelegt hat und sich nicht um ordentliches Markup kümmert – und das Gros der HTML-Dokumente dadurch zu einem technischen Ground Zero verkommen ist.

Würden andererseits Fehler auch als solche gewertet, wäre man gezwungen, zumindest halbwegs brauchbaren Output zu produzieren – wie auch der Quellcode jeder Software zumindest keine syntaktischen Fehler aufweisen darf.

Ok, Es kann ein Vorteil sein,

Ok, Es kann ein Vorteil sein, bringt aber auch Nachteile.
Vergisst man eine Tabelle zu beenden, dann setzt der Browser alles oberhalb der Tabelle hin.
So kann man natürlich viele Fehler suchen. Mir wäre ein HTML, dass nicht funktioniert, wenn man gröbere Sachen falsch macht (z. Bsp. End-Tag vergisst)
auch lieber. Wenn man dann allerdings jeden noch so kleinen Fehler, bzw. jede kleine Standardabweichung beheben muss,
wäre mir der Aufwand zu gross, eine Seite mit einem grösseren Layout zu machen.
Es kann doch nicht sein, dass man, nur um einen Text zu formatieren, zuerst mal zeilenweise Standards abtippen muss.

Zum Glück sind andere Programmiersprachen nicht ganz so von diesem Problem betroffen.

Viele Grüsse
Patrick

Bei Syntaxfehlern gibt es

Bei Syntaxfehlern gibt es keine »gröberen« und »kleineren« Fehler. ;-) Entweder die Syntax ist korrekt – oder eben nicht. Hast Du schon einmal ein Semikolon am Ende eines PHP-Statements vergessen? Falls ja: was ist dann passiert?

Zitat:

  • Es kann doch nicht sein, dass man, nur um einen Text zu formatieren, zuerst mal zeilenweise Standards abtippen muss.

Hier kommen wir zum Kern der Sache, der größten Fehlannahme überhaupt: HTML ist nicht dazu da, um Text zu formatieren. Der Sinn und Zweck von HTML ist, die Struktur eines Dokuments abzubilden. Punkt.

Im Übrigen ist es überhaupt kein Problem, größere Layouts mit korrekter Syntax zu erstellen. Man muß dafür auch gar nicht groß zusätzlichen Aufwand betreiben. Daß die Aussage mit dem »zeilenweisen Abtippen von Standards« Nonsens ist, weißt Du ebenfalls.

<!DOCTYPE html>
<html>
    <head>
        <title>Test</title>
    </head>
    <body>
        <p>Endlich weiß ich: 1 + 1 = 2!</p>
    </body>
</html>

Ist das wirklich so schwierig?

Beste Grüße,
Clemens

RE

wenn's nur das ist, ist's ok.
Aber !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"
?

"zeilenweise" war vielleicht ein wenig übertrieben.
Ich meine, wenn ich jetzt,..., nein egal.

Ich sehe ein, dass meine gezeigte Methode nicht 100% dem aktuell Gewünschten entspricht, muss aber sagen,
dass ich dies vor einigen Jahren exakt so gelernt habe. Ob da die Bücher auch nicht dem Standard entsprachen?
!DOCTYPE html bezeichnet eine HTML5 Datei. Habe ich das richtig verstanden?

Noch was:
Muss man Absätze innerhalb von body mit p einleiten?

Viele Grüsse
Patrick

Ich kenne nicht alle Bücher,

Ich kenne nicht alle Bücher, kann mir aber gut vorstellen, daß es durchaus welche gab, die nicht ganz akkurat waren. Das generelle Bewußtsein für Standards und das Einhalten selbiger entwickelt sich leider erst in letzter Zeit.

<!DOCTYPE html> ist der HTML5-Doctype, korrekt. Man kann diesen durchaus schon heute einsetzen, da HTML5 mehr oder minder abwärtskompatibel ist. Hat man ein korrektes HTML-4.01-Strict-Dokument, reicht in der Regel das Ändern des Doctypes, um ein korrektes HTML5-Dokument zu erhalten.

Zur Frage: Absätze gehören immer in p-Tags eingeschlossen, denn genau dafür ist das p-Element da. ;-)

Grundsätzlich jedoch: Text direkt in das body-Element zu schreiben ist in HTML 4.01 verboten, allerdings in HTML5 erlaubt.

RE

"mehr oder minder"
Ja, wahrscheinlich gibt's einfach Probleme bei video und canvas und was sonst noch neu dazugekommen ist.
Danke für die Beantwortung.

Viele Grüsse
Patrick

Mit video und canvas kann man

Mit video und canvas kann man kein Problem haben, da es das in HTML 4.01 ja nicht gibt. Ich schrieb von Abwärts- und nicht von Aufwärtskompatibilität von HTML5 – mein Punkt war also, daß sich der Umstieg von HTML 4.01 Strict auf HTML5 eigentlich auf den Austausch der Doctype-Deklaration reduziert.

Zukünftiger DOCTYPE

Findest du es Ok, wenn ich den zukünftigen Beispielen den HTML5 Doctype hinzufüge?
Ich glaube, da kommt nie mehr das font-Tag vor. Kann aber sein...
wenn dies der Fall wäre, würde ich 4.01 Transitional verwenden.

Viele Grüsse
Patrick

Wirklich wichtig ist meiner

Wirklich wichtig ist meiner Meinung nach, daß die Codebeispiele korrekt sind (egal, welche HTML-Version konkret verwendet wird) und den Lesern keine schlechten Gewohnheiten beibringen.

Konzentriere Dich darauf, mit HTML rein die logische Struktur des Dokuments abzubilden.¹ Das Aussehen gestaltest Du dann komplett mit CSS.

Anmerkungen:
¹ Hierzu kann es hilfreich sein, sich die Dokumente mit einem Textbrowser anzusehen. Ich kann für diese Zwecke ELinks empfehlen; wenn man öfter damit surft, sollte sich ein besseres Verständnis für gutes und schlechtes Markup einstellen.

RE

Ok,
Ich habe alle Beispiele, bei denen wieder HTML Code vorkommt mit einem HTML5 Doctype versehen.
Im bis jetzt zuletzt geschrieben Artikel über eine kleine Verwaltung werden Tabellen benutzt.
Tabellen sind OK, oder muss ich da auf CSS ausweichen?
Die Ausgabe vereinfacht sich wahrscheinlich, wenn Tabellen verwendet werden können.

Gruss
Patrick

Patrick, verwechsle nicht

Patrick, verwechsle nicht Markup mit CSS. Nochmal zum Mitschreiben: mit dem Markup bildet man eine Struktur ab, mit CSS sorgt man für das Aussehen – das gilt sowohl für Tabellen als auch für Listen oder jede andere Struktur. Überlege Dir, wofür ein bestimmtes HTML-Element steht, und setze es dann entsprechend ein.

HTML-Tabellen sind dazu da, um tabellarische Daten darzustellen. Beispiele hierfür wären eine Preisliste, ein Fahrplanaushang am Bahnhof oder eine Tabelle mit Börsenkursen. Ein guter Hinweis auf das Vorliegen von tabellarischen Daten ist, wenn jeder Datensatz die gleichen Felder (Eigenschaften) aufweist – sprich, das, was eine Spalte in einer Tabelle ausmacht. Für Layoutzwecke hingegen sind Tabellen, wie es vor ein paar Jahren noch sehr weit verbreitet war, das falsche Mittel der Wahl.

Zusatztip: wenn Du eine (Daten-) Tabelle erstellst, vergiß nicht darauf, den Tabellenkopf ordentlich mit thead und th-Elementen auszuzeichnen. ;-)

> Es kann doch nicht sein,

> Es kann doch nicht sein, dass man, nur um einen Text zu formatieren, zuerst mal zeilenweise Standards abtippen muss.

Ich finde schon, dass das so sein soll. Ist es in LaTeX z.B. auch und niemand würde auf die Idee kommen, sich darüber zu beschweren. Wenn man Mist baut, sollte man dafür gerade stehen. Und jeder vernünftige Interpreter oder Kompiler eine Programmiersprache reagiert auf Fehler mit Warnungen oder Fehlermeldungen. HTML ist da einige der wenigen Ausnahme (ggf. die einzige), wo man von der Syntax her fast jeden Unsinn produzieren kann und es kommt noch was Vernünftiges bei raus. Siehe z.B. den Output von tth, welches wir für die HTML-Nutzen. Das ist jetzt immer noch extrem fehlerhaft, wobei wir die gröbsten Fehler (fehlendes body etc.) schon selbst behoben haben. Und dennoch wird es angezeigt. Gut für uns, schlecht für den HTML-Standard.

Die Nachteile der Paketabhängigkeiten

Also, Sie haben ja insofern recht, daß eine Paketverwaltung auch gewisse Nachteile mit sich bringt, aber das Besipiel, daß Sie gebracht haben, ist meiner Meinung nach keiner der Paketverwaltung, sondern höhstens ein Fehler des Distributors.
Bei einem Paket A definiere ich ja eine Abhängigkeit zu Paket B. Diese muß ich ja nicht so defnieren, daß nur Version X die erfüllt, sondern ich kann es ja auch so machen, daß auch Version X.1...n akzeptiert wird. Und ich muß ja nicht als Distributor irgendwie am Paket A was ändern, daß es Paket B in Version X nicht mehr akzeptiert. Ich muß nur die neue Version von B abieten und der Paketmanager wird es sobald er seine Repository-Daten aktualisiert, die neue Version sofern gewünscht einspielen.
Dies natürlich unter der Annahme, daß sich die Deklaration der Funktionen bzw. Methoden und Klassen nicht geändert haben. Sonst müssen natürlich auch die davon abhängenden Pakete eventuell angepaßt werden. Aber in diesem Fall wäre dies auch kein Nachteil der Paketverwaltung, da die Programme ja auch dann neu kompiliert und paketiert und installiert werden müßten, wenn sie statisch kompiliert wären. Und diesem Fall wäre das Besipiel auch kein Fehler von Ubuntu.

Re: Die Nachteile der Paketabhängigkeiten

Danke für den Kommentar.

Ein Leser hatte weiter oben schon angemerkt, dass ich mit meinem Rückschluss auf die Paketversion daneben gelegen habe. Das Problem ist eher, dass aus einem Quellcode-Paket mehrere Binärpakete in Ubuntu/Debian erstellt werden. Ändern sich also eine Zeile im Quellcode-Paket, müssen alle Binärpakete neu erstellt werden – unabhängig davon, ob sich in diesen wirklich etwas geändert hat. Bei statischen Abhängigkeiten ist es aber natürlich kein Fehler, dann muss in der Tat das Binärpaket zurecht neu erstellt werden.

Und ja, das ist ein distributionsspezifisches Problem, weil zum einen die Binärpakete so erstellt werden, zum anderen weil es keine Delta-Updates gibt.

Viele Grüße
Dominik

Pingback

[...] Oktoberausgabe bietet 34 im Querformat gesetzte Seiten mit Nachrichten, Artikeln, Leserbriefen und Terminen aus [...]

Der Vorteil gut genutzer Paketabhängigkeiten!

Ich kann den Artikel nicht nachvollziehen: Die Paketverwaltung ist m.E. einer der größten Vorteile von Linux!

Und die meisten abhängigen Pakete geben lediglich eine minimal benötigte Version der Pakete an, von den sie abhängen, so dass Updates wirklich klein ausfallen.
Auf anderen Systemen wird quasi immer der ganze Stapel der Programmdateien inklusive aller Abhängigkeiten mitgeliefert und z.T. redundant auf der Platte abgelegt. Und automatische Updates sind auch immer noch oft nur die Ausnahme und funktionieren mit eingeschränkten Benutzerrechten nur halb (außer, wenn die Rechteverwaltung wie bei einer Firefox-Installation unter Windows 7 einfach ausgehebelt wird, weil das Programm unter den Anwendungsdaten und nicht unter Programme installiert wird: Einfach für den User, schlecht für die Sicherheit...)

Bei den QT-Paketen lag nun aber der Fall vor, dass genau eine ganz bestimmte Version von libqtcore4 benötigt wird. Wenn der Entwickler das so vorsieht, müssen bei einer Aktualisierung natürlich auch die abhängigen Pakete aktualisiert werden.
Hier kann man aber der Paketverwaltung keinen Vorwurf machen, sondern eher den Entwicklern, deren Core-Paket scheinbar noch so "volatil" ist, dass sie sich nicht trauen, nur eine bestimmte Mindestversion vorauszusetzen.

Also: Die Paketverwaltung kann nur so gut sein wie die, die sie nutzen. Und selbst bei schlechter Nutzung ist sie besser als alle mir bekannten Alternativen (bei Windows z.B. meist: Manuelle Kontrolle auf neue Updates, manuelles Einspielen und Hoffen, dass es geht...)

Re: Der Vorteil gut genutzer Paketabhängigkeiten!

Danke für die Kritik. Ich sagte im Artikel aber nicht, dass die Paketverwaltung schlecht ist. Ganz im Gegenteil bin ich froh, dass es sie gibt, weil ich mich dann nicht groß darum kümmern muss, mein System sauber zu halten. Im Gegensatz zu anderen Betriebssystemen kann man sie gar als Segen bezeichnen.

Der Artikel hatte leider (wie weiter oben angemerkt) den Denkfehler meinerseits, dass die vielen Binärpakete aufgrund der Abhängigkeiten heruntergeladen werden müssen. Dies ist aber nicht so, sondern es lag daran, dass die Binärpakete alle aus einem Quellpaket erstellt werden. Dies ist bei Ubuntu/Debian so, andere Distributionen handeln das mitunter anders.

Vierter freiesMagazin-Programmierwettbewerb

Hallo FreiesMagazin Redaktion,

sehr nette und übersichtliche Idee. Ich denke dass ist genau das Richtige für einen Freizeit-Wettbewerb. Wenn diesmal nicht ein paar mehr Leute teilnehmen, dann hat wohl die Facebookfaulheit auch bei den Programmierern zugeschlagen.

Ich werde mich die Tage mal hinsetzen und erste Versuche starten.

Danke!

Grüße Frank

Re: Vierter freiesMagazin-Programmierwettbewerb

Vielen Dank. Wir freuen uns drauf!

Pingback

[...] Die Oktoberausgabe des GNU/Linux- und Freie-Software-Magazins freiesMagazin ist vor zwei Tagen erschienen. Über freiesMagazin [...]

Die Nachteile der Paketabhängigkeiten

Wenn die Größe das einzige Problem ist. Im Zeitalter von DSL/VDSL ist das wohl eher ein vorgeschobenes Argument. Mir ist es wurscht, ob ich 1 oder gar 500 MB aktualisieren muss. Das geht voll-automatisch in weniger als einer Stunde. So what?!