Angular, AWS und Symfony Freelancer

  • PHP Unit Testing Präsentation

    Diese Präsentation habe ich im Rahmen meiner Arbeit bei Air Berlin zum Thema Unit und Integration Testing gehalten. Da es Air Berlin nun nicht mehr gibt, stelle ich gern diese Informationen allen zur Verfügung. Download Testing Powerpoint Präsentation

  • PHPLdap Extension installieren unter Linux

    Um die Ldap PHP Extension zu installieren, kann man unter Linux / Ubuntu einfach den Befehl: sudo apt-get install php-ldap

  • Laravel Homestead installieren von PHP Ondrej Packages

    Wenn man in einer Homestead Box versucht Ondrej Packages zu installieren bekommt die Fehlermeldung: sudo apt-get install php-ldap Error:1 http://ppa.launchpad.net/ondrej/php/ubuntu xenial/main amd64 php7.1-ldap amd64 7.1.10-1+ubuntu16.04.1+deb.sury.org+1   404  Not Found Dies liegt daran das das Ondrej Repository nicht bekannt ist in der Box. Es kann hinzugefügt werden mit: sudo add-apt-repository -y ppa:ondrej/php sudo apt-get -y update sudo…

  • Symfony 3 Test-Datenbank einrichten für Integration Tests

    In Symofny wird automatisch beim Ausführen von Tests die  app/config/parameters_test.yml geladen. Dort sollte dann eine andere Datenbank angegeben werden, der Einfachheit halber mit demselben Datenbank User: database_host: same_as_dev database_port: same_as_dev database_name: test_db database_user: same_as_dev database_password: same_as_dev Dann müssen auf der Konsole folgende Befehle ausgeführt werden: Cache leeren: php bin/console cache:clear –env=test Datenbank erstellen php bin/console…

  • Syfmony 3.3. – Wie man ein Repository als Service injeziert mittels Dependency Injection

    In Symfony 3 wird standardmäßig immer der EntityManager injected, um dann darüber das entsprechende Repository zur Verfügung zu bekommen. Meistens wird aber nur genau ein Repository benötigt und der Code und die Tests werden aufgebläht. Es gibt eine einfach Möglichkeit in der Configuration einen Service von einem Respository zu erstellen: service.repository.name: class: ‚AppBundle\Repository\MyEntity‘ factory: ‚Doctrine\ORM\EntityManagerInterface:getRepository’…

  • SSL für alle und kostenlos mit certbot.eff.org

    HTTPS und SSL ist wichtig für jede Webseite und oft ein lästiger Zeitvertreib, wenn die Zertifikate ablaufen und man ganz schnell die aktuellen Zertifikate installieren muss. Eine einfache und ksotenlose Alternative ist Let’s Encrypt, die einen kostenlosen Service anbieten mit dem man nicht nur sehr schnell (5 Minuten) SSL Zertifikate installieren kann, sonder der sich…

  • React Native für hybride native Apps

    Ein sehr interssante Möglichkeit um native Apps für Android und iOS zu schreiben bietet React Native von Facebook, damit wird zwar in Javascript und react.js gecodet, aber es werden damit native Funktionen benutzt wie bei Titanium und im Gegensatz zu Phonegap. Sicherlich eine höchst interessante Alternative zu Titanium und Phonegap.

  • Docker – eine Einführung

    [asa myBook]B01N40HDLT[/asa] Docker ist ein Virtualisierungs-Tool, mit dem sich Betriebsystemumgebungen und dort lauffähige Software in Container verpackt werden kann und auch auf betriebsystemfremden Umgebungen ausgeführt werden kann. Die Vorteile von Docker: – mit Docker können sehr einfach Container ausgetauscht werden, dies hilft bei der Arbeit an gemeinsamen Projekten weiter, wenn Infrastruktur angeapsst werden muss, erst…

  • Projekt: baby-taschenrechner.de

    Das gerade fertiggestellt Projekt baby-taschenrechner.de beschäftigt sich mit den Fragestellungen rund um die Entwicklung des eigenen Kindes: Wie groß wird mein Kind werden in x-Jahren Wie schwer wird mein Kind in x-Jahren Ist mein Kind zu schwer/zu dünn Welche Kleidergröße wird es wann tragen? Die Webseite soll Eltern dabei helfen herauszufinden, wann sie welche Kleidergröße…

  • Authentifizierung mit X-Pack für Elasticsearch einrichten

    Um eine einfach HTTP basic authentication einzurichten für Elasticsearch mit Username und Passwort muss man als erstes X-Pack installieren. Danach sollten alle Funktionen automatisch mit Basic Auth geschützt sein. Nach der Installation steht ein Default-User bereit, um weiterarbeiten zu können: Name: elastic Password: changeme Damit können dann erfolgreich Requests gemacht werden: curl –user elastic:changeme -XGET…