Trifork Blog

Thoughts of a software developer - How to build extendable software

No Comments

Imagine you are starting to work for a customer who has an existing software system that needs to be extended. On your first day at the customer you want to quickly understand the existing piece of software. So you start your favorite IDE and check out the project from Git or Subversion. You are trying to run the project but nothing happens and you are still trying to get anything running but nothing happens again. You are getting frustrated. This blog entry should help you avoid getting others in this situation. But this blog entry is also useful for software architects that need to work with external or newly hired software developers. This blog entry is not so technical, but it is more about how to build software that can easily be extended by new developers.

Read the rest of this entry »

Posted in: Custom Development

Setting up Maven to use Grunt/NodeJS

No Comments

grunt-logo For one of our projects we wanted to automate javascript concatenation/minification/tests and incorporate it into our maven build. While there are a number of maven plugins for those tasks, I've found that depending on another technology offered so much more and basically ended up integrating Grunt into our maven build. Grunt is a task runner which runs in node.js and it along with its plugins (tasks) are distributed with NPM. One could compare it with Maven + Ant with one big advantage for frontenders, it's all javascript driven. This advantage means there's a wider scenery of tooling catered specifically (but not exclusively) for frontend development and makes it quite delightful to find and use tools. It will feel weird to integrate a dependency manager and task runner into another dependency manager and task runner, but it actually makes sense from a polyglot point of view. Don't worry though, we will be using Maven to add Grunt to the build.
Read the rest of this entry »

Posted in: Frontend

Had a good time at GOTO Copenhagen

No Comments

Last week I attended GOTO Copenhagen. Everybody should know the GOTO conferences by now. This was a new conference in Denmark. I had a good time, attended very good keynotes and a number of very nice presentations. I have also given a talk myself called: Visualising real time traffic data using elasticsearch and c3js. In this blogpost I am giving a summary of some of the talks I attended.

Read the rest of this entry »

Posted in: Conference

Training Courses @ GOTO Academy NL

No Comments

Vagrant Logo

Take a look at the upcoming trainings schedule!

This month we have a FREE evening event on the topic iBeacon.

Follow us on Twitter to get a 5% discount on trainings! @gotoacademyNL

Read the rest of this entry »

Posted in: Custom Development

Htop - The process viewer for Linux and Mac

1 Comment

Htop LogoIn this short blog I will introduce you to a useful tool called Htop, a process viewer for Linux, which is also available for Mac. In the words of Htop's author Hisham Muhammad, it aims to be a better alternative to the top program. Among other features it provides full horizontal and vertical scrolling, searching and filtering.

Read the rest of this entry »

Posted in: Custom Development

Mahout's bank marketing example - SGD classifier and vector encoders

No Comments

Mahout-logoIn my last Mahout post I gave an introduction to the Logistic Regression SGD classifier using continuous data. Roy, one of the commenters of that post asked about how to classify on different types of data. Therefore I decided to write a quick post on using Mahout's vector encoders on the bank marketing dataset referring to Mahout's official documentation regarding this example and vector encoders in general.

Read the rest of this entry »

Posted in: Apache Mahout

HTML Canvas

No Comments

HTML5 Canvas logo

During my holiday I start to read about the HTML5 canvas object which can be used for a variety of graphical presentations or animations. Honestly, I was quite surprised about the possibilities of the canvas element. At first I am going to give a short description about the canvas object. Which is followed by a simple canvas example and a small part about how to draw a circle. In the end a conclusion is given.

Read the rest of this entry »

Posted in: Custom Development | Frontend

An introduction to iBeacons

No Comments

iBeacon logoA little while ago I did a project where we examined the use of iBeacons in public transportation. Together with the guys from Enigma Consulting, we made a demo to show what was possible and what not. In this blogpost I will show you some code examples that will hopefully get you started using iBeacons.

Read the rest of this entry »

Posted in: Custom Development | Objective C

AngularJS directives for C3.js chart library

No Comments

Vagrant Logo

For one of our projects we wanted to create some nice charts. Feels like something you often want but do not do because it takes to much time. This time we really needed it. I had prior experience with Highcharts, which is also a nice library. But this time we wanted more control. We had a look at D3.js library, a very nice library but so many options and a lot to do yourself. Than we found c3.js, check the blog post by Roberto: Creating charts with C3.js. Since I do a lot with AngularJS, I wanted to integrate these c3.js charts with AngularJS. I wrote another blogpost on that: Using C3js with AngularJS. Through twitter Abdullah Diaa mentioned that it would be great to have directives for these charts. That is were we start in this blogpost. I am going to describe the first version of a directive I have created to make it even easier to create these chart using AngularJS.

Read the rest of this entry »

Posted in: AngularJS

Trainings at GOTO Academy - AngularJS, Spring, Axon, iBeacon

No Comments

Vagrant Logo

Take a look at the upcoming trainings schedule at GOTO Academy.

We will also have FREE evening events on the topics iBeacon, AngularJS. Stay tuned!

FREE EVENTS

Read the rest of this entry »

Posted in: Education | Spring | Training