1. Куча / Говнокод #23500

    +1

    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
    24. 24
    Шел 21-й год веб программирования. 
    
    ---Программисты не умели в prepared statements и CSRF 
    — Какие ошибки в аспекте безопасности чаще всего допускают разработчики приложений .NET Framework?
    Михаил: По моему опыту проведения security review веб-проектов – 
    это всевозможные инъекции «в широком смысле слова»: XSS, SQLi, XXE, Path Traversal и проблемы конфигурации приложений
    Сервер WinCC Web Navigator написан на платформе .NET, и исследователи нашли целый ворох уязвимостей в нем: 
    XPath Injection, Path Traversal, больше 20 XSS, CSRF, SQLi и другие. 
    
    ----------------Программисты не умели в капчу
    .., и в результате атакующему удалось подобрать пароли к более чем десятку учетных записей, прежде чем атака была остановлена
    
    --------------В соль, похоже что, тоже не умели (программисты RSDN!!!)
    После этого мы взяли базу хэшей паролей пользователей и осуществили оффлайн-атаку подбора паролей по словарю из ~250K элементов. 
    В результате на 83165 зарегистрированных на тот момент пользователей пришлись 11017, чьи пароли удалось подобрать в разумное время.
    
    ---(неуверенно) и в assertы тоже не умеют?...
    "Если же говорить о C#, то, с точки зрения безопасности, в нем очень не хватает встроенных средств контрактного программирования.
     Хотя бы на том уровне, на котором это реализовано в языке Nemerle,
     где для любого метода или класса могут быть определены функции, подтверждающие выполнение пред- и постусловий для методов или 
    обеспечивающие контроль инвариантов в случае классов"
    
    
    https://habrahabr.ru/company/jugru/blog/341792/

    давайте сраться

    SemaReal, 08 Ноября 2017

    Комментарии (37)
  2. Куча / Говнокод #23496

    0

    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
    Где-то однажды появился на свет
    С лаем и хрюканьем зверь, каких нет
    И тут же сбежал, оставив вопрос,
    Свиняче-собачий малыш Свинопёс
    
    
    Свинопё-ё-ё-с, свинопё-ё-с,
    Единственный в мире малыш свинопёс
    
    
    Его не признали в мире цивилизованном
    И все его шпыняют и ночью и днем
    Не стоит исправляться, не стоит грустить
    А лучше обамку во всем обвинить
    
    
    Свинопё-ё-ё-с, свинопё-ё-с,
    Единственный в мире малыш свинопёс

    FrauSchweinhund, 07 Ноября 2017

    Комментарии (13)
  3. Куча / Говнокод #23493

    +7

    1. 1
    2. 2
    3. 3
    https://static.googleusercontent.com/media/research.google.com/ru//pubs/archive/43438.pdf
    
    > provide cluster management solutions that typically scale to O(1000) machines

    Мдааа, вот вам и пиэйчди из гугла. Я думал, в о-нотацию не умеют только 1024-- и школьники с хабра.

    g0cTb, 05 Ноября 2017

    Комментарии (7)
  4. Куча / Говнокод #23477

    −6

    1. 1
    Про убогость ООП подхода.

    Итак, вот допустим наследование. Есть всякие там тупые примеры ООП, типа "котик и собачка наследуется от четырехногих" и проч., где подобный бред вполне работает. Но давайте попробуем рассмотреть более интересные ситуации.

    Допустим что мы пишем некую игру. В игре есть некое оружие, например там есть огнестрел и дубинки. И мы делаем ружье, которое одновременно и огнестрел и дубинка, т.е. ружьем можно и как палкой уебать, и пальнуть как из револьвера. У родительского класса "огнестрел" есть свойства, типа дальности выстрела, точности, используемых боеприпасов, уровень прочности(износ), вес, наносимый урон при попадании. У дубинки есть свойства длины дубинки, уровень прочности(износ), вес, наносимый урон при ударе. Вес для ружья нам нужен только один, т.е. нет смысла делать два "веса" одному предмету. И огнестрел и дубинка наследуется от родительского класса "объект инвентаря", в общем тут ромбовидное наследование, которое в разных языках решается разными способами. Ну ок, допустим что мы там каким-то образом указали компилятору некоего языка X, что наследовать свойство "вес" надо лишь один единственный раз, как и прочие хрени, которые являются общими для родительского класса "объект инвентаря". Теперь надо решить с прочностью. Не все "объекты инвентаря" в этой игре имеют свойство прочности, есть например какие-то расходные материалы, типа патронов, для которых понятие прочности неприменимо. Использование ружья как дубинки изнашивает его не таким же самым образом, как использование ружья как огнестрела, но при этом слишком большой износ ружья-как-дубинки может настолько повредить его, что как огнестрел его уже и не поиспользовать из-за погнутого ствола. Но использование ружья как огнестрел никак на износ ружья-как-дубинки не влияет, типа это механический износ спускового механизма, износ ствола при стрельбе...

    j123123, 02 Ноября 2017

    Комментарии (179)
  5. Куча / Говнокод #23465

    +2

    1. 1
    2. 2
    https://i.imgur.com/kMVofCA.png
    ооооонейросетьоооотвечайрррооооооооооооооооооооооооооооооооооооооооооооооооввоооооооооооо

    по какому блядь принципу работает этот гугловский говнопереводчик?

    j123123, 30 Октября 2017

    Комментарии (12)
  6. Куча / Говнокод #23454

    0

    1. 1
    2. 2
    echo -ne '10\n11\n12\n' | POST 'http://localhost:8123/?query=INSERT INTO t FORMAT TabSeparated'
    cat file.csv | clickhouse-client --database=test --query="INSERT INTO test FORMAT CSV";

    https://clickhouse.yandex/docs/en/single/index.html#format-clause

    FORMAT

    Вот нахрена было вставлять FORMAT в ЯЗЫК ЗАПРОСОВ? Почему нельзя это сделать опциями клиента и HTTP-хедерами?

    Допустим, хочу я написать клиент на языке X, который использует HTTP-протокол. Работа клиента — взять запрос и превратить его в структуры данных языка X. Из-за этого FORMAT клиенту теперь нужно лезть в пользовательский запрос, чтобы понять, в каком формате будут приходить данные, и уметь конвертировать все форматы, которые взбрело в голову добавить авторам БД.

    roman-kashitsyn, 25 Октября 2017

    Комментарии (9)
  7. Куча / Говнокод #23451

    +1

    1. 1
    https://roem.ru/23-10-2017/261914/seva-zhidkov-rocks/

    > В январе 2016 года 14-летний Сева Жидков создал телеграм-бота для рекламных путеводителей «Медузы». После этого он стал стажироваться в издании и создал еще одного бота — уже для редакции. Теперь Жидков самый молодой сотрудник «ВКонтакте».
    > Как давно ты работаешь во «ВКонтакте»?
    > после девятого класса
    > занимаюсь, в частности, применением машинного обучения в рекламе «ВКонтакте»

    Все что требовалось знать про эту "интеллектуальную" профессию. Даже школьник с 9 классами может применять машинное обучение в контакте и писать ботов для телеграма.

    g0cTb, 25 Октября 2017

    Комментарии (27)
  8. Куча / Говнокод #23443

    +3

    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
    https://vc.ru/5822-code-leaks
    
    Представитель "Rambler" втирает, что сотрудники при приёме на работу подписывают договор о неразглашении.
    Между тем, часть исходного кода одного из сервисов "Rambler" - 
    
    https://class.rambler.ru/
    
     - успешно проёбана одним из разработчиков:
    
    https://github.com/Serdji/rm_class_edu
    
    Для каких-то внутренних тестеров приложена подробнейшая инструкция по установке.
    Причём, судя по многим ссылкам, недоступным извне, публикация кода для всех желающих совершенно не предполагалась.

    AnalPerOral, 22 Октября 2017

    Комментарии (24)
  9. Куча / Говнокод #23441

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    http://www.vlang.ru/
    Описание нового языка программирования V.
    V является скриптовым, компилируемым в коды x86, языком со строгой типизацией и без ссылочной арифметики.
    V адаптирован для работы в CGI режиме с сервером Apache.
    Исходный код хранится в файле с расширением vsc. Компилятор в случае отсутствия ошибок создает файл с расширением v32, а также 2 служебных файла с расширениями vif и vsl.

    http://www.vlang.ru/
    Описание нового языка программирования V.
    V является скриптовым, компилируемым в коды x86, языком со строгой типизацией и без ссылочной арифметики.
    V адаптирован для работы в CGI режиме с сервером Apache.
    Исходный код хранится в файле с расширением vsc. Компилятор в случае отсутствия ошибок создает файл с расширением v32, а также 2 служебных файла с расширениями vif и vsl.

    SemaReal, 22 Октября 2017

    Комментарии (119)
  10. Куча / Говнокод #23439

    0

    1. 1
    https://turbo.net/docs/getting-started/what-is-turbo#why-use-turbo

    Легкая виртуализаця (как докер) под винду. "Turbo VM is a user-mode microkernel that emulates core kernel subsystems to create isolated, portable container environments".
    У них уже дохуя пакетов и .cmd скрипты вместо Dockerfile.

    кто знал?!

    SemaReal, 21 Октября 2017

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