Scrollable Area und jQuery – Probleme und Lösungen

Seit nun über einem Jahr arbeite ich an einem großen Projekt im Bereich Gebäudeverwaltung. Es geht darum eine Vielzahl an Bestands- und Revisionsunterlagen einfach verwalten zu können um eine Immobilie kostenoptimiert betreiben zu können.

In der Praxis gilt es, riesige Datenmengen für den User sinnvoll aufzubereiten und eine einfache Lösung bereitzustellen, mit der der Benutzer arbeiten kann.

Für die Auflistung von verbauten Teilen innerhalb eines Gebäudes sollte eine sogenannte “Scrollable Area” zum Einsatz kommen. Ein Bereich also, in dem der Benutzer sich durch alle Bauteile scrollen kann. Continue reading

Englische Serien und Deutsche Untertitel – Die Entstehung

Ich schaue gerne Serien. Am liebsten im Originalton.
Da Serien doch unterschiedlich schwer zu verstehen sind, nehme ich gerne die vielen kostenlosen Untertitel (Sub) in Anspruch. Diese werden von fleißigen Usern erstellt und sind meistens mehr als brauchbar.

Im deutschen Raum gibt es zwei große Communitys, die sich der Erstellung der Untertitel widmen: TV4User und Subcentral.
Beide Seiten sind in einem großen Forum organisiert. Es gibt Unterforen für jede nur denkbare Serie und die Auswahl ist jeweils riesig. Untertitel erscheinen meiner Erfahrung nach durchschnittlich 5-7 Tage nach der Ausstrahlung im Amerikanischen Fernsehen (“Airdate”).

Continue reading

Test: iRobot Roomba 563PET

Als Gadget Geek bin ich permanent auf der Suche nach witzigen Gadgets für Daheim und Unterwegs. Nun, nachdem wir ohnehin einen Staubsauger brauchten, haben wir uns einen Roomba zugelegt. Für die Unwissenden unter euch: Die Firma iRobot produziert für den Heimanwender Roboter, die einem in der täglichen Hausarbeit zur Hand gehen.

“Als Gadget Geek bin ich permanent auf der Suche nach witzigen Gadgets”

Erstmal schreckt natürlich der stolze Preis von ca. 380€ ab, davon haben wir uns allerdings nicht beeindrucken lassen. Über Amazon wurde dann bestellt und eine Woche später (letzten Samstag) war das Gerät fertig aufgeladen und einsatzbereit. Eine dicke Anleitung in mehreren Sprachen liegt bei, wurde aber ignoriert. Die Steuerung ist quasi intuitiv, viel falsch machen kann man da nicht.

Continue reading

Tutorial: Facebook Connect

Ich habe mich vor ein paar Wochen mal mit OAuth und Facebook Connect ausseinandergesetzt.
Falls jemand das in Zukunft vorhat, für den hab ich jetzt ein cooles Tutorial:

http://net.tutsplus.com/tutorials/php/how-to-authenticate-your-users-with-facebook-connect/

Möglicherweise finde ich nach meinem Urlaub ja Zeit, das ganze anschaulich in CakePHP zu implementieren, schließlich könnte man das ja immer mal wieder brauchen.
Ich brauch es ua. für Meetr.

Quicktip: Auth Component von CakePHP und ihre Tücken

Die Auth Component von CakePHP ist ein einfach zu bedienendes aber schönes Werkzeug um schnell einen Login auf die Beine zu stellen. Leider hatte ich immer wieder komische Probleme damit bzw. es lief anfänglich nie wie ich wollte.

Hier ein paar Dinge die man wissen sollte:
1. Passwörter werden mit der Methode Auth::password gehasht. Dem liegt standardmäßig ein salted SHA1 Hashing Verfahren zugrunde.
Beispiel:

1
2
3
$this->data['User']['password'] = $this->Auth->password($this->data['User']['password']);
$this->User->create();
$this->User->save($this->data);

2. Cake Konvention für das DisplayField ist, dass der Feldname “name” sein muss. Die Auth Component erwartet aber, dass der Username auch “username” heißt, sonst funktioniert das ganze nicht.

Man kann sich hiermit Abhilfe schaffen:

1
2
3
4
function beforeFilter() {
parent::beforeFilter();
    $this->Auth->fields['username'] = 'name';
}

3. Um einzelne Actions von der Auth Component zu befreien gibt es Auth::allow.

Beispiel:

1
2
3
4
5
6
7
function beforeFilter() {
parent::beforeFilter();
// Einzelne Actions erlauben:
$this->Auth->allow('index', 'foobar');
// Alle Actions erlauben:
$this->Auth->allow('*');
}

Kommentar: Keynote Apple WWDC 2010

Selbstversuch: Ich werde hier in meinen eigenen virtuelle 4 Wänden mal versuchen die Keynote der diesjährigen WWDC etwas (auf meine Weise) zu begleiten.

20:56: Schade, das wars auch schon. Kein OS 10.6.4, keine neuen Macs, kein kostenloses Mobile Me..
Danke fürs Lesen, ich hoffe ich hab dem ganzen übertriebenen Geschwafel eine etwas eigene Note geben können.

20:54: “I put up this slide a little earlier this year. It represents what Apple is all about. We’re not just a tech company. Apple is more than that. It’s tech and humanity. It’s the hardware and the software working together. It’s not just a great new camera system, it’s the editing too, it’s not just a front-facing camera, it’s that plus 18 months of work on the software side. It’s the complete solution, so all of us don’t have to be system integrators.” Ein Wort: FOXCONN!11

20:52: “This is going to change everything… all over again.” Na da bin ich gespannt. Die Welt an Revolutionen ist es jetzt auch nicht.

20:50. Sie zeigen gerade ein Video über die Produktion. Komisch, von Foxconn und den unmenschlichen Bedingungen dort für deren Arbeiter ist aber keine Rede.

20:47: Kostenloses Update auf iOS4? Was ist denn mit Apple los? Das ältere Geräte nicht alle Features unterstützen werden, wussten wir ja schon. Und am 21. Juni beginnt der Rollout, da bin ich doch garnicht da!

20:43: Vorverkauf startet Morgen in einer Woche. Auch für Deutschland.

20:41: Der Preis: 299$ die 32GB Variante, $199 die 16GB Variante. Mit Vertrag bei AT&T, scheinbar exklusiv. Lief deren Vertrag nicht dieses Jahr aus? Wurde ja über WiMAX spekuliert.

20:40: Oh, ziemlich cool. Sehe ich richtig, dass das iphone 4 ua. SIP untersützt? Das wäre ja mal was.

Continue reading

Magic Mouse und die Mausgeschwindigkeit

Seit Samstag bin ich ja stolzer Besitzer eines 27″ iMacs und hab nun diese grausame Magic Mouse.
Zwei Wochen werd ich mir die jetzt mal antun, danach entscheide ich mich, ob ich sie weiter nutzen möchte.

Jedenfalls störte mich von Anfang an die Geschwindigkeit des Mauszeigers die sich unter OSX nicht sonderlich hoch einstellen lässt. Dies lässt sich aber durch einen Einzeiler in der Konsole beheben:

1
defaults write -globalDomain com.apple.mouse.scaling -float 8.0

(Ausloggen und Einloggen um die Veränderungen in Kraft treten zu lassen)

Max unter OSX: 3.0
Meine Einstellung: 8.0

So läuft das wesentlich besser.

Kaffeekassen App Download

Wegen riesiger Resonanz (Einer um genau zu sein..) bezüglich der, in CakePHP geschriebenen, Kaffeekassen App werd ich den Code einfach mal zum Download bereitstellen. SQL Dump ohne Daten liegt auch bei.

Hier findet ihr die Files.

Installation:
1. Entpacken
2. Datenbank importieren und app/config/database.php anpassen
3. Benutzer anlegen: localhost/sprit.cafe/users
4. Kaffee eintragen