RailChecker 1.1 updates
Jan. 31, 2024, 4 p.m. - Written by Robert Topolowski
RailChecker 1.1 is about to begin roll-out across all platforms (pending testing and review processes), bringing with it several improvements and changes. The changes being made have been documented in this blog post.
Visual improvements
Some parts of the app have been improved from a visual point of view. These include:
- Nicer text inputs
- More consistent rounding
- Clearer error messages
- On iOS devices with notches, an issue where the screen would “jump” to adjust to the notch at the top of the screen has been rectified.
New on-boarding screens
Following user feedback, if you download the app as a new user you will automatically be shown a tutorial on how to use the app. This tutorial can also be accessed from Settings.
Improved journey planner
The in-app journey planner has had some minor tweaks to it’s UI to make it look nicer across all platforms. It also runs on a new algorithm (detailed below), which should mean significantly improved reliability. Additionally, “Earlier” and “Later” buttons have been added, and you can now pin frequent journeys!
Improved formation search
The formation search algorithm (server-side) and the way in which formation search results are presented on the users’ device has been improved – it should now run much faster and should also reduce resource use on devices (it previously tried to render the entire list at once, which could cause the device to heat up). Formation search now covers more types of train and is also split into two hour sections when listed.
New server communication system
The way in which the RailChecker app interacts with the main server has changed. A new “API” has been created which is significantly more reliable and more efficient. Additionally, the app now handles communication between itself and the server a lot better than before – errors are better handled and are more informative, which should stop the app from just hanging. Furthermore, the changes server-side mean that there should be significantly less instances of the server failing to respond (there has been a spike in the number of crashes recently) – this was due to excessive resource use by the journey planner, which itself has now been made significantly more efficient and is much better, for example it now provides up to 5 journey options instead of 4. The new journey planning engine will also now be able to accommodate additional features in the future, such as via/avoid points.
FAO developers out there: If you are interested, the journey planning engine has now been made open source as a Python package that you can download and run yourself! Find out more at https://github.com/RTopolowski/pytinerary – at the time of posting, the version in the repository is out of date and will be updated soon.
The old API will be unsupported effective immediately. Following 28th February 2024, the journey planner will not work on app versions 1.0 and below as it is causing server stability issues. Other features may still work but if they fail, they will not be fixed. To avoid these issues, please make sure you update your app. An in-app message will be shown to users on older versions to remind them to update.
Other minor fixes/improvements
- Associations are now shown correctly, where these occur at non-passenger stops and where there are multiple associations for one location.
- Links on the Settings page have been updated to point to the correct pages.
- Long term schedule updates have now been increased to lag two days behind instead of three, which was creating several ghost/duplicated services.
- SWR service formations now shown where the service is operated by Class 444, 450 or 458/5 (only some services for the latter).
- Changes made to comply with Google Play’s policy changes regarding account deletion.
- New Settings options for choosing a default option for pinning services (“Today only” or “Every day”).
- Pinned services can now be ordered by departure time, operator or “pinned order”.
- Headcodes are now shown for pinned services when detailed mode is on.
- Booked platforms now shown where actual platform information isn’t available at the time of search – note: booked platforms will not show where platform information is suppressed by station control.
To summarise, most of these changes are minor from the point of view of the user. However, these changes will make your experience of using the app significantly better (and it’s a damn sight better than National Rail’s app!). Most of these changes have been made based on user feedback – if you’d like to see a feature in RailChecker, do send a message.
Changes to RailChecker Pro and RailChecker Web
RailChecker Web will be made free from 1st March 2024*. This means that RailChecker Web will not be a feature of RailChecker Pro (although RailChecker Web will have advertising for non-Pro users). The reason for this change is the limited use of RailChecker Web, and additionally capacity constraints have changed sufficiently to allow open access to the website. The Pro subscription still represents great value for money in comparison to many similar subscriptions in different transport-related apps.
If you do not wish to continue with your subscription due to this change, you have the opportunity to cancel your subscription over the next month.
More “Pro” features are planned to replace this feature (see below).
* This date is subject to alteration, but this change will not happen before this date.
What’s next?
The focus of development will be to refactor and re-engineer how the server communicates with and receives data from National Rail to improve reliability and scalability. This is largely "invisible" development to most users, but it's important to do and so you may not see many updates for a while.
Having said that, the following features are on the list of things to implement:
- Pro feature - A new “Journeys” concept which wraps multiple existing and new features together – receive notifications about your planned journey, “Live Activities” (dynamic island)/persistent notifications with progress updates and more
- Pro feature - Past service punctuality
- Widgets
- Integration with wearable devices (such as Apple Watch)
- Extend data retention period from 7 days to something longer
Additionally, commitments outside of RailChecker (I am a full time university student) mean that I may not be able to dedicate as much time as you expect.
I’ll be monitoring changes to the data available through various open data platforms to improve existing features, such as formation information for more services, as well as implementing new features.
Again, if you’d like to see a feature in RailChecker, please let me know!
One more thing – RailChecker has recently received a few negative reviews so if you haven’t already, please leave a review through your app store!
- Robert Topolowski
P.S. If you are good at drawing train diagrams and are willing to draw them for RailChecker on a commission basis, then please get in touch! Send an email to contact /at/ topolowski /dot/ com, preferably with an example of your work, rates and availability.