Блогер Скотт Хелм (Scott Helm) поделился с читателями своего твиттера любопытным скриншотом, содержащим экран настроек геолокации мобильного приложения NissanConnect (ссылка на оригинальный твит, который в ленте Geektimes занимает слишком много места). На первый взгляд приложение выглядит вполне обыденно, если бы не любопытная строка «The spirit of stack overflow is coders helping coders» в самом низу.

Несмотря на то, что фраза выглядит вполне доброжелательно, всё же трудно предположить, что разработчик вставил её специально. Беглый поиск по StackOverflow подтверждает эту мысль: кто-то с ником spenf10 в августе прошлого года задал вопрос, имеющий прямое отношение к теме геолокации на iOS. Ответ, который набрал 106 голосов, содержит пример XML-кода, для заполнения файла info.plist:

<key>NSLocationWhenInUseUsageDescription</key>
<string>The spirit of stack overflow is coders helping coders</string>

<key>NSLocationAlwaysUsageDescription</key>
<string>I have learned more on stack overflow than anything else</string>


Судя по всему, автор NissanConnect просто скопировал код в своё приложение, не отредактировав надлежащим образом строку с описанием параметра. Это, конечно, никак не повлияло на работоспособность приложения, которое и было официально представлено пользователям.

Комментарии (16)


  1. SERIAL
    07.05.2016 21:33
    +12

    Новость несомненно заслуживающая быть на GT. Может это специально оставленная пасхалочка.


    1. to_climb
      11.05.2016 14:40

      У SO любопытная лицензия на код из ответов. Возможно, теперь Nissan'у придётся поделиться исходниками своего приложения.


  1. itsplus
    08.05.2016 05:34
    +3

    Такие приложения часто на аутсорс отдают. Не раз встречал на upwork небольшие проекты для довольно крупных брендов. Правда, обычно это что-то для внутренней кухни а не для общего пользования.


  1. kafeman
    08.05.2016 11:51
    +2

    В ответе на StackOverflow кто-то дописал под этим примером:

    You'll probably want to customize and spell-check the strings of the dictionary entry that goes in the info.plist file before shipping the code.


  1. Iqorek
    08.05.2016 13:25
    +2

    Там не только разработчик, который может быть работал по 14 часов ;) Но как это проспал QA?


    1. vedenin1980
      08.05.2016 17:25

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

      Вообще, не вижу большой проблемы, то что зачастую разработчики даже крупных проектов копипастят код из SO не новость, а забыть убрать отладочную информацию вообще типичная ошибка. Ладно там не мат или что-то подобное оказалось.


      1. Iqorek
        08.05.2016 17:51
        +1

        В маленьких компаниях может быть, но в больших, как нисан, должен быть менеджер проекта и команда ux/ui которые определяют, что должно быть написано и как. QA берет данные из тех задания, а не из уст программиста.


        1. Rostikk
          09.05.2016 08:11

          мне кажется тут речь идет о стороннем ПО для Ниссан


    1. jaleel
      08.05.2016 23:38

      Да легко это пропустить, потому что эта надпись не в приложении, а в настройках iOS. И мало кто туда заходит.


      1. jaleel
        09.05.2016 00:00

        Хотя когда приложение спрашивает доступ тоже видно этот текст… Но я думаю никто особо не читает тоже.


  1. vics001
    08.05.2016 22:13
    +1

    А откуда опечатка взялась? spirit vs sprit.


  1. ivmulder
    09.05.2016 08:11

    «Во-вторых, зачастую QA спрашивает разработчика что должно быть напечатано в окне» — тогда вопрос: а зачем такие куа? Что он тестит тогда?


    1. yarik_is
      09.05.2016 11:54

      Ну вот так и тестит ;) Часто бывает, когда нет четких требований, а дедлайн близко, то все неясные моменты решаются по ходу дела, в лучшем случае, после обсуждения с коллегой-разработчиком или лидом. Тестировщик не всегда успевает за такими изменениями следить, вот ему потом и приходится спрашивать у автора кода «что там должно происходить?».

      Зато при таком подходе не будет споров, когда у разработчика и тестировщика разные точки зрения на то, как оно должно работать.


  1. Starfury
    09.05.2016 08:11
    -1

    Господи, вот людям нечем заняться :) ну скопировал и что же дальше?


    1. mwizard
      11.05.2016 15:24

      Да ничего. Просто следующим будет разработчик прошивки вашего рентген-аппарата.


      1. Starfury
        11.05.2016 16:46

        и что же дальше? поясни мысль