Client-side form validation with AngularJS

Many web applications depend on forms to collect user input. However, as a rule, the user cannot be trusted to enter valid input values by himself, so we need a way to control which values the user is allowed to commit. A popular way to do so is via client-side form validation, since it can give immediate feedback about whether the form is valid or not. With AngularJS, client-side form validation…

Ein privates NPM Repository mit Sinopia und nginx erstellen

Motivation Es gibt verschiedene Gründe ein privates npm-Repository für node-Pakete auf einem eigenen Server zu installieren. npmjs könnte down sein, man möchte nur spezifische Pakete oder Paketversionen bei den Entwicklern zulassen oder man will eigene Pakete publizieren, ohne dass sie der Öffentlichkeit zur Verfügung stehen. Bei uns war vor allem die zusätzliche Sicherheit ausschlaggebend, dass…

Anpassung des Soundex-Algorithmus für die deutsche Sprache

"Maier" oder "Mayer", "Schmidt" oder "Schmitt", "Hofmann" oder "Hoffmann"? Wer kennt das Problem nicht: eine Person ist in der Datenbank unauffindbar, weil die exakte Schreibung ihres Namens nicht bekannt ist. Damit Namen auch bei ungenauer Schreibung gefunden werden können, darf der Suchalgorithmus nicht nur exakte Übereinstimmungen berücksichtigen. Eine solche unscharfe Suche (fuzzy search)…

Parameter und benutzerdefinierte URLs in Magento

Das Routing in Magento folgt dem Verhalten des Zend MVC Frameworks. So sind die Routen meist nach dem Schema "modul/controller/aktion" aufgebaut, vorausgesetzt es gibt keinen benutzerdefinierten Router für das Modul. Im Folgenden verschiedene Varianten der URL-Erzeugung und Abfrage Standard-Routing nach dem Schema: http://www.example.com/modul/controller/aktion/id/1…

Drei Schritte, mit denen ich Selenium kennen lernte

1. Einstieg – Selenium-IDE für Firefox Hierbei handelt es sich um ein Add-on für Firefox, das manuell ausgeführte Abläufe in einer Web-Anwendung mitprotokolliert und per Knopfdruck wiederholen kann. (Downloadlink) Der daraus resultierende Test-Workflow ist folgender: Einschalten / Aufzeichnen > Prozess durchlaufen > ggf. Skript modifizieren > Fehler reporten / Skript mitschicken >…

Was ist Selenium?

Es ermöglicht automatisiertes testen von Webanwendungen auf UI-Ebene. Folgende Gegebenheiten lassen sich durch Selenium überprüfen: Existenz von UI-Elementen aufgrund ihrer HTML-Tags Bestimmte Inhalte Links, Eingabefelder, Auswahllisten, Eingabeformulare, Tabellendaten Unterstützt Tests im Zusammenhang mit Fenstergröße, Mauspositon, Alerts, Ajax Funktionen, Pop-up Fenster, Event-handling und…

Designing a good gadget…

What is a good gadget? And why is it so hard to answer that simple question. We should be experts on gadgets, right? We are very obsessed with gadgets now-a-days. I am guilty of this trend as well. I hoard all kinds of stuff, all things that you could broadly classify as "gadget". But last week something happened for me: I moved flats. So it was time to clean up, weigh every item's worth, if it…

Choosing a name is HARD!

Wow, who would have known. Choosing a name for a company should be easy right? Not in Germany, it isn't. Get this, company names in Germany must not be misleading (among about a million other things. Hey, it's Germany after all) by law. And "groupXS" apparently is just that. Misleading. Why? Well, "group" or in German "Gruppe" is strictly reserved for a cooperation made up of different companies.…

Launching soon!

Yes! Exciting times ahead. To say the least. It's always such a rush to start something new. Tons of things to take care of. Million tasks to complete. And don't forget the coding! So, we hope you join us on our ride. Don't forget to subscribe to the blog - and follow us on facebook, twitter, etc.