Профилирование Python: почему и где тормозит ваш код
Представьте ситуацию: вы написали скрипт для обработки каких-то данных на ноутбуке, ушли попить кофе, а когда пятнадцать минут спустя вернулись, завершилось едва ли 10%.
Почему скрипт работает так медленно? Какая его часть тормозит? Дело в чтении данных, их обработке или сохранении? Как ускорить исполнение? Действительно ли скрипт вообще медленный?
Ответить на все эти вопросы поможет инструмент под названием «профилировщик» (profiler)
⚡️ Новости к этому часу
💳 Криптобиржа Binance запретила россиянам операции через P2P-сервис с любыми валютами, кроме рубля
❤️ Нейросеть «Яндекса» научилась генерировать видео в «Шедевруме»
🚀 SpaceX запустила в космос 5000-й спутник Starlink (ФОТО)
🇯🇵 Запуск японского «Лунного снайпера» снова отложен
🤷♂️ «Уэбб» не видит большого количества активных галактик в ранней Вселенной, в противовес ожиданиям космологов
📱 Чат-бот Bing запущен для всех пользователей десктопных версий Chrome
🎮 Razer представила обновлённый геймпад для смартфонов Kishi V2 Pro
📝 Yandex Cloud подвела итоги первого полугодия 2023 года
#новости
А давайте убьём все фреймворки?
Общая тенденция развития технологий характеризуется рывками и спадами. Рассмотрим, например, массовое перемещение человеческих тел. Изначально применялись лошади и повозки, которые постепенно стали сложными, и эта технология превратилась в отдельную индустрию. Затем внезапно появились поезда. Про лошадей быстро забыли, и фокус сместился на новое направление. Пар стал объектом исследований и превратился в сложную науку. Параллельно развивались дизель и электричество. В определённый момент паровые двигатели ушли в прошлое, и все перешли на дизель и электричество. Аналогично сейчас происходит переход на электромашины, требующие значительно меньшего количества жидкостей.
Технологии эволюционируют и функционируют, а новые технологии их полностью заменяют. Наступает эпоха, когда технологии фреймворков и Электрона могут быть вытеснены генеративными AI. Рассмотрим несколько примеров.
Вы покупаете книгу в бумажном исполнении, вдыхаете аромат её страниц, начинаете читать это чудо человеческой мысли и печатного станка, как вдруг… #%^#@&#^$%? Чуть выдохнув, вы пытаетесь понять, а что, собственно, за ахинею вы только что загрузили к себе в мозг.
БОМБОРА. Кровавый и беспощадный перевод книг
«Итак, я должен сделать небольшое, но важное публичное заявление: Google лгал нам о поддержке RTL в полях ввода. Она намного проще, чем можно было представить»
Добавьте 𝚍𝚒𝚛="𝚊𝚞𝚝𝚘" к полю ввода
Эволюция технологий виртуализации сети в Linux
Виртуализация оборудования — одна из важнейших и фундаментальных технологий в области облачных вычислений. Без неё не смогло бы работать ни одно «устройство» внутри виртуальных машин: ни сетевая карта, ни диск, ни клавиатура, ни мышь и т. п. В статье мы проследим развитие технологий виртуализации оборудования в Linux.
Как PDF изменил мир
Нам сейчас трудно представить, но было время, когда документы для печати нельзя было создать и подготовить за считанные секунды. И вообще, раньше обмен документами был громоздким процессом, который включал в себя распечатку и физическую передачу из рук в руки. Но всё изменилось в 1993 году, когда Adobe Systems представила миру PDF (Portable Document Format) — революционно новый формат файлов, он упростил обмен документами и их архивирование.
Тридцать лет спустя PDF — популярный формат документов для всего: от налоговых форм до электронных книг и руководств пользователя. PDF изменило то, как пользователи создают, делятся и получают доступ к цифровым документам. Только в прошлом году пользователи открыли более 400 миллиардов PDF-файлов в продуктах Acrobat, а Adobe обработала более 8 миллиардов транзакций с электронными и цифровыми подписями.
Индийская организация космических исследований (ISRO) показала короткое видео с луноходом «Прагьян». В ролике видно, как луноход впервые съезжает по трапу посадочного модуля «Чандраян-3» на лунную поверхность, усеянную небольшими кратерами.
Читать полностью…Индийская организация космических исследований (ISRO) показала видеозапись процесса посадки модуля «Чандраян-3» с бортовой камеры аппарата Lander Imager Camera.
На посадочном модуле «Чандраян-3» установлены четыре научных инструмента:
— зонд Ленгмюра RAMBHA-LP для исследования плазмы;
— прибор для термофизических исследований поверхности ChaSTE (представляет собой зонд, который погружается в реголит на глубину до 10 см и измеряет теплопроводность грунта);
— трёхкомпонентный сейсмограф ILSA (Instrument for Lunar Seismic Activity);
— уголковые отражатели LRA для лазерной локации Луны (предоставлены НАСА).
В ISRO пояснили, что научные приборы на посадочном модуле включены и находятся в рабочем состоянии. Инженеры начали получать телеметрию и научные данные с модуля «Чандраян-3» на Луне.
Борьба за ресурсы: Китай ограничил экспорт важнейшего для электронной промышленности галлия
Последствия уже проявились. Например, галлий всего за две недели подорожал на 50%. Вероятно, это не предел, плюс Китай может предпринять и дальнейшие шаги по ограничению экспорта — уже других элементов.
Присасывание кораблей друг к другу при обгоне на параллельных курсах
История с «феноменом» присасывания судов друг другу при обгоне на малых расстояниях началась в далёком 1911 году, когда столкнулись гигантский суперлайнер того времени «Олимпик» (старший брат «Титаника») и крейсер ВМС Британии «Хоук».
Крейсер «Хоук» шёл попутным курсом на расстоянии около 3,5 миль (6,5 км) от «Олимпика».
Через какое то время, крейсер нагнал «Олимпик», и они пошли почти параллельными курсами, под небольшим углом друг к другу, медленно сближаясь. Оба судна шли со скоростью 15 узлов (около 28 км/час).
Потом произошло нечто необъяснимое. Внезапно крейсер «Хоук» резко вильнул влево и, как писали многочисленные газеты, буквально «бросился» на «Олимпик».
Это первый зарегистрированный и подробно обсуждаемый в прессе случай, так как происшествие с участием таких морских гигантов замолчать было невозможно. Сам же «феномен» наблюдался и раньше, но лишь при маневрировании мелких судов, а потому в медийно-научную плоскость он не переходил.
Как загружается процессор Intel x86
Когда мы включаем компьютер, он успевает совершить несколько этапов работы ещё до того, как загрузится операционная система. В этом посте рассмотрим, как загружается типичный процессор с архитектурой x86. Это очень сложный и многоступенчатый процесс.
Марк Руссинович — человек, который знает о Windows всё
Существуют эксперты, внесшие значительный вклад в историю развития IT, благодаря чему их имена стали буквально нарицательными. Питер Нортон, Джон Маккафи, Евгений Касперский… В этом ряду нельзя не упомянуть и Марка Руссиновича — известного программиста и писателя, о котором наверняка слышал каждый, кто работал с персональными компьютерами в эпоху Windows 9x/2000.
Его карьера всемирно известного специалиста по архитектуре операционных систем производства корпорации Microsoft достигла апогея в первой половине «нулевых», однако в биографии Руссиновича имеются и не столь известные широкой публике страницы. Например, немногие знают, что Марк — не только автор первого полноценного драйвера файловой системы NTFS для MS-DOS, но ещё и успешный автор популярных триллеров.
«Монтируете ли вы шары, как их монтирую я? Вероятно, нет, так как очень крутой опции multiuser на просторах Интернета уделено слишком мало внимания, а man mount.cifs в её отношении весьма немногословен и скуп на наглядные примеры. Именно это и сподвигло меня поделиться с вами парой рецептов, которые могут облегчить вам и вашим пользователям движение в сторону отечественных десктопов и ИТ-инфраструктур»
Монтируем шары для юзеров
Курс проложит аналитик: проверьте, какими SQL-скилами вы экипированы
Если вы не первый год в аналитике, то знаете, каково это — прокладывать дорогу сквозь неопределённость. Рассматривать гипотезы и принимать ту, по которой работать, — это как выбирать дорогу, по которой идти всей команде. Волнительно и непросто отправляться на неосвоенные земли.
Вот вы — хороший штурман? Готовы встретиться с вызовами? Перетряхнём же рюкзак, посмотрим, чем он набит, и есть ли там самое важное, без чего не выжить в пути!
«Даже у инженеров, отправивших человека на Луну, бывали дни, когда им приходилось выполнять тупую, однообразную работу, без которой Великих Свершений попросту не бывает. Я решил рассказать о том, что ожидает вас, если уже вот-вот получите диплом. А если вам уже довелось проработать в индустрии хотя бы пару лет, и вы почувствовали разочарование, держитесь: это нормально, мы все через это прошли. Дальше будет получше»
Места, где вам предстоит побывать
Чтобы пережить эпоху искусственного интеллекта, миру нужен новый тест Тьюринга
В течение 70 лет было трудно представить, как компьютер может пройти тест, не обладая тем, что исследователи ИИ называют обобщённым искусственным интеллектом, то есть всем спектром интеллектуальных возможностей человека. Затем появились большие языковые модели, такие как GPT и Bard, и тест Тьюринга вдруг стал казаться странно устаревшим. Конечно, сегодня случайный пользователь, пожав плечами, может признать, что GPT-4 вполне может пройти тест Тьюринга, если попросить его выдать себя за человека. Но что с того?
У больших лингвистических моделей нет долговременной памяти, способности формировать отношения с людьми и многих других человеческих качеств. Очевидно, что им ещё предстоит пройти определённый путь, прежде чем мы будем готовы начать дружить с ними, принимать их на работу и избирать на государственные должности.
«Сегодня, когда уже почти все сидят в онлайне 24/7 через смартфоны и широкополосный доступ, было бы странно, если бы я не находился в сети 20 часов подряд. Но в 1998 году в Роли, Северная Каролина, дело обстояло иначе. В эпоху медных телефонных линий и коммутируемых модемов доступ в Интернет в случае домашнего использования, как правило, был непостоянным. Каждая занятая линия означала невозможность её использования другим клиентом, и при этом вам никто не мог дозвониться»
Интернет 90-х: когда после 20 часов в онлайне тебе пишет президент ISP
Распространённые паттерны опечаток при программировании
Есть бесконечное количество способов ошибиться при написании кода. Однако иногда можно заметить явные интересные закономерности, как и где ошибаются программисты. Поговорим о коде, который «притягивает» опечатки.
А далее наша планета попробует в IT без генералистов
Мы живём на границе времён. Последние годы эпохи, когда IT создавали люди, которые имеют более-менее полное представление об IT в целом. Молодой студент Цукерберг вполне мог создать «Фейсбук» с нуля, потому что имел достаточно сносные знания о PHP, JS, СУБД, протоколах и HTML. Нынешний фронтенд-программист, если он хочет побыстрее освоить тему фронтенда — не должен отвлекаться на бэкенд и тем более СУБД, ему бы разобраться с JS-фреймворками.
«Всем привет! На прошлой неделе я выкладывал статью про ремонт Nintendo Switch, который оказался на удивление простым. Сегодня поговорим о более сложном ремонте»
Новый ремонт Nintendo Switch Lite: отвал процессора
Made at Intel. Жёсткая мужская игра
Для восстановления гендерного паритета сразу после «женской» главы в книжке должна быть «мужская». И мы немедленно к ней приступаем. Но посвящена она будет вовсе не выдающимся мужам, коих в Intel было в преизбытке. Она будет посвящена самым отъявленным разгильдяям light blue — команде Competitive Response Team.
«Прямо сейчас занимаюсь достаточно интересным проектом, который задействует большое количество пинов микроконтроллера, и, наверное, впервые количество требующихся пинов превзошло количество имеющихся у микроконтроллера. Так что же делать в таком случае?»
Как увеличить количество пинов на ESP32
Наполняем до краёв: влияние порядка столбцов в таблицах на размеры баз данных PostgresQL
При оценке требований базы данных к оборудованию требуется учёт многих факторов. И здесь у Postgres есть одна интересная особенность, которая почти всегда ускользает от внимания разработчиков, потому что она искусно спрятана между столбцами таблиц.
⚡️ Новости к этому часу
🐧 Разработчик из Intel внёс корректировки в код ядра Linux для корректной работы с микрокодом 32-разрядных процессоров x86
👨💻 Минцифры создаст рекрутинговую платформу с технологией ИИ
🚗 Электромобили «Атом» будут производить на заводе «Москвич»
🆕 Вышел Git 2.42
🛰 Индийская станция «Чандраян-3» успешно прилунилась
🧑🚀 НАСА представило группу учёных-геологов для первой высадки астронавтов на Луну в рамках программы Artemis III
🎮 Sony представила портативную локальную консоль PlayStation Portal за $200 для стриминга игр с PS5
👨⚕️ В Курчатовском институте провели испытания токамака Т-15МД
#новости
Вакансии для джунов на Хабр Карьере.
Разработчик Java и SQL в Idea Platform. Москва. Можно удаленно. 60 000 — 120 000 ₽.
Дежурный администратор группы эксплуатации 24x7 в ЛАНИТ. Можно удаленно.
Младший CRM-маркетолог в Rambler&Co. Москва.
DevOps в Банк ПСБ. Самара.
Java developer в ЮMoney. Санкт-Петербург.
Больше вакансий
#junior
«Я люблю создавать компоненты везде и всегда, поэтому пользовательские CSS-свойства, также известные как CSS-переменные, являются одной из моих любимых фишек, которая позволяет писать более модульный код. При работе с ними я набил достаточно шишек, выпил литры чая и убил кучу времени. Теперь я мастер, и хочу поделиться своим опытом»
Ох уж эти CSS-переменные
«Некоторое время назад в Интернете ходила статья о неопределённом поведении, просто бесившая коренную аудиторию Rust. Завсегдатаи С и C++ в ответ только бурчали, что кто-то просто не понимает Всех Тонкостей и Нюансов Их Светлейшего Языка. Как обычно, пришло время и мне постараться изо всех сил и вставить мои пять копеек в эту застарелую дискуссию»
Неопределённое поведение в C/C++ и приёмы против лома
🥳 Хабр поздравляет всех с Днём интернавта!
23 августа 1991 года был представлен первый в мире интернет-сайт и к нему был открыт публичный доступ. Этот день теперь называют Днём навигации по Интернету — Днём интернавта (Internaut Day).
Хабр поздравляет с этим знаменательным событием всех пользователей, веб-разработчиков и аналитиков, дизайнеров, инженеров, создателей контента, системных администраторов, программистов и тех, кто создал хотя бы одну страничку в Интернете на любой платформе и в любом виде. Без вас и вашего опыта и фантазии в сети было бы скучно и неинтересно!
В начале августа 1991 года сотрудник CERN, британский учёный и разработчик Тим Бернерс-Ли (изобретатель URL, HTTP, HTML и WWW) создал свой первый веб-сервер на базе компьютера NeXT. Бернерс-Ли запустил первый веб-сайт 6 августа 1991 года, но доступ к серверу и сайту на нём был открыт всем желающим только через 17 дней.
Первый в мире сайт и первый сервер продолжают работать и находятся по адресу info.cern.ch.
23 апреля 1993 года CERN объявила о своём решении сделать программный код, позволяющий создавать веб-страницы, свободным и бесплатным навсегда.
Полиция стала главным пользователем базы распознавания лиц Clearview AI из 30 миллиардов фотографий из социальных сетей
Clearview AI собрала базу данных чужих фотографий без согласия или оповещения тех, кто на них, по сути, поместив под вечный полицейский надзор сотни миллионов человек. Любой, кто размещал свои фотографии в «Фейсбуке» за последние 15 лет, может быть идентифицирован Clearview AI, не имея даже возможности об этом узнать.
При этом правовая природа отношений между правоохранительными органами и Clearview AI остаются неясными. Фактически, из-за того, что это взаимодействие происходит в серой, недостаточно регулируемой зоне закона, полиция таким образом может иметь возможность обходить закон и Конституцию США, приближая тем самым Америку к реальности полицейского государства.