Пояснительная бригада: мем про данные
Комментирует Лёша Эльнатанов, наставник на курсе по Python:
«Утечка данных обычно происходит неожиданно для разработчиков, в результате чего данные становятся доступны снаружи, разлетаясь по сети.
При децентрализованном бэкапе данные тоже дублируются в нескольких разных узлах, но это происходит в пределах сети организации и под защитой системы контроля доступа».
Ну, а юмор сами разгадайте :-)
На работе нельзя шутить 2
Я работаю программистом. В начале своей карьеры я очень любил пошутить. Пошутить в проде, в исходниках, оставить пасхалки.
И вот что, это всегда было как выстрел себе в ногу.
В этой серии постов я расскажу о забавных штуках которые со мной происходил.
UDP. Я пишу истории которым с десяток лет. Когда происходили эти момент - я был начинающим программистом. В данном посте, это была компания, где работал единственный веб разработчик - это я. Мне говорили что сделать, я делал. В код мне никто не лез.
Было одно у меня приложение, представляло собой, если коротко, html страничку с js скриптами, никакого бека. За счет простоты развертывания(скачал архив, разархивировал - работает) и бесплатности пользовалось популярностью.
Ситуация 1
В первых релизах я как то раз, использовал прямые ссылки на картинки из интернета и забыл их заменить. Спустя несколько релизов - фейл. Звонит пользователь и говорит - "открываю приложение у меня какая то парнуха". Что произошло, по этой ссылке стал распространятся эротический рекламный контент XD, открываешь приложение, а там баба ебется с мужиком и ссылка на сайт с порнухой или знакомств. Разумеется я это убрал.
У меня появилось правило - абсолютно все что я использую, хранить локально. В смысле не по ссылкам с левых, не моих ресурсов. Картинки могут поменяться =) Источник ссылки может протухнуть. Содержимое может поменяться. Сервис может по техническим причинам не работать и тд - причин много.
Ситуация 2
В какой то из релизов я нашинковал это приложение пасхалками. Определенные комбинации нажатий иконок вызывали разные игры - из разряда, начинают летать иконки и всех их нужно поймать мышкой. И вот одна из пасхалак - была возможность поднять шторку. В приложении была карта, неочевидно можно было схватится за нижнюю границу и поднять карту, а под ней - полуголая дженифер лопес.
Все было бы здорово. Но я не учел тот факт, что пока приложение полностью не загрузилось, пока не подтянулись скрипты, шторка была поднята. А карта была на первой странице. Поясняю. Пользователь обновлял свое приложение или ставил его впервые, заходил и видел на мгновение полуголую тетку.
Этот баг заметили несколько нормальных наших партнеров, все вмести поржали. Ничего страшного не произошло, хотя могло) Быстренько ликвидировали пасхалку.
Именно после этого момента я понял - что я могу ошибаться и если шутить, можно теоретически очень больно промахнуться. Именно после этого инцидента, я выполнил рефакторинг и убрал все свои приколы, почистил все маты в коде.
Херня в моем случае еще был в том. Что если я что то поправил. Я не могу поправить у всех клиентов, тк им нужно самостоятельно обновить это приложение. А приложение было в особых кругах популярным и им пользовались сотни компания и обновляться чаще всего нужды не у кого не было =( Так что возможно и сегодня где то у кого то стоит приложения, в отладке которого материться сапожник
Пояснительная бригада: мем про скорость кода на C
Поясняет Паша Вавилин, наставник на курсе Python:
«Как я понимаю, юмор в том, что плохо написанный код на C будет не быстрее, чем код на Python. В последнем кадре первый персонаж понимает, что его код, получается, плохой»
И добавляет редакция «Кода»:
Это правда, что один и тот же набор команд на C исполнится быстрее, чем на Python, — хотя бы потому, что код на C компилируется под процессор, а на Python проходит дополнительный слой интерпретации и преобразований. Но это касается сравнения одинаковых операций в двух языках.
Само приложение на C и Python можно написать как угодно. Можно использовать неоптимальные алгоритмы, брутфорсить решение тупым перебором, заставлять компьютер вхолостую считать всякую ненужную ерунду. А, например, все эти задачи внутри Python уже решены готовыми библиотеками, где умные люди уже всё оптимизировали.
И в итоге да, код на C исполняется быстрее. Но самого кода может быть настолько больше и он может быть настолько более сложным, что в итоге приложение на Python работает лучше.
На работе нельзя шутить
Я работаю программистом. В начале своей карьеры я очень любил пошутить. Пошутить в проде, в исходниках, оставить пасхалки.
И вот что, это всегда было как выстрел себе в ногу.
В этой серии постов я расскажу о забавных штуках которые со мной происходил.
Например как то раз я делал доработку сайта компании. На сервачке отдельном я развернул клон основного сайта и приступил к работе.
Накидал новый раздел, готовых решений. Решение напоминало статью с хабра или пикабу... Тот же формат. Текст, че кого, картинки, видео. И в конце раздел что понадобиться - продукты, компании и тд. Тыкая на которые переходишь на нужную страницу.
Настал момент накидать тестовой информации, что б вообще понять работает нет и то это что хотелось или нет.
Ну я накидал шуточного текста, накидал шуточных картинок. В решении указал, вам понадобятся "устройство 1", "Платформа Z", "Что то там", "Горе ребята". На горе ребята, я конечно же поставил ссылку на сайт реальных партнеров/заказчиков компании. Ну че, получилось смешно. Все работает. Тим лиду показал - оценил юмор, отделом посмеялись. Забыли.
Как то прихожу на работу. Наш коммерческий директор говорит -"Ну пиздец. Я тебя выгораживал как мог. До ген дира постараюсь, что б не дошло, но ничего не обещаю". Суть в том что на сайте партнеров была яндекс метрика. Ну и понятно они пошли смотреть откуда переход и наткнулись на это вот все. Итог: "Нашим партнером сказали, что меня уволили", я еще несколько лет с ними не взаимодействовал, пока вся история не забылась.
После этой истории я всегда, делаю хотя бы базовую авторизацию =)