Avatar

Gert de Pagter

Software Engineer

YourSurprise

Biography

Gert de Pagter is a software engineer at YourSurprise. His software engineering interests include testing and code quality.

Interests

  • Software engineering
  • Mathematics
  • Magic

Education

  • HBO-ICT, 2020

    HZ University of Applied Sciences

Skills

PHP

90%

Mathematics

30%

Magic

0%

Experience

 
 
 
 
 

Software Engineer

YourSurprise

September 2019 – Present Zierikzee
My daily job includes improving the website, and improving software quality along the way.
 
 
 
 
 

Intern

YourSurprise

September 2019 – February 2020 Zierikzee

An internship where i research the relation between software testing and the quality of code.

I help the team increase software quality across the board, and introduce more tests in the code base.

 
 
 
 
 

Software Engineer

Ibuildings

January 2018 – January 2020 Vlissingen
Responsibilities include:

  • Software development
  • Leading tactical meetings
 
 
 
 
 

Intern

Ibuildings

September 2017 – January 2018 Vlissingen
During my internship I worked on the call for papers application for the Dutch PHP conference

Accomplish­ments

Shortest Paths Revisited, NP-Complete Problems and What To Do About Them

The fourth of a four part series on algorithms, focusing on NP complete problems.
See certificate

Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

The third of a four part series on algorithms, focusing on greedy algorithms and dynamic programming.
See certificate

Graph Search, Shortest Paths, and Data Structures

The second of a four part series on algorithms, focusing on graphs algorithms and data structures.
See certificate

Divide and Conquer, Sorting and Searching, and Randomized Algorithms

The first of a four part series on algorithms, focusing on divide and conquer algorithms
See certificate

Recent Posts

PHPUnit beyond basics: Dataproviders

Once you have set up your first unit tests, and you have a good configuration, its time to add a lot of tests. Lets take a look at using data providers, as a way to test with a lot of data. For this example we’ll test a piece of code that is supposed to do the following. Given the array ['a', 'b', 'c'], return the string a a-b a-b-c b b-c c.

PHPUnit beyond basics: configuration

If you just got started with PHPUnit, its configuration file may be a bit daunting. Today we’re gonna walk through (what i consider) the ideal config file. If you’re just here to copy paste the config, then you can find it at the bottom 👇. A minimum phpunit.xml may look like this: <?xml version="1.0" encoding="UTF-8"?> <phpunit> <testsuites> <testsuite name="Tests"> <directory>tests/</directory> </testsuite> </testsuites> </phpunit> The first thing we can do to improve this, is link the xsd.

Every day design pattern: Builder

Just like the factory pattern, the builder is a creational pattern, meaning it is about how objects are created. But unlike a factory, a builder allows you to build an object in parts. I tend to use it for creating objects that take a configuration. Lets start with an example. This class builds a guzzle client, with a certain config. Normally we have a timeout of 10 seconds, with a 5 second timeout for both connect and read.

Every day design pattern: Factory

The previous two chapter of this blog series were about the decorator and the adapter. These are structural design patterns. Meaning they deal with the structure of a system. They can help with simplifying relationships, and moving responsibilities. The factory is a completely different type of design pattern. Its a creational pattern. A creation pattern is intended to make creation of objects easier. I generally use one when a class needs a multiple parameters, but only a few need to be ‘dynamic’.

Every Day Design Pattern: Adapter

This is the second post in a series of design patterns i use (almost) daily. You will find the other posts at the bottom of this article. On wikipedia, the adapter pattern is described like so: the adapter pattern is a software design pattern (…) that allows the interface of an existing class to be used as another interface. It is often used to make existing classes work with others without modifying their source code.

Projects

Packages that I either maintain, or i contribute a lot to.

Webmozart Assert

An assertion library for PHP

Infection

A mutation testing framework for PHP

Recent & Upcoming Talks

Finding bugs in seconds

Using static analysis to find bugs, and it only takes a few seconds.

Finding bugs in seconds

Using static analysis to find bugs, and it only takes a few seconds.

Finding bugs in seconds

Using static analysis to find bugs, and it only takes a few seconds.

Finding bugs in seconds

Using static analysis to find bugs, and it only takes a few seconds.

Contact

  • KvK number: 78147468