Pull to refresh
0
0

Web-разработчик

Send message

Яндекс выложил в опенсорс YDB

Reading time16 min
Views141K
Сегодня мы выложили в опенсорс систему управления базами данных YDB — плод многолетнего опыта Яндекса в разработке систем хранения и обработки данных. Исходный код, документация, SDK и все инструменты для работы с базой опубликованы на GitHub под лицензией Apache 2.0. Развернуть базу можно как на собственных, так и на сторонних серверах — в том числе в любых облачных сервисах.



YDB решает задачи в одной из самых критичных областей — позволяет создавать интерактивные приложения, которые можно быстро масштабировать по нагрузке и по объёму данных. Мы разрабатывали её, исходя из ключевых требований к сервисам Яндекса. Во-первых, это катастрофоустойчивость, то есть возможность продолжить работу без деградации при отключении одного из дата-центров. Во-вторых, это масштабируемость на десятки тысяч серверов на чтение и на запись. В-третьих, это строгая консистентность данных.

В посте я расскажу об истории развития технологий баз данных, о том, зачем использовать YDB, как её применяют текущие пользователи и какие плюсы для всех несёт выход в опенсорс. А во второй половине поста поговорим о разных вариантах развёртывания.
Читать дальше →
Total votes 335: ↑332 and ↓3+329
Comments135

Оформляем README-файл профиля на GitHub

Reading time14 min
Views206K

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

Читать далее
Total votes 77: ↑75 and ↓2+73
Comments25

9 библиотек Python для разработки игр

Reading time4 min
Views67K
image


Разработка игр на Python — это не только PyGame, Tower Defense и платформеры, а это и DOOM, и MMORPG, и симуляторы свиданий/отношений, и визуальные новеллы, и конкурсы DARPA, и моделирование вселенной, и автотрекинг низкоорбитальных спутников.

Под катом список 9 библиотек для разработки игр и полезные гайды к каждой библиотеке.

image
Читать дальше →
Total votes 21: ↑15 and ↓6+9
Comments7

Современный Python: пишем модульные тесты и применяем соглашения о коммитах в Git

Reading time14 min
Views12K

Рассказываем, как начинающему разработчику проводить модульное тестирование вашего Python-приложения, и с помощью чего обеспечить и проверить сообщения о фиксации в Git.

Читать далее
Total votes 6: ↑4 and ↓2+2
Comments7

Порараз бирацца: как мы учились писать автотесты на Python и что у нас получилось

Reading time9 min
Views11K

Привет, Хабр! Меня зовут Артем Иванюта, в «Магните» я занимаюсь тестированием информационных систем закупок. В статье я расскажу, как наша команда запускала автотесты web-интерфейсов силами одного сотрудника, как мы вписали их в CI/CD-процесс и с чем столкнулись, решая задачу. Кстати, вы наверняка уже догадались, но все-таки скажу — да, я и есть тот самый «один сотрудник». Так что никакого кликбейта.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments20

Дежавю: или кажется, программистов снова выставили на мороз

Reading time4 min
Views61K

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

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

Читать далее
Total votes 89: ↑68 and ↓21+47
Comments294

Нейродайджест: главное из области машинного обучения за январь 2021

Reading time6 min
Views4.4K


12 выпусков позади, значит пора немного поменять название и оформление, но внутри вас всё так же ждут исследования, демонстрации, открытые модели и датасеты. Встречайте новый выпуск подборки материалов о машинном обучении.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments3

Делаем свой minecraft на JavaScript

Reading time7 min
Views27K

Добро пожаловать в самую запутанную архитектуру проекта. Да я умею писать вступление...


image

Попробуем сделать небольшую демку minecraft в браузере. Пригодятся знания JS и three.js.

Немного условностей. Я не претендую на звание лучшее приложение столетия. Это всего лишь моя реализация для данной задачи. Также есть видео версия для тех кому лень читать(там тот же смысл, но другими словами).
Total votes 14: ↑11 and ↓3+8
Comments7

109 бесплатных курсов по Data Science

Reading time5 min
Views13K
image

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

Я сейчас решаю задачу, как из огромной массы жизненно важного контента выбрать тот, который стоит попробовать в первую очередь, как «разметить данные», чтобы нейросеточка у подрастающего поколения обучилась более эффективно. (ontol.org, «Выгорание», «Удаленка», телеграмм-канал).

Предлагаю вам подборку бесплатных онлайн-курсов по Data Science от лучших университетов в мире:

Читать дальше →
Total votes 14: ↑11 and ↓3+8
Comments0

Обзор 10 новых двигателей внутреннего сгорания

Reading time7 min
Views53K
Подписывайтесь на каналы:
@AutomotiveRu — новости автоиндустрии, железо и психология вождения
@TeslaHackers — сообщество российских Tesla-хакеров, прокат и обучение дрифту на Tesla


image

Шествие двигателей внутреннего сгорания продолжается, при этом в них появляются инновации – от изменяемой степени сжатия до клапанов без кулачков.

Электрические силовые агрегаты в наши дни на пике моды, но эволюция двигателя внутреннего сгорания не замедлилась. На самом деле, новые изменения происходят быстрее, чем когда-либо.

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

Здесь мы собрали фотографии двигателей, предлагающих некоторые из последних инноваций в области силовых агрегатов. От интеллектуальных двигателей грузовиков до крошечных моделей с турбонаддувом, мы предлагаем вам подборку основных достижений последних лет. Пролистайте следующие слайды, чтобы увидеть лучшие из них.
Читать дальше →
Total votes 45: ↑33 and ↓12+21
Comments136

Как я собирал физику колёс в Unigine

Reading time14 min
Views7.4K
Доброго дня.

В этот раз речь пойдёт о российском движке Unigine engine, и о том, как в нём собрать простую машинку. Схема не идеальная, так как в некоторых вещах ещё не разобрался, но хотя бы поделюсь опытом.


Total votes 10: ↑10 and ↓0+10
Comments14

Сохраните в закладках эту статью, если вы новичок в Python (особенно если изучаете Python сами)

Reading time6 min
Views49K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Bookmark this if you are new to Python (especially if you self-learn Python)" в двух частях (1, 2) c простыми, но полезными советами и трюками в Python.



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


Уточнение: в настоящее время я использую Python 3.8. Если вы столкнулись с какими-либо проблемами во время запуска моих примеров, пожалуйста, проверьте, не связано ли это с вашей версией Python.

Читать дальше →
Total votes 30: ↑24 and ↓6+18
Comments22

Реалистичный боевой ИИ для 2D-игры

Reading time6 min
Views13K
image

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

Окружение и ограничения


Игровое окружение состоит из полигонов. Большинство полигонов блокирует движение, область видимости и стрельбу, однако есть и «низкие» полигоны, только блокирующие движение. Окружение плотно заставлено препятствиями и укрытиями.

ИИ тоже ограничен несколькими техническими факторами. Самый важный из них: сервер, на котором выполняются боты, когда онлайн находится мало игроков, должен быстро работать на недорогом VPS как минимум при десяти ботах. Кроме того, нагрузка на ЦП должна оставаться достаточно низкой, чтобы можно было выполнять несколько инстансов сервера на одном VPS без превышения лимита ЦП, и не при этом вызвать санкций со стороны поставщика услуг VPS.
Total votes 40: ↑40 and ↓0+40
Comments2

Минисериал: троичный компьютер своими руками

Reading time7 min
Views32K

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


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


Читать дальше →
Total votes 141: ↑141 and ↓0+141
Comments148

Защита и взлом Xbox 360 (Часть 2)

Reading time9 min
Views65K


В прошлый раз мы оставили сцену Xbox 360 на моменте, когда разработчикам стало очевидно, что защита DVD-ROM легко обходится, и с этим точно нужно что-то делать. Попытки исправить ситуацию обновлением ПО самой приставки не увенчались успехом, и на поле битвы вступила компания Philips & Lite-On, DVD-приводы которой с каждой новой моделью становились всё более продвинутыми в плане защиты. Но и методы взлома с каждым разом становились всё более и более изощрёнными. В этой части я расскажу, как в Microsoft пытались исправить ситуацию с нелицензионными дисками, и до каких методов прошивки DVD-привода можно докатиться, когда закрыто буквально всё.
Читать дальше →
Total votes 175: ↑175 and ↓0+175
Comments79

«Взломать» за 60 секунд или карантинное безумие

Reading time2 min
Views51K
Небольшая история о неадекватном заказчике и нахождении уязвимости на сайте за 1 минуту.

image

Не ожидал, что именно эта история станет моей первой статьей на Хабре. Пишу пока горячо!

Все что Вы прочитаете далее — это не призыв к действию или попытка «кого-либо» скомпрометировать.
Читать дальше →
Total votes 128: ↑111 and ↓17+94
Comments124

Raspberry Pi, Python и полив комнатных растений

Reading time8 min
Views28K
У меня не складываются отношения с комнатными растениями. Дело в том, что я забываю их поливать. Зная это, я начал размышлять о том, что кто-то, наверняка, уже нашёл способ автоматизации полива. Как оказалось, способов таких существует очень много. А именно, речь идёт о решениях, основанных на Arduino или на Raspberry Pi. В этом материале я хочу рассказать о том, как создал систему, основанную на Raspberry Pi и Python, предназначенную для автоматизации полива растений.


Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments73

Локализация QR-кода – важная задача, незаслуженно обделенная вниманием

Reading time10 min
Views6.3K
Уверены, что на сегодняшний день не найдется ни одного читателя Хабра, который не был бы знаком с QR-кодами. Эти двумерные штрихкоды повсюду. Закономерно, что в мире существует много инструментов, позволяющих с некоторой долей эффективности добавить QR-коды в свой проект. Вся соль в том, что эта упомянутая эффективность напрямую зависит от качества инструмента, который используется для распознавания QR-кодов. И тут возникает классическая вилка: можно решить задачу (очень) хорошо и (очень) дорого, а можно бесплатно и как-то. А можно ли доработать бесплатное так, чтобы все-таки решить задачу хорошо? Если интересно, заглядывайте под кат.
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments9

Пришло время бесплатных сайтов

Reading time3 min
Views169K

Привет, %username%!




Сегодня многие начинающие веб-разработчики делают большую ошибку, и не одну. Они что-нибудь сверстают, а потом покупают хостинг. Далее покупают домен. Регистрируют и подключают SSL-сертификат. Я, спасаясь от минус-кармы, просто расскажу как не тратить деньги на свои тестовые проекты.
Читать дальше →
Total votes 67: ↑42 and ↓25+17
Comments97

Сила PWA: Система видеонаблюдения с нейросетью в 300 строчек JS-кода

Reading time8 min
Views12K
Привет, Хабр!

Веб-браузеры медленно но верно реализуют большинство функций операционной системы, и остается все меньше причин разрабатывать нативное приложение, если можно написать веб-версию (PWA). Кроссплатформенность, богатое API, высокая скорость разработки на TS/JS, и даже производительность движка V8 — все идет в плюс. Браузеры уже давно умеют работать с видеопотоком и запускать нейронные сети, то есть мы имеем все компоненты для создания системы видеонаблюдения с распознаванием объектов. Вдохновленный этой статьей, я решил довести демо-пример до уровня практического применения, чем и хочу поделиться.

Приложение записывает видео с камеры, периодически отправляя кадры на распознавание в COCO-SSD, и если обнаружен человек — фрагменты видеозаписи порциями по 7 секунд начинают отправляться на указанный емейл через Gmail-API. Как и во взрослых системах — ведется предзапись, то есть мы сохраняем один фрагмент до момента детекции, все фрагменты с детекцией, и один после. Если интернет недоступен, или возникает ошибка при отправке — видеозаписи сохраняются в локальной папке Downloads. Использование емейла позволяет обойтись без серверной части, мгновенно оповестить хозяина, а если злоумышленник завладел устройством и взломал все пароли — он не сможет удалить почту у получателя. Из минусов — перерасход трафика за счет Base64 (хотя для одной камеры вполне хватает), и необходимость собирать итоговый видеофайл из множества емейлов.

Работающее демо здесь.

Проблемы возникли следующие:
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments1
1
23 ...

Information

Rating
Does not participate
Registered
Activity