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

Разработка

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

Простой сервис аутентификации. SpringBootSecurity

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

Напишем простой сервис аутентификации с выдачей JWToken. Для реализации будем использовать Java 17, SpringBoot 3.2.0, h2, Maven в памяти.

GitLab

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

Новости

АБ тесты и подводные камни при их автоматизации

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

Задача оценки нововведений в онлайн и мобильных приложениях возникает повсеместно. Один из наиболее надёжных и популярных способов решения этой задачи - двойной слепой рандомизированный эксперимент, также известный как АБ-тест.

На тему АБ-тестирования доступны как статьи на Хабре, так и целые книги (неполный список литературы в конце). В основе АБ-теста лежит следующая идея - случайно разделить пользователей на две или более группы, в одной из которых исследуемая функциональность выключена, а в других - включена. Затем можно сравнить метрики и сделать выводы.

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

Сможем ли мы контролировать сверх-интеллект? – новая статья от OpenAI

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

14 декабря OpenAI опубликовали статью, в которой показывают, что люди смогут улучшать полезность потенциально созданного в будущем сверх-интеллекта несмотря на то, что будут глупее него. При этом, судя по всему, людям будет очень сложно оценивать ответы сильного ИИ,и RLHF в нынешнем его виде будет работать не слишком хорошо.

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

Мамкин программист про ИИ, «программисты скоро будут не нужны» и прочие страшилки

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

Недавно на Хабре вышел перевод статьи под названием: «Классическое программирование на грани вымирания» с постапокалиптической картинкой, где автор буквально пишет, что «Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании падения метеорита». Если коротко, данная статья о том, что классические компьютерные науки становятся менее актуальными на фоне развития искусственного интеллекта и современных технологий. Автор рассказывает о своем опыте в области компьютерных наук, полученном в 80-х и 90-х годах, и подчеркивает, что, несмотря на то что классические подходы к программированию и алгоритмам всё еще актуальны, но в будущем (горизонт автор не указывает), скорее всего, ИИ с самообучаемыми системами заменит программистов. В будущем студентам факультетов компьютерных наук не нужно будет изучать традиционные навыки, такие как работа с двоичными деревьями или программирование на С++, обучение таким вещам станет неактуальным, потому что от инженеров будущего будет требоваться обучение и запуск генеративных моделей.

Я читаю Хабр довольно давно и очень люблю этот ресурс. При этом здесь регулярно возникают статьи, типа «Если хочешь программировать, начни с языка Си» или наоборот, «Python — это простой язык, с которым любой идиот может разобраться» (статьи такой направленности иногда нещадно минусуют). Есть также и третья категория статей о том, что программисты скоро станут попросту не нужны (как статья, которая недавно опубликована).

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

Истории

Процесс разработки приложения Python по дедубликации файлов с использованием контрольных сумм

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

История начинается с несложной задачи и небольшого Python приложения.

Несложная задача это периодическое удаление дубликатов файлов из указанных каталогов. Изначально она возникла из следующих условий. Есть домашнее хранилище фотографии и видео, в котором определен порядок хранения файлов по тематике, датам и т. д. И есть источники для пополнения этого хранилища: смартфоны, фотоаппараты, контент из сети, электронной почты и т. д. Синхронизации источников контента и хранилища нет. Периодически со смартфонов и фотоаппаратов скидываются все хранящиеся там файлы на жесткий диск компьютера, и получается набор каталогов, в которых оказываются как те файлы, что уже есть в хранилище, так и новые файлы. И чтобы поместить в хранилище новые файлы, их нужно каким‑то образом отделить их от тех, что уже сохранены. Самый простой способ, который пришел в голову, это удалить дубликаты из каталогов «пополнения», а с остатком уже работать.

С источников файлы не удаляются пока в этом не появится острая необходимость, в первую очередь потому, что это «естественная» резервная копия. Ну и бывает удобно иметь какие‑то фотографии и видео у себя под рукой.

В процессе своего повествования, постараюсь пояснить принятые мной решения, некоторые из которых прямо напрашиваются на решение иным способом.

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

Попытка запустить стартап на европейском рынке спортивных событий

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

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

Сразу отмечу, что эта статья является своего рода продолжением моей первой статьи, поэтому все события, описываемые здесь, берут начало после публикации той. На этот раз это просто история о том, что было после того, как я поделился с вами своей гипотезой и планами в отношении неё. Собралась ли тогда команда? При чём тут Европа? Какие задачи решены? Каков результат? Давайте разбираться, но обо всём по порядку.

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

Kubernetes, ищем базу

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

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

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

Зачем на камере и видеорегистраторе нужен криптоблок и как его восстановить

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


Представьте себе ситуацию, когда на камере наблюдения испортилась флэшка с прошивкой, и камера нуждается в ремонте. Берём копеечную флэшку и меняем, а прошивку скопируем с точно такой же камеры. Пять минут рекламы, и теперь камера работает и показывает видеопоток вновь. Но есть нюанс. Дело в том, что она теперь является полной копией камеры-донора прошивки. Это и ежу понятно, они же и были одинаковыми — возразите вы. Были одинаковыми всем, кроме таких настроек, как MAC-адрес и идентификатор в облаке, куда камера сливает свой видеопоток. А теперь они совсем близнецы.

Когда распространились камеры с облачным доступом, массово решились такие проблемы, как доступ к камере без внешнего IP-адреса или с динамическим адресом. Теперь стало ненужным использовать проброс портов на роутере, VPN, динамический DNS, требующие целой инфраструктуры для доступа к камере. Запускай себе приложение, и оно получит доступ к видеопотоку или к архиву через облако. Производители камер в то время пробовали различные варианты, которые часто заканчивались печальными результатами, как с камерами Foscam, связанные с тем, что производитель выбрал путь простоты и дешевизны, а пользователи за него проголосовали рублём. Камеры становились легкодоступными, дешёвыми и, в конце концов, собой просто заполонили весь мир, проникнув в магазины, детские сады, зоопарки, аэропорты, бары, подъезды, офисы, входы, выходы, проходы, пароходы и даже в спальни с туалетами. В крупнейшем каталоге камер insecam.org тогда были сотни тысяч камер со всего мира.
Что такое криптоблок в прошивке, зачем он нужен и как его заменить
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 5

Генезис-файлы. Часть I: eCash Дэвида Чаума и зарождение мечты шифропанков

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

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

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

Ускорение игрового 2D движка Flame до стабильных максимальных FPS на телефонах и ПК

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

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

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

Сборка мусора в JavaScript

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

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

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

Погнали собирать мусор!

Собрать мусор
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 1

Уменьшение размера файла с игрой в Godot 4

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

При экспорте своей первой простой аркадной игры в Godot 4.1 я столкнулся с проблемой. Не смотря на простоту проекта и присутствие лишь небольшого количества содержимого: несколько спрайтов и небольшого разрешения фонов, игра весила 67 мб. Я полез гуглить, в чем проблема и как можно ужать итоговый exe файл.

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

Zenject: приемы и хитрости

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

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

У Zenject-а есть очевидно лишние (привет, Signals) и запутанные модули и возможности. Зачастую, чтобы сделать все красиво, приходится хорошенько покопаться в устройстве DI-контейнера.

Рассказываю о способах приготовления тех фич и тонкостей Zenject, которые за несколько лет разработки нашел полезными и постоянно применял.

копнуть поглубже
Рейтинг 0
Комментарии 0

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

Обзор одноцелевых дистрибутивов Linux

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

Многие из тех, кто устанавливает дистрибутив Linux для одной-единственной цели, например, для работы с контейнерами, предпочитают развёртывание по принципу «поставил и забыл». На конференции FOSDEM 2023, состоявшейся в Брюсселе, было представлено несколько проектов из разряда таких «минимальных дистрибутивов Linux». Все они — Fedora CoreOSUbuntu CoreopenSUSE MicroOS и Bottlerocket OS – решают такие задачи по-своему. Из выступлений на FOSDEM можно составить интересную перспективу, демонстрирующую, в чём эти проекты отличаются на уровне применяемых подходов.
Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 4

Изучаем и парсим биржевую информацию Мосбиржи. Наш первый парсер на Python, разбор кода

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

Как устроен ISS MOEX (информационно-статистический сервер Московской Биржи) и как можно парсить с него биржевые данные. Разбор кода программы. Это первое знакомство с MOEX, дальше будем изучать куда как более актуальный для алготрейдинга продукт мосбиржи - ALGOPACK. Однако перед этим общее знакомство с архитектурой iss moex должно быть. Стратегическая задача - использовать данные для алготрейдинга (работы торгового робота) напрямую с московской биржи.

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

Я нашёл сид Мэла (melharucos) в Майнкрафте

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

Да, название этой статьи - не обман. Я действительно сумел найти сид хардкорного выживания Мэла. Сам он притом с нами сидом не поделился.

Сам сид: 3483555484082087413

Читать далее
Всего голосов 39: ↑29 и ↓10 +19
Комментарии 13

Как мы выстроили эффективный онбординг для команды системных аналитиков, чтобы вырасти в 10 раз

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

Пару лет назад в отделе, ответственном за развитие корпоративного хранилища данных «Магнита», работало 5 системных аналитиков: они полностью закрывали весь набор задач, которые перед ними стояли. Но в 2021 году случился резкий рост: данные стали использоваться не несколькими департаментами, как было до, а сразу всей компанией — для масштабных проектов.

Рассказываю, как мы перестроили процессы онбординга для команды, выросшей в 10 раз.

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

Facebook выпустил новую CSS-in-JS библиотеку — StyleX

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

Верней оформил 5 декабря 2023 года оформил для всех то, чем его разработчики пользуются уже давно. Позиционируется данный помощник для js-подобных фреймворков типа React, Preact, Solid, lit-html и Angular, однако оперирующие html шаблонами Vue и Svelte тоже могут задействовать StyleX, но после предварительной специальной её кастомизации.

Код в React в итоге выглядит примерно так:

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

Протезы MODESTA: из гаражных изобретателей в резиденты SKOLKOVO

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

Здравствуйте, дорогие друзья.

Меня зовут Абрамов Роман, являюсь инженером‑разработчиком и со‑основателем компании по производству протезов «MODESTA». С самого детства являюсь заядлым радиолюбителем, в любое свободное время бежал к паяльнику. Тяга к технике прошла со мной через года, в юности участвовал во всех научно-технических конкурсах, а однажды попал на защиту проекта в Госдуму РФ.

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

Читать далее
Всего голосов 26: ↑18 и ↓8 +10
Комментарии 7

Так всё-таки нужны программисту алгоритмы или нет?

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

Когда я был маленький, то на меня снизошла милость божЫя и ниспослала мне две книжки. Одна книжка была про бейсик для студентов каких-то там ВУЗов, а вторая - «Паскаль в иллюстрациях». По одному из абзацев первой книжки я в принципе научился программировать в пятом классе - там был мозголомающий отрывок с программой, заставляющей нолик летать по экрану, отталкиваясь от стенок. Вторая книжка, отданная мне соседом-алкашом, познакомила с алгоритмами. На дворе стояли 90-е — начало компьютерной эры человечества. Компьютера у меня при этом не было — я видел его пару раз в неделю на компьютерном кружке, ведущей которого была вчерашняя или даже сегодняшняя студентка, отпирающая и запирающая дверь — большего от неё нам и не требовалось.

Читать далее
Всего голосов 76: ↑62 и ↓14 +48
Комментарии 98