Shellshock

After the heartbleed security bug a new vulnerability made it to mainstream news: shellshock.

All our systems have automatically been updated to include the relevant security fixes. And even before those updates our systems were not vulnerable.

Neues Referenzprojekt online

local.ch bietet national Dienste im Bereich der Suche und Auffindbarkeit von Firmen und Restaurants im Web an. Neben Einträgen unter www.local.ch erstellt local.ch auch Webseiten für lokale KMUs wie zum Beispiel Restaurants und Coiffeure.

Diese Webseiten können neu über ein Tool zur Verkaufsunterstützung visualisiert werden. 

Details zum Projekt sind auf unserer Webseite und in der Case Study als PDF

Baruco 2014

Baruco 2014

Simplificator an der Baruco Konferenz

Nachdem wir gestern Vorträge über die internas von ActiveRecord, Type Safety und Release Responsible gehört haben, geht es heute mit Optimization und Services weiter.

Heute gibt es keine Lightning Tasks dafür aber etwas das sich “Dancing with Robots” nennt. Wir sind gespannt.

Büro geschlossen am 8. August 2014

Wir ziehen um! 

Am 8. August 2014 ziehen wir um in den 3. Stock. Unser Büro bleibt an diesem Tag geschlossen, unsere Mitarbeiter sind mehrheitlich im Homeoffice tätig und über Mail oder Skype erreichbar. Wir freuen uns über ein baldiges Wiedersehen ab dem 11. August in den neuen Räumlichkeiten. 

Von einer GmbH zur AG

Seit dem 7. Juli ist die Umwandlung der Simplificator GmbH zur Simplificator AG vollzogen.

Für unsere Kunden ändert sich nichts, die AG ist Rechtsnachfolger der GmbH.

Finding column names using DBI

A useful snippet, should you ever require to get the column names of a table that you are connecting through DBI:

DBI.connect(something’) do |con|
  con.execute(“SELECT * FROM FOO”).each do |row|
    p row.inspect
    p row.column_names
  end
end

VCR Tests mit Custom matcher

VCR ist ein Library um Tests zu schreiben welche HTTP Requests auf externe Services machen.

VCR nimmt die Anfragen an den Service auf und spielt die Antworten bei bedarf wieder ab. Somit können Tests beschleunigt und unabhängig von externen Diensten gemacht werden.

Um zu bestimmen ob eine aufgenommene Antwort wieder abgespielt werden soll, greift VCR auf Request Matchers zurück. Nebst diversen bereits vorhandenen Matchern kann VCR um eigene Matchers erweitert werden.

Ein Matcher ist ein “callable” welches zwei Argumente nimmt (zwei Requests welche verglichen werden müssen) und ein Boolean wert zurückgibt.

do |a, b|
  true
end

Ein einfacher (und nutzloser) Matcher.

Man kann Custom Matcher einsetzen um z.B. bestimmte Parameter zu ignorieren oder Host Name basiertes loadbalancing (api1.foo.com, api2.foo.com…) abzudecken.