Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Flight Penguin – Like Hipmunk, but a browser extension (flightpenguin.com)
109 points by goldfish on April 5, 2022 | hide | past | favorite | 75 comments
Hi HN! I'm Adam Goldstein, co-founder and CEO of Hipmunk (YC S10). Today we're launching Flight Penguin (https://www.flightpenguin.com) in public beta as a browser extension for Chrome and Chromium browsers.

Hipmunk was a travel metasearch site that sorted flights by "agony" and showed them in a Gantt chart view. I've missed using Hipmunk ever since SAP shut it down. So I decided to seed-fund a successor along with my Hipmunk co-founder (and Reddit CEO) Steve Huffman. More recently I brought on Max Morlocke (hn: maxmorlocke) as cofounder.

With Flight Penguin, you get a simple, time-based way to search for flights, and it pulls in results from multiple sites. By default Flight Penguin sorts by "pain," so you see the least painful options before the multiple-layover monstrosities Kayak loves to show first.

As some of you know, some airlines are now demanding anti-consumer provisions when they do deals with travel sites, such as insisting that sites hide cheaper flights, hide multi-airline itineraries, and hide certain booking options. We decided not to agree to any of those terms, because we want to make the best experience. Being a browser extension gives us the ability to show the lowest fares without going through airline servers or airline contracts, since we can search and compile all the data from your browser.

You can install it now at https://www.flightpenguin.com. We're also launching a crowdfunding round to keep our incentives aligned with our users: https://wefunder.com/flightpenguin. Happy to answer any questions and would love your thoughts!




Why does the extension need a Google login? I deleted the login div from the HTML, and the extension works fine without the login.


There are a few reasons:

1.) When a user reports an issue to us, it is much easier to find any issues in our error reporting stack. if we have their name and email address attached to the issue as opposed to asking them for all the search terms, time of issue, etc. and then hunting through to see if we've already found (and hopefully fixed) the issue. This practice started when we were a paid subscription, and I've found it useful to continue, especially with a very small team supporting a set of highly asynchronous interactions with scripts running across multiple websites and pushing data back to a common source.

2.) There are contractual requirements for some of the data that we've purchased to be protected from copies of those databases being made. Placing it behind an auth wall and leveraging account based rate limiting for API endpoints met our partners' needs.


Wouldn't session-based rate limiting realistically accomplish the same goal for (2) ?


Requiring login and claiming not to sell PII look contradictory though, and will prevent some people (me for instance) from using your service.


Why does it look contradictory? Are you saying you just don't trust anyone who collects PII not to sell it, even if they've said they won't?


Hacks

Buyouts

etc


They did not said that they won't.


The extension is pretty good, they're free to sell my PII in exchange for its use.


They intend to make money selling your data.

> Monetize without ads: As a browser extension, we can focus on monetizing free users by selling information about user's search intent.

source: https://wefunder.com/flightpenguin https://ucarecdn.com/965fe8bc-2ccd-4bd9-9984-465144810f57/-/...


Yes please remove that. If you are not selling PII, as you said you were not, then you don't need a login.


Neat! Way back in the day (circa 1998!) we (ITA) released a Java applet that offered Gantt chart -- we called it "colored bars" -- airfare search. This applet downloaded a compact representation (graph) of all the possible solutions into its working memory and applied all the sorting and filtering client-side in real time. So it was really fast and powerful.

Of course, Java applets as an ecosystem died so we ended up with the server-side matrix design. It's nice to see the same (client-side) concept resurrected again 20+ years later.


Looks nice... so I tried it.

Starting airport: There are 4 around London, can I select any?

Destination airport: There are 2 around Lisbon, can I select any?

Already I have 8 permutations of things I don't want to think about.

Got a search result but it didn't render correctly... I use noscript but this is a privileged tab and there's nothing to allow and I don't see what else it might need.

Tried sorting to see if unlocks the blurred results... it doesn't work, I try to go back, but there is no back button as this is an embedded SPA within an extension talking to a web based API somewhere. I reload to see if I can get it working, it's blown away all of the history and state.

Is there a reason this has to be a Chrome extension rather than a web page?

PS: Loved Hipmunk, so I do want this to work.

Update: It was NoScript. FlightPenguin opens other browser windows behind the browser window you're in... and those all need to work, meaning you need to enumerate them and approve all applicable JS for those sites to work. Once you've done that then FlightPenguin works, and to answer my own question it's probably to get around the aggressive scrape protection that flight sites put in place.


Re: airports. You can select any airport or the city - which should grab them all (e.g. City of London (LON), London Heathrow (LHR), etc.).

Re: Noscript. I haven't tested with noscript, but have with most major adblockers. We do use the chrome extension API to open windows in the background to collect flight data and eventually to redirect you to for booking. I'll get it installed and see if I can replicate it. Might take a little bit, but I'll get there :)

Re: extension vs webpage. One of the biggest problems Hipmunk faced was that as the airline industry consolidated, they required OTA's and metasearch sites to sign highly restrictive agreements that prevented the site from showing all flights. We find this highly objectionable. By operating as an extension, we do not need to sign agreements to provide this data.


I really prefer the Hipmunk interface to anything else, but being able to select multiple airports is a killer feature of Google Flights for me, and Flight Penguin won't be able to get my business without it. Being able to select a metro area is not a viable substitute: I live in the middle of nowhere, but about equidistant to two airports - one to the East and one to the West. But they're not in the same metro area (or the same state, or the same time zone).


I tested locally with noscript installed. After giving the extension permissions to run scripts, everything worked for me. If you've blocked FlightPenguin, chrome extensions, or any of the sites we collect data from, you're going to have issues. Chrome extensions unsurprisingly rely heavily on JavaScript.


> You can select any airport or the city - which should grab them all

Not everyone lives equidistant to all airports. Heathrow and Gatwick are close to me; Luton, Stansted and City are not. I'd want to see options for both of the former. Loved HipMunk, so glad you are back (why was it killed off to begin with?), but don't understand why it's a browser extension.

Edit: seems you can only select one airport in any case, not a city. (But you knew that, right?)


Okay, I see the issue, it describes London as "City of London", which is not the same thing. That's a bug. (The City of London is a square mile near the centre of London [0].)

It's also frustrating not being able to see the departure/arrival airports at a glance so that I can ignore the airports that are not close to me (given that you can't be selective about which airports to include). It shows connecting airports, so why not departure and arrival?

For Paris to Tenerife, for which there's (surprisingly) no direct flight, it's missing Easyjet via London. For options with one connection, some list the two airlines by name, others say "multiple airlines", when there are only two, so you have to invoke the tooltip to discover them.

I don't appear to be able to select a currency to display prices in.

It seems there's still some work to do on UI/UX, so the announcement here might have been a bit premature! Hope you have better luck with this than HipMunk, but for now it's not especially useful.

[0] https://en.wikipedia.org/wiki/City_of_London


Our latest release should have more clear language on airports and 'All London Area Airports' as opposed to 'City of London Airports'. The point about multiple airlines should also be addressed.

Your point about at a glance determination of the departure/arrival airport is really good. I expect to have a UX enhancement for that next week. Currency and manually selecting multiple airports are still a fair ways off.


I greatly miss Hipmunk, and would really like a successor. But I'm confused as to why this needs to be a browser extension instead of just a website. Even if you provide extra features as an extension, show comparisons if I'm flight sites, etc, I'd still like to just have a website I can go to to search flights, not requiring a browser extension to use.


The short answer is because certain airlines behave in ways I can best describe as 'scummy'. Some airlines are now demanding anti-consumer provisions when they do deals with travel sites, such as insisting that sites hide cheaper flights, hide multi-airline itineraries, and hide certain booking options. We think this compromises the user experience heavily and erodes trust - you don't know if you're getting the best possible flight. Being a browser extension gives us the ability to show the lowest fares without going through airline servers or airline contracts, since we can search and compile all the data from your browser.


If the travel sites hide the cheapest flights to users, then where does your extension 'scrape' its data from.

Is this more like a crowd-sourced data gathering, where every extension user gathers data for you?


They don't hide the cheapest flights to direct users. They hide them from aggregators (like Kayak).


From the description "Being a browser extension gives us the ability to show the lowest fares without going through airline servers or airline contracts, since we can search and compile all the data from your browser."


I love the ITA Matrix style time bars; I wish every flight tool had them.

Since you're using a browser extension and scraping OTA websites, one of the things on my wish list is the ability to scrape Amex Travel -- they offer discounted rates if you have a Platinum card.


I know its nitpicky as hell, but having insane delta status like I do, I really need a skyteam filter, this is pointless otherwise, ill seriously give you the delta diamond group worth of market use if you can add that.


Adding alliances is on our near term roadmap. Should be live before the end of the month. Feel free to drop me an email (max AT flightpenguin DOT com) and I'll let you know when it's out.


Great idea! This is exactly the sort of thing many people hoped Web "user agents" would do. Also, I was just thinking this morning about how much I missed Hipmunk. Good luck!


Firefox add-on please


A big part of why we're crowdfunding is to be able to grow the team and support more platforms (e.g. Desktop Firefox & Safari, mobile devices)


Does the extension use any Chrome specific WebExtension API? Otherwise it might be fairly trivial.

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...


Candidly, the Firefox extension framework is significantly nicer. Blam'ing chrome.runtime.lastError.

There's a lot of small amounts of work to get everything working right using the webext module. We're slowly chipping away, we've eliminated all our dependencies on chrome specific modules in the last month while working on other functionality, but we're a really small team right now with competing priorities, so this will get more priority as we get more people on the team.


I might be the minority, but I have no idea what Hipmunk did and I only know Kayak because they bought Swoodoo (they did, right? And have they added features in the 4 years since I last used them?) - so maybe your intro text on the site should be clearer what it does and not sell itself as the "x but better". Yes, it says it's flight search, but not front and center.


Oh I miss hipmunks flight picker. I loved the way you can visualize the times.


Flight Penguin's flight selection and timebars should feel very, very familiar. You can check out just how much we are inspired by the UX and values of Hipmunk here: https://www.youtube.com/watch?v=RzOAtn2sNCo


I love this, I really miss Hipmunk and I'm glad you're making this again. It being an extension is great, I don't care how it finds the data as long as it finds it, and if an extension means I get better flights, I'm all for it. Good luck!


Not a browser extension, but a Chrome extension. There are currently two Show HNs on the frontpage that have a title to make it seem generic (rust terminal, browser extension), one is mac only, one is chrome only.


Works in all Chromium browsers actually. Support for Firefox and Safari is on the way, but does require some more work.


My gut reaction was that as a browser extension, you would have the ability to add airlines that refuse to participate in the current travel sites, e.g., Southwest? But I don't see them in the results...


Your gut reaction is not wrong. That being said, I think it's wise to pick the right time to leverage this capability. Our resources are extremely limited at the moment in comparison to one of the most aggressively litigious entities in our space.


Southwest fares integrated with other airlines is pretty much the reason why I'd install something like this. Also, getting sued might be good PR, you could probably spin that into some great news coverage. Streisand effect.


That makes total sense, and glad to hear that it could be on the table when the time is right!


Oh interesting, I didn't realize some airlines opt out from current travel sites.

Can you explain the rational behind that behavior?


I really like the time bar presentation that Hipmunk, Flight Penguin, and ITA Matrix use. Why do you think other flight search engines haven't adopted this UI?


I'm confused as to how to actually book a flight through this. I selected NYC->SFO and found some flights I'm interested in. When I click through, I get redirected to another site e.g. trip.com. I try searching for the flight in question on the actual airline's page and nothing comes up for it.

I'm guessing I'm misunderstanding how flights are booked on planes. Does trip.com act as a wholesaler or something of that sort?


We don't handle the booking, we redirect you to the travel site that we found the best price on. Many online travel search agencies and metasearch sites can put together itineraries the airlines don't offer directly.


just out of curiosity, why don't they offer these directly?


As a simple example, United probably isn't going to offer a flight where one leg is on United and another is on American. Yet, it might be substantially cheaper or less painful to take that flight. Certain codeshares may be more profitable for them to hawk, to the point where they will only show certain legs when the more profitable flight is booked. They may also choose not to show flights that are already profitable based on bookings (e.g. takes 75 economy seats to make flight with legs A->B and B->C profitable) when a similar flight (A->D, D->C) is underbooked and could use some more folks aboard. There are probably a thousand other reasons...


The real "agony" I find when flying is the faff of getting to or from the airport at weird times of day. From the airport onwards it's usually a pretty relaxed affair whatever the time of flight. Wish I had one button/dial to balance price against that faff!

Maybe it's just a London/big city thing?


I don't think this is a big city thing. I live in a medium sized city in the states and I hate going to the airport. 20-30m commute there, parking, walk, wait in line, go through the scanner, inevitable pat downs, cinch back up the belt, etc. Not what I look forward to. On our long term feature list is adding commute time and time to get through the airport to the timeline view as an optional setting, as well as potentially factoring that into our pain algorithm. This is really handy when you're flying to/from a big city like London or NYC, where airport choice my matter at a particular day/time. A similar long term add is factoring in having to go through customs on a layover. This is another awful part of the flight experience we can track and influence decision making through.


Looks like something I'd definitely use. But first, how do I ensure that my personal, browsing, and financial data is not shared with third parties and not collected for anything other than core functionality?

Also, what is the purpose of the subscription?

edit for typo


There shouldn't be any reference to a subscription. Can you let me know where you saw one? We used to have this setup as a paid extension, but pivoted away as that business model didn't work as well as we'd have liked.

Re: privacy and data. You can certainly review the settings we request and our terms of service - we ask to run the extension on a number of travel sites we interact with. We only collect your search intent data, progress around searching, and other similar lifecycle events as your search to aid us in product development. That being said, our long term monetization strategy is to sell search intent data - not your personal or financial data, and definitely not showing ads.


Thanks. I saw it on the subdomain and page header bar on the privacy policy page.


I think I've gotten them all. Appreciate you bringing this to my attention!


There's another one when you go to uninstall the application on Chrome - it asks "were you able to subscribe?"


From https://subscribe.flightpenguin.com/privacy

>Signing up and Purchasing a Subscription. When you purchase a subscription to our Services, your credit card information, billing information, and any other financial information necessary to complete your purchase (“Payment Information”) is processed by our third-party payment processor, and we do not collect, store, or process your Payment Information. After you purchase a subscription to our Services, we will receive your email address from Stripe as confirmation of your subscription purchase. For more information, please see the “Payment Processing” section below.

>we automatically receive information about your interactions with them, such as the contents of your searches, the length of time you spend on a page, objects such as hyperlinks you click on, the airlines you prefer, and the dates and times of your visits.

>We and our third-party partners may collect information using cookies, pixel tags, or similar technologies. Our third-party partners, such as analytics and advertising partners, may use these technologies to collect information about your online activities over time and across different services.

>We may receive personal information about you from third parties such as the websites we send you to book your travel and combine it with other personal information we have about you.

>Vendors and Service Providers. We may share any personal information we receive with vendors and service providers retained in connection with the provision of our Services.

>We do not rent, sell, or share personal information about you with nonaffiliated companies for their direct marketing purposes unless we have your permission. *emphasis mine

>We may use analytics services such as Google Analytics and Sentry to collect and process certain analytics data. These services may also collect information about your use of other websites, apps, and online resources.

>We may transfer your personal information to service providers, advisors, potential transactional partners, or other third parties in connection with the consideration, negotiation, or completion of a corporate transaction in which we are acquired by or merged with another company or we sell, liquidate, or transfer all or a portion of our assets.

>We may also disclose your personal information with your permission.

>There is no accepted standard on how to respond to Do Not Track signals, and we do not respond to such signals.

While I recognize that most of this is standard practice among the data thieves, I thought it pertinent to call out your simplistic glossing over of your data thieving intent.

Hipmonk was a valuable service and one that I'd gladly pay for, but my data is worth way more than that.

BTW - You and I both know that if I specify "Do Not Track" then I don't want you to track anything about me.


The Chrome extension asks to read the browser history. Why does it need that permission?


It doesn't, this is a side effect of requesting the chrome.tabs permission which we use to manage which tab is currently being highlighted. Chrome includes this note because the chrome.tabs permission set is very broad and includes an onUpdated hook that could allow the extension to capture history as you are browsing. Unfortunately, Chrome doesn't offer more narrow scoped permissions (e.g. tabs.query and not just generically tabs). This has been a known 'problem' for years unfortunately:

https://stackoverflow.com/questions/64063754/chrome-extensio...


That's fair, thank you for this reply.


Hey Adam, congrats to you and the team on the launch! I think it’s a very cool (and legally defensible ;-) ) approach. How involved are you and Steve planning on being in the day to day of the product and the company in general?


So is the extension hitting the Google Matrix API (excuse naming errors if I make them), or is it scraping results from sites such as Kayak asynchronously? Or is it something else entirely?


I'm all about this! I used to be a Hipmunk power user and still can't find that level of visibility or service anywhere else. This is going to be AWESOME!


Cool.

Various issues:

* Airport code matches should always rank higher than substring searches. I found a number of cases where it was 3rd or 4th.

* I'm onto your crypto mining operation ;) - the searches are pretty CPU intensive. Do you do any kind of threadpool sizing based on number of cores / existing load average?

* It'd be nice to display some kind of status in the main screen beyond just adding flights as they come in. "X of Y searches complete" etc

* Speaking of the CPU load, it'd be cool to stop it as soon as "Update Search" is hit, since the prior searches are now obsolete.

* Finally, if you can add a truly useful "I don't really care about the dates, just somewhere around here" mode, that'd be awesome. _You picked Sunday but that adds a minimum of 5 hours; you really should pick Wednesday. Also it should be a week before._


Thanks for the feedback.

Re: codes: yup, that's a bug and will be fixed (or at least the obvious one will be...)

Re: performance - this is on our radar, and we'll keep chipping away at making things a little better as we go. We do have some limits based on system characteristics, but the primitives available to chrome extensions for system information are limited (praise WECG - there's a lot of bad that can be done with too much info).

Re: ballpark dates - This is on our radar, but is both a thorny interaction and below the priority of a few other things users commonly request. No firm commitments on dates as such... but yes, it's a useful tool when you know you want a "May" vacation, and you want a reasonably priced flight that is comfortable.


Is there a roadmap? It would be nice to check multiple dates or have flexible dates. Good luck with your interesting project!


Thanks. Our roadmap isn't currently public, but this is on it. That being said, this is a medium-term priority, so definitely not something coming in the next couple weeks.


Congrats on the launch Adam! I noticed the company name at the bottom of the page, what does Hinhilla mean?


Sounds like "chinchilla" without the "c"


Awesome! I loved using Hipmunk when it was available. Definitely going to check this out.


I might be missing something, but why an extension instead of a website?


What do you feel is the biggest risk to your success?


I don't know which is the biggest, there are a lot of known unknowns still floating around. Will we run out of money before we monetize? Will we have to deal with constant lawsuits? Will other innovators in the space attempt to move in our direction? Are there enough travelers willing to install an extension? Will google be google and shut us down? The ever present bus factor. All of these are legit concerns that are going into our crowdfunding risks disclosures. All are things to manage.


Why did SAP shut down Hipmunk?


The link in your post has a typo: correct link https://flightpenguin.com/


D'oh, thank you


Fixed now. Thanks!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: