1. JavaScript / Говнокод #17262

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    $('.vse-zaeblo').click(function() {
            $.fancybox($(this));
            return false;
        });

    Получил задачу пофиксить сайт созданный другой компанией, заглянул в код и увидел самую первую функцию

    Запостил: Xases, 05 Декабря 2014

    Комментарии (78) RSS

    • .vse-zaeblo селектор на кнопке выход ? Или пропаганда суицида
      Ответить
      • $(".vse-zaeblo").click(function () {
            window.location = "<ссылка удалена по требованию роскомнадзора>";
        });
        Ответить
        • Что-то часто Вы ссылаетесь в последнее время на <ссылка удалена по требованию роскомнадзора>. По секрету скажу: есть и позабористей кое-что. http://u.to/PKVjBQ - эффект тот же, но пока не запретили.
          Ответить
      • мне кажется, я уже скоро сам начну такие классы делать. все дело в том, менеджер проекта, на котором я работаю, очень не хочет, чтобы я его погружал в какие-то технические детали, однако сам с завидной регулярностью вклинивается в процесс реализации поставленной задачи, и начинает мне говорить, что и как делать.
        -да это же ебанный велосипед?
        -ну, это уже как ты сделаешь...
        -что значит "как я сделаю"? есть инструмент, который работает с разными справочниками, по единому алгоритму. данные для справочника динамически подгружаются в зависимости от выбранного справочника, а выгрузка хардкодом для одного конкретного? у нас два месяца рефакторинга только недавно было, чтобы избавиться от хардкодов, и ты мне предлагаешь новый писать?
        -не нравится - пиши заявление.

        вот примерно как-то так, и меня тоже заебало. я раньше конечно старался как-то найти оптимальное решение, теперь просто комментарий типа такого пишу:
        //нет, это не говнокод и велосипед, это требование менеджера проекта.
        //да, клиент просил другое, но у него свое виденье.
        Ответить
        • > не нравится - пиши заявление
          А может так и поступить?
          Ответить
          • может у него на работе девки сисястые и туалет с подогревом
            зачем ты так сразу
            Ответить
            • >на работе девки сисястые
              >программист
              Тогда точно писать надо,пока совсем не поломался.
              Ответить
            • It's nice to look on tits during breaks.

              Просто мы синиц подкармливаем, и их почти весь день видно за окном.
              Ответить
              • >>on tits during
                During compile/test/CI cycle
                ----
                я про синиц, если что
                Ответить
                • Кстати, мне тут пришла в голову замечательная идея: если все тесты прошли - показываем разрабу сиськи, если не прошли - сочные камерунские хуйцы. Метод кнута и пряника.
                  Ответить
                  • Шовинистский метод какой. А если программист девушка или гомосек?
                    Ответить
                    • tests_passed ^ is_male ^ has_traditional_orientation
                      Ответить
                      • Тогда test runner должен определять пол и ориентацию, а я не уверен что это можно сделать современными средствами
                        Ответить
                        • Хотел сказать, что их можно указать при трудоустройстве... но это же персональные данные, потом хранить заебешься...
                          Ответить
                          • Нельзя такое спрашивать. Хотя.. Гуглите-ка "gleam microsoft".
                            Привет Спольски, Лимончелли, Тюрингу и Тому Дженнингсу.
                            Ответить
                            • "а не пидорок ли ты часом?" - нельзя
                              "будешь шлюху" - можно

                              а статестический тест покажет кто гей
                              Ответить
                              • > статестический
                                Статестика тут не поможет. Вдруг он бисексуал, просто импотент или жена дома ждет?
                                Ответить
                                • В любом случае импотент потерян для общества. А бисексуал - это норма. Против поощрений не будет и норм
                                  Ответить
                        • делов то? Парсинг социальных сетей :D
                          Ответить
                          • Если человека нет в социалках - то по-умолчанию пидорас?
                            Ответить
                            • Если ГК считать маленьким вариантом соц. сети, то ты можешь спать спокойно, в другом случае у меня плохие новости.
                              Ответить
                            • Юзаем sql логику - тады он unknown
                              Ответить
                            • почему не наоборот? :)
                              Ответить
                              • > почему не наоборот? :)
                                Раз скрывает инфу о себе - значит пидорас, педофил и вообще террорист.
                                Ответить
                              • >почему не наоборот? :)
                                Потому что если он там будет, его могут зарегать на сайтах хуястых кавказцев.
                                И иди докажи что ты не верблюд.
                                Ответить
                                • Можно зарегистрировать прямо сразу в социальных сетях как хуястого кавказца. (примерно такое даже в реальности происходило)
                                  Ответить
                                  • Ага. Но как?
                                    Число пи до n-ого знака ищёт хуястых самцов или постдекремент 2**10 познакомится с шаловливыми узбеками?
                                    Ответить
                                    • Есть лазейка - реальный оффлайн-мир, где не числа, а Иваны и Сидоры с паспортами. Разумеется, зарегистрируют те, кто знает человека. Я могу сидеть на ГК с ником 1024--, в то время как в ВК кто-то пишет от моего реального имени.
                                      Ответить
                                      • >в то время как в ВК кто-то пишет от моего реального имени.
                                        Если там имя и фотки твои, реально отжать аккаунт тупо сканом паспорта. посмотреть историю заходов, ip.
                                        Cтрёмное это занятие, никто таким не занимается, даже тупая школота - легко спалиться и выхватить, например, в рыло, или получить симметричную ответку.

                                        Потому что круг знакомств обычно в пределах одного города или микрорайона.
                                        Ответить
                                        • Но у меня нет желания регулярно проверять все социальные сети и сайты. А следовательно, будь я достаточно серьёзным человеком, для того, чтобы поссорить меня с клиентами, но недостаточно известным, чтобы мой аккаунт подтверждался в твиттере/на ютубе, зарегистрировали бы и поссорили.

                                          > легко спалиться и выхватить, например, в рыло
                                          А клиент уже ушёл, конь-тракт на миллионы упущен.
                                          Ответить
                                          • Да херня это всё.

                                            > А следовательно, будь я достаточно серьёзным человеком, для того, чтобы поссорить меня с клиентами
                                            Ты клиентам контакты даёшь? Тот вк/ютуб/свиттер ты не давал. Какие проблемы?
                                            Если ты выгоден клиенту никуда он не денется.

                                            > в твиттере/на ютубе
                                            Если у тебя клиенты такие тупые что не понимают очевидной истины - в интернете полно фейков, плюс ищут тебя на ютубе. Зачем?
                                            Думаю это еще дохуя выгодная услуга избавиться таких клиентов.
                                            Ответить
                                      • >а Иваны и Сидоры с паспортами.
                                        Мисторы?
                                        Ответить
                                    • > Число пи до n-ого знака
                                      > постдекремент 2**10
                                      Вот блин. А борманда то зарегают...
                                      Ответить
                        • Пол: бьём между ног и смотрим на реакцию
                          Ориентация: Показываем сиськи и смотрим на реакцию. Производим поправку на пол определённый в П1.
                          Ответить
                          • Тогда можно просто сиськи показать, ведь нам не нужны is_male и has_traditional_orientation по-отдельности.
                            Ответить
                    • >>А если программист девушка?

                      А если конь подсолнух?
                      Ответить
                  • для начала их надо написать =)
                    Ответить
                    • У вас там и тесты не пишут?
                      Ответить
                      • ну, разработка там идет на asp.net webforms. изначально были вообще .net 3.5, но я все же с трудом смог перевести его на 4.0. геморроя конечно норм так схватил.
                        если бы там еще был mvc, то можно было бы конечно без проблем писать тесты, но это же формы... при всем при этом, там в проекте много самописных server controls, которые генерируют разметку. ладно бы они просто разметку генерировали, так там еще и javascript... что-то вроде такого
                        sbStartBlock.AppendLine("var dv = '<div id=\"dialog-form-" + sEditUniqueKey + "\" title=\"" + this.EditDialogCaption + "\">';");
                                    sbStartBlock.AppendLine("if(dataType == \"System.Decimal\" || dataType == \"System.Double\"){");
                                    sbStartBlock.AppendLine("\tdv += '<table border=\"0\" width=\"320\" style=\"height: 70px;\">';");
                                    sbStartBlock.AppendLine("} else {");
                                    sbStartBlock.AppendLine("\tdv += '<table border=\"0\" width=\"320\" style=\"height: 300px;\">';");
                                    sbStartBlock.AppendLine("}");
                                    sbStartBlock.AppendLine("dv += '<tr><td valign=\"top\">';");
                                    sbStartBlock.AppendLine("dv += '<div id=\"label_" + sEditUniqueKey + "\"></div><br />';");
                                    sbStartBlock.AppendLine("if(dataType == \"System.Decimal\" || dataType == \"System.Double\"){");
                        читать, и уж тем более работать с этим адски трудно. при этом, используется самописная ORM, с самописной сериализацией типа такой
                        Ответить
                        • if (Bi.Data.Validate.IsDataColumnExist(rc[idx], "DictionaryId")) {
                                          this.DictionaryId = (Guid?)Bi.Data.Validate.NullIsDBNull(rc[idx].Value("DictionaryId", i));
                                      }
                          
                                      if (Bi.Data.Validate.IsDataColumnExist(rc[idx], "ParentId")) {
                                          this.ParentId = (Guid?)Bi.Data.Validate.NullIsDBNull(rc[idx].Value("ParentId", i));
                                      }
                          
                                      if (Bi.Data.Validate.IsDataColumnExist(rc[idx], "DictionaryName")) {
                                          this.DictionaryName = Convert.ToString(Bi.Data.Validate.NullIsDBNull(rc[idx].Value("DictionaryName", i)));
                                      }

                          чисто в теории, можно было бы это автоматизировать с помощью Selenium, но я честно говоря даже внимать в это не хочу, и не редко бывает такое, что какие-то новые фичи я сделал утром, а вечером у клиента на production сервере разворачиваю версию.
                          тестировщиков у меня вообще нет. хотя как, есть они конечно, но на проекте не работают. последний раз конечно, когда их привлекали, я поступил для меня самым разумным образом - реализовать нужный функционал, и быстро накидать довольно посредственную разметку. отдал в QA, предупредил человека, который будет это тестировать, что ему нужно протестировать работу самого инструмента, а не внешний вид. что пока он его будет тестировать, я наведу порядок, и сделаю красивую форму.
                          что вы думаете? 3 страницы в word на 20-30 пунктов, про орфографию, заезжающие формы, и т.п.
                          а про функционал, вообще практически ничего, если не ошибаюсь 1 баг всего нашел, за то я штук 5 нашел, пока параллельно тестировал.
                          Ответить
                          • В студии же есть тесты для вебморд: они записывают твои действия и генерят код на C#. Это как селениум, но лучше.

                            А вот как можно без тестов "у клиента на production сервере разворачиваю" я вообще не понимаю.
                            А если продакшен сервер станет на 24 часа?

                            Ну QA просто был тухлый у вас. Ищите другого. Скажу по секрету что хороших QA (которы знают что такое requirements, regression, и умеют автоматизирвовать тесты) _ОЧЕНЬ_ мало.
                            Ответить
                  • тогда уж пойдем глубже - прошли тесты - всем шлюх. не прошли - всем негра с болтом до колена
                    Ответить
                    • Негра надо припасти для дедлайна. Там он будет к месту.
                      Ответить
            • Странный соц-пакет какой!
              Девки бывают и за пределами работы, а от туалета с подогревом бывает геморрой
              Ответить
              • а чем ещё заманить голубую кровь
                кофемашину и печеньки каждый дурак может
                Ответить
                • Тогда лучше релоцировать офис в Тайланд: там всегда тепло и сотрудниц дешевле нанимать
                  Ответить
                  • без заказчиков, которых не отрелоцируешь, сиськи быстро сдуются
                    в таиланде лучше отдыхать, а не работать
                    меньше месяца осталось, не двинуть бы коней за декабрь
                    Ответить
                    • Заказчики бывают удаленными
                      Ответить
                      • удаленные заказчики никогда не дадут столько денежек
                        ибо никогда не отдашь критически значимый проект хуй знает кому и куда
                        нигилистам в таиланд
                        Ответить
                        • Ну есть еще и такой вариант:

                          В %CAPITAL_OF_YOUR_COUNTRY% открывается красивый офис с кофе, длинноногой секретаршей, круглой печатью, факсом, сайтом, и юрлицом. С ним заключаются контракты. А программисты могут хоть в Эритерии сидеть, всем пофи
                          Ответить
                          • > программисты могут хоть в Эритерии сидеть, всем пофи
                            которые там бесконтрольно творят что хотят
                            сидят в трусах у бассейна и попивают сингху
                            а когда в %NOT_SO_OBVIOUS_CAPITAL_NAME% рабочий день входит в зенит, говорят, что у них уже вечер и до свидания

                            удаленный офис надо хотя бы открывать там, где раб сила подешевле по возможности не в ущерб качеству
                            чтобы не 9 часов лететь вставлять пистон
                            либо где его присутствие будет приносить профит (окучивать региональный куст)
                            Ответить
                            • Можно посадить рядом с ними надзирателя с плёт талантливого менеджера и это будет работать. Если удаленно сидит хорошая комманда (а не лентяи в трусах), если налажен внятный процесс (например scrum, и каждые 2 недели выкатывается минорный апдейт) то это не так уж и страшно.

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

                              Хотя конечно удаленный офис имеет свои издержки, я понимаю.
                              Ответить
                              • будь я талантливым менеджером, я бы тоже сидел у бассейна с холодным пивком

                                ну и субъективно, уехать в таиланд означает перестать расти
                                т.е. не заниматься амбициозными проектами (именно на которых и происходит профессиональный рост), не всегда иметь гарантированного дохода
                                просто сидеть на жопе ровно и наслаждаться погодой

                                я так на пенсии лучше поступлю
                                Ответить
                                • Все растут по-разному. Кто-то ковыряет с выпучеными глазами сырцы линуксового ядра, и ему пофиг где это делать. Но в целом же я согласен: у одинокого фрилансера почти нет шансов вписаться в крупный проект с нагрузками, требованиями и пользователями. Почти наверняка он будет быстро делать маленькие проекты за небольшие деньги, и в конце концов превратится в установщика WordPress и Joomla:)
                                  -------
                                  Кстати, почему все хотят стать менеджерами? Помоему очень мерзостная работа: отвечать за ошибки ДРУГИХ
                                  Ответить
                                  • настоящий эффективный менеджер не совершает ошибок
                                    никогда
                                    а ошибки других будут влиять на чужие годовые бонусы
                                    Ответить
                                    • настоящий эффективный менеджер: 1. не совершает ошибок 2. не существует.
                                      Ответить
                      • Которых нет?
                        Ответить
                        • Заказчиков нет? Всмысле продукт коробочный? Или на себя работаете?
                          Ответить
                  • > Тайланд
                    > сотрудниц
                    ха-ха
                    Ответить
                    • Вы о том, что можно случайно нанять сотрудника? ну проверять же придется
                      Ответить
                      • Я ещё недостаточно старый пердун для столь уважительного обращения, давай попроще :)
                        Таки да, "переделанные" "сотрудницы" бывают и покрасивше натуральных
                        Ответить
                        • >> "переделанные" "сотрудницы" бывают и покрасивше натуральных
                          ээмм... надеюсь, ты говоришь не по собственному опыту?
                          Ответить
                          • а почему, собственно, хомячок не может сам своей жопой распоряжаться?
                            Ответить
              • >Девки бывают и за пределами работы,
                Ну не у всех, у некоторых кроме компа на работе бывает комп дома.
                Ответить
                • В таком случае и наличие их на работе не поможет:)
                  -----
                  Кстати, некторые используют комп дома для знакомства;)
                  Ответить
                  • Для знакомства с новыми языками, технологиями и консолькой в Linux?
                    Ответить
                  • в знакомствах - днище мира. Скучные закомплексованные люди. Ни поугарать, ни поговорить, ни дотнет не обсудить. Разве что потрахаться
                    Ответить
                    • ... потрахаться, помогая им с переустановкой винды.
                      Ответить
              • "Девки бывают и за пределами работы"

                У кого то за пределами работы только рука. С подогревом
                Ответить
                • http://ic.pics.livejournal.com/ihoraksjuta/31821380/985992/985992_original.gif
                  Ответить
                  • Что за гаджет, куда он это засунул?
                    Ответить
                  • Забавное устройство. Поди еще датчики движения есть?
                    Ответить
                  • Вспомнился Лебовски
                    http://www.youtube.com/watch?v=zUfWdi0oaLQ
                    — Wave of the future, Dude. 100% electronic.
                    — Well. I still jerk off manually.
                    Ответить
          • >А может так и поступить?
            ну, там довольно непростая ситуация. если в двух словах - мало опыта, и нет ВО.
            в любом случае, проект уже идет к своему логическому завершению, и как только он закончится, я не буду заниматься другими проектами.
            правда там тоже все не так просто, но за то начальник у меня адекватный. он мне вообще давно предлагал, чтобы я снял его с этого проекта, но у меня были причины отказаться.
            Ответить

    Добавить комментарий