Trifork Blog

Posts by Bram Smeets

Twitter

Goodbye SearchWorkings.org

December 3rd, 2013 by
(http://blog.trifork.com/2013/12/03/goodbye-searchworkings-org/)

searchworkings_logoIn 2011 we launched SearchWorkings.org, a community website that aimed to bring search professionals together, mostly around open source search technologies like Apache Lucene and Apache Solr. At the time, the number of resources providing high value content around those technologies was limited. Therefore, we created the searchworkings portal, providing blog entries, white papers and a forum. Next to JTeam’s own search experts (Simon Willnauer, Uri Boness, Martijn van Groningen, Chris Male, Luca Cavanna and Frank Scholten), we also managed to get several external contributors onboard (Isabel Drost, Chris Mattmann, Mike McCandless, Uwe Schindler, Marc Sturlese, Anne Veling, Dawid Weiss and Karl Wright).

Read the rest of this entry »

October GOTO Nights in Amsterdam – Lean Enterprise, Machine Translation & DevOps

October 1st, 2013 by
(http://blog.trifork.com/2013/10/01/october-goto-nights-in-amsterdam-lean-enterprise-machine-translation-devops/)

The dates for GOTO Amsterdam 2014 have been set: June 19 and 20! Registration has already started and the first early bird discount ends at December 11. Register here to make sure your spot is reserved!

But in case you still need convincing that the GOTO conferences are the best in town, I invite you to attend one of our FREE GOTO Nights and see for yourself.

For October we have two very interesting nights planned.

The first one is a single session night, held upcoming Friday (Oct. 4) at the Trifork Amsterdam office and starting at 18.00. The speaker is Jez Humble, author of Continuous Delivery (read Martin Fowlers take on the book) and currently working at ThoughtWorks. His presentation will be about how to innovate inside large organisations, using Lean principles. A must for all of you IT managers that want to stimulate intrapreneurship within your organisation.

The second night will be held on a Monday evening (Oct. 14) starting at 18.00 at the Trifork Amsterdam office. This time the first session will be by Bas van Ooyen, who is a data scientist at Owlin, where he does real-time news analytics. His session will be specifically on Machine translation and the state of affairs in that respect. Next up for this GOTO Night is Michael T. Nygard, author of various books, including Release It!. During his session Five Years of DevOps: Where are we now? Michael will shed some light on the world of DevOps, “what’s the old-but-good, and where we still need to advance”.

No need to worry about your appetite, we will serve pizza’s and beers.

Sign up now for these GOTO Nights to reserve your seat! Hope to see you there!

Latest news from Trifork Amsterdam – September newsletter

September 24th, 2013 by
(http://blog.trifork.com/2013/09/24/latest-news-from-trifork-amsterdam-september-newsletter/)

Well the summer in the Netherlands is coming to an end and the Autumn is well on its way. However that brings with it, as always a busy project & events season. Let’s talk projects first:

Road, Air & Sea exams are going digital  

cbr logoWe mentioned that we won the pitch for the CBR in our last issue, but now we’re excited to share that the scope includes examinations for all Dutch theory assessments for road, air & sea too.

This will mean in time, we will be running an average of over 3000 assessments a day amounting to approx. 900,000 per year.

Download a demo of the QTI assessment delivery engine we will use for this project or view the QTI screencast now!

Claims made easy

proofer logoWe are proud to present Proofer. A mobile claim app that will optimize a customer’s claim experience and an insurance company’s processes. Proofer will allow consumers to easily claim valuable items with the use of a mobile app and insurance companies to offer an easy & efficient way to receive their claim requests.

Download the app now. For more information on integrating this app within your business contact Andre Wilderdijk

With the darker months ahead, luckily it’s not all doom & gloom as it also means it’s conference time and well as always there is lot’s to share on that front.

2014 banner
Great speakers, great GOTO Nights
In October we are proud to welcome to Amsterdam at our FREE GOTO Nights:
jez Jez Humble, October 4th, 2013, will be presenting “Lean Enterprise”. Jez is a Principal Consultant with ThoughtWorks. His presentation will take a scientific approach to innovation in software development. Large organizations are notoriously bad at disruptive innovation involving software. This is primarily due to cultural and organizational issues, combined with poor architecture a lack of good engineering practices.
michael Michael Nygard, October 14th, 2013 will be presenting “Five Years of DevOps: Where are we now?” It has been five years since Patrick Debois coined the term DevOps to describe a way of working together to deliver systems. In that time, we have rediscovered some gems from the past and we have invented new techniques and tools. In this session, we will take a look at what’s new in the world of DevOps, what’s old-but-good, and where we still need to advance.

Registration is required and there are limited seats so save your seat now 

GOTO Aarhus & Berlin with our partners in crime Elasticsearch

goto conNever change a winning formula and so the team from Amsterdam will team up with Elasticsearch once again in both Aarhus & Berlin just like we did in Amsterdam.

Apart from the tasty bites we will hand out at the stand, delegates that visit our booth will have the chance to enter a prize draw for a free Elasticsearch public training seat, a GOTO conference ticket and a ticket to a NoSQL Search roadshow.

Of course there will be Elasticsearch speakers in both Aarhus & Berlin too so don’t miss out on the sessions too!

Our premier appearance at T-Dose

With our strong focus to expand further and delve into the numerous business opportunities we foresee in the south of The Netherlands, we are happy to speak & sponsor at the T-Dose open source event in Eindhoven. If you want to hook up with us at the event or any other time feel free to contact us.

NoSQL Search roadshow comes to Amsterdam

Are you frustrated by growing data requirements and interested in how non-relational databases could help? Curious about where and how NoSQL systems are being deployed? Want to build a “real” Highly Scalable System? Well if you answered yes to any of these questions you’re not the only one who wants to know more. For this very reason we’ve decided to team up with some of the best NoSQL experts and bring you the NoSQL Roadshow Amsterdam.

Early bird is only 150 EUR so don’t miss out, for more info visit our events website. 

Blogtastic

And if you’ve missed some of our recent blogs, here are some of them:

Declarative multi-tenant with spring security and spring mvc by Joris Kuipers

Lessons learned how to do scrum in a fixed price project by Tim van Baarsen

Using docker to efficiently create multiple tomcat instances by Quinten Krijger

Developing windows phone 8 apps by Tom van Zummeren

Server side clustering of geo points on a map using Elasticsearch by Gianluca Ortelli

Improved search for hippo cms websites using Elasticsearch by Jettro Coenradie

Career prospects

We’re always looking for new talent interested in working in a dynamic environment on some really cool projects? Our vacancies include:

To find out more about Trifork & our projects then email us at jobs@trifork.nl

Thanks for your interest, more next month.

Regards, Trifork Amsterdam

GOTO Amsterdam 2014 – Kick-off Open Space & 2 GOTO Nights in October

September 10th, 2013 by
(http://blog.trifork.com/2013/09/10/goto-amsterdam-2014-kick-off-open-space-2-october-goto-nights/)

GOTO Amsterdam seems only weeks ago, but we’re already planning the one for next year: GOTO Amsterdam 2014! So get started by marking your calendar: June 18-20, 2014.

Kick-off Open Space

GOTO_AMSTERDAM_2013_17-95Although feedback about the sessions from last year was really good, there’s always room for improvement. Therefore, we would like to invite you to join us for a kick-off session, where we brainstorm about next year’s topics, tracks and sessions. Please join us and help us make the conference even better than last year’s!

The kick-off Open Space event, will be held at the Trifork Office on Monday, September 16 at 19.00.

Please sign up here: Open Space for GOTO Amsterdam 2014

Two GOTO Nights in October!

Now that I have your attention, I would also like to inform you about the next two GOTO Nights that we have planned. As you know, we organise regular GOTO Nights to share knowledge and to promote our conferences. In October we have managed to get two really interesting speakers: Jez Humble and Michael T. Nygard, who will be joined by two other speakers. We also plan to do a short recap of the interesting stuff that attendees took away from Amsterdam 2013 to give you an impression of the GOTO Amsterdam conference.

“Lean Enterprise” by Jez Humble
When: Friday, October 4th, 2013 at 18.00
Where: Trifork Amsterdam, Rijnsburgstraat 9-11, Amsterdam
Register now!
“Five Years of DevOps: Where are we now?” by Michael T. Nygard
When: Monday, October 14th, 2013 at 18.00
Where: Trifork Amsterdam, Rijnsburgstraat 9-11, Amsterdam
Register now!

Latest news from Trifork Amsterdam

June 17th, 2013 by
(http://blog.trifork.com/2013/06/17/latest-news-from-trifork-amsterdam/)

Just 1 day to go until #3 GOTO Amsterdam

The team behind GOTO Amsterdam are raring to go and this time it’s already set to be the best year to date. Not only in terms of an impressive speaker line up and record number of delegates, but also the sponsors this year have pulled the stops out.

es logoWe at Trifork Amsterdam & Elasticsearch will be partners in crime this year and have a host of FREE fantastic giveaways including trainings seats & conference tickets to be redeemed across the globe. There’s also a chance to hear about the customers using Elasticsearch and get insights as to how best to implement Elasticsearch in a production environment. So if you’re at the event come and visit us (hint: if want to locate us, follow the scent of delicious warm waffles!).

Read the rest of this entry »

Build massively scalable soft real-time systems with Erlang

February 18th, 2013 by
(http://blog.trifork.com/2013/02/18/build-build-massively-scalable-soft-real-time-systems-with-erlang/)

Today I just wanted to take the opportunity to introduce you to Erlang Solutions (a part of the Trifork group). From later this week, Erlang Solutions starts a new series of webinars aiming to showcase practical use cases of Erlang. As an open source language designed for programming concurrent, real-time, distributed fault-tolerant systems, Erlang found its usage in Telecoms, Messaging, Banking, Finance, Gaming, Web 2.0, NoSQL databases and Embedded. Launching the series, the webinars highlight how Erlang is put to use in designing mobile messaging gateways and messaging solutions.

The first webinar focuses on a Mobile Messaging Gateway implemented for Velti (one of the world’s largest mobile marketing company) and how Erlang is put to good use in making them faster, more reliable and efficient. Marcus Kern-V.P. Technology at Velti presents how Erlang’s key features – scalability and fault tolerance have benefited their systems and their fast growing business. It presents Erlang Solutions’ state of the art Mobile Messaging Gateway- Buzzard, a platform supporting SMS messaging, billing and payments for broadcasters, mobile network operators and social networks.

Marcus Kern will be giving this talk on the 21st of February, 4 PM UK time. For more information on this webinar & to register, check out the article Implementing Mobile Messaging Gateway for Velti.

The second webinar features ooVoo’s Director & System Architect- Alexander Fok and Michał Ślaski – Senior Erlang Consultant from Erlang Solutions. Michał Ślaski’s talk highlights “MongooseIM”, an Erlang-based implementation of XMPP server – its simplified implementation, customizability, focus on scalability and performance. He shows how WebSocket support, reliability of message delivery in mobile networks and in-game mutli-user chats make “MongooseIM” a product up-to-date with high requirements of web, mobile and in-game communication.

They show what Erlang brings to the table when implementing instant messaging solutions. ooVoo’s messaging platform implementation is an example of how Erlang solves scalability issues. Alexander Fok discusses its features and how this solution enables up to 12 people on different platforms make group video calls.

This webinar takes place on the 6th March, 4 PM UK time. To know more about this and to register for their webinar, read about it in Implementing Instant Messaging Solutions with Erlang.

In the coming months we will taking you through the various Erlang products & solutions but in the meantime if you want to know more please contact us.

Migrating Apache Solr to Elasticsearch

January 29th, 2013 by
(http://blog.trifork.com/2013/01/29/migrating-apache-solr-to-elasticsearch/)

Solar_Elasticsearch_ConcToolElasticsearch is the innovative and advanced open source distributed search engine, based on Apache Lucene. Over the past several years, at Trifork we have been doing a lot of search implementations. Driven by the fact that every other customer wanted the ‘Google-experience’ (just a text box, type some text and get relevant results) as part of their application, we started by building our own solutions on top of Apache Lucene. That worked quite well as Lucene is the defacto standard when it comes to information retrieval. But soon enough, due to Amazon, CNet and Funda in The Netherlands, people wanted to offer their users more ways to drill down into the search results by using facets. We briefly started our own (currently discontinued) open source project: FacetSearch, but quickly Solr started getting some traction and we decided to jump on that bandwagon.

Starting with Solr

So it was then we started using Solr for our projects and started to be vocal about our capabilities, that led to even more (international) Solr consultancy and training work. And as Trifork is not in the game to just use open source, but also contribute back to the community, this has led to several contributions (spatial, grouping, etc) and eventually having several committers on the Lucene (now including Solr) project.

We go back a long way…

At the same time we were well into Solr, Shay Banon, who we knew from our SpringSource days, started creating his own scalable search solution, Elasticsearch. Although, from a technical perspective a better choice for building scalable search solutions, we didn’t adopt it from the beginning. The main reason for this was that it was basically a one-man show (a veery good one at that I might add!). However, we didn’t feel comfortable recommending Elasticsearch to our customers as if Shay got hit by a bus, it would mean the end of the project. However, luckily all this changed when Shay and some of the old crew from the JTeam (the rest of JTeam is now Trifork Amsterdam) decided to join forces and launch Elasticsearch.com, the commercial company behind Elasticsearch. Now, its all systems go and what was then our main hurdle has been removed and we can use Elasticsearch and moreover guarantee continuity for the project.

Switching from Solr to Elasticsearch

Obviously we are not alone in the world and not that unique in our opinions, so we were not the only ones to change our strategy around search solutions. Many others started considering Elasticsearch, doing comparisons and eventually switching from Solr to Elasticsearch. We still regularly get requests on helping companies make the comparison. And although there are still reasons why you may want to go for Solr, in the majority of cases (especially when scalability and realtime is important) the balance more often than not goes in favor of Elasticsearch.

This is why Luca Cavanna from Trifork has written a plugin (river) for Elasticsearch that will help you migrate from your existing Solr to Elasticsearch. Basically, from Elasticsearch pulling the content from an existing Solr cluster and indexing it in Elasticsearch. Using this plugin will allow you to easily setup an Elasticsearch cluster next to your existing Solr. This will help you get up to speed quickly and therefore enables a smooth transition. Obviously, this tool is used mostly for that purpose, to help you get started. When you decide to switch to Elasticsearch permanently, you would obviously switch your indexing to directly index content from your sources to Elasticsearch. Keeping Solr in the middle is not a recommended setup.
The following description on how to use it is taken from the README.md file of the Solr to Elasticsearch river / plugin.

Getting started

First thing you need to do is: download the plugin

Then create a directory called solr-river in the plugins folder of Elasticsearch (and create it in the elasticsearch home folder, if it does not exist yet). Next, unzip and put the contents of the ZIP file (all the JAR files) in the created folder.

Configure the river

The Solr River allows to query a running Solr instance and index the returned documents in elasticsearch. It uses the Solrj library to communicate with Solr.

It’s recommended that the solrj version used is the same as the solr version installed on the server that the river is querying. The Solrj version in use and distributed with the plugin is 3.6.1. Anyway, it’s possible to query other Solr versions. The default format used is in fact javabin but you can solve compatibility issues just switching to the xml format using the wt parameter.

All the common query parameters are supported.

The solr river is not meant to keep solr and elasticsearch in sync, that’s why it automatically deletes itself on completion, so that the river doesn’t start up again at every node restart. This is the default behaviour, which can be disabled through the close_on_completion parameter.

Installation

Here is how you can easily create the river and index data from Solr, just providing the solr url and the query to execute:

curl -XPUT localhost:9200/_river/solr_river/_meta -d '
{
    "type" : "solr",
    "solr" : {
        "url" : "http://localhost:8080/solr/",
        "q" : "*:*"
    }
}'

All supported parameters are optional. The following example request contains all the parameters that are supported together with the corresponding default values applied when not present.

{
    "type" : "solr",
    "close_on_completion" : "true",
    "solr" : {
        "url" : "http://localhost:8983/solr/",
        "q" : "*:*",
        "fq" : "",
        "fl" : "",
        "wt" : "javabin",
        "qt" : "",
        "uniqueKey" : "id",
        "rows" : 10
    },
    "index" : {
        "index" : "solr",
        "type" : "import",
        "bulk_size" : 100,
        "max_concurrent_bulk" : 10,
        "mapping" : "",
        "settings": ""
    }
}

The fq and fl parameters can be provided as either an array or a single value.

You can provide your own mapping while creating the river, as well as the index settings, which will be used when creating the new index if needed.

The index is created when not already existing, otherwise the documents are added to the existing one with the configured name.

The documents are indexed using the bulk api. You can control the size of each bulk (default 100) and the maximum number of concurrent bulk operations (default is 10). Once the limit is reached the indexing will slow down, waiting for one of the bulk operations to finish its work; no documents will be lost.

Limitations

  • only stored fields can be retrieved from Solr, therefore indexed in elasticsearch
  • the river is not meant to keep elasticsearch in sync with Solr, but only to import data once. It’s possible to register
  • the river multiple times in order to import different sets of documents though, even from different solr instances.
  • it’s recommended to create the mapping given the existing solr schema in order to apply the correct text analysis while importing the documents. In the future there might be an option to auto generating it from the Solr schema.

Hope the tool helped, do share your feedback with us, we’re always interested to hear how it worked out for you and shout if we can help further with training or consultancy.

Trifork @ J-Fall – 2 top-10 sessions

December 20th, 2012 by
(http://blog.trifork.com/2012/12/20/trifork-j-fall-2-top-10-sessions/)

It’s the time of year to reflect and think back on some of the highlights of 2012. One thing I am very proud of is our contribution to J-Fall 2012, the yearly event organised by the Dutch Java User Group (JUG). For years, we have been involved on the program committee (Jettro Coenradie) and contributing through delivering interesting speakers & sessions on various topics. This year, we also again decided to sponsor the event as well, mostly to promote the GOTO Amsterdam event and to raise brand awareness for Trifork Amsterdam (and strengthening the link with the original JTeam).

But the main thing I want to share is the feedback / ratings (in Dutch) from the sessions at J-Fall 2012.

This year we had two speakers:

Both were in the top 10 of best rated (overall, resp. 4 and 8) and Allard’s presentation was the most visited session (next to the keynotes).

We are intend to keep this up and bring the good quality sessions if not better at J-Fall and GOTO Amsterdam in 2013 as well!

For now happy holidays and more in the new year.

GOTO Night 12-12-12 and Breaking News!

December 7th, 2012 by
(http://blog.trifork.com/2012/12/07/goto-night-12-12-12-and-breaking-news/)

GOTO Night, December 12th. Limited spaces so sign up now!

This Wednesday on the legendary day, 12-12-12, the GOTO Night is going to take place. This free event will be held in the centre of Amsterdam and will be hosted by E-buddy. We are very proud to present our two speakers for the evening, Erik Meijer and Timan Rebel.

For more information visit the GOTO website!

Breaking news

We are happy to announce breaking news: two huge names, who will be at GOTO Amsterdam in June. Yes, we are talking about Linda Rising and Martin Fowler!

Please note: GOTO Amsterdam June 2013 Extra early bird till December 14th, so register here for only €599,- for the 2 days.

November newsletter

November 14th, 2012 by
(http://blog.trifork.com/2012/11/14/november-newsletter/)

trifork banner

Greetings from Trifork Amsterdam 
It’s all about finding the perfect match in life. Trifork A/S (a leading Danish software company) has found just that in us, here in the Netherlands. As of November 1st we’ve launched as Trifork Amsterdam. Rest-assured, we’ll still focus on the technology as we know it best, the entire team will remain intact and we’ll continue to do more of what we do best but even better ;-). If you want to know more visit our website.

JFall Winners
jfallFor those of you who visited us at JFall this year, you’ll probably have done our “Get to know us” questionnaire. We’re pleased to say that pretty much everyone got top marks (even if you did get a little help from us every now & then!).

jfall image

However the lucky winners of the great prizes are as follows:

  • 1st prize ticket for GOTO Amsterdam, June 2013 goes to Erwin de Gier
  • 2nd prize 2 x tickets for NoSQL roadshow Amsterdam, November 2012 goes to Peter Glas & Michel Schudel
  • 3rd prize: Techy books for 15 runners up (will be contacted individually!).

Congrats to winners and thanks again to all the participants.

Don’t worry though for both NLJUG members and our newsletter readers we also offer great group & sponsorship deals for both events. For more details, contact Daphne Keislair on daphne.keislair@trifork.nl or call +31 6 272 94 119 to discuss the possibilities.

Want to know more on NoSQL?

no sql banner

Just so you know, the amazing early bird rate of 200 EUR for the NoSQL roadshow Amsterdam is still open until 16th November. It’s a unique opportunity to gain insights from some renowned speakers around MongoDBRiakHaadoop & Cassandra,Neo4J and much more. At the end of the session you’ll have no questions around the NoSQL space that’s for sure, so sign up here or contact us for more information. If you can not make it to Amsterdam, a week later the roadshow will be in London too.

Meet us at Devoxx

devoxx logoIf you can’t make it, either sign up for our FREE MongoDB Brown Bag session, or if you’re going toDevoxx visit us at stand number 11 (we’re there with 10Gen).
It’s not all just all about coding: tech meeting December  

Of course we are technology geeks but we also look beyond the code too. This month our two sessions will cover:

  1. Web Application Security, an introduction into how to ensure your web application doesn’t make it to the news (for the wrong reasons!) in 2013, providing you with some basic insights and tips & tools on how to secure your website
  2. Agility Beyond Campfire Romance, an interesting and somewhat contraversial matter when it comes to how best to manage development projects.

Sign up now and join us on 6th December. If you can not make it to the tech meetings we will have the presentations available for download on our website after the sessions.

es logoCommitment to the community
In one of our recent blog posts we already mentioned that both Trifork & GOTO are committed to working closely with the community. This month we will host the Elasticsearch meet up covering the cool use of the product in the new website for the Rijksmuseum, its going to be a great session so sign up now. Also, if you need a location for your meetup (even in one of our other Trifork offices) then we’re happy to help if we can just drop us a note with your request.

Blog blog blogging

We’d published a few blogs recently, including:

Spring Insight plugin for the Axon CQRS framework

Agile Campfire Romance

NoSQL roadshow Amsterdam