Am Samstag war ich auf der IFA (internationale Funkausstellung) in Berlin und hab ein paar Interessant Fotos mitgebracht. Insgesamt war die Messe nicht der Hit, weil größten Teils Fernseher und iPhone Schutzhüllen und Zubehör angeboten werden und nur wenige Stände da waren, wo man interagieren konnte und gut die Technik ausprobieren konnte.
pdflib Installation unter Windows Xampp
Bei einer Fehlermeldung wie:
Fatal Error: Call to undefined function pdf_new();
fehlt die die pdf-lib Erweiterung für PHP.
Die Installation ist denkbar einfach:
- Download von pdflib8.0 für PHP (erste Zeile in der Mitte)
- öffnen der .zip und kopieren der passenden libpdf_php.dll, je nach PHP Version aus dem Verzeichnis /pdflib/bind/php/php-530-v8 in das Verzeichnis php/ext
- Eintrag in der php.ini: extension=libpdf_php.dll; hinzufügen an der extension Stelle
Auf der Suche nach einem günstigem Root-Server zum Entwickeln und betreiben von meinen Webseiten bin ich über Amazon EC2 gestolpert und will im folgenden berechnen, ob sich der Betrieb finanziell lohnt im Vergleich zu einem normalen Root Server.
Die Amazon EC2 Preistabelle findet man hier.
Update:
Noch billiger sind die Reserved Instances, bei denen man für einen bestimmten Zeitraum (1 oder 3 Jahre) eine Instanz zu einem festen Preis mietet.
So bezhalt man z.B. für eine Linux Nano Instanz mit Sitz in Frankfurt jährlich nur 40$ oder für 3 Jahr 79$. Unschlagbar billig.
Das klingt erstmal günstig, aber richtig teuer wird Amazon, wenn es um große Systeme mit viel Traffic geht, da ist es günstiger selber ein Datacenter zu betreiben.
Achtung: EC2 Micro Instance ist ein Jahr kostenlos für Neukunden.
Amazon rechnet im Gegensatz zum normalen Root Server Anbietern in Stunden ab, da es sich um einen elastischen Cloud Service handelt. Es sollte bei der Rechnung immer im Hinterkopf gehalten werden, dass EC2 den Riesenvorteil einfach zu skalieren, indem man neue Instanzen dazuschaltet bei Bedarf.
Ein Rechenbeispiel für einen EC2 Entwicklungserver mit Standort Europa (Irland):
Preisvarianten für eine Micro Instance, die besonders günstig, aber nicht besonders leistungsfähig sind mit 613 MB RAM, aber vollkommen ausreichend für den Betrieb kleinerer Webseiten und als Entwicklungserver:
1. On-Demand Instances: 0,020$ pro Stunde
2. Reserved Instances mit geringer Auslastung: 0,015$ pro Stunde + $23*
3. Reserved Instances mit mittlerer Auslastung: 0,01$ pro Stunde + $54*
4. Reserved Instances mit hoher Auslastung: 0,008$ pro Stunde + $62*
Zum Debuggen von Webseiten braucht man immer spezielle Entwickler Tools für jeden einzelnen Browser, weil sich die Darstellung in jedem Browser ändert oder Javascript Fehler nur in bestimmten Browsern auftreten. Bevor man an die Arbeit geht sollte man unbedingt checken, ab das der Browser Cache deaktiviert ist in dem jeweiligen Browser, sonst erhält man eine nicht aktuelle Version der Webseite.
Debugging Tools beim Firefox 15
Geht über das bekannte und beste Plugin: Firebug
Ich verwende zusätzlich die Plugins: Web Developer und Colorzilla. Durch die sehr guten Plugins ist der Firefox mein Entwicklungsbrowser der Wahl.
Als Webdeveloper muss man sich mit allen gängigen Browsern rumschlagen und beherrschen, mit allen zu debuggen. Um dies zu tun, braucht man auf jeden Fall 2 Dinge:
- deaktivierten Browser Cache, damit man keine alten Seiten sieht und sich wundert, warum sich nichts geändert hat
- ein Debugger wie Firebug für Firefox siehe Artikel: Debugging Tools für Firefox, IE, Chrome, Safari, Opera
Browser Cache deaktivieren beim Firefox
Geht über das Plugin: Web Developer
Einfach nach der Installation: Disable->Disable Cache->Disable Entire Cache
Ein praktische Bibliothek für Android Apps ist Acra (Application Crash Report for Android), damit lassen sich automatisch bei einem Fehler auf dem Handy eines Users die Fehlermeldung verschicken als:
- Google Docs spreadsheet (default)
- eigenes HTTP POST Server Script
- jede andere mögliche Verarbeitung mittels der Implementierung eines eigenen „report senders“
Im Falle eines Crahs kann man dem User auf folgende Arten mit dem Fehler begegnen:
- Silent (default): ACRA actions are not visible. The crash report is sent and then the default android crash system does its job (Force Close dialog)
- Toast: When the crash occurs, ACRA displays a toast and simultaneously sends the report.
- Notification: An optional toast is displayed on application crash, but the report is not sent immediately. A status bar notification is published warning the user that he should send a report. When selected, the notification displays a dialog asking for the authorization to send the report, with an optional user comment.
- Dialog: since 4.3.0b1, experimental, allows to display a crash dialog without the need of a status bar notification.
Installation
Bei einer Fehlermeldung:
Status Code 403, AWS Request ID:.... RequestTimeTooSkewed The difference between the request time and the current time is too large.
Hilft es die Uhr des Handy zu stellen manuell, weil Amazon sonst von einem zu alten Request ausgeht und diesen blockiert, wenn die Zeit um über 15Minuten unterscheidet von der Amazon Zeit.
Es gibt leider keine andere unterstütze Lösung von Amazon-Seite: siehe Thread.
Um in seiner App eine Google Maps Karte zu benutzen, sind leider ein paar Schritte nötig:
Key mit dem Java Keytool erstellen
Key Tool starten auf der Konsole: entweder ist der java_xx/bin-Path in den Umgebungsvariablen von Windows, dann ist dieser Schritt nicht nötig
cd C:\Program Files\Java\jdk1.7.0_xx\bin
Danach:
Der richtige Bürodrehstuhl
Das Thema Ergonomie am Arbeitsplatz ist ein Dauerbrenner vor allem auch für Programmierer und andere IT-Spezialisten, die täglich viele Stunden an ihren Schreibtischen verbringen (müssen und wollen). Nicht nur dem Schreibtisch selbst kommt dabei eine hohe Bedeutung zu, sondern vor allem auch dem Schreibtischstuhl.
Es soll ja tatsächlich noch immer Zeitgenossen geben, die stundenlang auf einem Plastiklappstuhl sitzen während sie zuhause im Keller programmieren und deren einzige Bewegung zwischendurch aus kurzen Rauchpausen am Fenster besteht. Solche ein Verhalten führt meist schnell zu Rückenverspannungen bis hin zum Bandscheibenvorfall.
Zum Übersetzen von Texten eignet sich dieses Plugin vorzüglich. Es kommt bei meinem Blog nur zu Problemen, wenn Code übersetzt wird, was man jedoch verhindern kann, indem man alles in <pre>-Tags ausschließt.
wp-content/plugins/transposh-translation-filter-for-wordpress/core/parser.php Z. 139:
protected $ignore_tags = array('script' => 1, 'pre' => 1,'style' => 1, 'code' => 1, 'wfw:commentrss' => 1, 'comments' => 1, 'guid' => 1);
