iRail Trac
iRail project page is located at project.irail.be.
Also, biggest issue (station bug) seems to have been fixed in the API (mobile site soon!). Thanks Pieter Colpaert.
Creating an open transport API
This is also posted on the mailing list of iRail.be and my blog. It’s an update of what we’re doing and what we’re trying to achieve with the project.
Yeri Tiete started almost 2 years ago with only one goal in mind: A simple mobile application that anyone could use to find information for his train connection. As he was proud to have written an application that snappy he informed the NMBS/SNCB with an e-mail. Their reply (after 2 years) however, was quite surprising.
After the letter of the NMBS/SNCB asking iRail.be to stop, the buzz started. Instead of closing the iRail.be down he, after consideration with his attorney Ywein Van den Brande, decided to put it back online and open source it all. Apparently that was a good decision because else you would not be reading this.
The Goals
For this project to succeed, we’d like to achieve 3 goals:
1. Mobile train schedules for all mobile devices by taking the KISS (Keep It Short & Simple) principle into account. This was the first goal and it has more or less been achieved by Yeri. With an average of ~120 users/day iRail.be is currently providing a good service.
The next 2 goals are not at all achieved yet. They were only added recently, after the NMBS/SNCB letter.
2. Open transport data and an official API. Our webscraping API is only a temporal solution and should disappear as soon as possible. The NMBS/SNCB should make an *open-source* API theirselves and provide us with *open* data: the trainschedules.
3. An international API specification. We want to be able to use the same calls and get the same responses with the German or French railway system, as with the Belgium one. We already have the SNCF guy on the mailinglist, and we’re hoping for German people pretty soon too. All other European countries should follow our example of course. Imagine what this could mean for a client developer: implementing a system that returns the fastest connection from Orange (France) to Berlin (= ultimate goal)
As a secondary goal of course we will need a lot of awesome people that use this API to create things we could never have dreamed of. For instance we’ve heard of people writing a chat application that enables you to chat with people in the same train. Someone else is writing an application that will show live tables of a station on you mobile device, someone else is using the API to make a subscribe to this train service (and if it experiences delays, it will notify you in time), and so on.
I’m really excited about this project and I hope it has the right effect on the right people. Oh yes, and for now, enjoy using http://www.iRail.be.
iRail updates
We’ve been busy.
First of all, big thanks for all the code and help from Pieter Colpaert.
Updates:
- API (extreme beta), thanks Pieter (wiki),
- Code clean up, improvements,
- Station bug has not been solved, yet — working on it, (edit: fixed)
- iRail mailing list, for easy communication (wiki / archive).
And again, Git repo located here. Feel free to participate. 🙂
You can very easily fork my Git repository, all working improvements will be merged to the main stream.
iRail.git
iRail source is on Github.
To access the iRail source code:
Be aware you need to be added as contributor before being able to commit changes.
- get Git
- [browse to some folder] mkdir git
- cd git
- git clone git@github.com:Tuinslak/iRail.git
- cd iRail
- git fetch
To edit & commit changes:
- git add [file]
- git commit -m ‘edited [file], added this and that’
- git push
To update repo
- git fetch
- git merge origin/master
To check log
- git log
Info here and here, oh and here.
Nightly built accessible here. Git gets updated every night around 4h00. (see the index.php; set $dev to 1)
Feel free to commit [working and useful] updates. Decent updates will make the iRail.be website. Contact me if you have any questions or remarks. Most important bug is the station issue and my todo list can be found here.
I’m fairly new to all this Git-stuff, so I might have done some stuff wrong, or not optimised, or whatever. Contact me if so.