1. Perl / Говнокод #19952

    +14

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    #!/usr/bin/perl -w
    
    use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
    no warnings 'once';
    require "send_server_header.txt";
    send_server_header("html");
    
    $latest_release = "../programs/sasplanet/SASPlanet_121010.zip";		#ссыль на последний релиз
    
    
    print "<html><head>";
    print "<meta http-equiv=\"Content-type\" content=\"text/html; charset=UTF-8\" />";
    print "<meta http-equiv=\"Pragma\" content=\"no-cache\" />";
    print "<meta http-equiv=\"Cache-Control\" content=\"no-cache\" />";
    print "<meta http-equiv=\"Pragma-directive\" content=\"no-cache\" />";
    print "<meta http-equiv=\"Cache-Directive\" content=\"no-cache\" />";
    print "<meta name=\"robots\" content=\"noindex,follow\" />";
    print "<title>SAS.Планета - файловый архив</title>";
    print "<link href=\"stylesheet.css\" rel=\"stylesheet\" type=\"text/css\" />";
    print "<meta http-equiv=Refresh content=\"10; url=".$latest_release."\">";
    print "</head>";
    
    print "<h2>Последняя стабильная версия:</h2>";

    И ещё 60 строк, содержащих вызов print.

    Запостил: inkanus-gray, 06 Мая 2016

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

    • Перл — лучший шаблонизатор!
      Ответить
      • То ли дело рнр.
        Ответить
      • Perl — это тот язык, который одинаково выглядит как до, так и после RSA шифрования.

        Keith Bostic
        Ответить
        • >Perl — это тот язык, который одинаково выглядит как до, так и после RSA шифрования.

          И это говорит человек осиливающий J.
          Ответить
        • RSA это все-таки криптография публичного ключа, логичнее наверное говорить про симметричные шифры (ну там RC4, DES, 3DES, AES, вот это все)

          Но вообще перл отличный язык
          на нем прикольно писать однострочники
          Ответить
          • На J тоже прикольно писать.

            Главное, чтобы читать потом не пришлось.
            Ответить
            • Перл просто это целая эпоха и особое очарование, и своя идеология)

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

              А CPAN? Это же репозиторий пакетов, появившийся в те время когда этого еще вообще никто не делал.

              *nix без перла невозможно было себе представить вплоть до конца нулевых. Теперь его нишу занял питон

              Да, чуть не забыл про .cgi файлы на границе веков. Весь веб 1.0 только на перле и писался
              Ответить
              • >Теперь его нишу занял питон
                Духовный наследник перла все-таки руби.
                Ответить
                • наследник-то руби, а нишу занял все-таки питон
                  Ответить
                  • Интересно, почему.
                    Ответить
                    • Потому что руби - рафинированный и создан исключительно для поднятия чсв Матса
                      Ответить
    • здесь все прекрасно, даже хардкод на последний релиз!
      Ответить
    • Зойчем столько принтав, в перле нет конкатенации?
      Или прикол в другом?
      Ответить
      • Самый главный прикол в том, что слетел обработчик скрипта и вместо готовой страницы посетители сайта видят исходник (иначе откуда он у меня?).

        А так да, странно видеть такое количество принтов. Будем надеяться, что скрипт генерированный, а не рукописный.
        Ответить
        • а чего толку от этой надежды? судя по отступам они руками все это писали.
          Ответить
        • это проблема кривой настройки сервера
          Ответить
          • Кстати, это одна из причин, почему не рекомендуется статику и скрипты хранить в одной директории.
            Ответить
            • Но PHP по-другому не даёт.
              Ответить
              • Дает, серваки не дают.
                Ответить
                • Я удивился, но, оказывается, есть shared-хостинги, у которых директория для скриптов вынесена за пределы htdocs.
                  Ответить
                  • в моем детстве так было всегда
                    cgi-bin же

                    причем Options +Exec было только на нее
                    Ответить
                  • И как в нее заливать? Как ставить движки, рассчитанные на стандарт?
                    Ответить
                    • На какой стандарт?
                      Ответить
                      • ГОСТ 2734-2005 Размещение файлов PHP в директориях на сервере
                        Ответить
                        • Нашёл только ISO 2734:2005 «Эмали стекловидные и фарфоровые».
                          Ответить
                          • > Эмали стекловидные и фарфоровые
                            Прозрачный код, устойчивый к скачкам напряжения
                            Ответить
                      • Ты никогда пыходвижки не ставил? Льешь файло в каталог с исполнением php.
                        Ответить
            • между нами девочками, статику и скрипты нужно отдавать _разными_ серверами

              статику -- nginx, скрипты (в случае пыха) апачем

              и даже для статики отдельный поддомен сделать (чтобы не гонять туда куки)
              Ответить
              • В случае пыха Апач не нужен. Подойдёт тот же самый nginx или lighttpd.

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

                А вообще да, статику лучше отдать другим сервером.

                *****

                Кстати, много ли нагрузки добавляют куки, если они содержат единственное поле PHPSESSID и больше ничего?
                Ответить
                • а что, уже придумали mod_php для nnginx? или его надо fastcgiем запускать?

                  куки добавляют не много нагрузки, но если ты фейсбук и у тебя миллион человек в минуту посещение, и ты арендуешь трансатлантику и платишь за траффик, то лишнее лучше не гонять
                  Ответить
    • print "<h2>Вы используете последнюю стабильную версию.";
      Ответить
      • print "<h2>Больше стабильных версий не будет.";
        Ответить
        • Так и есть. С 2013-го года выпускается только nightly. Последняя стабильная датирована 2012-м годом. Казалось бы, при чём тут конец света.
          Ответить
          • че там, шестой то когда выпустят?

            обожаю эту обложку

            http://bleaklow.com/images/2003/p6_cover_big.gif
            Ответить
            • А, ты про Перл, а не про SAS-Планету? Хотя разница, пожалуй, небольшая: что то после 2012-го ничего не достигло, что другое.
              Ответить
              • Сас планета мертва. Куда валить?
                Ответить
                • напитон же
                  Ответить
                • Нагуглпланетаземля.
                  Ответить
                  • Жирная, тупит, тормозит, меньше функционала именно по картам. При максимальном зуме переключается в якобы 3д вид там, где он не работает - нахуя?? Не умеет в принудительный кеш области.
                    Ответить
                  • Кстати, можно google street view на ведре как-то управлять с клавиатуры или пульта (нажимать стрелки)?
                    Ответить
          • После долгого хождения по их сайту удалось сделать открытие: последняя стабильная версия была выпущена 11 ноября 2015, находится на http://www.sasgis.org/download/. Внезапно, .ru сайт оказался заброшен.
            Ответить
            • Вид под 45° и возможность переключения даты карт запилили?
              Ответить
            • Хранит настройки и кэш в каталоге программы. В 15 году? Вы серьезно? В висте уак запилили

              Нет поворота, плавной прокрутки с клавиатуры.

              Мегапиздец - нельзя отключить русскую транслитерацию названий; впрочем, это фирменная фишка гугла. Дико бесит
              Ответить
              • > Хранит настройки и кэш в каталоге программы.

                А я считаю это плюсом. Её не нужно инсталлировать. Можно таскать с собой на флэшке.
                Ответить
                • А я не считаю. Непонятно, где программа, а где данные.

                  А для флешки нету оберток, которые мапят аппдата куда нибудь?
                  Ответить
                  • Некогда видел у знакомого на флешке программу, где в одном месте лежали папки с именами вида %programfiles%, %systemroot% и т.п. Вероятно, какой-нибудь загрузочный *.bat-файл удалял эти переменные среды перед запуском программы, чтобы она шла в папки на флешке.
                    Ответить
                  • http://portableapps.com/

                    Пример далеко не единственный.

                    У некоторых программ есть собственный переключатель, где хранить данные.

                    *****

                    А теперь внимание, вопрос. Зачем разделять программу и данные?
                    Ответить
                    • - многопользовательское окружение - хранить настройки каждому свои, включая AD, где настройки и целые папки могут храниться на сервере
                      - изоляция прав на запуск из каталога и запись в этот каталог - безопасно и удобно, много кейсов, начиная от ro диска, заканчивая работой софта из ограниченного в правах окружения

                      вообще это грусть и печаль, когда некая софтина в принципе по-другому не может, кроме как срать себе же в %program files% или того хуже сразу в c:\
                      Ответить
                      • Ну а что, создать для такой программы Докер контейнер, и пусть себе пишет куда угодно. Даже наоборот удобно: все имиджи для таких контейнеров будут одинаковые + программе не нужно парится с настройками доступа.
                        Ответить
                        • ты в каком мире живёшь?
                          вейк ап нео, матрикс хэз ю
                          Ответить
                          • В моем светлом будущем все програмы виртуализированы и независимы от операционных систем. Пользователи устанавливают операционные системы на один и тот же компьютер и используют их одновременно для разных програм. Файловых систем как таковых нет, вместо них есть АПИ сохраняющие структурированые данные. Это кроме того, что програмы написаны на языках достаточно высокого уровня, чтобы абстрагировать их от конкретики железа, системы, сети и т.д. Вместо этого, они управляются мета-командами интуитивно понятными даже ребенку.
                            В таком будущем, проблема хранения данных не возникает, но если очень захочется, ее можно творчески решить произнеся вслух: "компьютер, перемести папку с проном который я копил десятилетиями на флешку".
                            Ответить
                      • >в %program files%
                        Windows 9x

                        >или того хуже сразу в c:\
                        Win 3.11 или сразу после появления 95.
                        Ответить
                    • Даже если все это в однопользовательском окружении:
                      - Проще бекапить настройки. Установленную прогу бекапить незачем.
                      - В любой момент можно снести прогу и оставить настройки или наоборот не ебя себе мозг тем, где что лежит.

                      Ты же не сохраняешь файлы верда в его каталог? Блин, еще фигурнов об этом писал.
                      Ответить
                      • > В любой момент можно снести прогу и оставить настройки или наоборот не ебя себе мозг тем, где что лежит.
                        С другой стороны, очень часто хочется найти где-нибудь кнопку [удалить эту говнопрограмму и все продукты её жизнедеятельности]. А то сначала она куда-нибудь в C:\ свою питушню распакует, потом в одну папочку поднасрёт, в другую, в настроечки, в реестрик.
                        Ответить
                        • вот боголюбимом linux е есть purge. А богомерзкие форточкам нужно ставить говно программу для удаление остатков других говно программ. Спрашивается почему руководство MS будет гореть в аду.
                          Ответить
                          • > вот боголюбимом linux е есть purge

                            Возможно, ты имел в виду Debian, а не Linux. Linux - это ядро, в нём даже конпеляторя нету. Кроме того, как apt-get purge поможет тебе удалить файлы , созданные самой программой в процессе её жизнидеятельности? Он же только из официального списка файлов в пакете всё поудалять может.
                            Ответить
                            • а чего в красных шляпах нет purge?
                              Ответить
                              • Там есть хитрые postun скрипты для таких случаев. Они прямо в пакет зашиты.
                                Ответить
                                • блин
                                  yum remove удаляет конфиги (точнее МОЖЕТ удалить)

                                  rpm -e не удаляет
                                  Ответить
                                  • > удаляет конфиги
                                    Прямо из хомяков всех юзеров?
                                    Ответить
                                    • > Прямо из хомяков

                                      Не уверен, сарказм или нет, отвечу занудно.

                                      Примерно как в дебиане, в rpm есть дерективы, которыми помечаются конфигурационные файлы, чтобы они не перетирались при (пере)установке пакетов. Ведь неприятно будет, если при обновлении версии nginx перетрутся все настройки админа. О тех файлах, что у юзера в хомячке, по понятным причинам, менеджеру пакетов ничего не известно.
                                      http://www-uxsup.csx.cam.ac.uk/~jw35/docs/rpm_config.html
                                      
                                      http://www.rpm.org/max-rpm/s1-rpm-inside-files-list-directives.html
                                      
                                      see %config
                                      Ответить
                                    • из хомяков наврядли.

                                      Смотри: допустим, у тебя есть пакет из одного бинарника, одной либы и одного конфига.

                                      Пусть они кладутся так:
                                      /usr/lib/libgovno.so
                                      /bin/sweet_bread
                                      /etc/govno.conf


                                      очевидно что ``yum update govno`` должен обновить первые два файла, а третий не тронуть (ну или как-то интеллектуально смерджить). Для этого в ``.rpm`` есть знание о том, что это конфиг. Соответственно он его не тронет при обновлении, а вот при явном удалении может и грохнуть.

                                      И да: я в курсе что в современных дистрах там было бы ``/etc/sweet_bread/conf.d``
                                      Ответить
                              • man yum, все там есть
                                Ответить
                            • >>Debian
                              а так же ubuntu и другие deb-based
                              Ответить
                          • Это опция инсталлятора прыщеговна? Ну так при нормальном инсталлере на венде и так все удаляется.
                            Ответить
                        • Одно другому не мешает, думаю. Можно сделать чтобы инсталлятор опционально тер настройки.

                          >А то сначала она куда-нибудь в C:\ свою питушню распакует, потом в одну папочку поднасрёт, в другую
                          По понятиям гадить настройками можно в реестр и в аппдата. Говнософт конечно может делать что захочет.
                          Ответить
    • Это наверно писали ещё в 2000 году.
      Ответить

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