Trifork Blog

AngularJS training

Category ‘Custom Development’

Cooking with poor ingredients gives a poor meal

April 22nd, 2014 by

My customer came to me with the latest idea from his organisation: They needed 3 identical tablet apps for the 3 major platforms: iOS, Android, Windows8. For certain reasons the apps should really be identical and he was fully aware of the fact that the price to pay for doing so, would be reduced user experience on at least 2 platforms, but more likely on all of them.

So here I was, what more could I ask for. Being a mobile app developer, it was finally time to test a cross-platform technology. For too long, we (or at least I) had refused to go in that direction for the most obvious reasons: that it will reduce the overall user experience and maintenance costs will increase. But now I had a project, where platform variations were already set aside to some degree.

The perfect app for testing a cross-platform framework.

Read the rest of this entry »

Angular Directives, a beginners guide - part 1

April 17th, 2014 by

What are directives?

AngularJS-largeTo start with Angular Directives we must first know what Google's Angular team defines as directives, so I copied a little piece form their website and I'll comment on that.

"At a high level, directives are markers on a DOM element (such as an attribute, element name, or CSS class) that tell AngularJS's HTML compiler ($compile) to attach a specified behavior to that DOM element or even transform the DOM element and its children."

Read the rest of this entry »

Elasticsearch & Spring MVC & Sencha Touch 2 in the Cloud - Part 1

April 15th, 2014 by




Welcome to my third blog entry. In this one, I want to show how to connect three different technologies (database, REST service, and a mobile framework) and deploy them into the cloud. Those three technologies are:

  • Elasticsearch (Database)
  • Spring MVC (REST service)
  • Sencha Touch 2 (Client side framework)

First, I want to give a short introduction of the three technologies. I am going to start with Elasticsearch, followed by Spring MVC and in the end Sencha Touch 2. In the second part, I will explain the services that I used. The first service is called searchly and is a database service. The second service is cloudbees and is used as cloud host. In the end a conclusion is given. Part 2 of this blog will cover a demo with the steps to connect everything with each other. I wish you fun reading this entry and if there are any questions don't hesitate to drop a comment (Of course you can drop also a comment if you just like it).

Read the rest of this entry »

Internationalization with AngularJS

April 10th, 2014 by


Many web applications need to support multiple languages. The process of building in this support in a piece of software can be split in two parts: Getting it technically ready to support multiple languages/regions, and getting it ready for a particular language/region. The first part is called internationalization, often abbreviated to i18n (18 being the number of characters left out in the abbreviation). The second part is called localization, abbreviated as L10n. In this blog post, we'll see how we can support i18n in an AngularJS-based web application. There is an example project available containing all source code. It's a Maven project based on Tomcat 7 (Servlet API 3.0) and JDK 6, and can be downloaded here. The example builds on a an example case I created as part of a previous blog on AngularJS.

Read the rest of this entry »

GOTO Academy Amsterdam

April 7th, 2014 by

Take a look at the upcoming trainings schedule!

AngularJS (1,2 or 3 days) - Last day to benefit from the early bird price!

Become an expert in AngularJS with this three-day in-depth training course. The first day covers the basics of AngularJS, and requires no prior experience with AngularJS. The second day covers more advanced topics, while the third day focuses on the most difficult and advanced aspect of AngularJS, namely directives. More info and register.

Read the rest of this entry »

Dynamic web forms with AngularJS

April 3rd, 2014 by


When we're building web applications containing data entry forms, it's sometimes a requirement that (part of) the form is dynamic, in the sense that the fields to be included in the form need to be determined at runtime. For instance, this may be required if application managers need to be able to add new data fields quickly through a management console, without support by a programmer.

Read the rest of this entry »

News Bites - March 2014

March 31st, 2014 by
Dear reader,

Trifork was at the Mobile Developers Conference on March 7th, we had great time there. Many other events, trainings and projects are coming ahead. Enjoy reading!

Read the rest of this entry »

iOS Development Tips & Tricks - Part II

March 27th, 2014 by

To continue my previous blog, iOS Development Tips & Tricks - Part I, in which I explain what tools I think are best to use for iOS development, I want to dive more into the actual code and tell you about my most used and therefore favourite frameworks in iOS.

Read the rest of this entry »

Server-side clustering of geo-points on a map using Elasticsearch - continued

March 26th, 2014 by

In a previous post I described a problem of data visualization and a possible solution provided by a plugin of elasticsearch. I noticed that elasticsearch might one day evolve to make the plugin unnecessary. That day seems to have come: starting from version 1.0.0, elasticsearch includes Aggregations, a new API for data mining. In this post I'll show you how to use aggregations to reproduce the functionality of the plugin.

Read the rest of this entry »

FREE GOTO Nights Erlang and Neo4J

March 24th, 2014 by



Join us at the Free GOTO Nights

Eindhoven, March 31st, 2014 Sign up here
Amsterdam, April 1st, 2014 Sign up here

1. Rik Van Bruggen  is the regional territory manager for Neo Technology and will take you on "A guided Tour to Neo4j 2.0 - Graphs for Everyone".
2. Francesco Cesarini is the founder and Technical Director of Erlang Solutions and will talk about "Thinking in a Highly Concurrent, Distributed Language".

Read the rest of this entry »