Quantcast
Channel: labs @ Qandidate.com
Browsing latest articles
Browse All 33 View Live

Hello world!

It's "official", our development team now has a blog. At Qandidate.com we spend one day a week on research and other fun stuff that's not related to our short term roadmap. We use this time to check...

View Article



Image may be NSFW.
Clik here to view.

Getting started with HHVM

Facebook deploys one of the biggest PHP codebases in the world. They’re not only pushing the boundaries of what you can do with PHP, but also PHP itself. A few years ago they open-sourced their hiphop...

View Article

Image may be NSFW.
Clik here to view.

Running symfony standard edition on HHVM

In part one of this series we talked about "Getting started with HHVM" by getting a compiled version of HHVM running in a vagrant box. In this part we'll configure the HHVM webserver to run the symfony...

View Article

Debugging PHP applications with HHVM

In the previous parts of this series we got you started with HHVM and showed how we could get the symfony standard edition running on HHVM. This time we will dive deeper into HHVM by using it to debug...

View Article

First steps with Ansible

I remember having to install a new web server next to an existing one. The only requirement my boss had was it had to be "the same" as the existing one. There were two problems: no one had ever...

View Article


Installing a LAMP server with Ansible playbooks and roles

In my previous post I introduced you to Ansible. I showed you how to install Ansible, how to create a server inventory and how to execute some basic commands. Afterwards we installed a very basic web...

View Article

Setting up XHProf/XHGui profiling with Ansible

Once in a while I think about profiling my web applications to see if I can get them to run faster. There are cool tools out there like XHProf and XHGUI to help you do exactly that. And then I remember...

View Article

Image may be NSFW.
Clik here to view.

Using Satis for fast and reliable software deployment

If you're familiar with Composer you know it can be slow and sometimes unreliable when one or more packages are not available. ∞ labs @ Qandidate.com Permalink

View Article


Image may be NSFW.
Clik here to view.

Fault tolerant programming in PHP

In your application, every time you call an "external" service you are vulnerable to the failure in that service. That either might be a third party API being down, your database being unresponsive or...

View Article


Asynchronous fault tolerant programming with PHP

In the previous post on fault tolerant programming in PHP we have shown the basics of fault tolerant programming using the circuit breaker pattern. Now we will show you a running demo of the...

View Article

Handling AngularJS POST requests in Symfony

At Qandidate.com we started using AngularJS last year and I have to say it was love at first sight! Two-way databinding, testability, dependency injection, server communication...awesome! Did I say...

View Article

Asynchronous Phystrix explained

We started this blog series with the basics of a circuit breaker. Our second post showed a running demo of an API consisting of two private microservices using oDesk’s Phystrix. The demo consisted of...

View Article

A new feature toggling library for PHP

Adding features to an existing application can seem straightforward, but what if the system you need the feature in is already running in production and the feature needs small bug fixes from time to...

View Article


Open sourcing our feature toggle API and UI

In our previous post we released our toggle library and showed how to use it in your PHP project, but our goal was to toggle features without the need for a deploy. To accomplish this we created an API...

View Article

How we manage our development process at Qandidate.com

At Qandidate.com we tried a lot of different project management tools and techniques. After two years of experimenting I want to share our current process, seen from my role as product owner (PO). One...

View Article


Using ZFS to snapshot your database

What if I told you you can backup your database in under a second? Awesome right? Well it's not entirely true, but you can create a snapshot of your database in under a second and decide later on how...

View Article

Bringing CQRS and Event Sourcing to PHP. Open sourcing Broadway!

Last week we open sourced our toggle library, API and GUI, see our announcements here and here. Today we open source Broadway! Broadway is a project providing infrastructure and testing helpers for...

View Article


Learning Scala with the team

Last April we decided as a team to follow the Coursera course "Principles of Functional Programming in Scala". We want to keep growing as a team so we wanted to follow the course with the whole team....

View Article

Minifying an existing AngularJS project

Being a PHP Developer who only recently started using AngularJS I knew almost nothing about the incredible progress front-end development had made since I last created a website. When we deployed our...

View Article

Feature Toggles in Symfony

When we launched our feature toggle library to the public a few weeks ago, we had multiple people asking for a Symfony Bundle. So guess what? We created one just for you! This bundle doesn't just help...

View Article

Having fun with geometry data in MariaDB and ElasticSearch

At Qandidate.com we get an insane amount of job applications each day. Because we're an awesome company to work for? Well I hope so, but that's not the reason why. It's because we make a free ATS or...

View Article


Kanban: Continuously improving our process!

In my previous post I explained how our development process works at a high level. Now I will try to go into detail and explain how we develop day-to-day. ∞ labs @ Qandidate.com Permalink

View Article


There is a microservice for that

At Qandidate.com we recently shifted our development process towards building microservices. We’re constantly looking to improve our way of writing software. For example, moving from CRUD applications...

View Article

Using HAProxy to offload SSL

At Qandidate.com we started to use Docker containers to run our apps and REST APIs. Some of them are publicly exposed and should communicate over a secure connection. Of course we can config nginx in...

View Article

Using the Accept Header to version your API

I investigated different ways to version a REST API. Most of the sources I found, pretty much all said the same thing. To version any resource on the internet, you should not change the URL. The web...

View Article


Adding a unique request id using middleware

In our event-sourced applications built using Broadway we have a full log of all events that happened in our application. We also log all commands using monolog. We did however miss some traceability...

View Article

Broadway just got a new release

Today we tagged version 0.3.0 for Broadway. In this version we have merged some nice pull requests from various contributors, thanks to everybody that submitted issues and/or pull requests! One of the...

View Article

So...we received funding! Now what are we going to invest in?

If you are an experienced developer and keen on growing you should definitely read this bit. On Tuesday 4 November we announced our Series A investment by Randstad Innovation Fund and Qmulus. A really...

View Article

A Broadway demo application

After the release of Broadway we got a lot of requests for a demo application. People were curious how we use Broadway and how everything ties together. So Fritsjan started with the demo application a...

View Article



Projecting your event stream

When you are using a CQRS and Event Sourcing architecture you are separating your writes from your reads. You can fire commands that change state but return nothing and you have queries that return a...

View Article

How filepicker saved us a lot of trouble

Adding upload possibilities to an application is often not a pleasant experience. How often did you forget to configure the upload size? Or forgot to whitelist the mimetypes? And that is just the basic...

View Article

Replaying event streams with Broadway

With event sourcing you have access to some powerful mechanisms. One of which is the ability to revisit the events that happened in the past. By revisiting the events, you can discover new patterns in...

View Article

Asynchronous Event Processing with Broadway using RabbitMQ

Broadway allows the processing of events by passing them to an event bus. You can have a Projector subscribe to this event bus in order to update your read models, or you can have a Processor subscribe...

View Article

Browsing latest articles
Browse All 33 View Live




Latest Images