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

Разработка

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

Digital-мероприятия в Москве c 20 по 26 ноября

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

Подборка мероприятий на неделю


image


IT Elements: главное событие осени в ИТ-инфраструктуре и сетях


  • 22 ноября (среда) — 23 ноября (четверг)
  • Ленинская Слобода 26с11, LOFT HALL
  • бесплатно
  • Конференция IT Elements соберет около 1000 экспертов в области построения сетей и инфраструктуры, производителей ИТ-решений и представителей российских компаний.
    Кто выступает: ИТ-директора и инженеры крупнейших компаний (Яндекс, S7, Райффайзен Банк, МТС, Сибинтек и др.)
Читать дальше →
Рейтинг 0
Комментарии 0

Новости

15 примеров задач по SQL на собеседовании по вакансии системного аналитика

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

Привет, Хабр! Если вы читаете этот материал, скорее всего, вы готовитесь к собеседованию. Важным аспектом работы системного аналитика (СА) является умение эффективно работать с базами данных, и SQL — это ключевой инструмент для этого. Будьте готовы, что на техническом собеседовании вас могут попросить назвать операторы SQL, написать запросы для извлечения, обновления или удаления данных, создания новых таблиц и многого другого. Давайте посмотрим на некоторые примеры таких заданий.

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

Мобильная разработка за неделю #515 (13 — 19 ноября)

Время на прочтение 5 мин
Количество просмотров 601
В этом дайджесте для мобильных разработчиков листаем страницы и повышаем качество кода, защищаем и исследуем код, исследуем новый релиз Flutter, делаем дизайн-систему, автотесты, определяем “производительность” рекламных сетей.

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

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

Вы точно хотите пойти программистом в gamedev?

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

Хочу вас огорчить, программисты не делают игры - их делают дизайнеры и арт. Можно уволить программиста и на его место придет другой и через условные месяц-два-полгода начнет закрывать таски не хуже. Если увольняется дизайнер, его монстр, пушка или контент повисает без хозяина и без "видения". Если её не перехватил сосед (а у соседа свой монстр), то в большинстве случаев его работа просто уходит в стол и монстра пишут заново на тех же ассетах и принципах, но заново.

Если увольняется арт-директор, который несет "видение" проекта, то проекту становится очень плохо, в большинстве случаев визуально он изменится до неузнаваемости, хотя ассеты могут быть те же самые. Программисты делают всё, кроме самой игры: рендер, звук, физику, сеть, AI, инверсную кинематику, поиск пути и т.д. Можем подискутировать в комментариях.

O, тепленькая пошла!
Всего голосов 88: ↑87 и ↓1 +86
Комментарии 25

Истории

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

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

В функциональном программировании широко используются так называемые алгебраические типы данных. Такие данные формируются из более простых типов с использованием всего двух операций — "суммы" и "произведения". Использование таких математических операций оказывается очень удобным с точки зрения последующей обработки с помощью сопоставления с образцом ("паттерн-матчинг"/pattern matching).


Помимо удобства при разработке, математичность получающихся структур данных позволяет делать более понятные, прозрачные и логичные конструкции, находящие применение в самых разных предметных областях.


В этой заметке посмотрим на примеры моделирования ошибок и сообщений логирования.

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

Постквантовая защита WhatsApp, новый Matrix 2.0 и PoW-задачи для входа на сайт

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


На Хабре уже упоминали, что протокол Signal получил постквантовую защиту, хотя в краткой новости не вдавались в детали. Но это действительно важное событие с учётом того, что количество пользователей этого протокола превышает 1 млрд человек за счёт WhatsApp.

Signal применяется для криптографической защиты сессий в одноимённом мессенджере, в Google RCS, WhatsApp и др. Опенсорсный протокол можно использовать в любом ПО.

Итак, что изменилось в криптографической подсистеме?
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 2

Настройка ядра Linux с помощью ИИ, согласно ByteDance (Перевод)

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

Linux хорошо подходит для большинства задач, но для того, чтобы справлялся еще лучше -требуется настройка ядра, а это всегда непросто. У ByteDance есть предложение сделать это проще.

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

Еще один практический пример использования ИИ: скучные открытые публичные встречи в краткое саммари

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

На работе последнее время участились случаи супер-пупер-важных голосовых созвонов из-за которых ну просто невозможно сосредоточиться на сложной интеллектуальной работе. Слушаешь час разговора, из которых 5 минут эффективные, а остальное – тоже важная, конечно же, модераторская работа про климат на встрече, про изучение мнение каждого, дискуссия и выработка какого-то общего заключения. А потом еще вычлени действительно важное.  А что, если попробовать переложить эти функции на искусственный интеллект?

 PS: Прокомментирую, (после публикации встретила абсолютно обоснованные удивления), что NDA не нарушаем, конечно же, только публичные открытые встречи и стримы. Слово "совещания" окрашивает информацию в закрытый формат)))

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

Философские размышления на темы информационной безопасности

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

I. Преамбула


Где-то в середине осени мой однокашник по ВА им. Ф.Э.Дзержинского Иванов Валерий Петрович прислал интересный материал по своему видению проблем информационной безопасности. Ранее он уже присылал мне свои труды, один из которых был опубликован на Хабре.
Я с большим удовольствием прочитал присланный материал, многое вспомнил, а о чём-то даже узнал впервые. Основной его постулат заключается в том, что на текущий момент отсутствует теория информационной безопасности и главная проблема заключается в том, что все попытки ее разработки ведутся без опоры на философию. С этим мне было трудно согласиться. Мы долго дискуссировали на эту тему, но мой однокашник остался при своем мнении. Более того, я с позволения автора попросил прочитать присланный материал моего старинного товарища, который принимал участие в подготовке Доктрины информационной безопасности Российской Федерации и имеет ученые степени доктора технических наук и доктора юридических наук. Вот его ответ на мою просьбу:
Володя! Добрый вечер!
Спасибо большое. Работу посмотрел. Восхищён работоспособностью автора и его самоотверженностью. Автор молодец.
Относительно существа работы.
Нет определения информации применительно к концепциям социального взаимодействия.
Это существенно ослабляет ценность сделанных выводов.
В 1927 г. Анри Бергсон получил Нобелевскую премию по литературе за работы в области философии.
Суть его идеи заключается в том, что внутренний мир человека разворачивается не в парадигме «пространство — время», а совершенно в других измерениях. В связи с этим содержание проблемы защиты информации с точки зрения социальной существенно отличается от проблемы защиты информации в субъективном измерении.

Ещё раз спасибо за доставленное удовольствие.
Читать дальше →
Всего голосов 18: ↑11 и ↓7 +4
Комментарии 9

Генерация контрактов OpenApi или прикладной API first: oneOf, anyOf, allOf

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


В продолжение истории с генерацией по спецификации OpenAPI покажу несколько примеров с использованием композиции и полиморфизма.

OneAllAnyOf
Рейтинг 0
Комментарии 1

Коммивояжёр за полином*

Уровень сложности Сложный
Время на прочтение 12 мин
Количество просмотров 2.2K

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

Нет под рукой квантового компьютера? Не беда, читайте дальше и узнаете, как можно решать данную задачу на классическом компьютере за полиномиальное время* от числа вершин.

Читать далее
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 21

Алгоритмические собеседования нужны

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

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

Сразу скажу, что моя статья относится лишь к условному ФААНГу. Многие аргументы из этой статьи теряют значимость в других случаях: если у вас маленькая фирма, мало кандидатов или у вас всего 10 пользователей.

Я утверждаю, что алгоритмические интервью - лучший вариант для ФААНГа из всех пока придуманных.

Читать далее
Всего голосов 40: ↑24 и ↓16 +8
Комментарии 60

Красота не только в коде — как оформлять репозиторий

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

Сегодня мы затронем сторону, отличную от написания кода. Мы займемся оформлением и написанием документации, как правильно делать коммиты и как оформлять код.

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

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

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

Узнать, как оформлять репозитории
Всего голосов 18: ↑13 и ↓5 +8
Комментарии 19

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

Битва пет-проектов
Дата 25 сентября – 30 ноября
Место Онлайн
Яндекс Backend Tour
Дата 13 – 26 ноября
Время 18:00 – 23:00
Место Москва Нижний Новгород Екатеринбург Новосибирск Санкт-Петербург Онлайн
SMM TRENDS
Дата 22 ноября
Время 14:00 – 19:00
Место Онлайн
HighLoad++ 2023
Дата 27 – 28 ноября
Время 9:00 – 20:00
Место Москва Онлайн
Открытая трансляция Главного зала HighLoad++ 2023
Дата 27 – 28 ноября
Время 10:00 – 20:00
Место Онлайн
Business Code Conference
Дата 30 ноября
Время 17:30 – 00:00
Место Москва
Импульс Т1
Дата 1 декабря
Время 12:30
Место Москва Онлайн
YaTalks 2023 — главная конференция Яндекса для IT сообщества
Дата 5 – 6 декабря
Время 9:00 – 23:59
Место Москва Белград Онлайн

Змеиная наука: Химия в Python, часть 1

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

Химия, как наука, всегда требовала точности, глубокого анализа и системного подхода. С развитием вычислительных технологий открылись новые перспективы для химиков: возможность использовать программирование для моделирования, анализа данных и ускорения процессов исследований. В этой статье мы погрузимся в мир химии, представленный через призму Python - мощного языка программирования, который стал надежным инструментом для химиков в их исследованиях. Мы рассмотрим ключевые библиотеки, инструменты и подходы, позволяющие применять Python для анализа химических данных, создания моделей молекулярной структуры и многого другого. Давайте вместе исследуем, как Python становится неотъемлемой частью химических исследований, расширяя горизонты возможностей в этой захватывающей научной области.

Вперед!
Всего голосов 9: ↑5 и ↓4 +1
Комментарии 12

Подходит ли data class для JPA entity?

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

Использовать data class для JPA Entity оправдано, если id записи генерится на стороне приложения и избыточно, если id генерится на стороне базы данных, так как придется переопределять методы equals и hashcode.

Подробнее
Всего голосов 2: ↑1 и ↓1 0
Комментарии 0

Анонс Dart 3.2

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

Улучшены языковые возможности и опыт разработчиков, а также обновлена информация о веб-приложениях и Wasm

Авторы: Kevin Moore & Michael Thomsen

Сегодня мы анонсируем Dart 3.2, в котором появилась новая языковая функция для non-null продвижения приватных конечных полей, улучшен опыт разработчиков за счет новых возможностей взаимодействия, поддержка расширений в DevTools, а также обновлен дорожный план веб-разработки, включающий поддержку Wasm (aka WebAssembly).

Что новенького!
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 4

PyTelegramBotAPI на примере проекта сбора обратной связи #2

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

Эта вторая статья из серии. В ней мы разберём сохранение данных, функцию register_next_step_handler, напишем часть бота сбора обратной связи.

Эта статья направлена именно на новичков, в ней я постараюсь объяснить тему ботов на примере сбора обратной связи.

Читать далее
Рейтинг 0
Комментарии 0

Swift Utilities — Equatable для сложных Enum

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

За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.

Мне часто встречалась ситуация когда надо подписать enum со вложенными типами под протокол Equitable и приходилось реализовывать его функции

Чтобы упростить жизнь и каждый раз не писать сложные static func ==(lhs: T, rhs: T) -> Bool Можно подписать enum под protocol ComplexEquatable

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

Swift Utilities — Потокобезопасное свойство

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

За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.

При разработке очень важна безопасность данных при параллельном доступе к ним. В этой статье я покажу , как создать потокобезопасное свойство с использованием свойства-обёртки @SynchronizedLock.

Читать далее
Рейтинг 0
Комментарии 2

Swift Utilities — Упрощаем работу с UserDefaults

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

За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.

Работа с UserDefaults может быть удобной и простой, в этом поможет обертка UserDefaultsWrapper. Давайте разберемся, как она работает.

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