64Bit Flash-Plugin von Adobe und Konqueror 4.2.90

Ein kurzer Hinweis wegen einer eben gemachten Erfahrung:

Nach dem Update von KDE 4.2 auf KDE 4.2.90 (Beta-Release von KDE 4.3) und ein paar Änderungen an der parallel vorhandenen KDE 3 Installation funktionierte auf meinem Opensuse 11.1-Arbeitsplatz das 64 Bit-Flash-Plugin von Adobe nicht mehr mit Konqueror zusammen (wohl aber mit Firefox).

Ein Hinweis der KDE-Entwickler brachte die Lösung:
Das RPM für die kde3-gtk-qt-engine (Qt3 !) darf nicht installiert sein!

(Na hoffentlich können alle Leute, die KDE3 noch parallel zu KDE4 verwenden, darauf auch wirklich verzichten.)

Ansonsten gelten für die Installation des 64bit-Plugins die Hinweise meines früheren Artikels.
https://linux-blog.anracom.com/2009/01/26/kurztest-der-64-bit-version-des-flash-plugins-von-adobe/
Im Besonderen darf das RPM für den “nspluginwrapper” nicht installiert sein.

USB-Multicard Reader für Linux

Meine Erfahrungen zu zwei Multicard-Readern, mit denen ich unter Opensuse zu tun hatte:

1. USB 2.0 Multicard Reader von Equip
Der von mir ausprobierte Card Reader wird zwar grundsätzlich erkannt – der Befehl “lsusb” zeigt folgendes Device an :
Bus 008 Device 002: ID 0d8c:5200 C-Media Electronics, Inc. Mass Storage Controller(0D8C,5200)

Das Einstecken einer SD oder Flash-Card bewirkt jedoch rein gar nichts. Ich habe ca. einen halben Tag versucht, Tipps im Internet auszuprobieren. Ohne Erfolg.

Mein Fazit: Dieser Reader ist nichts für Linux. Finger weg davon! Siehe auch
http://www.qbik.ch/usb/devices/showdev.php?id=4469

2. USB 2.0 Multicard Reader von Kingston 19-in-1
Dieses Gerät (Bus 008 Device 004: ID 11b0:6148 ATECH FLASH TECHNOLOGY) funktionierte bei mir auf Anhieb. Unter KDE 4.2 werden beim Einstecken von Flash- oder SD-Cards die USB Mass Storage Module wirksam und die Flashcard wird automatisch als SCSI-Device gemountet – in meinem Fall als /dev/sdc1. Das entsprechende Mountverzeichnis wird bei Suse (je nach Datenträgerbezeichnung) unter dem Directory /media/ angelegt und ist dort leicht zu finden.
Anmerken möchte ich auch, dass die Transferraten des Kingston Multicard-Readers sehr gut sind – jedenfalls besser als die des Equip-Geräts unter Windows XP.
Also : Den 19-in-1 Reader von Kingston kann man nach meinen Erfahrungen problemfrei unter Linux einsetzen.

Schemata und Web-Applikationen

Wegen aktueller Erfahrungen bei einem Kunden möchte ich ein Thema ansprechen, das man nicht oft genug betonen kann :

Wenn man eigene Web-Services wie z.B. Formulardienste oder Pflegeapplikationen mit PHP und dabei auch noch objektorientiert entwickelt, dann lohnt es sich unbedingt, hierbei so vorzugehen, dass die

  • grundlegenden Datenbank-Strukturen (Tabellen, Felddefinitionen, Master-Detail-Relationen),
  • essentielle Elemente der Datenprüfung/-Validierung,
  • Objekte für die Repräsentation von Webformularen,
  • Objekte der Datenbankinteraktions-Schicht und
  • die darüber liegenden Pflegeapplikationen

auf der Basis von sog. zentralen “Datenschemata” quasi generiert werden. Dabei kann man sogar Vorgaben für die Repräsentation von Master-Detail-Relationen integrieren.

Natürlich ist der Aufbau entsprechender eigener Frameworks mühsam – aber es lohnt sich nach unserer Erfahrung schon ab dem zweiten Projekt.

Die zentrale Idee ist die, dass man sich ein “Framework” so aufbaut, dass durch die programmtechnische Auswertung von vorgegebenen “Datenfeld-” und “Validierungs-” Beschreibungen (“Schema”)

  • sowohl die benötigten Datenbank-Tabellen generiert
  • als auch zugehörige Pflegeapplikationen in einem “Rutsch” (durch reines Kopieren von Dateien) bereitgestellt werden können.

Die entsprechenden Objekte müssen so “intelligent” sein, dass sie aus der vorgegebenen Datenstruktur-Information des “Schemas” die richtigen Schlüsse ziehen : D.h., dass sie die benötigten SQL-Statements und Validierungsstatements innerhalb der Pflege- und Applikationslogik und die zugehörigen Web-Formulare dynamisch aufbauen, wobei Sie immer gleiche Klassendefinitionen heranziehen.

Salopp ausgedrückt folgt man dabei der Devise: “Gib mir deine Datenstruktur und ich gebe dir eine erste komplette Pflegeapplikation auf der Basis eines universellen Model-View-Controllers und einer universellen Datenbank-Interaktionsschicht an die Hand.” PHP ist für den Aufbau solcher Frameworks aus unserer Sicht seit PHP5.2 geradezu ideal geeignet.

Baut man die Pflegefunktionalität selbst modular in Funktionalklassen auf, so verschafft man sich gleichzeitig die Basis für komplexere und spezialiserte Business-Applikationen, denen man dann Schema-Objekte übergibt. Aus der Schema-Information werden dann nach Bedarf automatisch Objekte für die Repräsentation einzelner Datensätze oder ganzer Listen von Datensätzen generiert. Die Interaktion mit der Datenbank tritt dann für die Business-Logik in der Regel fast völlig in den Hintergrund.

Bei Erweiterungen um Felder ändert man primär das entsprechende “Schema” und schon läuft die erweiterte Applikation – vorbehaltlich inhaltlicher Erweiterungen der Business-Logik. Es liegt auf der Hand, dass sich die anfängliche Mühe bei der Erstellung “schemabasierter” Frameworks schnell lohnt.