Gatewait — знай свой гейт раньше всех

Что делать, если надоело ждать объявления гейта в аэропорту? Правильный ответ – создать мобильное приложение Gatewait.

Я часто бываю в европейских аэропортах и заметил одну особенность – гейты обычно объявляют не раньше, чем за двадцать минут до посадки. Это немного раздражает, и из-за этого множество людей вынуждено часто проверять ближайшее табло в ожидании своего гейта. Выглядит это примерно так.

Знакомая картина alamy.com​
Знакомая картина alamy.com​

Мне, мобильному / фронтенд разработчику было тяжело смириться с такой ситуацией. Летая одними и теми же рейсами, я заметил, что гейты иногда или повторяются, или находятся рядом. Для начала я решил проверить эту гипотезу.

Время собирать данные

Я поднял бэкенд проекта на базе Google Cloud Platform с помощью одной виртуальной машины, одной базы данных Postresql и пары NodeJS скриптов. Каждый день ровно в полдень Google Cloud Scheduler запускает cloud функцию, которая включает виртуальную машину. Виртуальная машина запускает инстанс базы данных и запрашивает публичное API flightstats.com около 400 раз, по количеству крупнейших аэропортов мира. Ежедневно скрипт кладет в базу около 150 тысяч рейсов и обновляет статистику гейтов для каждого рейса. Каждый день база данных увеличивается на 250 мегабайт, в месяц прирост соответственно 7 гигабайт.

​количество аэропортов, рейсов и гейтов для каждого рейса снимок из Realm Studio
​количество аэропортов, рейсов и гейтов для каждого рейса снимок из Realm Studio

После успешного парсинга в 12 часов 45 минут пополудни база данных выключается, виртуальная машина останавливается и город засыпает. Такая тактика позволила снизить все расходы на инфраструктуру до ~ 20 фунтов в месяц.

По необходимости я включаю базу руками и с помощью локального NodeJS скрипта конвертирую информацию в CSV формат, который можно легко перевести в формат базы Realm – это одна из самых популярных и быстрых баз данных для мобильных приложений. Файл базы весит около 35 мегабайт, но зато приложение работает оффлайн.

А что у нас на фронте

​Из этого скетч файла скриншоты ушли прямиком в App Store
​Из этого скетч файла скриншоты ушли прямиком в App Store

Моя законопослушность и любовь к типографике сподвигли меня на покупку лицензии на шрифт Graphein Pro за 72 фунта – он максимально похож на шрифты, которые используются на навигационных знаках аэропортов, и намного дешевле похожего Adobe Myriad Pro. Черно-желтая цветовая гамма тоже неслучайна – ее использует немало европейских аэропортов.

Само по себе приложение написано на Swift и состоит всего из двух экранов. Пользователь вводит номер рейса, нажимает кнопку Find Gates, и если сегодня удача улыбается ему, он увидит список гейтов для этого рейса. Напротив номера гейта – процент вылетов из него. Кроме того, приложение пробует достучаться до flightstats.com и узнать гейт для сегодняшнего рейса. В случае успеха желтый фон меняется на зеленый и появляется надпись "Connected to SVO / LHR / LED / код аэропорта".

Что исторические данные дают пользователю? Примерно прикинуть откуда может вылетать рейс. Какие-то рейсы могут иметь десять разных гейтов, другие – два или три. Часто они расположены неподалеку. В условиях больших аэропортов это дает возможность пассажирам не толпиться в центральных проходах, а отойти подальше и спокойно где-то сесть без опасений, что гейт будет в другом конце аэропорта. Проверить гейт в приложении – дело трех секунд.

Что дальше

Приложение бесплатное и не имеет никакой рекламы, кроме моей собственной как разработчика. Вскоре я добавлю поиск по аэропорту и маршруту. Главная цель проекта – сделать опыт пребывания в аэропорту более комфортным. Ну и радовать глаз – я постарался сделать дизайн таким, чтобы кровавые слезы их вам не застилали.

Критика, комментарии и предложения о сотрудничестве горячо приветствуются на daniel@lindir.co.uk.

Ссылка:

44
30 комментариев

Я очень часто летаю по Европе одними и теми же рейсами (и по работе и по жизни поскольку семья живет в другой стране) и я думаю, что я не только за себя говорю если скажу, что я ненавижу, что в европейских аэропортах не объявляют гейты раньше, чем за 20-30-40 минут до вылета. (И на электронных посадочных талонах НЕТ номера гейта.) Поскольку все ждут объявления все находятся в центральном зале аэропорта, где нет места нигде сесть, в кафешках и ресторанах ужасно длинные очереди (если вообще есть места ...), телефон и ноутбук нельзя зарядить, потому что нет свободных мест и т.д. ... а когда уже на экранах пишут «5 минут до объявления гейта» толпа людей под экранами и как только гейт наконец-то объявлен начинается конкурс «кто быстрее может прибежать к гейту» - все бегут как сумасшедшие к гейту через все и всех. 
Если это приложение хотя бы примерно может сказать мне заранее какой мой гейт будет, и я могу где то рядом посидеть, где меньше людей и очень часто почти пустые кафешки, то уже есть смысл использовать его)) И кстати, я скачала его и проверила свои обычные рейсы и я могу сказать, что информация очень полезная!! Так что на следующей поездке точно буду смотреть гейт в Gatewait заранее.

2
Ответить

Чего вы так мучаетесь? Я всегда сижу в кафе и удивляюсь на тех кто ждет обьявления гейта

2
Ответить

Блин, звучит очень круто и на практике,наверное, также, но выпустите под android пожалуйста

2
Ответить

В чем вообще ценность данного приложения? В посадочном почти всега гейт прописан (это как минимум за 40 минут, а не за 20) и он всегда будет корректным. Кроме того, ваше приложение не дает точной информации, можно вообще в другом терминале оказаться и узнать об этом только при окончании посадки. Так что - зачем?

1
Ответить

Комментарий недоступен

1
Ответить

Комментарий недоступен

1
Ответить

А почему не скачать приложение самих flightstats.com? Данные же все равно оттуда.

Ответить