Beiträge von: Marco Otte-Witte, http://simplabs.com

Marco Otte-Witte ist Freelancer in München. Neben seiner Arbeit als Web Entwickler mit Ruby on Rails (ehemals auch .NET) und als Consultant schreibt er auch Open Source Software: http://simplabs.com/#open-source.

Excellent – Statische Code Analyse für Ruby und Rails

Marco Otte-Witte, 9. Oktober 2009 19:07

Ich habe gestern auf dem Treffen von Munich on Rails in einem kurzen Talk mein gem Excellent vorgestellt. Excellent macht statische Code Analyse auf Ruby Code ähnlich wie dies reek, roodi oder flog tun (Excellent basiert zum Teil auch auf Code dieser Projekte).

Ein wichtiger Bestandteil ist dabei Komplexitätsmaße zu ermitteln anhand derer man eine Aussage über die Verstehbarkeit und Wartbarkeit des Codes treffen kann. Wenn etwa Maße wie Zyklomatische Komplexität, ABC-Metrik aber bspw. auch Line Count in einem sehr hohen Bereich liegen, kann man davon ausgehen, dass die Komplexität sehr hoch und damit die Wartbarkeit relativ gering ist. Solche Maße stellen natürlich immer nur ungefähre Richtlinien dar und können keine Aussage über die tatsächliche Qualität des Codes treffen. So können bspw. Teile des Codes hohe Komplexitätswerte erzielen, nichtsdestotrotz aber leicht verständlich sein.

Excellent bietet daher zusätzlich zu solchen Komplexitäts-Checks auch Rails spezifische Checks an. Im Gegensatz zu den Komplexitätsmaßen können solche Checks klare Aussagen treffen, da sie feste Kriterien überprüfen, wie etwa ob bestimmte Best Practices oder auch Bad Practices eingehalten werden oder im Code auftauchen. Rails spezifische Checks sind bspw. solche die überprüfen ob ActiveRecord Models ihre Attribute validieren oder solche die die Verwendung von Instanzvariablen in Partials beanstanden.

Excellent ist trotz der Versionsnummer 1.5.4 immer noch im Beta Stadium. Für Vorschläge auf der Mailing Liste, Bug Reports oder auch Patches auf Github bin ich natürlich dankbar!

Hier die Slides zum Talk:


Success Story: globago.com

Marco Otte-Witte, 28. April 2009 11:08

Globago.comAm vergangenen Freitag ist Globago.com in die (Private) Beta gelauncht. Globago ist eine Plattform für Geschäftsreisende, die verschiedene Informationen über das jeweilige Reiseziel bereitstellt und Funktionen etwa zur Anzeige von Hotels etc. auf Google Maps sowie zur Erstellung eines persönlichen Reiseplans bietet.

Die Plattform wurde in nur 6 Wochen from scratch entwickelt. Ausgangslage waren lediglich ein mehr oder weniger grobes Konzept sowie ein darauf basierendes und damit zwangsläufig zu Anfang ebenso grobes Design. Eine Vielzahl von wichtigen Entscheidungen zu Design und Funktionalität wurde also erst relativ spontan während der Entwicklungsphase getroffen.

Dieser Artikel geht auf einige technische Aspekte des Projekts ein und zeigt auf wie viel man mit Rails in kurzer Zeit bei hoher Qualität und Flexibilität erreichen kann.

(weiterlesen…)


(Video) RSpec

Marco Otte-Witte, 5. März 2009 00:01

marco_bddAuf dem letzten Meeting der Münchner Ruby on Rails User Group am 26.02. bei Autoscout habe ich einen Talk über RSpec gehalten.

Der Talk gibt einen Überblick über (fast) alle Aspekte von Rspec:

  • Grundstruktur von Examples
  • Model-, Controller- und View- Specs
  • custom Matcher
  • shared Examples
  • Cucumber

(weiterlesen…)