Coffeenerd? – Nein, ich mag nur guten Kaffee

Trinke jetzt schon seit einiger Zeit bei mir Zuhause nur noch richtig guten Kaffee. Einfach nur weil es gut ist und Spaß macht.

Kaffee Bohnen

Kaffee Bohnen geröstet, aufgenommen mit einem 18mm Retro Adapter. CC BY-NC-ND (Source flickr.com beaglesnoop)

Mein neuster Kaffee verleitet mich zum schreiben. Es macht einfach super viel Spaß so guten Kaffee genießen zu können. Am Arbeitsplatz trinke ich Vollautomaten-Kaffee mit ganz viel Zucker zum überdecken des eigentlichen Geschmacks. Mein Kaffee Zuhause wird schwarz (ohne Zucker (und vor allem ohne Milch.)) getrunken.

Richtige Zubereitung eines guten Filterkaffees gelingt mir dabei immer noch ein stück besser. Frisch gemahlener Kaffee kommt hierbei in meine AeroPress. Herauskommt schwarzes Gold. Einfach Lecker.

Was ist bei guten Kaffee zu beachten? Außer die richtige Zubereitung achte ich darauf das die Bohne sehr gute Qualität haben. Dabei vertraue ich im Moment nur auf drei verschiedene Händler/Röstereien.

Fairtrade und allen Labeln schenke ich keine Beachtung mehr spätestens nach folgendem: Das Geschäft mit dem schlechten Geschmack

Ich versuche lieber mehr bei Direkthändlern zu kaufen wie z.B. Coffee Circle.

  1. Coffee Circle – Direct Trade mit Spendensystem, für das gute Gewissen und Spitzen Qualität.
  2. sonntagmorgen.com – Spitzen Kaffees, günstiger als bei Coffee Circle.
  3. Erste Tegernseer Kaffeerösterei – für jeden außergewöhnlichen Spitzen Kaffee in meiner Region Geröstet.

Zubereitungstipps und weiteres rundum Kaffee findet man auch bei Coffee Circle. Top Nachschlagewerke, egal wie oder welchen Kaffee Ihr genießen möchtet.

Ich bin „Kaffeenerd“ geworden weil ich sehr gerne richtig guten Kaffee trinke.

YouTubes Rewind 2014 – Estereggs

Cool gemachtes Video mit 19 Estereggs 🙂

Hier die neunzehn im Video „versteckten“ Videos. Eine Art „Making Off“ was das ganze Video noch lustiger macht.

  1. https://www.youtube.com/watch?v=e5Vwua0rRZ8
  2. https://www.youtube.com/watch?v=yUIyw4bHY2s
  3. https://www.youtube.com/watch?v=Vtp6JyDapRQ
  4. https://www.youtube.com/watch?v=saKtAaVxHP4
  5. https://www.youtube.com/watch?v=YeVEirMVYBk
  6. https://www.youtube.com/watch?v=AG9xNuksPhc
  7. https://www.youtube.com/watch?v=XeN2T_eP3k8
  8. https://www.youtube.com/watch?v=UCEsW_W183c
  9. https://www.youtube.com/watch?v=HJx-RfYtD28
  10. https://www.youtube.com/watch?v=y81d-gFqm54
  11. https://www.youtube.com/watch?v=Fp9XcDlt67c
  12. https://www.youtube.com/watch?v=X69XkqpC6X4
  13. https://www.youtube.com/watch?v=4SWhxArjRCA
  14. https://www.youtube.com/watch?v=PxkkZUNNoxs
  15. https://www.youtube.com/watch?v=uPPjKShJz78
  16. https://www.youtube.com/watch?v=4DSMNs9zi8I
  17. https://www.youtube.com/watch?v=cTrRuaicCTM
  18. https://www.youtube.com/watch?v=FAOAW58ab0I
  19. https://www.youtube.com/watch?v=qv8TmlVCLK0

 

Viel Spaß beim schauen.

Ulitmate Cookie Clickers Upgrade Calculater by Smeagol

Ein neues kleines Javascript Tool.

Worum geht es?

`Cookie Clickers` ein kleines Spiel von redBit games. Der Sucht Faktor bei diesem Spiel ist nicht zu unterschätzen.

Jedenfalls kann man sich dabei Upgrades kaufen (nur mit Cookies, die man erspielt). Mit diesen Upgrades bekommt man CPS (Cookies per Second) um weitere Cookies zu bekommen um sich weitere Upgrades kaufen zu können. Jedes Upgrade wird mit immer höherem Level immer um das 1.3 fache teurer.

Also habe ich mir gedacht „welches Upgrade ist denn jetzt das beste“? Also wo ist der Faktor Preis pro CPS am niedrigsten.

Nachdem ich Webentwickler bin hab ich mir also erstmal – richtig – eine Spreadsheet gemacht. Naja mit dem Ergebnis war ich unzufrieden also habe ich das ganze nochmal als HTML / jQuery Lösung gebaut.

Dieses kleine Javascript benötigt jetzt nur noch den aktuellen Level eurer Upgrades und schon berechnet es pro Upgrade den Preis pro CPS. Das ganze wird dann im Local-Storage eures Browsers gespeichert und ist somit nur in eurem Browser.

Serverseitig passiert hier rein gar nichts außer das HTML, CSS und JS ausgeliefert wird.

Dank HTML-Kickstart hat das ganze noch eine Sortierbare HTML-Tabelle drumherum. Die von mir automatisch bei document ready erstmal auf Preis pro CPS sortiert wird.

Anschauen und nutzen könnt ihr das Tool ab sofort via cookies.sgr.cc.

Hier noch der Download der HTML/CSS/JS Dateien, CSS/JS ist hauptsächlich von HTML KickStart das Sort-JS ist aber bereits ganz leicht modifiziert. Ebenso drei Zeilen CSS sind von mir.

[download id=“1811″]

Die `cookieklickers.js` ist hingegen komplett von mir. Diese bildet zusammen mit der index.html das Herzstück der Programmierung.

Scheiß Encoding

Nachdem ich heute wiedereinmal fluchend vor serialisierten UTF-8 werten saß, hier mal meine Heutigen Erkenntnisse zum Thema.

UTF-8 sollte einfach immer und überall im Web Standard sein und wer heutzutage noch irgendwas dagegen hat soll mir einen vernünftigen Grund liefern.

Drupal speichert Daten gerne Serialisiert. Also lese ich diese aus und lasse die PHP Funktion unserialize darüber laufen. Problem sobald [ßöäü] drin ist klappte es nicht mehr.

Okay also ein Encoding-Problem. Google hilft nicht wirklich weiter. Empfehlungen welche ich gefunden habe waren folgende.

  • base_64_encode – bevor man in die DB schreibt. [1]
    • klappt nicht, da ich in die Drupal Save nicht eingreifen möchte.
  • irgendwelche magischen preg_replace zum nachzählen der Serialisierten Strings [2]
    • Will ich auch nicht machen, nicht mehr wartbar und außerdem kann ich dann nie sicher sein das die Daten in der Datenbank korrekt sind.

Ergebnis war das ich analysiert habe wie (also mit welchem Encoding) Drupal auf die Datenbank zugreift. Ergebnis hier war „natürlich“ UTF-8.

Nun mein Datenlese-Tool greift per mysqli ohne genau definiertes Encoding darauf zu. Somit holt sich mein Tool die Daten in ISO-irgendwas.

Damit hat mein eingelesener Beispiel String: „Scheiß Encoding“ eine länge von 15. Nun steht aber in der Datenbank der Serialisierte Wert: s:16:"Scheiß Encoding"; dieser Umstand bringt unserialize dazu mit E_NOTICE abzustürzen und einfach nur FALSE zu liefern.

Datenbankverbindung via mysqli::set_charset('utf8') auf UTF-8 gestellt und magic, schon funktioniert alles wunderbar.

[1] http://blog.emeidi.com/2012/07/16/phps-serialize-und-unserialize-funktion-mit-unicode-problemen
[2] http://www.php.net/manual/en/function.unserialize.php#107886

Uberspace – So wie Webhosting sein sollte

Im Moment bin ich ja bei „all-inkl.com“ aber Parallel auch dabei so viel wie möglich stück für stück auf Uberspace zu katapultieren bzw. auch am überlegen mit einem Root Server einfach alles selber zu machen.

Warum Uberspace? Weil es einfach funktioniert. Top Ausstattung zum top Preis. Preis/Leistungstechnisch nicht zu überbieten, außerdem immer aktuelle Software (kein phpmyadmin 3.5.8.2 wie bei all-inkl.com). Egal bei welchem Problemchen reagiert der Twitter Support instant. Einfach toll. So wie Webhosting heute sein sollte (und das überall). Nächster Vorteil ist die Shell. Kein Komisches meist funktionierendes Webinterface zur Verwaltung sondern einfach Bash. Ich mag das und will es vor allen dingen dabei immer mehr lernen.

Das beste bei dem ganzen ist, man lernt Software kennen, kann ausprobieren und testen. Es ist einfach schon alles da und lauffähig. Kaputt konfigurieren kann man es trotzdem immer noch. 😉

Im Moment liegt dort meine kleine ownCloud wegen `HTTPS` was hier (all-inkl) nur über Proxy funktionieren würde. Außerdem läuft Piwik seit heute auf einem Uberspace was sich dadurch bemerkbar gemacht hat das ich Piwik endlich Updaten konnte. Denn mein Webserver hier bei all-inkl hat PHP 5.2.12 im Einsatz, irgendwelche Fragen?

inwx als Domain Verwaltung und Uberspace (oder doch einen eigenen RootSrv?) als Webhosting ist im Moment mein komplett angestrebtes Ziel. Das wird aber einige Zeit dauern da hier doch mittlerweile einige Strukturen gewachsen sind die es umzuziehen gilt.

Das interessanteste & meiner Ansicht nach großartige an Uberspace ist der Datenschutz. Datenschutz durch Daten nicht Erfassung. Einfach absoluter Traum.

Bei Uberspace.de nehmen wir nicht nur den Datenschutz, sondern zuvorderst auch die Datensparsamkeit sehr ernst. Wir haben uns dazu entschieden, bei der Einrichtung eines Uberspaces keinerlei persönliche Daten zu erheben, und zwar aus einem einfachen Grund: Wir brauchen sie nicht. Damit erübrigt sich jede Grundlage für eine Speicherung.

Was wohl am längsten dauern wird ist die Kündigungsfrist bei meinem jetzigen Anbieter. 😀 (Bei Uberspace übrigens Monatlich möglich…)

Back Online

Vor zwei Tagen hatte ich einen Voll-Ausfall aller meiner Domains (welche Content anbieten).

All-Inkl.com
All-Inkl.com

Der Grund war schnell gefunden, mein Webpaket bei all-inkl.com (Privat-Plus) hat keine feste IP-Adresse, daher sollte man auch nicht auf diese sondern auf eine Domain („benutzername.kasserver.com“) linken. Ich hatte dies nicht so.

InterNetworX
InterNetworX

Meine Domains habe ich aus Kostengründen bei inwx. Daher hatte ich die dortigen Nameserver genutzt. Und zwar einfach so das ich die „nicht feste IP-Adresse“ in den DNS A-Record bei inwx eingetragen habe. Hat alles funktioniert bis vorgestern. Da nämlich hat mein Webspace eine neue IP bekommen und schon „offline“. Alles. Restlos.

Schnelles Update wäre ein A-Record Update bei inwx gewesen, wollte ich aber nicht da ich nicht weiß wann die nächste IP-Adressen Änderung auf mich zu kommt. Also gegooglet, wie macht man das eigentlich richtig!?

Die ersten Ergebnisse haben gleich mal empfohlen das genauso zu machen wie ich es hatte, was aber meiner Erfahrung nach nun nicht mehr stabil funktioniert.

Nächster Versuch war die Nameserver von All-Inkl einfach in die Nameserver Einstellungen bei inwx einzutragen, brachte aber leider nicht viel. Nach weiteren Nachforschungen hat sich dann ergeben das ich die Nameserver „natürlich“ direkt bei der Domain eintragen muss.

So eingetragen und gewartet, mittlerweile (nach knappen 12 Stunden downtime) ist alles wieder online erreichbar. Diesmal wohl für quasi immer. All-Inkl zickt zwar bei deren DNS Einstellungen immer noch ein bisschen aber das bekomme ich bestimmt auch die Tage wieder hin.

Internet Explorer – Absturz!

Ich habe da mal ein kurzes HTML/CSS was ich euch nicht vorenthalten möchte.

<html>
  <head> 
    <style type="text/css"> 
      #a {
        margin:0 10px 10px; 
      }
      #b { 
        width:100%; 
      }
    </style> 
    <title>IE Crasher</title> 
  </head> 
  <body> 
    <table>
      <tr>
        <td> 
          <div id="a"> 
            <form id="b"> 
            <input type="text" name="test"/> 
          </div> 
        </td>
        <td width="1"></td>
      </tr>
    </table> 
  </body>
</html>
 

Und wie im Title des HTMLs schon steht bringt diese Seite jeden aktuellen (Stand 17.10.2012 – Tested only in IE9) Internet Explorer zum Absturz, ganz ohne Javascript o.ä. Magie. Einfach nur noch witzig. Daher nutzt einen Browser und nicht den Internet Explorer. (Leider) immer wieder erwähnenswert.

Testen könnt ihr das gerne hier: http://dev.sgr.cc/ie.html