Как стать автором
Обновить

Разработка

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

Неразрешимые проблемы программирования

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

Неразрешимые задачи в программировании определены очень строго. Фактически, для каждой такой задачи существует доказательство, что её нельзя решить на машине Тьюринга.

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

Читать далее
Всего голосов 28: ↑28.5 и ↓-0.5+29
Комментарии24

Бесшовность 2.0: как работает шардирование в Сбере

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

Если у вас не просто большая компания, а целая экосистема с разными сервисами, IT-инфраструктура должна обеспечивать бесшовность. Клиенты и сотрудники могут входить в систему с разных устройств, но изменение информации в одном канале должно отображаться в других, а целостность данных сохраняться, даже если вход совершен в двух каналах параллельно. И в идеале — так, чтобы клиент не видел «внутренней кухни».

Меня зовут Владимир Паршин, я ведущий ИТ-инженер в СберТехе. Расскажу, как выстроена работа с бесшовностью в Сбере.

В статье будет про драматичное прошлое, Джастина Бибера и балансировку нагрузки. А главное — про то, какие решения СберТеха под капотом банка сейчас обеспечивают обработку данных огромного числа клиентов и сотрудников.

Читать далее
Всего голосов 13: ↑13.5 и ↓-0.5+14
Комментарии6

Потенциальные проблемы с автоинкрементным ключом. MySQL <8.0, PostgreSQL

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

В данной публикации я поделюсь двумя основными причинами, по которым я предпочитаю избегать использования автоинкрементных полей в PostgreSQL и MySQL в будущих проектах. Вместо этого я предпочитаю использовать UUID-поля, за исключением случаев, когда есть очень веские аргументы против этого подхода.

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии23

История терминала как инструмент продуктивности

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

Если вы достаточно часто работаете в командной оболочке/терминале — это значит, что со временем история команд станет вашим личным хранилищем знаний, вашим справочником по командам и по документации. Возможность эффективно пользоваться этим личным хранилищем полезной информации может сильно повысить продуктивность вашего труда. Поэтому представляю вашему вниманию несколько советов относительно того, как оптимизировать настройки истории оболочки и как пользоваться этим инструментом на полную мощность.

Читать далее
Всего голосов 8: ↑10 и ↓-2+12
Комментарии2

Истории

Firefox остаётся самым быстрым браузером

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


Почти год назад случилось знаковое событие: впервые в истории Firefox обошёл Chrome по скорости работы.

Многие помнят, что с момента выхода в 2008 году Chrome отличался высокой производительностью, а Firefox на его фоне выглядел тяжеловесным и страдал от утечек памяти. Но постепенно Mozilla исправила ситуацию, так что в 2023 году браузеры наконец поменялись местами.

Единственное сомнение может вызвать объективность тех тестов, всё-таки Speedometer 2.0 — довольно старый набор 2018 года. Может, он не соответствует современному разжиревшему вебу? Что ж, теперь увидела свет новая версия Speedometer 3.0, поэтому взглянем на более достоверную и объективную картину: какой браузер быстрее на самом деле?
Читать дальше →
Всего голосов 89: ↑96 и ↓-7+103
Комментарии121

Недельный геймдев: #169 — 14 апреля, 2024

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

Из новостей: компанию авторов Genshin Impact оценили в 23 миллиарда долларов, Blizzard договорилась с NetEase о возобновлении сотрудничества, что показали на презентации The Triple-i Initiative.

Из интересностей: документалочка про создание Pentiment, почему Risk of Rain вернулась к корням, теорвер не нужен в играх, создаём изометрические уровни игры с помощью Stable Diffusion, приключения с мешлетами.

Читать далее
Всего голосов 10: ↑10.5 и ↓-0.5+11
Комментарии0

Под капотом VK Teams: с чего начиналось приложение и к чему пришло сейчас

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

VK Teams — защищенное пользовательское суперприложение для совместной работы сотрудников с любого устройства. Оно помогает компаниям организовывать коммуникацию, совместную работу команд, обмен данными и не только. Но так было не всегда — решение изначально имело небольшую функциональность и создавалось в качестве внутреннего мессенджера для сотрудников внутри VK.

Меня зовут Евгений Макархин. Я архитектор VK Teams. В этой статье я расскажу, как мессенджер VK Teams прошел путь от внутреннего решения до супераппа и как менялась его архитектура.

Читать далее
Всего голосов 7: ↑9 и ↓-2+11
Комментарии25

ViewModels в Android: «за» и «против»

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

В этой серии статей мы рассмотрим лучшие практики использования ViewModels в Android с акцентом на основных принципах повышения качества кода. Рассмотрим роль ViewModels в управлении состоянием пользовательского интерфейса и бизнес-логикой, стратегии для ленивого внедрения зависимостей и важность реактивного программирования. Кроме того, обсудим общие подводные камни, которых следует избегать, такие как неправильная инициализация состояния и обнародование изменяемых состояний.

Читать далее
Всего голосов 12: ↑13 и ↓-1+14
Комментарии0

Полигон для творчества за 1500 р. Часть 2. Структура платы, 256 UARTов и расширение спектра

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


Приветствую вас, друзья!

Продолжаем знакомство с платой SX100. Рассмотрим структуру и некоторые любопытные особенности платы, узнаем, как улучшить ЭМС с помощью расширения спектра. Сделаем пару сотен UARTов и доработаем плату.

Вперёд к экспериментам!
Читать дальше →
Всего голосов 28: ↑32.5 и ↓-4.5+37
Комментарии10

Использование LLM в автоматизации рутинных задач

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

Всем привет!

На связи Георгий Бредис, Deep Learning Engineer из команды Intelligent Document Processing в SberDevices. Наша команда занимается задачами автоматизации бизнес-процессов путем извлечения информации из неструктурированного контента и созданием сервисов суммаризации и поиска на основе LLM. В данный момент мы исследуем новые способы извлечения информации из интерфейсов, что открывает новые возможности для автоматизации процессов в сфере RPA.

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

Читать далее
Всего голосов 15: ↑18 и ↓-3+21
Комментарии5

Как и зачем мы строили 3D-модели достопримечательностей на Картах

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

За последний год мы добавили много нового на Яндекс Карты: например, высокодетализированные дороги с подробной  разметкой, растительность, а ещё совершенно новые, цветные и детальные 3D-модели достопримечательностей. Их можно увидеть, приблизив, например, Пушкинский музей, главное здание МГУ, Казанский собор и другие известные места во многих городах России и мира. 

Привет, меня зовут Миша, я старший дизайнер продукта в Яндекс Картах. В этой статье я расскажу об особенностях запуска 3D-моделей достопримечательностей на Картах, о том, как они помогают пользователям, и, конечно, о тонкостях процесса дизайна и производства.

Читать далее
Всего голосов 22: ↑24.5 и ↓-2.5+27
Комментарии20

Рецензия на новую книгу «Баг-трекинг: локализация и оформление дефектов» Ольги Назиной

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

Ольга Назина — признанный автор книг и учебных курсов по тестированию ПО. Удивительный мультяшный стиль изложения с сотнями картинок‑комиксов помогает легко воспринимать сложные темы, постигать азы и развиваться в профессии специалиста по QA. Новая книга, вышедшая в 2024 году, знакомит с тонкостями регистрации и отслеживания статуса багов в процессе разработки приложений. Будет безусловно полезна начинающим тестерам, слушателям ИТ‑курсов, а также всем, кто интересуется системным подходом к тестированию ПО.

Читать далее
Всего голосов 13: ↑14 и ↓-1+15
Комментарии0

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

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

— У нас дыра в безопасности.

 — Слава богу, хоть что‑то у нас в безопасности...

Информационные технологии развиваются семимильными шагами, но одно остается стабильным — наличие «дыр в безопасности». Мы проанализировали результаты более 100 прошлогодних проектов и пришли к выводу, что многие компании все еще допускают критичные ошибки и оставляют большое количество «дыр», открывающих для хакеров путь к внутренней инфраструктуре, персональным данным пользователей и возможностям реализации различных угроз информационной безопасности.

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

Полюбопытствовать
Всего голосов 15: ↑15.5 и ↓-0.5+16
Комментарии3

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

Первый опенсорсный LTE-сниффер с полной функциональностью

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

Базовая станция LTE

В интернете много инструкций, как оборудовать собственную станцию LTE. Сети 4G становятся массовой и доступной инфраструктурой для передачи данных. И важно понимать, какие угрозы безопасности существуют в этой области, как перехватывать и анализировать трафик.

Устройства для прослушивания трафика LTE до недавнего времени имели ограниченную функциональность и не могли анализировать все служебные данные. Однако в прошлом году инженеры из Корейского института передовых технологий (KAIST) опубликовали исходный код первого в мире опенсорсного сниффера LTESniffer с полным набором функциональных возможностей, включая декодирование трафика PDCCH и PDSCH.
Читать дальше →
Всего голосов 20: ↑23 и ↓-3+26
Комментарии9

Создаем свой аналог sqlite c нуля. Часть #1

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

Это цикл статей где мы создаем базу данных с нуля. За образец автор взял sqlite, так как простая база данных, где вся база данных храниться в одном файле и меньше фич по сравнению с mysql.

Мы ответим на эти вопросы: В каком формате данные будут сохранены(в памяти или на диске), Когда они должны сохраняться на диск? Почему первичный ключ(primary key) является единственным на одну таблицу?, и так далее

В этой части мы создадим REPL, которое принимает команды, обрабатывает ошибки.

Читать далее
Всего голосов 13: ↑12.5 и ↓0.5+12
Комментарии9

Не то, что кажется: 15 наивных вопросов об айсбергах + конкурс

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров5.2K
Примерно раз в 2–3 года мне удаётся увидеть ледоход на Волге. Это впечатляющее зрелище: льдины скрипят, поют, наезжают друг на друга, сталкиваются и отталкиваются на считаные секунды. Откровенно говоря, выглядит всё это не только величественно, но и небезопасно: кажется, что льдины готовы затереть всё живое и неживое на своём пути. Но дух захватывает.

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

А что вообще мы знаем об айсбергах, кроме истории с «Титаником»? 

Автор — чудесный Антон Гудим
Читать дальше →
Всего голосов 41: ↑49.5 и ↓-8.5+58
Комментарии9

Постфиксный калькулятор на Haskell

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

Можно ли внедрить в Haskell постфиксный калькулятор?

begin push 1 push 2 add end
begin push 1 push 2 push 3 add mul end

На первый взгляд такой код на Haskell не может работать. Функция begin должна иметь произвольное количество аргументов, а Haskell является языком со статической типизацией. Но на самом деле, для написания вариативных (polyvariadic) функций достаточно полиморфизма.

Читать далее
Всего голосов 8: ↑10 и ↓-2+12
Комментарии0

Client-side RCE в Telegram Desktop. Разбор с POC

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

Недавно некоторые СМИ писали о "новой уязвимости" в приложении Telegram Desktop для Windows, которая позволяет злоумышленнику исполнять произвольный код при открытии чата с ним, если у вас включена автозагрузка файлов (она включена по умолчанию).

Разбор уязвимости, реальный proof of concept и пару слов о том, как защититься, ждут вас под катом.

Читать далее
Всего голосов 27: ↑29.5 и ↓-2.5+32
Комментарии43

Max Payne: хороша ли неонуарная классика сегодня?

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

Max Payne… как много в этих словах…
Если, вспоминая Fallout, ты сразу «слышишь» слова Рона Перлмана «War. War never changes», то при одной лишь мысли об истории Макса в голове тотчас начинает играть заглавная мелодия проекта – грустная, меланхоличная и цепляющая за живое. Любой из нас, заставший Max Payne в начале нулевых, помнит чувство восхищения от увиденного. Еще недавно Джон Кармак – создатель Doom – говорил, что сюжет в видеоиграх нужен не более, чем в порно. Но вот вышел Half-Life, о сюжете которого можно писать книгу, а за ним и Max Payne, который, подобно драматическому роману, цепляет своим повествование и стилем, не отпуская до финальных титров.

Кто-то на волне фурора, который произвела Матрица, был в восторге от прорывного геймплея и возможности замедления времени, другие же, устроив в игре красивую перестрелку, ощущали себя частью боевой сцены, поставленной режиссером Джоном Ву. Но все они, проникнувшись атмосферой неонуара, надолго пропадали в мрачном Нью-Йорке, желая узнать развязку истории и совершить вместе с Максом вендетту, ставшую за часы геймплея делом личным не только для главного героя, но и для игрока.

Что можно сказать точно, проект мало кого оставил равнодушным, собрав огромное количество наград и восторженных оваций от геймеров и игровой прессы, в одночасье прославив небольшую студию из Финляндии.

Сегодня я хочу рассказать про Max Payne и вспомнить, почему она смогла оставить такой след в индустрии и, что важнее, в сердцах игроков по всему миру.
Читать дальше →
Всего голосов 37: ↑43 и ↓-6+49
Комментарии40

Больше ИИ-инструментов, хороших и разных: Google представила помощника для написания кода

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

Всё больше компаний создают разнообразные ИИ-модели, и, конечно, крупные корпорации — впереди планеты всей. На днях Google представила свой новый проект — Gemini Code Assist, инструмент, который помогает разработчикам писать код. О том, что это за новинка и какие ей дали возможности — читайте под катом.

Читать далее
Всего голосов 8: ↑9.5 и ↓-1.5+11
Комментарии7