Live data from Hacker News

Show HN: Performant intracontinental public transport routing in Rust

github.com

11–20 of 26 posts

Re: Show HN: Performant intracontinental public transport routing in Rust

#11

My day job is OpenTripPlanner work, so I absolutely love to see this. I've long thought about what a RAPTOR engine would look like written in Rust. So cool that you've done it. You should share this in the OTP Gitter chat if you haven't already, the people there would love to see it. I wonder if this would be small enough to run on a phone? I have thought about offline trip planning on a phone, but running OTP is out…

It's after midnight here so take this with a grain of salt but the generated timetable for the puget sound is taking up about 40 MiB on-disk and the server process is using 100k of RAM I think. Most of the timetable is zero-copy so it can be memory mapped on a platform that supports it. So yes, I think it would run on a phone. See also mobroute, which powers Transito

https://git.sr.ht/~mil/mobroute

https://git.sr.ht/~mil/transito

Re: Show HN: Performant intracontinental public transport routing in Rust

#12
post #11

My day job is OpenTripPlanner work, so I absolutely love to see this. I've long thought about what a RAPTOR engine would look like written in Rust. So cool that you've done it. You should share this in the OTP Gitter chat if you haven't already, the people there would love to see it. I wonder if this would be small enough to run on a phone? I have thought about offline trip planning on a phone, but running OTP is out…

It's after midnight here so take this with a grain of salt but the generated timetable for the puget sound is taking up about 40 MiB on-disk and the server process is using 100k of RAM I think. Most of the timetable is zero-copy so it can be memory mapped on a platform that supports it. So yes, I think it would run on a phone. See also mobroute, which powers Transito https://git.sr.ht/~mil/mobroute https://git.sr.ht/…

Just curious, are you based in the Puget sound? I'm in Seattle so it would be a funny coincidence.

Re: Show HN: Performant intracontinental public transport routing in Rust

#13
post #11

Earlier quoted context omitted.

It's after midnight here so take this with a grain of salt but the generated timetable for the puget sound is taking up about 40 MiB on-disk and the server process is using 100k of RAM I think. Most of the timetable is zero-copy so it can be memory mapped on a platform that supports it. So yes, I think it would run on a phone. See also mobroute, which powers Transito https://git.sr.ht/~mil/mobroute https://git.sr.ht/…

Just curious, are you based in the Puget sound? I'm in Seattle so it would be a funny coincidence.

I sure am! Feel free to email me if you want, I'd love to chat about OTP, transit and maps in general.

Re: Show HN: Performant intracontinental public transport routing in Rust

#14

My day job is OpenTripPlanner work, so I absolutely love to see this. I've long thought about what a RAPTOR engine would look like written in Rust. So cool that you've done it. You should share this in the OTP Gitter chat if you haven't already, the people there would love to see it. I wonder if this would be small enough to run on a phone? I have thought about offline trip planning on a phone, but running OTP is out…

I'm not sure how they do it, but Rail planner app for interrail has fully offline train planner.

https://www.eurail.com/en/plan-your-trip/rail-planner-app

Re: Show HN: Performant intracontinental public transport routing in Rust

#15
Hello,

Great work :) Nice to see alternatives poping up. There used to be navitia https://github.com/hove-io/navitia/ but its company is slowing closing thing, so I would not bet on it for the future.

I’m a co-maintainer of gtfs-structures, if you have any feedback using that crate I’ll be glad to hear from you (specially since you consume a lot of different gtfs, you must have tripped on some issues).

Just out of curiosity, did you consider other algorithms, like CSA? It’s been a while I’m out of the algorithmical stuff, so I’m just wondering pros and cons of different algorithms.

Re: Show HN: Performant intracontinental public transport routing in Rust

#16

The fact that the software being written in Rust is supposed to be valuable information to be put in the title is interesting. Nobody would say “Performant intracontinental public transport routing in C++”, or any other combination. It’s just something around the Rust language.

[deleted]

Re: Show HN: Performant intracontinental public transport routing in Rust

#17
Regarding getting better at writing, there was a post recently on improving technical writing, ostensibly about shell scripts to detect passive voice, but it also had a list of recommendations: Style: The Basics of Clarity and Grace as an alternative to Strunk and White, the Chicago Manual of Style, and A Manual for Writers of Research Papers, Theses, and Dissertations specifically for technical writing.

https://news.ycombinator.com/item?id=42407250

Re: Show HN: Performant intracontinental public transport routing in Rust

#18
post #3
post #2

This is very cool. But, bus from New York to St Louis and then backtrack on Amtrak. Ouch. I know the train options from NYP to CHI are slow, but I didn’t think they’re that slow (they’re not)! Nevermind having to take a greyhound for 1000 miles.

Yeah I strongly suspect that there's something in the GTFS spec that I'm missing that's resulting in some vehicle journeys not being added to the timetable. This would also explain why it completely fails to find routes on the return trips for some of the examples. I'm still pretty stoked about it and hopeful I'll get the bugs ironed out. :) edit: also if you look at the Berlin to Barcelona trip you'll see a bus, whi…

Yeah, Deutsche Bahn can find a route from Berlin Jannowitzbrücke to Barcelona Sants that takes less than 20 hours (as opposed to 2 days) https://www.bahn.de/buchung/fahrplan/suche#sts=true&so=Janno...

Hopefully, the existence of a black-box oracle makes it easier to find out where the gaps are.

Re: Show HN: Performant intracontinental public transport routing in Rust

#19
post #17

Regarding getting better at writing, there was a post recently on improving technical writing, ostensibly about shell scripts to detect passive voice, but it also had a list of recommendations: Style: The Basics of Clarity and Grace as an alternative to Strunk and White, the Chicago Manual of Style, and A Manual for Writers of Research Papers, Theses, and Dissertations specifically for technical writing. https://news…

Style: The Basics of Clarity and Grace is an excellent book. I picked it up ages ago, and rather liked it.

A lot of writing advice out there is... weird. There seem to be a couple different varieties. One is "first year university students do X too much, so nobody should do X at all!" This advice is usually "directionally correct" for many writers, but it shouldn't be taken as an absolute. The book Style offers better balanced versions of much of this advice. For example, it shows several examples of when the passive voice can actually increase clarity.

The other bit of weirdness in English-language writing advice goes back several centuries. There was supposedly an "arms race" of grammar advice, where each writer tried to ban more things than the next. The result of this was a bunch of rules that nobody has ever actually followed. Strunk and White is notoriously guilty of this. E.B. White was an excellent writer, but he routinely ignored the rules he proposed. Sometimes he ignored the rules on the very page where he proposed them! This kind of constantly-ignored advice is suspicious, because writing advice should ultimately be based on the common practices of well-respected writers, not on "zombie rules" that have been passed down for centuries without ever having been obeyed.

One good source for telling the "zombie rules" from the useful ones is Merriam-Webster's Dictionary of English Usage. This categorizes advice into rules that good writers actually obey consistently, rules which affect how formal your writing feels, and rules which have no basis in actual practice.

Weirdly, this tendency towards "zombie rules" may be less of an issue in other languages. For all that English-speakers love to make fun of the Académie Française, the Académie's grammar advice seems to be a lot more evidence-based, or at least focused on the well-established differences between spoken and written French.

Re: Show HN: Performant intracontinental public transport routing in Rust

#20
So, how do I add a new public transport route (so it can be indexed in Farebox)?

I tried entering some coordinates as input, but it returned an empty array instead. I’m wondering if this means there’s currently no public transport route added around that location.

Post reply on HN