Google agrees to buy ITA Software for $700 million
googleblog.blogspot.com
googleblog.blogspot.com
We've been doing those sorts of radius searches for years, although we don't currently integrate street-level data for any customers that I know of. Head to http://matrix2.itasoftware.com, put in where you are, then click "Nearby" - the default is 50 miles, even! Then ask for a calendar of lowest fares. You can even tell it "I want to stay 2-5 nights".
Many of our customers have something similar, but it's not always on the front page.
Note: Tickets cannot be purchased directly from ITA Software. If you find a fare you like, you can give the information from this site to your travel agent or airline when making a booking.
This is a deal breaker. I do not want to contact travel agent OR airline customer rep for booking my tickets. I want to find the best fare, enter my credit card and be done. Also, why should Travel Agent OR airline honor the fare which you posted when we all know that flight ticket pricing is highly dynamic?
I need hopefully need to fly to Salt Lake City in Febuary and I'm staying for about 1-2 months
- I search for "Iceland -> Salt lake city" for 50 nights => $2,441 (many dates)
- I search for "Iceland -> New York" for 50 nights => $454 (many dates)
- I search for "New York -> Salt Lake City" for 50 nights => $350 (af few dates)
So If I do it manually from Iceland to new york and then book a flight some other dates from NYC->SLC, I save $1,637 ... that's a lot of savings
I understand that that is a hard problem to solve, but if it can be handled by a computer one day, my life will be better!
I live in Montevideo, Uruguay, and Buenos Aires, Argentina or Sao Paulo, Brazil are major hubs nearby (especially Buenos Aires which is an U$ 30 trip).
Last trip I made to Toronto (Canada) I just booked from Buenos Aires, and saved about U$ 400.
There's also the visa restrictions you have to factor in - for example I can't take any flight with stopovers at the United States because said country is stupid and requires visas for stopovers (!!!) - end result is I won't travel to the US, they've lost at least a few thousand bucks of my tourist money, make me book different carriers (I used Air Canada even though an US-based airline would have been cheaper) and make my life more difficult.
So, booking a flight requires nontrivial calculations for me :(
If you miss a connecting flight, you will be re-booked on the next flight, but it all stays within the context of your fare. Not so if you split up your journey into two distinct tickets. However, a lot of people won't mind this.
In your example, you can split up your travel dates, and use part of the $1600 you saved to stay a few days in New York. I like to do exactly this - the cheapest trans-Atlantic flights are offered by charter airlines from London, and I like to make time for a few days stay there when flying from continental Europe.
Not a big chance of missing your next flight with that kind of window. Even if you know you are going to miss the next flight, with most airlines (but very rarely with charters) you can re-book up to an hour or so before boarding, for a fee that may be less than the difference in ticket prices you would have paid anyway.
This also works for round-trip flights. I often book round-trip flights as two different tickets. A lot of the time it is cheaper, but it also offers more flexibility (remember, you have to pay change fee and ticket price differences - and the airline might only have expensive fares available!) in case you want to change one of the departure or return flights (but obviously not both, as then you're paying 2x the change fees).
Of course, what I haven't said yet is how difficult this will be to pull off. Any travel company that does this will be boycotted by all major airlines. Many fares you're bound to buy this way are sold at a loss (better to sell for something than have an 80% empty plane flying and get nothing is one way to put it; there really is no easy way to price flights - most airlines have teams of math and OR PhDs working on pricing). The multi-flight fares usually have a larger margin tacked on.
The only way to solve this problem is really to nuke the existing fare system and start over. As long as "flagship" airlines keep getting bailed out by the government, they will be able to undercut the competition (and themselves) into bankruptcy with the irrational fare arrangements.
The user experience of the Cleartrip site is startingly similar to that your link leads to.
I want to know which is the easiest and cheapest way to get from point X to point Y (with a few options/alternatives I can choose from) at a rough time range. And that is any possible combination of train, car or airplane or whatever.
The nearby-feature is already nice (and I haven't even really seen that elsewhere) but I still found myself too limited. For example I don't care if I have to travel maybe 500km or even 1000km by train to another airport if that can save me 500€ or so.
I also think the value for Google here isn't revenues so much as controlling another piece of the internet transactional infrastructure.
This must still be a huge win for the founders. They probably still had most of the equity since they only took one round of financing, and at a point when the company was already mature.
Dan Wienreb did a very interesting talk, "Lisp for High-Performance Transaction Processing" that covered it and a bit on the future of Lisp (for a outline and link to the talk see: http://xach.livejournal.com/225634.html).
RES is a three tier system with Oracle RAC as the backend (pretty much the only choice), stateless Common Lisp middleware and Java with the usual web libraries for the front end. 300 milisecond? general max transaction time, which they weren't finding to be a big issue even with GC.
The problem: someone has to go first. While it's arbitrarily sized/scoped to accommodate American Airlines, Air Canada was going to be the lead customer. In August 2009 they suspended their participation in the project, I strongly suspect due to the general recession/depression in the industry. Switching would be very expensive in all sorts of ways and raw survival almost certainly is taking priority. (ITA has continued developing the system.)
This part/project of ITA is very likely to be a victim of bad timing; I sure can't see Google credibly continuing it, it's all wrong for their service culture, although perhaps it'll get spun off.
EDIT: Mind you, I've only heard of the aversion to lisp, so have no data to back my claim up. That said, it has been mentioned several times on HN: http://news.ycombinator.com/item?id=1282583 http://news.ycombinator.com/item?id=363023
That's completely different to Google buying an existing business for $700 million whose core tech is written in Lisp.
However, it's reasonable for them to be averse to writing totally new projects in Lisp, in-house, because when you're at a huge company as a general rule you don't want dozens of different languages in use: it's inefficient and you lose out on a lot of opportunities to leverage skills across teams and across service layers if you do that. Lisp, from what I heard, didn't make the cut, despite it's strengths. They still allow a few though, and I believe they are Python, JavaScript, Java and C/C++.
... not any more!
But the oracle RAC (just guessing here) may act as a cache between the 300 ms part and the actual tables, and to be a fat reliable pipe.
But they do take on some interesting problems, such as how do you keep this up across system upgrades, hardware failures, application version migration, among others.
That might make migrating from Oracle to BigTable a bit easier.
Btw, many of the PSS vendors already have or are currently in the process of renewing their "expensive mainframes with ugly old code bases".
Its routing language and "graphical" view of flight times (which have each been there for what, 7 or 8 years?) are still light years ahead of anything else on the web in terms of travel search.
Let's just hope Google doesn't mess it up somehow.
There's no business reason to, but if they managed to integrate data from SeatCounter into that view, it would rock my world.
ITA Software does not market a consumer oriented flight search site.
That's probably not completely true. Matrix, although not a booking site, is one of the better flight search sites, allows consumers to find the cheapest time to leave and come back in a given month for a particular number of days of travel.
I hope Google leave it as it is (or improve it).
That being said, I have always gotten the impression that they maintain it as a sort of testbed -- a huge number of Flyertalkers use matrix for very esoteric queries, and I'd imagine the feedback that ITA gets from those users is invaluable.
Google is already starting to apply this approach to accommodation, another high value segment. Searches for hotels in most cities now return as their first result a Google map with listings of actual hotels - over time I expect these to become more expansive and traffic to independent hotel aggregators to decline. With the current strategy Google is moving to an approach where they scrape review and hotel data from all the aggregators and then serves this in its own listings - eliminating the need for its users to perform a secondary search with a independent aggregator.
Yes, I am disappointed by this move, not because I worry about the travel industry or the potential monopoly power google is holding in its hand. I'm disappointed because Google has yet to re-define the business rules for growth. Allow me to explain.
I understand that as a public company, it's Google's responsibility to create values for its shareholders. But that doesn't mean it should keep expanding into anywhere "consumer-facing problem that can be solved with huge amounts of (needs for) computation". Just like Microsoft keeps on expanding into any desktop software market that has a rapid growth.
There are so many important questions that are yet to be solved. The search is still a pretty dumb statistics engine. Google still can't distinguish between "who wrote python" and "when was python written?". Wikipedia's Python entry shows up in both cases and other results are irrelevant. Why wouldn't the company who invented "20% time rule" continues to make the web better?
Maybe that's the nature of public company and maybe this is just another case where human gets sucked into the rules of wall streets.
"to organize the world's information and make it universally accessible and useful."
(End of first paragraph at http://www.google.com/corporate/)
There are at least two dimensions to this: "organize and make accessible and useful" and "the world's information". You're complaining about inadequacies in the former, this is a move to expand on the latter.
Hmmm, for that matter, they're buying some brainpower that could help them with your specific complaint but also the "organize and make accessible and useful" part of their mission in general.
Perhaps. They started with BSD (http://en.wikipedia.org/wiki/USL_v._BSDi), suing the initial commercial BSD vendor and the university proper. They utterly lost when it was shown they hadn't followed the BSD license with BSD code they'd incorpated in their own versions, that had been licensed to others and that were used for their own operations (they were thrown a face saving bone in the settlement that required a relative handful of BSD files to be re-written, but were otherwise skunked).
I'm not sure why they stopped doing this, although it's telling that Novell bought UNIX(TM) in the middle of the year in which AT&T settled with Berkeley.
Google is transitioning from search to content. The travel industry is now shitting themselves. Hotels will be next. Everyone else better watch out.
OK, you could say that a QPX suggested route is content, but it's algorithmically built from on the fly constantly updated airline content. Very much like classical Google web search.
Do you think that Expedia and the rest are thrilled to see this move by Google. The OTA have stopped the disintermediation at consolidation and economy of scale, now they will have to go farther or someone else will.
http://google-latlong.blogspot.com/2010/03/experiment-to-sho...
ITA's start in this reminds me of the FU MIT delivered to Xerox when MIT bought their first big mainframe Xerox laser printer in the early '80s. Xerox wanted $100K to reveal the format, so instead a group just took one or more output tapes (a normal data flow was the mainframe wrote to tape and the printer read them) and decoded it.
RES uses Clozure CL (formerly OpenMCL, an evolution of Macintosh Common Lisp) for the stateless middleware with Oracle RAC for the backend and Java with the usual libraries for the web front end.
I think that it's less about learning, because Python is way more similar to languages like Java or C++. Using Python, they have to learn less. Than they discover some cool new features in Python and are bought. Then they don't see any need to bother further with lisp.
The interesting question here is what's getting people to try Python but not a Lisp. Perhaps Clojure will help answer that question.
See http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-br...
The critical infrastructure pieces (where GC is an issue) are already in C++. The front-end is already in Java. A full scale re-write will be a dumb thing to do. It's not going to be difficult to have Common Lisp FFI to hook the ITA middleware into Google's infrastructure instead of ITA's.
The software that ITA developers that makes them different from the rest (I am guessing lots of these are heuristic solutions to NP complete problems) is exactly the sweet spot for Common Lisp, where it provides a significant advantage over other languages even for large groups of programmers. While I will enjoy writing a web app in Common Lisp much more so than writing a web app in Java (less boiler plate, interesting language compensates for a mundane task) I doubt there are going to be great advantages to doing the more routine development in CL for a large corporation.
Classic paper by Carl de Marcken, co-founder and former CTO of ITA Software, elaborating the unique domain problems of air travel planning:
"Computational Complexity of Air Travel Planning"
http://www.demarcken.org/carl/papers/ITA-software-travel-com...
When did this happen? From what I heard last, C++ was just the data importer that dumped everything into mmapped buffers which SBCL worked on.
I didn't mean critical computation, query and logic components. Perhaps "infrastructure" was too vague.
In the "Operations" part of the company it appears you're right, "most work is in Python": http://www.itasoftware.com/careers/jlisting.html?uid=718167
In "Engineering", Lisp tops the "particularly valuable" list at the bottom of "Knowledge and Skills" for http://www.itasoftware.com/careers/jlisting.html?uid=730130
Farther down the same page they ask you to solve puzzles. "Puzzles submitted in C++, Lisp, Python, Java or Perl will be reviewed most promptly, because those are the languages we use every day"
For REs, Clozure CL was being used in part because faster compile times were more important and run time preformance was more than adequate; stateless business middleware is a very different beast than compute intensive route construction, where we can be sure the cutoff in optimizing choices is based on response time.
There were other reasons for Clozure CL, including the fact that it has a company behind it, one who's principles Dan and others have had long relationships with and ITA was buying one (man?)day a week of their services to support RES. SBCL is (has always been?) a volunteer effort.
http://maps.google.com/help/maps/travel/ (Watch the video. It's priceless)
Number 1 and 2 are Google Directory entries.
So I guess they finally realized they need to take a $2 Trillion/year industry a little more seriously than they have been.
FEWER THAN HALF? Serious question: Who is buying the others, and where?
I wonder what this means for Kayak/Bing/Orbitz
It definitely takes Google one step closer to a position where they can make Kayak/Orbitz-like sites a little more irrelevant. Are they all the way there yet? Of course not. Also, Google has a track record of being pretty shitty in certain areas (like customer service, especially human contact, voices and bodies, etc.) and so those are areas where they can still differentiate. Plus, there's still no sign of Google wanting to get into taking the booking orders. Just the fare/trip search. Search of any kind is something that clearly their infrastructure and scale is going to have massive competitive advantages in delivering. Booking: not really. And many OTA's and metasearch sites make their profit on booking fees and kickbacks, not really on search itself, which for them is more of a cost center (though they do sometimes monetize those use cases too in various ways as well -- this is where they will hurt the most, in medium term).
Also, Google has said it plans to honor the existing ITA contracts. But who knows how long or how pervasive that will be in the future. I personally know of one startup that came very close to signing a contract to get service from ITA and we actually backed down ultimately, in part, because of the fear of lock-in to their service. Plus they were expensive. ITA is/was a bit like the Oracle of fare search products. Good shit, but really expensive shit. At least for a wee little startup.
ITA runs behind the scenes at Orbitz and many other OTA's. saying it could cause problems for major players in the market would be an understatement.
(I'm a former Orbitz and Cheaptickets engineer, as well as tech advisor to some travel startups)
However, ITA is not the only option out there, and given the concerns I bet everyone has with their contracts there's now room for another data provider to jump in and snatch up contracts during renegotiations.
A general rule of thumb I find valid is if there's some consumer-facing problem that can be solved with huge amounts of computation, Google will get into it. They certainly have the infrastructure for it.
(I'm a former TripAdvisor Flights engineer, which is owned by Expedia)
My question is how this acquisition really helps travelers. I can see how it might help Google possibly become an online travel agent, but how does that help me when the carriers set the prices anyway? Are we hoping for Google discounts or better visibility of seat sales? Or is there something that Google can do to really change things beyond how ITA already has?
MSN :: AA ORD AA X AZ
BLQ :: AZ X AA ORD AA
...which means I want an American Airlines flight from Madison, WI, connecting through O'Hare, and continuing on to Bologna, Italy, with one and only one intermediate connection, with the over-the-pond leg on AA, and the final leg on Alitalia.
It can then lay out the options for me graphically, so I can instantly see which flights have nasty layovers or bad schedules without having to parse a single text digit.
It's not just about price.
(only 90% sure, i can't find my notes to confirm right now. i had to know this a few months ago for work reasons)
"ITA's QPX software tool for organizing flight information is used by leading airlines and travel distributors worldwide including Alaska Airlines, American Airlines, Bing, Continental Airlines, Hotwire, Kayak, Orbitz, Southwest Airlines, TripAdvisor, United Airlines, US Airways, Virgin Atlantic Airways and others."
so like i said... gigantic move in the travel industry :)
Even if Google made no significant changes to the behavior of ITA's existing code, if they instead just tweaked it to run on say millions of cores, highly distributed and parallelized in Google data centers, with gajillions of cached results -- endusers would probably be able to see better, fresher, more "long tail-y & last mile-y" and faster results. I'm just making an educated guess here, I could be wrong if there's some fundamental bottleneck in the ITA architecture I haven't considered (and someone chime in if you know that to be the case) but I don't think this will be an issue.
There's a C++ backend that collects and massages the various data streams and then loads the data into an in memory database. Much of that is quite parallelizable, e.g there are various data sources, the massaging probably needs only so much global state, etc.
The computational front end is an SBCL process that does its magic based on a copy of the in memory database. One process, one query at a time, that scales out very nicely.
I suspect the biggest tricks besides groking the data (hard since it's so messy and special cased) and their secret sauce that does the routing is maintaining the required availability. There I suspect ITA's service/operations culture has things it can teach the corresponding Google culture.
to differentiate from old fashioned bodies-in-seats-in-office-somewhere travel agencies that you had to call, fax or stroll into in person. Agents there typically sat in front of either a terminal connected to a GDS like Galileo, or, more recently, a Windows box with native apps doing approximately the same thing. Agents would perform queries for you on their computers and they sometimes had to type in a sort of mini-language full of various commands and brief codes.
Not bitter at all, hmmmm
And Google's ~$25B in the bank is much better spent buying and integrating those companies than investing in mortgage securities and whatnot.
It is hard to tell what purpose a company is acquired for (talent, technology, marketshare...) and thus difficult to tell whether it was fruitful.
NOTE TO SELF: start a web-based service that successfully predicts the future. Sell out to Google.