Dipl.-Ing. Peter Ehrenberg [dipe]

Web- und Datenbankanwendungen

Kunde AMANGO
Auftraggeber Kunde
Beschreibung Eine recht umfangreiche, zum Teil schon mehrere Jahre alte Rails-Anwendung ist auf den aktuell Rails 2.0 zu portieren
Aufgaben Teile der Anwendung stammten noch aus Rails-1.0-Zeiten, größere Teile waren aber auch auf Rails-1.2.4-Stand. Außerdem enthielt die Anwendung diverse ältere, zum Teil gepatche Plugins. Insesamt etwa 160.000 Zeilen Rails-Code. Durch eine Code-Analyse wurden »die üblichen Verdächtigen« Stellen als erstes bereinigt. Danach wurden Schritt für Schritt unter Rails 2 die Tests in Stand gesetzt. Dabei wurden alle veralteten und gepatchten Plugins auf den aktuellen Stand ohne Patches gebracht oder entfernt.
Techniken Rails 2.0
Zeitraum 2008-04
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Kunden sollen weitere Abo-Varianten angeboten werden.
Aufgaben Hierfür sind zusätliche Geschäftsprozesse zu implementieren und bestehende anzupassen.
Techniken Rails
Zeitraum 2008-02
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Implementation eine Lösung für ActiveRecord sehr große Tabellen auf mehrere kleine zu partitionieren
Aufgaben Die beim Kunden zu archivierenden Daten haben zum Teil ganz erhebliches Volumen. Um im recovery-Fall möglichst schnell wenigstens zunächst mit den aktuellen Daten wieder online gehen zu können und um alte Daten einfacher auslagern zu können, war ein Lösung zu implementieren, die es ermöglichst, diese Daten auf mehrere Tabellen und mehrere Datenbanken zu verteilen.
Techniken Rails, MySql, Metaprogrammierung
Zeitraum 2008-01–2008-02

Zur Erfolgskontrolle möchte das Marketing im Nachgang von Newsletter-Aktionen eigentlich immer wissen, wieviele Leser auf welche Links im Newsletter geklickt haben.

Üblicherweise wird diese Aufgabe mittels spezieller Urls gelöst, die von einem Mail-Link-Klick-Zähl-Controller entgegengenommen werden, dessen Aufgabe einzig darin besteht, den jeweiligen Klick zu zählen und dann zur eigentliche Seite zu redirecten. Beispiel: Anstelle das beworbene Produkt 4711 mit der Url /product/show/4711 im Newsletter direkt zu verlinken, wird der Mail-Link-Klick-Zähl-Controller mit /maillink/product/4711 verlinkt. Die jeweiligen Requests werden vom Controller gezählt (zum Beispiel durch "Ziehen" eines Google-Analytics-Urchin) und dann zur Url /product/show/4711 weitergeleitet.

Die Marketing-Leute wollen aber auch wissen, aus welchem Newsletter der jeweilige Klick erfolgte. Diese Daten bei jedem Link im Newsletter spezifizieren zu müssen ist recht umständlich. Mit Rails geht das aber auch viel einfacher mittels default_url_options:

class NewsletterMailer < ActionMailer::Base

  def monthly_newsletter(customer, subject, ...)
    default_url_options = {:newsletter => 'monthly', :date => Date.tody}

    subject subject
    body    :customer => customer,
            ...
  end
end

An alle mit link_to im Template monthly_newsletter.rhtml erzeugten Link werden jetzt die Parameter newsletter mit dem Newsletter-Namen und date mit dem Erzeugungsdatum angehängt.

Kunde AMANGO
Auftraggeber Kunde
Beschreibung Implementation von AJAX-basierten Formularen und zu grunde liegenden Modellen
Aufgaben Unter Weiterverwendung der bestehenden, Legacy-Datenbank wurden die Formulare zur Filmempfehlungen und -rezensionen auf der Verleihplatform mittels AJAX-Techniken erneuert.
Techniken Rails, MySql, Metaprogrammierung
Zeitraum 2007-12
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Implementation eines performanten mass mailer in Rails. Automatische Erzeugung von tiny urls.
Aufgaben Neben der Erzeugung der E-Mails mittels eines sehr einfachen template-Mechanismus stand die implizite Generierung Kundenspezifischer Kurz-Urls im Vordergrund dieses Projektes.
Techniken Rails, MySql, Metaprogrammierung
Zeitraum 2007-11
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Implementation eines SMTP-MTAs in Ruby, der als smart relay fungiert und seine queue in einer relationalen Datenbank hält.
Aufgaben Zur Komplettierung des Kundenbenachrichtigungs-Subsystem des vorhergehenden Projekts werden die E-Mail-Antworten aus dem Ticketsystems des Kundenservice (OTRS) des Kuden integriert. Der SMTP-Server dient dem Ticktesystem als smart host an Stelle eines Sendmail- oder Postfix-MTAs.
Techniken Rails, MySql, Eventmachine, SMTP, Tests
Zeitraum 2007-10
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Rails-Plugin zur Benachrichtigung von Kunden als Spezialisierung des Ruby-on-Rails-ActionMailers
Aufgaben Mitteilungen an Kunden werden via E-Mails transaktionssicher über die Datenbank versendet. Metainformationen und Inhalt werden in der Datenbank protokolliert. Bounce-E-Mails werden eingesammelt und protokolliert. Das Öffnen von Html-E-Mails wird über ein tracking-Pixel verfolgt.
Techniken Rails, MySql, Ajax, Tests
Zeitraum 2007-09
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Die Erneuerung der produktiven AMANGO-Online-DVD-Verleih-Plattform
Aufgaben Unter Weiterverwendung der bestehenden, komplexen Legacy-Datenbank (~400 Tabellen, ~5.000 Kolumnen) wird die PHP-Alt-Anwendung schrittweise durch eine Ruby-on-Rails-Anwendung ersetzt. Entwurf und Implementation der unter anderem folgenden Seiten: Wunschliste, gesehene und bewertete Filme, Liefer-und-DVD-Problem-Dialog-Folge, Filme bewerten und Empfehlungen. Implementation anspruchsvoller Javascript-AJAX-Widget für Filme bewerten und Empfehlungen;
Techniken Rails, MySql, Ajax, distributed Ruby, PHP, Tests
Zeitraum seit 2007-04, weiter andauernd
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Neu-Entwicklung einer anspruchsvollen Web-Anwendung zur Betreuung des Kundenstamms basierend auf der Legacy-Datenbank
Aufgaben Analyse des umfangreichen Legacy-Datenbank Modells; Entwurf und Implementation der Anwendung; Entwurf und Implementation einer domain-specific Language (DSL) für die Abbildung von Geschäftsvorfällen in Ruby; Implementation komplexer Geschäftsvorfälle (Post-Retour, Kündigung, Inkasso-Verfahren u. v. m.) mittels dieser DSL; Implementation einer Web-Service-Schnittstelle für das Logistik-System zu den Geschäftsvorfällen; Integration OTRS auf Datenbank-Ebene;
Techniken Rails, MySql, Web-Services, Ajax, Tests
Zeitraum 2006-10–2007-03
Kunde AMANGO
Auftraggeber Kunde
Beschreibung Unter dem Projektnamen »E4« war die Studie einer Online-DVD-Verleih-Plattform in Ruby on Rails zu realisieren ausgelegt für (viel) mehr als 100.000 Kunden und 1.000.000 Verleihtransaktionen pro Monat.
Aufgaben Datenbank-Modellierung mittels Rails-Migrations; Analyse des Legacy-Datenbank-Schemas; Datenimport aus dem Legacy-Schema (mit Ruby) sowie Html- und Excel-Dateien; Entwurf und Implementation der Web-Anwendung; Anbindung des Logistik-System via SOAP;
Techniken Rails, MySql, Web-Services (SOAP), Ajax, Tests
Zeitraum 2007-08–2006-09
Kunde DV-Ratio
Auftraggeber Kunde
Beschreibung Präsentation Ruby on Rails mit live coding
Aufgaben Entwicklung einer Web-Demoanwendung (Todo-Listenverwaltung mit AJAX), live-coding-Präsentation vor Fachpublikum
Techniken Rails, PostgreSql, Linux
Zeitraum 2006-02–2006-04
Kunde DIPE
Auftraggeber Intern
Beschreibung Testprojekt
Aufgaben Einarbeiten in RoR; Entwickeln der Web-Anwendung unter Verwendung von AJAX-Techniken
Techniken Rails, PostgreSql, Linux
Zeitraum 2005-12–2006-01
Powered by Mephisto - Valid: xhtml | css
Stoppt die Vorratsdatenspeicherung! Jetzt klicken &handeln! Willst du auch bei der Aktion teilnehmen? Hier findest du alle relevanten Infos und Materialien: