Trifork Blog

GOTO Amsterdam 2015: The Docker track

No Comments

Goto Amsterdam

GOTO Amsterdam 2015 holds the promise to be a unique experience. We looked at the global and local trends, we listen to the communities and we learn from the local heroes who we consider experts on a specific subject. We’ve asked these local heroes to be our trackhosts and help shape our tracks. They know who give the best talks. They know what are the most important topics. They know what the questions are, our audience will ask themselves during the projects.

Their task was not simple though. We’ve asked them to shape their track so awesome, they couldn’t stop talking about it. In this first article Pini Reznik, our trackhost for the Docker track, explains why the docker track is that awesome!
Read the rest of this entry »

Posted in: Conference

CQRS as a Junior Developer

No Comments

Fresh from university, searching for a development job, having one within two weeks. And at an interesting company at that. That is what happened to me about a year ago. So, you could (and probably should) call me a junior developer. After a month of trainings and new experiences I was put on my first big project. Together with a senior colleague we were assigned to build the new roadside assistance application at the ANWB. The app was planned to work with Axon at the core and through this I came in touch with CQRS

Since I didn’t know squat about the ‘Command-Query Responsibility Segregation’ concept and soon had to work with it, I dove into a multitude of sites, blogs and wikis about the topic for self-study. That it separates the responsibility of commands and queries is quite obvious from the definition itself. And that this leads to scalability options since the command or the query side can be optimized to the system, made sense. Also, that it simplifies the creation of the domain model since there can be a focus on either the command or query side was quite clear through the information I read.

Read the rest of this entry »

Posted in: Custom Development

Brand New Website GOTOAcademy.nl

No Comments

Image Our New website www.gotoacademy.nl

Before you run off to start your weekend we would like to let you know that we are very excited to inform you that we have launched our brand-new website for the GOTO Academy!

With the new website it will be easier to find the trainings and training dates that you are interested in, you will be able to purchase your training directly via the website and besides that the new website has a new look and therefore a new feel to it!

Check it out for yourself. If you have any thoughts, suggestions, feedback that you would like to share with us, please let us know via training@trifork.nl.

www.gotoacademy.nl

Besides that, this newsletter contains information about the next upcoming events, new videos that we have released in the past month and an overview of the next available trainings! Enjoy!

For more GOTO Academy news, Follow us on Twitter @gotoacademyNL 

  Read the rest of this entry »

Posted in: Custom Development

RUNNING CUSTOM “LINT” CHECKS ON YOUR ANDROID BUILDS

No Comments

In this post, I’ll share a very simple tip on how to add very simple custom checks of your Android source code to your Jenkins build server, but the tip should be very easily ported to other build servers too.

What?
Most developers know of Lint checks as something which perform some kind of static analysis of their code and which complain heavily about stuff if you are enabling this check for the first time on an old project. Unfortunately, chances are rather high that you choose to disable the check due to time constraints not allowing you to fix all issues right now. Or maybe you actually enable running the checks as part of your build but choose not to make lint errors break it. Those two solutions are equally bad since none of them prevent you from adding bad code to the codebase.

Why?
I won’t go to great lengths to explain why you should perform lint checks, but I’ll say that there are many, many simple checks which can be checked at compile-time and which you (or your colleagues) might not have noticed when implementing a given feature. And why not let the lint tool weed out the stupid errors since it is so much better at detecting these things than you? For example, lint checks can prevent you from publishing an app which crashes on some devices due to code calling APIs, which are not available on devices with too low versions of Android running on them. Lint will compare the minimum API version supported by your app and the API version of every call performed in your app so you can ensure that you have carefully guarded these calls correctly and therefore won’t crash your app at run-time.

Read the rest of this entry »

Posted in: Android | Custom Development | DevOps | Java

Dealing with NodeNotAvailableExceptions in Elasticsearch

1 Comment

tl;dr

Elasticsearch provides distributed search with minimal setup and configuration. Now the nice thing about it is that, most of the time, you don’t need to be particularly concerned about how it does what it does. You give it some parameters – “I want 3 nodes”, “I want 3 shards”, “I want every shard to be replicated so it’s on at least two nodes”, and Elasticsearch figures out how to move stuff around so you get the situation you asked for. If a node becomes unreachable, Elasticsearch tries to keep things going, and when the lost node appears and rejoins, the administration is updated so everything is hunky-dory again.

The problem is when things don’t work the way you expect…

Computer says “no node available”

Read the rest of this entry »

Posted in: Elasticsearch | From The Trenches

NewsBite April 2015

No Comments

 

Trifork news bit 2

Dear Reader,

We have several news items that we would like to share with you. We have plenty of meetup activities and GOTO nights planned for the agenda that you don’t want to miss. The GOTO Amsterdam Schedule is now Live with core Tracks at this year’s event. 5th Keynote is all about Drones ! Additionally we have a new case study from FD to share and our partner elasticsearch changes name and  strategy Elastic: For – You Know, More Than Search Read on to learn more about all of this!

 

THINK COMMUNITY…THINK GIVING BACK…THINK WELIKETOSHARE

At Trifork, we are not only passionate about what we do we are also passionate about giving back. Social responsibility starts with us … together we can make a difference.

Weliketoshare 2

 

Trifork is pleased to announce it collaboration with Weliketoshare. An online hotel price checker Weliketoshare has launched a new way to donate to charity. A way of donating that costs nothing extra for you. Book from over 700,000 hotels worldwide the cheapest hotel and automatically do something good for the world.Free of charge. Weliketoshare makes this possible, with every booking, we give a fixed portion of our income to charity projects. So choose a project and book your hotel, together we realize beautiful things!

Are you looking for a hotel for business or personal travel? Book your travel arrangements through our Trifork Weliketoshare community page and you too can make a difference!

 

EMPOWERING OUR CUSTOMERS

We are delighted to be able to share with you our customer success story:
Transforming into a digital leader in the field of the financial and economic news.

Read the rest of this entry »

Posted in: Custom Development | General | Recruitment | Training | Trifork NewsBites 2014

The GOTO Academy Trainings Overview, Free Events and Two New Videos

No Comments

The GOTO Academy would like to update you on the next available trainings, free events and here is a bit of good news as well. Instead of 1, GOTO has actually released 2 videos on the GOTO YouTube channel. Read about this in the March issue of the GOTO Academy Newsletter! Enjoy!

FREE EVENTS

  • Wednesday, March 25: GOTO Night Elasticsearch at Bol.com (Utrecht) with Anne Veling & Jettro Coenradie. Only a few seats left. Sign up Here
  • Thursday, April 16: GOTO Night (Eindhoven) An Introduction to Docker with Adrian Mouat, Allard Buijze & Marc te Vruchte. Sign up Here

VIDEOS

 Two! New videos released on the GOTO YouTube Channel. Watch:

TRAININGS

Read the rest of this entry »

Posted in: Custom Development

Shield your Kibana dashboards

4 Comments

You work with sensitive data in Elasticsearch indices that you do not want everyone to see in their Kibana dashboards. Like a hospital with patient names. You could give each department their own Elasticsearch cluster in order to prevent all departments to see the patient’s names, for example.

But wouldn’t it be great if there was only one Elasticsearch cluster and every departments could manage their own Kibana dashboards? And still have the security in place to prevent leaking of private data?

With Elasticsearch Shield, you can create a configurable layer of security on top of your Elasticsearch cluster. In this article, we will explore a small example setup with Shield and Kibana.

Read the rest of this entry »

Posted in: Elasticsearch

Eindhoven FREE GOTO NIGHT 16 April 2015 : An Introduction to Docker with Adrian Mouat .Have you registered … space is limited!

No Comments

Docker training courses now available in Eindhoven! The first training will be held on the 29 & 30 April 2015. A special VIP discount code of 10% is given to attendees of the GOTO Eindhoven Docker Night on the 16 April 2015. We are filling up the room so register today you don’t want to miss this .

Read the rest of this entry »

Posted in: Custom Development | Docker | Education | Knowledge | Training

Basic Android UI performance

1 Comment

The base of every good app is performance. No user is willing to use an app with subpar performance, especially not with the amount of apps on the Play Store and thereby possible alternatives. In this post, we will take a look at some of the basics of Android UI performance and some of the pitfalls.

Layout Hierarchies

All Android UI are based on XML files describing the desired design. Developers are easily carried away by nesting several instances of different elements like <LinearLayout> or <RelativeLayout> to solve a layout puzzle. This can be a potential performance problem, since each elements require initialization, layout and drawing. We are talking milliseconds here, but with several layouts on-screen using, for example a <ListView>, these milliseconds get multiplied and noticeable delay could occur. Read the rest of this entry »

Posted in: Android | Custom Development