đŸ’Ÿ Archived View for dioskouroi.xyz â€ș thread â€ș 29425650 captured on 2021-12-03 at 14:04:38. Gemini links have been rewritten to link to archived content

View Raw

More Information

âžĄïž Next capture (2021-12-04)

-=-=-=-=-=-=-

Google 20% time volunteers have been rewriting the ITA Matrix flight search app

Author: hnburnsy

Score: 329

Comments: 199

Date: 2021-12-03 01:47:43

Web Link

________________________________________________________________________________

tomhoward wrote at 2021-12-03 12:18:04:

For those unfamiliar with ITA Matrix, it was for a long time the go-to flight search tool for the most dedicated flight hackers, points hackers, etc.

It was built by ITA Software [1][2] in the early-mid 2000s (the earliest mention I can find of it is in 2004 [3]) to test and showcase the capabilities of their flight search platform. I once heard that ITA and other consumer-facing flight search companies had tested that kind of UI with ordinary users, but found that not enough people understood or liked it enough for them to justify making it a mainstream interface.

Hipmunk, a YC-backed flight search site that launched in 2010, was heavily influenced by the ITA Matrix UI, after co-founder Adam Goldstein had found Matrix to be the best way for him to find flights when travelling around the world for college debating competitions. And while Hipmunk did a good job of being more consumer-friendly and popular than Matrix had been, sadly they didn't gain enough traction to make it as a standalone company, and after being acquired by SAP/Concur, it was shut down last year.

It's an interesting, and perhaps depressing case of a product design concept being far superior to what's available in the mainstream for a certain class of user, but cannot gain enough mainstream acceptance to be a viable business or even a well-supported service for those who love it. And far more than most other product categories, flight search has huge infrastructure costs, so it's very difficult to economically sustain niche products (from grim personal experience of being part of a team trying to build a novel flight search product ourselves).

In this case it's just lucky that Google owns the infrastructure and has enough enthusiasm internally to keep it going to some extent.

[1]

https://en.wikipedia.org/wiki/ITA_Software

[2]

https://xconomy.com/boston/2008/12/17/ita-software-the-trave...

[3]

https://www.fodors.com/community/europe/customs-question-sea...

swalsh wrote at 2021-12-03 12:30:56:

Hipmunk was the absolute best, I miss it everytime I have to search for a flight.

traceroute66 wrote at 2021-12-03 14:45:48:

> Hipmunk was the absolute best

Not sure I would put it as strongly as that.

Hipmunk was OK, one of "the better" free tools out there.

But I'm afraid it never had anything on ITA Matrix. ITA always had copious amounts of extra special sauce.

I extensively tried all competitors I could find (including Hipmunk) on a variety of real-world scenarios. Nothing ever came close to ITA and I was very worried indeed for its future when Google bought it.

MAGZine wrote at 2021-12-03 15:34:48:

Yeah, but you couldn't buy tickets on ITA which made its special sauce only go so far. What's the point of building the best schedule if its unpurchaseable, or unpurchaseable without a travel agent?

Hipmunk actually let you use ITA syntax to search for very specific route constructions, which you could then buy.

dzhiurgis wrote at 2021-12-03 19:08:32:

Google is sometimes the same - presents an option for either calling an agent (never worked for me) or buying same flight for $20k. Then you go to SkyScanner and get same ticket for maybe 10% more but via dodgy-ish website.

p.s. Google seems to be the worst at bait and switch, but that's different story.

radicality wrote at 2021-12-03 17:55:57:

There's some sites that let you paste an itamatrix itinerary and show you places where you could potentially purchase it (eg

https://bookwithmatrix.com/

).

If that doesn't work and you really want a specific itinerary, I've had good luck with amex travel concierge, where I provided them with copy-paste of ITA matrix and they made the booking.

1024core wrote at 2021-12-03 17:10:08:

IIRC, ITA gave you the flight details in the special syntax (code) that travel agents use, and you could just give that code to a travel agent and they'd be able to buy that exact flight for you.

lars512 wrote at 2021-12-03 12:43:41:

Looks like this tool also includes a "time bar" view that's in fact what Hipmunk was based off.

Also looks like they're building a successor to Hipmunk called Flight Penguin:

https://flightpenguin.com/

telesilla wrote at 2021-12-03 12:49:34:

Seems they will charge a subscription to access this - at first thought I wondered if this is the best option, and not just charge a per-leg fee like

https://flightfox.com

(who do concierge travel services and I love them) but I suppose, if you get the flight schedule you want, many people will instead jump and book direct with the airline. This can be good, if the flight aggregator is a behemoth and will not help you in case of problems, or bad if the airline is a behemoth.

Ducki wrote at 2021-12-03 15:01:57:

"flight search has huge infrastructure costs"

Could you please elaborate? What makes a flight search so expensive?

tomhoward wrote at 2021-12-03 16:10:15:

Others have replied well but I’ll add my own answer...

In order for your flight search product to be useful, you need a database containing effectively every flight in the world - all the airlines, all the destinations - and you need to update it every time a fare or seat availability changes. Then you need optimized routing algorithms to find routes that accommodate a vast array of consumer preferences. So, there are giant costs just to get access to all the data in the first place, then write the code and run all the servers.

ITA Software offered this as a service via an API, but since a couple of years after Google acquired them they stopped offering access to outsiders.

Now the GDS companies (Amadeus, Sabre, Travelport) offer API products, but they are still very costly, so big transaction volumes are needed to justify it.

There is now one way small/niche businesses can offer flight search and transactions fulfillment; a YC company called Duffel. They still only offer a narrow selection of airlines, but it’s growing.

Some other companies like Skyscanner offer access to their API, but only if it’s in their interests (ie, if you generate sales for them; you can’t make much revenue for yourself that way).

sedachv wrote at 2021-12-03 17:03:18:

The reason Google continued to offer API access after the acquisition was because a 5 year stipulation was in the contract to get it approved by the Department of Justice. Of course once the 5 years were up that was it. ITA had also built a reservation system for Air Canada. Air Canada never used it, but Cape Air switched in 2012. In 2013, Google discontinued it.

The whole acquisition was a huge failure on the part the DoJ Antitrust Division.

AtlasBarfed wrote at 2021-12-03 16:49:52:

Basically they are an AI travel agent.

But travel agents died with the internet.

mrkstu wrote at 2021-12-03 17:25:27:

Business model changed, but travel agents are still active and in demand. (Source, spouse is a travel agent)

throwaway894345 wrote at 2021-12-03 18:15:40:

My understanding is that the travel agency business has shifted more towards business and luxury customers rather than middle class people?

mrkstu wrote at 2021-12-03 18:31:44:

Sure, but plenty of those jobs still around. In fact they've been struggling with the rest of the market in filling positions. AmEx travel is constantly recruiting.

lastofthemojito wrote at 2021-12-03 16:37:33:

Here's a excellent presentation by a co-founder of ITA Software to an MIT compsci course, entitled Computational Complexity of Air Travel Planning

http://www.ai.mit.edu/courses/6.034f/psets/ps1/airtravel.pdf

Marazan wrote at 2021-12-03 15:30:15:

Flights are a big graph reachability problem with a mass of filters (cabin class, plane type, number of passengers etc)

Directs are a trivial problem.

1-stop indirects is a simplish batch processing problem to produce an easily indexable data set.

2-stop indirects is a huge quantity of computing power.

splonk wrote at 2021-12-03 15:39:16:

The graph problem is huge (NP-complete in the full case). You can't reasonably cache things because segment availability changes a lot. Latencies on searches through the GDS may be much higher than you're used to in other domains. Due to all these factors and more, cost per query is quite high. And then on top of all that, conversions for flight searches are quite low and the reward for converting a search is on the order of single digit cents.

dzdt wrote at 2021-12-03 16:22:54:

Basically the problem is the airlines don't want good flight search so they erect barriers, right? Airlines prefer to have pricing and route info be opaque so they can keep people using higher price options. So the infrastructure costs are about fighting to get the information from people who don't want you to have it.

londons_explore wrote at 2021-12-03 16:46:45:

On the counter-side, if there are 300 seats on a plane, worth $100 each, and everyone does 10 flight searches before booking a flight, that means that your database needs to hold a few hundred bytes about prices, the plane, and departure time, and handle 3000 queries, and for that you get a chance to make a commission on $30k in revenue.

There aren't many computing platforms that could offer a higher profit margin per byte stored or queried!

nefitty wrote at 2021-12-03 14:35:08:

Airbnb's customer experience team used Hipmunk as a fallback for a long time. The last resort before just hanging up and promising a check was HotelTonight, until Airbnb acquired that.

How did Hipmunk mess it up so bad? It was seriously one of the most pleasing web apps to use, even under time pressure.

breakfastduck wrote at 2021-12-03 15:06:49:

Did Hipmunk 'mess it up'?

The comment you replied to seems to have a fair assesment of why it failed

>It's an interesting, and perhaps depressing case of a product design concept being far superior to what's available in the mainstream for a certain class of user, but cannot gain enough mainstream acceptance to be a viable business or even a well-supported service for those who love it. And far more than most other product categories, flight search has huge infrastructure costs, so it's very difficult to economically sustain niche products (from grim personal experience of being part of a team trying to build a novel flight search product ourselves).

thesausageking wrote at 2021-12-03 14:48:39:

ITA Matrix is still my go-to for booking flights:

https://matrix.itasoftware.com/

Playing with this version, it's a little easier to use, but I don't see any functionality not in the regular version. Still, if it means Google is investing in Matrix, that's a good thing. I always worry at some point it will be killed.

the_pwner224 wrote at 2021-12-03 16:39:47:

The speed and usability of this website is so refreshing compared to all the other flight search sites. All the input boxes are normal and shown on screen at once, the calendar and airport selection autocompleter dropdowns work instantly with zero lag or animations, and then it shows the results after 2 seconds of processing time.

The new design in the OP is still decent compared to the alternative websites, but slower and harder to use compared to this original design (to me, who had never heard of Matrix before).

It's a shame that this is going to be gone soon.

traek wrote at 2021-12-03 17:04:17:

> Still, if it means Google is investing in Matrix, that's a good thing. I always worry at some point it will be killed.

This isn't Google investing in Matrix, this is a group of people who work at Google using their spare time to rewrite the product so it doesn't get taken offline.

If anything, the lack of a dedicated team or resources is a strong indicator that Matrix will be on the chopping block at some point in the future.

ragall wrote at 2021-12-03 18:05:49:

There isn't a dedicated team because it's not a business product, but internally it's considered very important because it essentially allows power users to beta test our backend. For that reason alone it will be kept around and supported indefinitely.

notyourwork wrote at 2021-12-03 16:01:22:

>

https://matrix.itasoftware.com/

Error: Service Unavailable for me.

thesausageking wrote at 2021-12-03 19:08:52:

Try it again; it loads for me. I'm guessing it got hugged to death by everyone checking it out.

iakh wrote at 2021-12-03 12:50:27:

Wanted to self plug a community project I maintain that continues to enhance ITA Matrix, Powertools[1] and see if anybody wanted to help port it over to this new front end. PRs accepted!

1.

https://github.com/adamhwang/ita-matrix-powertools

qeternity wrote at 2021-12-03 15:06:20:

Whoa - crazy seeing you here. Hello from an old member of our old little Slack group.

<end of line>

@iakh is a legend!

qeternity wrote at 2021-12-03 14:48:49:

As someone who has done some of the most extreme/risky forms of travel hacking (serious FD's with 1X + sX for those familiar with lingo), Matrix lost a huge amount of its value when it disallowed searches that start from multiple countries. It's tedious to have to break up a search. Of course, this is not necessarily what they intended it for, so I can't really complain too much.

And covid uncertainty these days has made proper flight hacking a bit of a pastime.

vianneychevalie wrote at 2021-12-03 15:34:10:

Can you elaborate on the lingo, or point in a direction for learning?

splonk wrote at 2021-12-03 15:57:41:

Normally I'd try Flyertalk for finding out what abbreviations mean, but this article probably explains well enough what OP is talking about.

https://princeoftravel.com/blog/airline-secrets-what-is-fuel...

hnburnsy wrote at 2021-12-03 01:48:36:

New ITA Matrix can be found here...

https://partnerdash.google.com/apps/matrix/search

mrtnmcc wrote at 2021-12-03 17:06:09:

I always loved the creative solutions ITA could find, like transferring to a ferry to shuttle to another airport. To the cost sensitive adventurers, ITA was invaluable.

The reboot is much snappier than the old ITA, and it now supports mobile properly! Looking forward to using. Glad Google engineers are applying their decades of experience honing Traveling Salesman type interview questions to the real life problem.

yosito wrote at 2021-12-03 06:08:37:

Well that was thouroughly disappointing.

dang wrote at 2021-12-03 17:29:48:

"_Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something._"

https://news.ycombinator.com/newsguidelines.html

ntumlin wrote at 2021-12-03 16:48:59:

As a 20%er who worked on this it’s a bit discouraging to see such a shallow dismissal. A lot of people put in a lot of work as a passion project to keep matrix from just disappearing.

Can’t win em all I guess.

hnburnsy wrote at 2021-12-03 16:59:24:

I think he thought it was a different Matrix as the initial title of this HN article was not precise (my bad!).

As a frequent traveler thank you so much to all for the work on this.

fibbberMEN wrote at 2021-12-03 14:45:35:

It's a very cool list!

skyscanner still seems to be better.

chriswwweb wrote at 2021-12-03 11:04:57:

I like it, worked well for the few tests I did, however the main form needs some small UX improvements, I chose a start airport and destination airport but then the search button was disabled, leaving me clueless about what field was not filled out correctly, I quickly noticed it must be the date field, but still to me disabling a submit button of a form seems like a bad idea because if disable it you also remove the display of potential error messages related to the form failing validation, which to me is a UX no go (take my opinion with a grain of salt, I'm not a UX guy). The second thing that bothers me is that none of the form fields actually tells you which ones are mandatory and which ones are not

moontear wrote at 2021-12-03 12:30:49:

Take that to the Feedback form, I'm sure the product team would appreciate such detailed feedback.

unityByFreedom wrote at 2021-12-03 05:37:15:

What is the history of ITA Matrix? I thought it was bought by Kayak.com. Was that just a license to some data or something?

AlotOfReading wrote at 2021-12-03 06:02:33:

Kayak licensed/used QPX from ITA back when they were an independent company. Google acquired ITA and as part of the regulatory approval had to operate the APIs for at least the next few years. Kayak continued with QPX, but slowly shifted over to using Amadeus whenever they could. I imagine they've completely switched by now, given how bad the Google <-> kayak relationship is.

gertrunde wrote at 2021-12-03 09:54:11:

That's slightly frustrating to hear that Kayak are getting messed about by Google, as Kayak is about the only flight search tool that I've used that suits the airport situation in the UK.

(e.g. 4-5 international airports reachable within 1 hour drive, another 2-3 reachable within 2 hours drive, flexibility to search across all of them).

The other flight search tools that I've used might, at most, allow one alternative airport.

F30 wrote at 2021-12-03 12:17:28:

It seems that (at least the new) ITA Matrix Search can do that as well: Once you select an airport (or city) as origin or destination, it gets added to a list of possible locations.

Being used to Kayak‘s comma syntax, I did not find this intuitive at first. But in fact, it is pretty convenient and powerful.

m-s wrote at 2021-12-03 12:29:31:

Google Flights allows multiple alternative airports as well

mardifoufs wrote at 2021-12-03 06:39:15:

>how bad the Google <-> kayak relationship is

How come? Is it related to SEO?

AlotOfReading wrote at 2021-12-03 15:37:38:

ITA and kayak were organizationally close in a lot of ways. Kayak brought lots of useful data relationships to the table and ITA brought their technological wizardry. Google was a direct (and hostile) competitor to kayak, who led the anti-trust charge to stop the acquisition. The post-acquisition hostility is just the standard SV playbook stuff like prioritizing Google products in search results and offering amazing incentives to build market share.

I have no particular insight here beyond a general interest in the industry though.

discordance wrote at 2021-12-03 05:54:36:

Google bought ITA Software:

https://en.wikipedia.org/wiki/ITA_Software

dakial1 wrote at 2021-12-03 12:39:12:

In my early years I worked at a airline commerce redesign with people from Amadeus (migrating from their e-retail to WDS, great team). It was an awesome experience, as the channel had still a low penetration (2% of sales) on the airline overall sales and the team left lot of the product ownership on my hands (an external consultant). I remember playing a lot with the search features including allowing pax to:

- Search for a date and no destination to get the best deals for that range

- Search for a destination but no date and get a month matrix with the best rates to travel to that destination.

Of course they were barely used by paxs, but I liked very much to leave these kind of easter eggs for more advanced users.

esprehn wrote at 2021-12-03 05:39:59:

The deprecated frontend stack they reference would seem to be GWT:

https://en.wikipedia.org/wiki/Google_Web_Toolkit

So they're rebuilding the app in TypeScript with Angular instead of with Java+GWT.

echelon wrote at 2021-12-03 05:47:33:

> Unfortunately, the current Matrix website implementation relies on an internally deprecated web platform slated for retirement.

GWT, as you suggest, is definitely a dinosaur.

> rewrite Matrix using newer web technologies like Angular,

How long until Angular goes the way of GWT, though? It's not exactly a beloved technology. Not quite the same level of pain as GWT, but Angular codebases aren't something I'd like to maintain either.

amzn-throw wrote at 2021-12-03 05:57:19:

In 2014 most of the AWS console was written in GWT, and I worked on one of the services. Honestly? I kind of loved it. As a backend Java dev, it made a lot of sense to me, and I almost never had to touch any Javascript.

Every service team at that time chose their own tech stack, and so sometimes I would hunt for ideas of how to implement something in other team's codebases, so I got to see the different tech stacks.

For a brief moment Angular was really popular, and then fizzled out just as fast. For me, it was the worst of all the options by far.

smallerfish wrote at 2021-12-03 10:04:24:

Kotlinjs is a real successor to gwt - it even has mostly working ide debugging. Use kvision if you're going to experiment with it.

unionpivo wrote at 2021-12-03 10:58:05:

We wrote Application (medical) with GWT in 2010, and we still maintain it, occasionally adding new features.

Once you figure out build step and magic incitation to make debugger work (and docment it), It's really not bad,

and maintaining is easier then most other "older" codebases I come across.

Old rubby/php/javascrip(jQuery/whatever) project is usually pain because they all use tons of external packages/libs that you have to update find new ones etc every time you take project off the shelf. With GWT and Java it just works, because we didn't use that many other libraries and Java libraries generally put a lot more effort in backwards compatibility.

So no I would not start new projects in GWT anymore, but I think that current react projects will be a lot harder to maintain in 10 years, than GWT is.

jaywalk wrote at 2021-12-03 13:44:15:

I've never understood all of the Angular hate on HN. I do understand the fact that it's very much the "corporate" option like .NET is, but that doesn't make it bad. I actually really like it and find it very intuitive.

curryst wrote at 2021-12-03 14:07:44:

In my short time working with it, I found it frustrating to debug. Using an incorrect tag meant it would simply be ignored with no indication of why my thing doesn't work, and I found tracing issues back to their HTML tag to be annoying.

The equivalent React/Vue/etc would throw a Javascript exception. Stacktraces aren't the best debugging experience, but they're functional.

I also think Angular inherits from a more traditional UI lineage of composing styling on an element, which I find less clear than something like React that has a more backend-y development flow. That's just personal preference, but I started on the backend so Angular's "build an element and then wire it up" makes less sense to me than React's "figure out the data flow and then build elements on that" style.

I don't find it showstopping. I wouldn't turn down a job because they use Angular. If someone asked me what framework to use, I just probably wouldn't suggest Angular.

EugeneOZ wrote at 2021-12-03 14:42:22:

> Using an incorrect tag meant it would simply be ignored with no indication of why my thing doesn't work

No. It will not even compile.

pjmlp wrote at 2021-12-03 07:05:02:

It is not beloved on HN, on Java and .NET shops is the usually the SPA everyone goes for, given the similarities with MVC frameworks, and it was build from scratch for TypeScript, not something that some comunity person is writing type libraries for.

xeromal wrote at 2021-12-03 13:03:43:

This here. Big corporate enterprises use Angular in their rewrites in my experience as a .NET dev.

jeremycarter wrote at 2021-12-03 10:21:07:

Angular not going anywhere. Just because you don't use it doesn't mean it has no value

jvolkman wrote at 2021-12-03 06:02:12:

The entire GCP console is written in Angular, so it's probably got a bit of staying power.

iaml wrote at 2021-12-03 08:12:17:

Is it? I've been interviewing with them recently and they told me they're using their own internal framework.

speedgoose wrote at 2021-12-03 06:10:24:

Well, we had rumours of Google shutting down GCP not that long ago.

baby wrote at 2021-12-03 06:30:23:

They’re making so much money out of it that your comment makes no sense.

arnvald wrote at 2021-12-03 12:41:27:

I'm not sure that's true. They don't reveal separate numbers for GCP, but they put it under "Google Cloud" umbrella with Google Docs and other products. The revenues are growing, but they're still losing money:

https://www.crn.com/news/cloud/alphabet-earnings-google-clou...

speedgoose wrote at 2021-12-03 16:26:07:

It was a joke. The rumours were real though.

serial_dev wrote at 2021-12-03 06:27:25:

Were these rumors based on anything other than "Google will shut it down"? It is always the top comment no matter which product or service we are talking about, so it doesn't mean anything

speedgoose wrote at 2021-12-03 16:28:03:

No it was based as ocdtrekkie said on supposedly internal leaks about Google wanting to be a leader soon or to give up the cloud market.

ocdtrekkie wrote at 2021-12-03 06:30:24:

The exact framing was a statement that Google execs had given Cloud a deadline to reach a certain portion of the market, or it might lose funding.

https://www.theinformation.com/articles/google-brass-set-202...

lozenge wrote at 2021-12-03 08:27:49:

"Lose funding" means "coast in maintenance mode" not shut down. One doesn't just shut down B2B services.

sedachv wrote at 2021-12-03 18:39:59:

Google acquired ITA in 2010. Cape Air switched their entire flight reservation/departure control system to ITA/Google in 2012. Google discontinued the system in 2013.

hsod wrote at 2021-12-03 06:19:59:

What??

EugeneOZ wrote at 2021-12-03 09:35:28:

It is a beloved technology. Just not by you. It's ok.

ricardobayes wrote at 2021-12-03 12:26:06:

I have no idea why would anyone choose Angular (or Vue) as a JS framework in 2021. React has clearly won this ballgame (for now).

flipperto wrote at 2021-12-03 12:53:55:

That is absolutely not true. While React has a big piece of the market right now, it has not "clearly won this ballgame". Both Vue and Svelte are very much active in the industry and gaining terrain fast.

Frontend development is an extremely fast moving field and claiming a "clear winner" makes no sense.

Having said that, I agree that Angular may not be the best option in the general sense, but given that it is a Google-backed framework, they probably have the best talent available to build tools efficiently.

ricardobayes wrote at 2021-12-03 13:17:46:

Look at how many jobs being offered in angular, vue or svelte vs react, in any given freelance job portal.

It's 1 to 5 at best.

If you want to punish your project and have issues hiring from a limited pool, sure go ahead.

flipperto wrote at 2021-12-03 13:57:07:

Yes, most current job offerings may be for React, but Angular had that spot a couple of years ago and ruby on rails was the cool new thing to work with before that. My point is that this is not a permanent thing. Technologies change, preferences change. React will be replaced with better tools for the job (IMO Vue and Svelte are better designed than React), I am sure of that. Besides, if you are going to hire by limiting your pool by frameworks, you are doing things wrong. Any decent developer that can work in an Angular codebase should have no problem with React, Svelte or Vue.

caymanjim wrote at 2021-12-03 05:16:19:

Awesome. I hope this sticks around for a while. Matrix has long been the best way to find flexible date, multi-leg, and multi-carrier trips.

jonp888 wrote at 2021-12-03 14:30:32:

It looks powerful, however since it doesn't seem to include any results for Ryanair or Easyjet it's pretty much useless for short/medium haul trips in Europe.

I use azair.com for that, although it seems to be quite technologically primitive behind the scenes(complex searches take a _long_ time).

Calchas_ wrote at 2021-12-03 14:53:09:

Yes, Ryanair and EasyJet do not participate in global reservation systems, so ITA doesn’t have access to them.

ragall wrote at 2021-12-03 18:09:54:

The QPX infra can source data from the airlines themselves so that's not the issue. Ryanair and Easyjet don't want to give their data to Google.

m-s wrote at 2021-12-03 15:13:24:

If you search for flights to “QPX”, you get a flappy bird clone

flipperto wrote at 2021-12-03 18:24:50:

There's other nice easter egg in the url for that query

https://partnerdash.google.com/apps/matrix/↑↑↓↓←→←→BA

darthrupert wrote at 2021-12-03 04:52:26:

Was this that semifamous Google common lisp project?

caslon wrote at 2021-12-03 08:06:20:

ITA Common Lisp project, but yeah. Google let it rapidly deteriorate after they purchased it.

e40 wrote at 2021-12-03 17:06:57:

> Google let it rapidly deteriorate after they purchased it.

Is that true? They have a team of people working on SBCL and at ELS a few years after the purchase by Google they were talking about SBCL work to support the app.

auvi wrote at 2021-12-03 11:11:34:

For a while ITA was (probably is) a showcase of Common Lisp in production. But I think these days Grammarly is the one.

danielam wrote at 2021-12-03 15:04:16:

The choice of Common Lisp is less flattering than one might hope because it was largely the result of familiarity (Carl de Marcken's doctoral thesis was in computational linguistics and he was most comfortable using Lisp). When I asked him (c. 2007) whether he would have chosen Common Lisp again, he said that he wouldn't have and that he would have chosen Java instead. I don't recall any mention of technical reasons during that exchange (maybe static analysis?), but I do vaguely recall hiring considerations.

(Also, while much of the "business logic" was written in Lisp, a good chunk of low-level stuff was written in C++.)

vegetish wrote at 2021-12-03 14:22:28:

You still can't do a search with origin from multiple countries, which annoys me. If I want to find the cheapest ticket for a cross-atlantic trip, it would be very helpful to have such a feature.

glup wrote at 2021-12-03 15:44:38:

Kiwi used to have this in their map view -- you could select a very large circular region regardless of country as the origin -- but it seems like they got rid of it.

This was by far the most useful tool to identify cheap segments and cut down the space of options.

qeternity wrote at 2021-12-03 15:09:30:

You used to be able to. It was brilliant, you could do a quick relocation flight, even make it a nice little first stop, and then get a nice long haul somewhere else.

Ah the good old days.

rurban wrote at 2021-12-03 17:39:43:

Results not viewable in Android Firefox. Cut off at the left side. Such is modern angular

syngrog66 wrote at 2021-12-03 18:19:28:

ITA for a long time was the "poster boy" exemplar case whenever anyone asked whether Lisp was being used for anything big in the real world.

I worked for Orbitz during the era when ITA was still independent, and we used their flight search software in our backend. ("QPX" might have been its product name, that used Lisp, but been a while.)

Arubis wrote at 2021-12-03 14:14:57:

Any chance they’re doing the backend in a lisp this time around?

e40 wrote at 2021-12-03 17:04:24:

I can't tell if it is a rewrite of the frontend or both. Seems more like it might just be frontend work?

supahfly_remix wrote at 2021-12-03 15:17:37:

Is there anything similar for hotels?

londons_explore wrote at 2021-12-03 17:03:47:

I want to search for a flight with as many multi-day stops as possible, while keeping the price low. Whenever there is a stopover, I'd like it to be 24 hours plus, so I can explore that city.

Ie. give me the most circuitous route, so I can explore the world.

Yet nobody seems to have done this.

aneutron wrote at 2021-12-03 06:04:31:

It's far from mobile compatible. But I'll try it once I'm on desktop.

deanCommie wrote at 2021-12-03 05:49:12:

Something I never understood about Google's 20% time concept...do people at Google not have deadlnes?

Like it's just assumed that every project estimate will be added 20% to account for 20% time?

Like it's great when you're a market gorilla dominating the competition in search, but how does it work when you're #3 in the cloud and trying desperately to compete with Azure and AWS from behind. Do those people get 20% time too? Seems like a recipe for always staying #3...

potatolicious wrote at 2021-12-03 06:10:49:

Full disclosure: I'm a former Googler.

20% time varies widely across the company, and the ability for an engineer to take their 20% time isn't as sacrosanct as it once was. On many teams it's discretionary depending on current team load (though on the teams I was on, generally granted if only as a matter of maintaining morale). Not everyone has a 20% project all of the time.

People still have deadlines, but the amount of work you commit to doing for a particular deadline is scaled by people's availability - and that includes any 20% work.

It's generally not useful to think about project estimates as padding 20% extra time - because deadlines tend to be exogenous (holiday seasons, launch events, etc.) and less negotiable, and more as scope of work that can be committed to in a particular period, which is something you actually have control over.

curryst wrote at 2021-12-03 14:27:09:

Google owns the stuff you make during 20% time, iirc, so they use it as a feeder for new products.

Allegedly (I can't verify, but can't see why they'd lie) GMail, Google Maps and AdSense were all born out of people's 20% time and Google just swooped in and turned them into full on products.

It might be worth staying #3 in cloud if they could pull off products like that again. I can't help but notice that those products are all old, though.

jointpdf wrote at 2021-12-03 06:26:27:

Maybe there is a Pareto principle (80/20 rule) effect with these side projects: for these, you get 80% of the benefit (vs. working on it full-time) with only 20% of the hours. And for the main gig, maybe it’s 90% of the benefit for 80% of the hours. So, 1.7 for the price of 1? Sounds like free utils to me.

Plus: positive effects on employee morale/retention, skill and network building, (pseudo?) R+D / asset development, etc.

Disclosure: I’m far too dumb to work at Google. Discount accordingly.

tmerr wrote at 2021-12-03 05:58:17:

I've never worked anywhere that deadlines were set with enough precision that +/- 20% would be distinguishable from noise. I think it would be lost to more significant factors like differences in employee productivity and unexpected roadblocks

GekkePrutser wrote at 2021-12-03 06:12:27:

I'm on a similar plan with 10% (not at Google!). It's not really deadline sensitive. The 10% projects tend to be long-term so I can easily move them off my schedule for a while and spend more time on them after.

The whole thing is optional for us anyway and in fact needs to be approved every 3 years.

And I'm not really 100% occupied at work anyway. If I were, how would I fit in learning, networking etc?

yjftsjthsd-h wrote at 2021-12-03 05:55:45:

Why? That just means you need ~20% more people - a bit more because people don't scale like that, but Google has to scale regardless so it's not much difference. And this is an org that allegedly creates projects that will never go anywhere just to keep talent in house and busy, so I'd say they certainly can afford 20% overhead.

AnthonyMouse wrote at 2021-12-03 06:24:10:

You also have to consider that not everyone takes advantage of it.

And that furthermore the 20% projects can have value to the company. Wasn't Gmail someone's 20% project?

visarga wrote at 2021-12-03 07:46:57:

The 20% time rule might be useful in attracting good developers and keeping them from leaving too soon. So in the end it might be more profitable for the company to pay people to play around.

deanCommie wrote at 2021-12-03 17:13:13:

You're still taking a 20% penalty hit to your productivity. And if you're 3rd in the market and actually care about getting to #1 (Maybe GCP doesn't), that's a massive impediment.

jeffbee wrote at 2021-12-03 18:54:39:

Former Googler. I can't recall ever being told when or what to do. Management is more backwards-looking and individually-directed, at least where I was sitting. I had to write about what I did every year, and then people would say whether that was good or not. Organizational goals were objective and coarse, such as cut build times by half by end of year, or whatever.

dghlsakjg wrote at 2021-12-03 06:08:48:

I would imagine that a lot of the 20% projects end up being incorporated in, or part of something profitable. Adsense, for example, was a side project.

From what I understand the rule is that you get to choose what you work on, but it has to align with the company.

So what you end up with is that your most talented/intelligent staff end up working on, and learning about things that they think are interesting and will help the company.

tester34 wrote at 2021-12-03 08:14:30:

I believe it's form investing into your employees

People will mess with fancy tech, crazy projects and not only learn from it, but also feel less burnout

uf00lme wrote at 2021-12-03 13:15:46:

Also stops the urge for devs to push for fancy tech in production, or at least until it is demo from a ‘learning project’.

dmitriid wrote at 2021-12-03 06:56:36:

> do people at Google not have deadlnes

I've yet to see anyone work 100% of their work time.

So yeah, it's better to codify "procrastination time" as 20% and motivate people to not feel guilty when working on something different.

gusmd wrote at 2021-12-03 05:54:36:

Maybe they are assuming that their engineers can output 25% more than Azure's and AWS'? :)

wmf wrote at 2021-12-03 06:11:24:

20% of a 10X engineer is two whole normal engineers!

deanCommie wrote at 2021-12-03 17:13:16:

Even if they're right, that means that they'd only be catching up at 5% faster than them, rather than 25...

wmf wrote at 2021-12-03 06:10:30:

I've heard that in the last ten years or so 20% time is on top of the 100% time for normal work. So no, deadlines aren't padded to account for it.

GekkePrutser wrote at 2021-12-03 06:09:14:

Ooof I was worried for a moment that this was about the Matrix chat network.

I definitely don't want google messing around with that. It should stay unbiased and decentralised.

turminal wrote at 2021-12-03 08:15:59:

The matrix chat software desperately needs an alternative implementation,

I don't think it matters too much who will do it first.

Arathorn wrote at 2021-12-03 10:52:11:

Synapse (the original python matrix server implementation) gets a bad reputation because it used to be particularly bad - we've done loads of work to improve it though, and these days it's pretty reasonable.

https://matrix.org/blog/2020/11/03/how-we-fixed-synapses-sca...

and

https://twitter.com/matrixdotorg/status/1434912387933560837

gives some info.

On the other hand, both Dendrite (Go) and Conduit (Rust) _are_ usable on the public network, despite being beta. There are some missing features, but people can and do run them for real, and both projects are super promising - and with more contributors, they'll land even sooner.

Needless to say, this has absolutely zero to do with ITA's Matrix flight search system :P

IceWreck wrote at 2021-12-03 09:21:26:

There is the main python implementation Synapse, there are two Go implementations (Dendrite and the other chinese finance chat implementation) , one very active and one nearly dead Rust implementation, a half baked c++ implementation and some others.

feanaro wrote at 2021-12-03 10:02:13:

Why do you think Conduit is nearly dead?

Also, what's the other Chinese implementation you're talking about?

IceWreck wrote at 2021-12-03 11:39:35:

Like the other comment pointed out, Conduit is the "very active" implementation.

https://github.com/finogeeks/Ligase

This is the Chinese implementation. From the README and website it seems its being heavily used in production but the website is Chinese so I dont know for sure.

seba_dos1 wrote at 2021-12-03 11:18:59:

Why do you think Conduit was the "nearly dead" one and not the "very active" one? ;)

broodbucket wrote at 2021-12-03 11:28:21:

On first read I just saw "...nearly dead Rust implementation" and didn't notice the previous fragment saying there was another very active one. Just a reading comprehension fail but maybe the sentence structure tripped up others like it did to me.

ptman wrote at 2021-12-03 08:24:26:

And there are several server implementations:

https://matrix.org/docs/projects/try-matrix-now#servers

INTPenis wrote at 2021-12-03 09:18:56:

Yeah but none is production ready. I used to host a matrix node with synapse but it's a waste of time because it doesn't scale well and once you realize that there is no way to convert your users over to a better server software.

So now I'm just waiting until Dendrite or Conduit become fully featured to deploy one of them instead. I'm looking at matrix hosting long term, and synapse is not long term.

feanaro wrote at 2021-12-03 10:04:33:

What kind of workload do you need to scale Synapse too? I mean, matrix.org is running on Synapse...

INTPenis wrote at 2021-12-03 12:26:50:

I'm not saying I'd reach matrix.org levels, but I am kinda anal about having something that could reach those levels. So that my users won't experience issues. Because once you pick a matrix server implementation you are pretty much stuck with it. Migration would require a lot of hours of converting users, and might not even be possible depending on how the passwords are encrypted.

I know people who've been hosting the same XMPP server for decades. So this really shows the immaturity of Matrix. I still believe in it but it needs some more time.

zaik wrote at 2021-12-03 15:20:30:

I'd say just stick with XMPP and extend the protocol to fit modern needs. If we want an universal chat protocol that's going to last, reinventing the wheel is not going to get us there.

d33 wrote at 2021-12-03 10:11:05:

I'd argue that matrix.org is not the best advertisement for Synapse then, judging by its performance.

nannal wrote at 2021-12-03 10:15:50:

I imagine he was using the sqlite backend rather than something bigger. I've had issues with it when connected to larger groups.

INTPenis wrote at 2021-12-03 12:25:41:

No postgres actually.

Matrix.org has terrible performance, it's really a proof that synapse doesn't scale well.

justaj wrote at 2021-12-03 09:20:30:

Unfortunately none of them have feature parity with Synapse. In fact, many of them are missing critical features.

seba_dos1 wrote at 2021-12-03 11:15:03:

We have already seen a successful EEE scenario executed by Google when it comes to open IM networks, so - it does matter; and no, thanks.

slimsag wrote at 2021-12-03 06:35:23:

Yes, much better if instead they keep in their own lane and use their own chat networks / protocols.

..right?

GekkePrutser wrote at 2021-12-03 07:06:42:

I wouldn't mind if they federated with Matrix. In fact that would be great. I would mind if they try to control it. Which inevitably happens when a major player invests into a FOSS project on a big scale. They'll start to worm themselves into steering groups and then use that influence to get some return on investment and start steering things towards their goals. In Google's case that would mean lock-in and datamining (and ads but I doubt that would ever fly on Matrix)

And indeed like zaik said below, they used to do XMPP and stopped it. XMPP is pretty good too these days by the way. But I prefer Matrix because of its bridges.

edhelas wrote at 2021-12-03 08:58:28:

XMPP has many bridges. I'm using my XMPP account to talk without issues with my Telegram, Discord and IRC contacts :)

rapnie wrote at 2021-12-03 09:14:15:

Ha yes, reminds me of this quote from "100 years of whatever this will be" (recommended read) that trended on HN [1] yesterday:

> Software intercompatibility is trending toward zero. Text chat apps are literally the easiest thing in the world to imagine making compatible - they just send very short strings, very rarely, to very small networks of people! But I use at least 7 separate ones because every vendor wants their own stupid castle and won't share. Don't even get me started about books or video.

[0]

https://apenwarr.ca/log/20211201

[1]

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

zaik wrote at 2021-12-03 06:45:01:

Google used to provide an XMPP (IETF Internet Standard for IM) service to all its users once.

usr1106 wrote at 2021-12-03 08:19:06:

Once, when they still thought that competition is a good thing.

Now that they are dominating several areas they think monopoly is great and open interfaces bad.

robobro wrote at 2021-12-03 08:54:59:

Facebook messenger is also XMPP!

It's just not federated, just like Gab 2.0 :-)

ptman wrote at 2021-12-03 08:23:14:

as long as it would follow the spec instead of EEE

mikehotel wrote at 2021-12-03 09:53:39:

To clarify, do you mean embrace, extend, extinguish?

tomcooks wrote at 2021-12-03 06:49:08:

Same, would be better to specify in title what Matrix they're referring to

xvector wrote at 2021-12-03 08:05:17:

All volunteers will have biases. I _guarantee_ you that you have people from corporations you despise working on free software you love.

travisgriggs wrote at 2021-12-03 06:42:06:

Does this statement

“dedicated Google “20% time” volunteers”

strike anyone as a bit “army intelligence” like?

Maybe I don’t understand, these are Google employees, right? Why are they volunteers too? Google gives employees a day long sabbatical once a week, thus 20%. Aren’t they paid to work then? What’s so dedicated about their offsets?

Wouldn’t it be better to say something like

“A subset of Google employees chose to use their weekly sabbatical time to retire technical debt for Matrix”?

marcan_42 wrote at 2021-12-03 07:37:07:

By "volunteering" I assume they mean the fact that you can choose what to do with that time, assuming you actually have it, within the context of the company. So it is an actual _choice_ you have as to what to work on, which isn't usually the case with your normal job duties.

Whether those hours end up being unpaid overtime ("120% time") or not varies wildly from time to time and team to team, in my experience there. I had a real 20% project while I was there ~8 years ago (porting modern Linux to a vendor device Google used internally), but I also stayed late quite often too; I can't say I know for sure how it added up in the end.

overeater wrote at 2021-12-03 10:18:45:

Sounds like this is a term used to make them happy about working additional paid time on a Google-owned product. I mean, if they spent this volunteer time (even if paid) on a public good, I could appreciate that, but choosing to do paid work on your own company's money-making products is not volunteering, it's just regular work but you choose what to work on during 20% of your time.

danans wrote at 2021-12-03 17:33:25:

> but choosing to do paid work on your own company's money-making products is not volunteering, it's just regular work but you choose what to work on during 20% of your time.

Disclosure: Google employee, opinion my own.

You are right, but that blog post is using volunteer in the weaker (but nonetheless common) meaning of "someone who raises their hand to do something". 20% time, when done properly, is more of an employee wellness and career/skill building perk. It is like your employer giving you paid time to take a class or training that is related to your job.

onion2k wrote at 2021-12-03 06:56:05:

What other companies never seem to understand about "Google's 20% time" is that, allegedly, as I don't work there, it wasn't really 8 hours out of your contracted 40 hours, but more like 16 hours out of the 80 hours you chose to work this week for most Googlers. People working on things in 20% time are volunteers in the sense that they're doing extra work voluntarily, rather than going home. It's not like they're doing this stuff during "work hours."

pram wrote at 2021-12-03 07:32:24:

They had something like this when I worked at Atlassian, which was copied from Google (like most everything there)

You could pick a thing to work on outside your normal job and they’d “give” you time. However you had to basically justify it to your manager. This also hilariously ended up in having to plan OKR style achievements for your spare time project. So it was another, voluntary layer of micromanaging crap added over your real job.

mateuszf wrote at 2021-12-03 08:51:53:

> This also hilariously ended up in having to plan OKR style achievements for your spare time project.

Indeed that's really funny in an absurd way.

ivalm wrote at 2021-12-03 07:15:56:

No, Googlers I know def don’t work 80 hours


onion2k wrote at 2021-12-03 07:20:59:

I've only heard about it from ex-Googlers so perhaps it's different now. 20% time was introduced a long time ago (before Google went public?) and 80 hour weeks were _a lot_ more common back then...

xvector wrote at 2021-12-03 08:03:28:

Some Googlers I know barely work 20 hours!

Anyone have tips for finding a chill team at Google? Passed all interview rounds last time but decided to join another company. Might give it another go if I can get one of those <20hr gigs...

zerr wrote at 2021-12-03 09:30:05:

Golang team? I've heard the plan is to slack off next 10 years to add pattern matching in Go 3.

zdkl wrote at 2021-12-03 08:13:54:

Step 1: don't post on HN about how you want to minimise your work-time I guess?

zerr wrote at 2021-12-03 09:31:26:

The whole HN is dedicated to minimizing work-times actually.

radicalbyte wrote at 2021-12-03 08:25:33:

Bighetti's team is chill :)

JaggerJo wrote at 2021-12-03 09:14:45:

can confirm. We built a potato canon last month.

hn_go_brrrrr wrote at 2021-12-03 08:41:54:

Not payments.

goldenchrome wrote at 2021-12-03 07:40:19:

Haha most Googlers I know work closer to 30 hours a week.

xyzzyz wrote at 2021-12-03 07:59:50:

You know some hard working ones then.

deadmutex wrote at 2021-12-03 07:43:50:

Two questions: How long have they been in that position? Have they advanced recently?

Genuinely curious.

goldenchrome wrote at 2021-12-03 19:00:25:

Once you get to senior you can coast forever and no one will bother you as long as you're meeting expectations, which gets easier and easier once you know the company culture. Anyone with 5+ years of industry experience or 2+ years at Google can figure out how to coast on 30 hours a week if they want. There's 100,000 employees, no one notices. Ads is a seemingly endless firehose of revenue so the bottom line is never threatened by your laziness.

skybrian wrote at 2021-12-03 07:03:26:

It’s hard to say for such a large company with people in so many countries, but I doubt all that many Googlers work much more than full time. Many have families.

actually_a_dog wrote at 2021-12-03 06:57:03:

Hence the way I've heard it referred to as "120% time."

skybrian wrote at 2021-12-03 06:57:30:

This is salaried work so pay is unchanged. Whether or not you work more than you would otherwise depends on how disciplined you are about it.

dainiusse wrote at 2021-12-03 06:30:49:

IMO one thing they failed (and looking over this thread looks so) is that it is not immediately clear what that "Matrix" is here.

synthc wrote at 2021-12-03 06:38:34:

Unfortunately, no one can be told what the Matrix is.

OAlexander wrote at 2021-12-03 07:26:19:

You have to see it for yourself?

tallanvor wrote at 2021-12-03 10:23:27:

How did they fail? They were posting to the flyertalk forums, a site where Matrix is still understood to be the Matrix search engine provided by ITA - a company Google purchased years ago.

It's fine if you don't have the same expectation when referring to Matrix here on HN, but you can't expect them to cater to your understanding on every site.

trollied wrote at 2021-12-03 06:49:36:

It's right there in the article!

https://partnerdash.google.com/apps/matrix/search

chrisco255 wrote at 2021-12-03 07:54:54:

Why oh why didn't I take the blue pill?

nanna wrote at 2021-12-03 10:14:36:

Matrix _Airfare Search_. Title of thread should clarify.

someblueman wrote at 2021-12-03 12:24:16:

It should not. ITA Matrix is a well-known tool in the industry, and anyone even closely associated with the airline industry is aware of it.

baby wrote at 2021-12-03 06:30:54:

Ahh, so not the chat protocol

walls wrote at 2021-12-03 14:40:45:

This is about something people will actually use.

robobro wrote at 2021-12-03 08:56:30:

I was misled too, baby.

shmerl wrote at 2021-12-03 08:00:49:

This is confusing since I first thought it refers to the Matrix protocol.

savant_penguin wrote at 2021-12-03 05:11:31:

Thought it meant the browser addon

heavyset_go wrote at 2021-12-03 05:22:52:

I thought it was the protocol.

sigg3 wrote at 2021-12-03 05:39:53:

The new Wave?

robobro wrote at 2021-12-03 08:57:05:

How is Matrix[0] like Apache Wave?

[0] -

http://matrix.org/

TowerTall wrote at 2021-12-03 05:38:28:

I thought it was the movie

andreyf wrote at 2021-12-03 06:56:33:

Too good to be true!

tata71 wrote at 2021-12-03 05:58:57:

So not the federated/decentralized comms protocol, then.

Shucks.

lovelearning wrote at 2021-12-03 06:01:56:

I had the opposite reaction. The idea of Google employees rewriting a decentralized comms system scared me. Relieved to find out this is some other Matrix.

GekkePrutser wrote at 2021-12-03 06:10:31:

Yes same here.. No good could come of that. Perhaps at the start they'll contribute some valuable code, but then they will gain influence and steer the project away from this pesky decentralisation.

Though I doubt it's on Google's radar so far as a serious competitor.

wmf wrote at 2021-12-03 06:08:28:

There's already Conduit.

ricardobayes wrote at 2021-12-03 12:30:31:

This is probably a hard challenge, because I assume the data is semi-scraped.

danielam wrote at 2021-12-03 14:46:57:

"The search engines run on databases of flights, prices, and seat availability, provided electronically over private networks by the 800 or so airlines of the world. The data is not directly available to the general public and access often must be negotiated with individual airlines. Flight data is updated daily or occasionally more frequently in the case of unexpected cancellations. Prices are updated about ten times a day, and seat availability continuously. A large portion of the flight, price and seat availability data, called published data, is used by all the major search engines, but a significant amount of private data is restricted." [0]

[0]

http://www.demarcken.org/carl/papers/ITA-software-travel-com...

itamarst wrote at 2021-12-03 12:51:49:

I used to work at ITA, and no, it's not semi-scraped, it's doing same calculations airline reservation system does to approve a fare.

tincholio wrote at 2021-12-03 12:34:08:

Why? Google owns ITA...

andrethegiant wrote at 2021-12-03 06:25:10:

using newer web technologies like Angular

surprised that they're only replacing the frontend, and with a framework that many wouldn't consider new

fulafel wrote at 2021-12-03 15:07:48:

I wonder what's the co2 impact of contributing to a thing like this. You're helping sell more flights in the end.