Обновить
1076.24

Программирование *

Искусство создания компьютерных программ

Сначала показывать
Порог рейтинга
Уровень сложности

Переплачиваете за хостинг Cron Jobs? Тогда мы идём к вам

Время на прочтение3 мин
Количество просмотров1.8K

Не всегда код должен работать непрерывно. И обидно арендовать целый сервер, когда скрипт работает 10 минут в день. Особенно сервер с большим количеством ОЗУ и CPU.

В этой статье мы расскажем, как запускать скрипты экономически эффективнее, чем на VDS, и как настроить работу кода по расписанию.

Читать далее

Полнотекстовый поиск на Rust с помощью библиотеки Tantivy

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров2K

Привет, Хабр!

Cегодня я хочу поделиться с вами опытом работы с библиотекой Tantivy — это полнотекстовый поисковый движок, написанный на Rust. Если вы когда‑либо задумывались о том, чтобы встроить поиск в свое приложение на Rust (вместо того чтобы поднимать отдельный ElasticSearch или Solr), то Tantivy неплохой такой кандидат. Библиотека вдохновлена Lucene (тем самым движком, на котором работают Solr и ElasticSearch) и дает схожие возможности: индексирование текста, быстрый поиск по ключевым словам, поддержку сложных запросов.

Смотреть пример

Почему я думаю, что инженеры прошлого писали более человечный код

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров19K

За годы в разработке я всё чаще ловлю себя на мысли, что современные программы - словно построены из пластмассы: аккуратные, масштабируемые, но холодные. И когда я читаю старые исходники - с комментариями, с юмором, с уважением к читателю - понимаю: там был человек. Эта статья - не попытка идеализировать прошлое, а скорее разговор о том, почему код, написанный сорок лет назад, часто выглядит честнее и человечнее, чем многое из того, что мы создаём сегодня.

Читать далее

Взаимодействие с пользователем в макросах «Р7-Офис». Часть 1. Вводная

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров537

В  моих планах на эту серию статей   - раскрыть вам некоторые, на мой взгляд,  не самые  очевидный аспект при написания макросов  для офисного пакета  «Р7-Офис» версии десктоп. А именно: как пользователь может взаимодействовать с макросом привычным ему, оконным  способом.  Думаю, многое из мною здесь написанного вряд ли будет вами легко найдено в открытом доступе.  Кое – что конечно  имеется в «секретных» Телеграмм чатах.  Но некоторые сведения, вы наверное не найдёте даже там.  Я надеюсь,  изложенные  в этих  статьях мысли, будут стоить потраченных вами  усилий на их чтение. Ну а если вам не интересны мои рассуждения на тему текущего положения дела с макросами  в редакторе «Р7», то смело пропускайте эту вводную статью и ждите следующих практических.

Читать далее

Книга: «Строим LLM с нуля»

Время на прочтение3 мин
Количество просмотров11K

Привет, Хаброжители! Говорят, что физик Ричард Фейнман однажды сказал: «Я не понимаю того, чего не могу создать». Основываясь на этом же важном принципе, автор бестселлеров Себастьян Рашка шаг за шагом ведет вас к созданию LLM в стиле GPT, которую вы сможете запустить на своем ноутбуке. Это увлекательная книга, которая охватывает каждый этап процесса — от планирования и кодирования до обучения и тонкой настройки.

Читать далее

Как Windows покорила мир. История самой популярной ОС

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров8.1K

Когда включаешь компьютер, видишь привычное окно с кнопкой «Пуск» и даже не задумываешься, что это результат десятков лет борьбы — технической, рыночной и даже судебной и политической. Операционная система Windows давно стала синонимом персонального компьютера. В этой статье мы разберём, как Microsoft смогла создать удобную систему и сделать её стандартом для всего мира: какие шаги, решения и ошибки привели Windows к господству на миллионах машин.

Читать далее

Великий крах качества программного обеспечения: как мы нормализовали катастрофу

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров38K

Мы переживаем величайший кризис качества программного обеспечения в истории вычислительной техники. Калькулятор теряет 32 ГБ оперативной памяти. ИИ-помощники удаляют рабочие базы данных. Компании тратят 364 миллиарда долларов, чтобы избежать решения фундаментальных проблем.

Читать далее

Почему Google Переводчик «ломает» React (и другие веб-приложения)

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров2.9K

Команда JavaScript for Devs подготовила перевод статьи о том, почему Google Переводчик может ломать React и другие современные веб-приложения. Причина в том, что расширение вмешивается в DOM, нарушая работу виртуального DOM и вызывая ошибки вроде removeChild и insertBefore. Автор показывает реальные кейсы, обходные пути и поднимает важный вопрос: имеет ли фреймворк право на полный контроль над DOM?

Читать далее

Ссылочный тип данных в JavaScript: ключ к эффективному коду

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров7.6K

Когда вы работаете с объектами и массивами в JavaScript, может показаться, что они ведут себя странно: изменение одной переменной неожиданно влияет на другую. Все это — следствие работы ссылочных типов данных.

Привет, Хабр! Меня зовут Александр Дудукало, я автор базового курса по JavaScript.  В этой статье я простыми словами расскажу, как работают ссылки, почему это важно знать и как правильно копировать объекты.

Читать далее

Gemini за полчаса решила то, что не осилили топовые студенты-программисты на олимпиаде

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров24K

Привет, Хабр! Меня зовут Кирилл Пшинник, я научный сотрудник Университета Иннополис и CEO онлайн-университета zerocoder.ru. Поговорим о прорыве, совершенном Google DeepMind, и о том, можно ли это вообще считать прорывом. 

В сентябре нейросети «обскакали» студентов на Международной студенческой олимпиаде по программированию в Баку. Они были во внеконкурсе, но если бы участвовали на общей основе, то GPT-5 заняла бы первое место, решив 12 заданий из 12, а Gemini 2.5 Deep Think — второе с 10 заданиями из 12. И самое интересное: всего за полчаса «гугловская» нейросеть справилась с задачей «C», которую не смогла решить ни одна из человеческих команд. 

Читать далее

Провели опрос среди 2000 ИТ специалистов: «Микросервисы побеждают 4:1, low-code — 5:1». Но почему не всё так однозначно?

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров5K

Привет, Хабр!

В начале октября на XIV Международной IT-конференции «Стачка» в Санкт-Петербурге — одном из крупнейших профессиональных событий российского IT-комьюнити — мы решили провести эксперимент. Что, если предложить разработчикам публично выбрать сторону в вечных холиварах? Например: Микросервисы или монолиты? Low-code или только ручной код?

Читать далее

Cursor: Обзор и возможности

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров18K

Cursor — это не просто новая IDE, а умная среда разработки с полноценными AI-агентами, способная понимать проект, анализировать код и помогать разработчикам, аналитикам и продакт-менеджерам работать быстрее и точнее. В этой статье я подробно расскажу, как Cursor помогает ускорять разработку, автоматизировать рутину и улучшать качество кода за счёт интеграции искусственного интеллекта в повседневные процессы.

Читать далее

Распродажа в издательстве «Питер»

Время на прочтение1 мин
Количество просмотров8.6K

Привет, Хаброжители!

O’Reilly становится ближе! На книги из категории O'Reilly и Head First O'Reilly действуют скидки, теперь ваши любимые бестселлеры доступны ещё выгоднее!

Читать далее

Ближайшие события

Разработал чат бота для программистов BayLang AI

Время на прочтение1 мин
Количество просмотров945

Привет Хабр! Меня зовут Ильдар. Я создал чат бота помощника для программистов.

Я сделал видео обзор этого чат бота

Читать далее

Единственная шпаргалка по ReactJS, которая вам нужна

Уровень сложностиПростой
Время на прочтение22 мин
Количество просмотров11K

Добро пожаловать в ещё одну шпаргалку по React! Но подождите, это не то, что вы подумали — не просто набор случайных примеров кода и банальных объяснений, как в других шпаргалках.

Обещаю, это будет по-настоящему полезно. Мы вместе разберёмся, как работает ReactJS, и как реализованы все его крутые фичи «за кулисами», с помощью интерактивных демо, которые я специально подготовил для вас. Это поможет вам реально понять, как всё устроено, и применять знания на практике.

Перейти к разбору ReactJS

Команда «жыбий рыр»: Войти в IT через хакатоны

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.4K

Всем привет! Меня зовут Михаил — я студент и backend‑разработчик из Ростова‑на‑Дону. С 2021 года я хожу на хакатоны и уже принял участие в 16-ти, многие из которых были выиграны нашей командой. Этой статьей я хочу на собственном примере показать почему хакатоны — это классно и зачем в них участвовать начинающим специалистам.

Читать далее

3 инструмента, которые автоматически превращают код Python в формулы LaTeX

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров808

Команда Python for Devs подготовила перевод статьи о том, как превратить код Python в элегантные математические формулы прямо в Jupyter-ноутбуке. Если вы строите финансовые модели, алгоритмы или научные расчёты — LaTeX поможет оформить их профессионально. В статье разбираем четыре инструмента: IPython.display.Latexдля ручного рендеринга, handcalcs для пошаговых вычислений, latexify-py для автоматического преобразования функций и SymPy для символьной математики.

Читать далее

Combine – швейцарский нож iOS-разработчика. Или нет?

Время на прочтение11 мин
Количество просмотров2.1K

Привет! Меня зовут Антон, я iOS-разработчик в Банки.ру. Когда я только начинал изучать Combine, он казался для меня магией. Пара команд – и вот у тебя уже есть какие-то данные. Чтобы Combine перестал оставаться черным ящиком давайте заглянем внутрь. Эта статья – мое виденье этого фреймворка.

Небольшая сводка, Combine – фреймворк для работы с асинхронными событиями в декларативном стиле. Он помогает разработчикам управлять потоками данных, избавляя от множества колбэков, ручного управления очередями и других сложностей, связанных с асинхронностью.

Давайте рассмотрим Combine изнутри!

Читать далее

Kubernetes кластер на миллион узлов. Обзор проекта k8s-1m

Уровень сложностиСредний
Время на прочтение36 мин
Количество просмотров892

Команда Go for Devs подготовила перевод k8s-1m — кейса о том, как не догадки, а измерения двигают пределы Kubernetes. Ключевые идеи: изоляция QPS по типам ресурсов, смягчение гарантий хранения для эфемерных данных, и шардирование планировщика. Полезно всем, кто проектирует крупные кластеры или хочет работать с ними.

Читать далее

Паттерны ООП, так не издевались даже… Структурные шаблоны с примерами на Java

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров16K

Привет! Меня зовут Бромбин Андрей. В этой статье разберём структурные паттерны ООП. Используя примеры на Java и простые метафоры, поймём природу шаблонов: как они работают, зачем нужны и чего требуют от нас взамен. Почему дизайн называют удачным при использовании паттернов по назначению, и почему так бывает не всегда.

Книг и статей о шаблонах проектирования, как песен о любви, потому что в разработке эта тема волнует каждого начинающего и не очень специалиста. Помните, как пели Чиж и Ко: «а не спеть ли мне песню о любви?» — давайте и я попробую.

Шаблонизироваться

Вклад авторов