Getting into SASS

As a developer I see CSS as a language made for designers. I don’t get comfortable with this topic.

That’s why I gave SASS a try and I must admit, it’s easy to use. One can use variables, calculate and include different files easily. Here is a small example taken from the SASS website.

$font-stack: Helvetica, sans-serif;
$primary-color: #333;

body {
	font: 100% $font-stack;
	color: $primary-color;

In cooperation with the Koala Editor one can use about every code edtior available. Koala supports the following languages: Less,Sass, CoffeeScript and Compass Framework.

Here are the TOP6 benefits:

  1. variables like php
  2. nesting like javascript blocks
  3. imports of external scss files
  4. mixins with functions
  5. inheritance of attributes
  6. calculations

What I like most is the nesting feature. The elements are easier to find and the SASS processing is cleaning up the mess. So one can concentrate on writing readable and maintainable style code.


// avoids duplicated code
.listAppeal {
  margin: 0;
  padding: 0;
  list-style: none;

body {
  nav {
    ul {
      @extend .listAppeal;

    li { display: inline-block; }

    a {
      display: block;
      padding: 6px 12px;
      text-decoration: none;

When you have seen and used CSS before. Getting started with SASS maybe takes about 60 minutes. With the use of Koala all processed CSS files can be generated automatically after saving the scss files.

Have fun trying…

Getting Startet with Coldfusion and mxUnit

Unit-Testing is a often used wording in the current fields of coding. Many people hesitate to use the given tools. I also didn’t use it very often.

Here a simple “getting into” for mx unit

  1. go to and get the latest project zip
  2. extract the mxunit zip into your project /yourproject/mxunit
  3. setup done

Now let’s create a simple test as warm-up.

Somewhere within your project one creates a single [name]Test.cfm with this default content.

When you have done everything right it should look like this:

Screenshot 2014-05-23 09.47.33

That’s all. We’re done.

Have fun playing around more.

getting String filesize in Coldfusion

Sometimes one needs to get the filesize of a string. For example when one wants to write this string into an Amazon SQS where there is a maximum limit of 256KB.

private numeric function getStringByteSize(required string text) {
 return ArrayLen( arguments.text.getBytes("UTF-8") );


Flash & Google Analytics Trackevent

Das eventtracking von Flash zu Google Analytics gibt es ja schon eine ganze Weile. Leider hatte ich seit der Umstellung der Javascript API nicht mehr so viel Kontakt mit Google Analytics.

Nun mußte ich diese Funktionalität in ein aktuelles Projekt implementieren. Hierzu fand ich eine recht gute Dokumentation. Außerdem kann ich das Google Analytics plugin für den Chrome Browser überaus empfehlen. Ohne dieses plugin kann man sich bei der Fehlersuche grau suchen.

Hier der Einfachheit mein snippet für die Javascript-seitige Implementierung:

Jetzt braucht man nur noch “trackEvent()” über das External Interface aufzurufen und die Parameter zu übergeben. Aber Achtung, der letzte Parameter “value” sollte immer eine Zahl sein. Habe den typecast extra eingebaut, da ich bei einem Fall dort unbemerkt einen String gesendet hatte. Das führte dazu, dass die events nicht aufgezeichnet wurden. Konnte man im Debugger sehr gut sehen.


Mediawiki Probleme mit der Dateisuche

Ich hatte aktuell ein Problem mit der Dateisuche innerhalb des Mediawikis unter “Special:ListFiles”. Dieses tritt hauptsächlich auf, wenn man Version 1.15.x verwendet.

Es gab zwei mögliche Lösungsansätze:

1. Anpassung der SpecialListfiles.php
Es gibt in Version 1.15.x den Fehler, dass lowercase mit caseinsensitive verglichen wird.

$this->mQueryConds = array( "LOWER(img_name) LIKE '%{$m}%'" );

Entweder man wechselt zu caseinsensitive oder macht um das LIKE auch einen LOWER().

$this->mQueryConds = array( "LOWER(img_name) LIKE LOWER('%{$m}%')" );

2. Update der Mediawiki-Version auf größer 1.15.x, da dort dieses Problem schon behoben wurde.

$this->mQueryConds = array( 'LOWER(img_name)' . $dbr->buildLike( $dbr->anyString(),
strtolower( $nt->getDBkey() ), $dbr->anyString() ) );