Blog | https://blog.kollerie.com |
Blog | https://blog.kollerie.com |
I need to get myself a new laptop. My existing one is from 2017 and was already then not the most powerful one. It recently started to shut itself off when running on battery and during the two most recent curl up meetings it has proven itself to be rather sluggish and unable to save … Continue reading Sponsor my laptop! →
Slide requirements for (checks notes) Open Source Summit Europe:
PowerPoint format
Today we’re quietly (and finally!) opening up Railfinder to the public! This is our beta version and - hopefully - the first step towards that one booking site for trains across Europe that we all dream of.
Lots of work has gone into this and equally lots still to do before reach that vision, but if you’d like to try what we’ve built you can now just go to https://www.railfinder.eu and have a go!
Any and all feedback more than welcome 🙏
Today we’re quietly (and finally!) opening up Railfinder to the public! This is our beta version and - hopefully - the first step towards that one booking site for trains across Europe that we all dream of.
Lots of work has gone into this and equally lots still to do before reach that vision, but if you’d like to try what we’ve built you can now just go to https://www.railfinder.eu and have a go!
Any and all feedback more than welcome 🙏
And for the nerds among us, we have a page on all the details that went into this - including our initial ticket coverage & how the search works: https://www.railfinder.eu/how-it-works
Ask me anything!
@stefanlindbohm Right now, I notices that Saarübrcken Hbf is missing (very weird it has secondary stations, but not the main one).
Also, I think it is worth mentioning you do charge booking fees. It would be nice to explain clearly the rates applied.
Last, any intention of supporting deutschland tickets, loyalty cards and discount cards ?
(I have a tricky test case with SNCF, you will need to run TER fare search with each applicable card separately as the SNCF backend is buggy and hasn't been fixed despite several reports).
@Sobex Yes we have issues with stations that are on a country border. Thanks for the report, will fix!
Good point also on the fees! We also know we will to monitor and adjust to make sure they always make sense with min and max limits.
We definitely want to support reduction cards. Once we do, the SNCF issue should not be a problem for us as we request tickets for each segment independently :)
@stefanlindbohm Well, ticket for each segment independently is not enough to sort out issue when two cards are applicable to a single TER trip.
I'll PM the exact combo I use.
@stefanlindbohm what data structures, path finding algorithms, infrastructure and tooling are you using etc 🤓
also, how big is your team?
@bovine3dom Data is in Postgres. Journey planner is a custom-built one in Go based on RAPTOR and follow-up paper from KIT. Hosting on Render and Hetzner. Web app in Ruby on Rails.
Tech team is ..mostly me 😅. We’ve had some added oomph from a consultancy when money allows.
I have two co-founders, Zuzana who’s a marketing strategist and Veronica who is managing our partner relations. Some project-based consultants when possible/needed on a few non-tech things.
@stefanlindbohm cool, thanks for the response! is it vanilla postgres or are you using postgis / column database extensions?
is "partner relations" a euphemism for "i really didn't want to talk to the SNCF myself" :) ?
do you modify RAPTOR to find "better" routes e.g. with night trains or do you use it mostly unaltered and score the routes afterwards?
(much love for Hetzner)
@bovine3dom Postgis (used mostly at import time for now) and the official hstore extension for localised names of things. That’s all.
Haha! She’s working on a massive pipeline of new contracts we will be able to add so I couldn’t do her job whether I wanted to talk to SNCF or not :)
Our RAPTOR implementation is pretty far from the variant in the paper. The authors would potentially call us crazy for some of the shenanigans we’re doing 😅😅
@julian_b OSDM is a good standard, but for the most part it’s not enabling things that were impossible before. It does help reduce technical costs of integrating with multiple systems if all support OSDM though.
The limiting factor is the contracts. We’re working on signing on as a reseller for more operators, and even already have some more on the way that we aren’t ready to share just yet. More to come!
Bravo!
@stefanlindbohm Proposing routes in France with more than 2 connections could be a game changer (as SNCF API doesn't allow that).
But how are passenger rights going to work? Isn't there a risk of losing users after a bad experience (i.e. missed connection, and no possibility to hop on the next train) ?
@cartotrain And transfers longer than 2.5 hours, I learned recently :)
But yes indeed, for these cases we need to split the tickets and that puts all responsibility on the passenger. We try to combine as much as possible, but don’t hide results if it’s not. We will improve the info shown on the consequences of this though.
And hopefully we can do more to protect the transfers in the future, but that’s for later
@aronkvh Thank you!
We run routing entirely in our own systems. Data is the industry’s international timetable (MERITS). Open data is not good enough to do this across Europe sadly. A number of countries don’t publish at all or update the feeds extremely infrequently.
@Luke_Vader Thank you! No worries, this wasn’t specifically asked.
We built our own because our criteria and optimisations are very different to ensble us doing full day searches with massive (multi-hour) detours in the name of a number of comfort related criteria. Plus we tightly integrate the display with the rest of our app. There’s a lot of complexity in other planners we don’t use and vice versa.
Was it a 100% correct decision? 🤷🏻♂️ But that’s why :)
@stefanlindbohm kudos, you've found decent solutions to my go-to riddle "Paris to Kaunas" on the very first try, no fiddling.
I may use that next time !
@datacyclist I know!! Don’t get me started :). But we will add SE tickets very soon!
Passenger rights is the same as otherwise - meaning you have separate tickets and in some cases can rely on AJC for connections between. This is something we want to help with in the future, but it’s a little complicated and we need to do it right. But we really want to fix that as soon as we can!
@orangerkater Are you judging by the departure time of the top result? We order by default by a ranking of comfort, not time. All results between 05-24 are included for the day you search. You can sort by departure tile by clicking the ”all departures” option above the list.
If not, you might have found a case that trips us up, care to send me a screenshot if so? I’ll look into it!
@fiete It does! For any result that has that flag, there is another with a similar departure time that has transfers that we do recommend. Maybe we should think of a way to clarify which result is the alternative for a specific one that is flagged with the warning?
@orangerkater Ah, yes. Some stations are also border points (for ticketing purposes etc) and we get a little confused by these right now. Will fix, it’s on the list!
@stefanlindbohm
Hi Stefan,
Great work !! This looks very promising indeed.
I quickly tested the application, and it selects the correct train.
The only thing is that the pricing seems to be a bit different if I compare it the the bahn.de website?
(€ 99,99 vs € 29,99)
@stefanlindbohm "Travel at night" and "nighttrain" feels a little odd. I understand that "travel at night" means "sit in whatever train that runs at night", but it might need some thought on wording / explanation.
Being able to avoid "daytrains at night" is huge improvement over other sites 👍🏻