Esc (esc) wrote,
Esc
esc

  • Music:

Программусечки

Программистские маразмики, обнаруженные в коде одного индуса чисто просто так, за сегодня.

1. В таблице есть колонка [Domain User Name]. Во вью по этой таблице она переименована в [DomainUserName]. Из вью читает хранимая процедура, в которой колонка переименована обратно в [Domain User Name]. Путаем следы?

2. В той же хранимой процедуре прекрасный условный код в селекте:
case When [Local_Extension] = 'N/A' then 'N/A' else [Local_Extension] end

3. В той же хранимой процедуре к селекту юнионом добавляется ещё пустая строчка. При выводе на экран эта пустая строчка прячется. Варум? Подозреваю, что так индусы избегают обработки пустой выборки.

4. При выборе в интерфейсе фильтра "Site Owners", та же процедура возвращает людей из захардкоденного списка. Что само по себе конечно ужасно, но давно уже привычное зло. Но тут пустую строчку добавить забыли, в результате чего первый человек из возвращённого списка пропадает в соответствии с маразмом номер 3. За год никто его не хватился. Что как бы подсказывает полную ненужность данного фильтра.

5. В интерфейсе от той же процедуры код на сишарпе.
 private bool _self;
 ...
 public bool Self
 {
   get
   {
     return userDomainName.Equals(siteUser);
   }
   set
   {
      _self = value;
   }
 }
Разумеется, _self больше никогда и нигде не всплывает и присвоения Self тоже не выполняется.

И т.д.

И вся вся эта мутотень с массой назойливого хардкода написана взамен родной шарепоинтовской системы пользовательских профилей, имеющей out of the box в 10 раз лучший интерфейс и в 20 раз лучшую функциональность. Варум? А дарум. Надо же было программисту над чем-то работать.

Повсюду грязь и дохлые крысы. Сижу потихоньку вычищаю, из любви к прекрасному и в качестве отдыха от инсталляции и трансфера Шарепоинта. 

ЗЫ О, вспомнил ещё прекрасное. Где-то что-то глючит и в одну из таблиц в Оракле сыплются дуплицированные записи. Индусам (другим уже, аутсорсерам из Индии) было дано задание избавиться от дуплицированных записей. Индусы добавили уникальный автонумеруемый ключ и отрапортовали, что задача решена. Но 3 миллиона записей вместо положенных 40 000 транзакций за декабрь продолжали затыкать каналы. Потому что репликация по-индийски состоит из: 1) снести старое полностью; 2) скопировать все по новой; 3) профит тормоз. После чего местными индусами было найдено соломоново решение: читать записи без автогенерируемой колонки и к остальному применять DISTINCT. И их стало положенные 40 000. Задача решена.

ЗЗЫ Что обиднее всего, во время интервью все требуют каких-то глубоких и широких знаний. А потом откроешь код, а там испещрено следами бандерлогов.
Tags: программизмы
Subscribe

  • д-Esc-отека 97

    Нежданно-негаданно, даже для меня самого, новый выпуск. (Старые, кстати, не работают почти все.) Ничего особенного, просто лёгкий драмдубасик. Лёгкий…

  • д-Esc-отека 96

    То, ради чего стоило рыться в индийском психофанке. М-м-м-м, какой вкусный грязный звук, ням-ням.

  • Голос вдогонку к лицу

    Такому голосу положено красивое лицо, ведь правда?

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 12 comments

  • д-Esc-отека 97

    Нежданно-негаданно, даже для меня самого, новый выпуск. (Старые, кстати, не работают почти все.) Ничего особенного, просто лёгкий драмдубасик. Лёгкий…

  • д-Esc-отека 96

    То, ради чего стоило рыться в индийском психофанке. М-м-м-м, какой вкусный грязный звук, ням-ням.

  • Голос вдогонку к лицу

    Такому голосу положено красивое лицо, ведь правда?