Pull to refresh
3
0.2

NodeJS, Rust

Send message

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

Reading time7 min
Views23K

Проблемная и склонная к мелкому криминалу молодёжь из рабочих районов и люмпенизированных семей — неотъемлемая спутница индустриального этапа развития общества. В разных странах они носят разные названия: британцы называют их chavs, французы — racaille, голландцы — tokkie, немцы — асси и так далее.

В СССР их чаще называли хулиганами. Под этим названием они не сходили со страниц сатирических журналов вроде «Крокодила» и «Перца». Где-то с середины 80-х годов более популярным стал термин «гопник», ранее известный в основном в Ленинграде и до сих пор вызывающий споры филологов о своём происхождении. Возможно, его популярности поспособствовала одноимённая песня Майка Науменко из «Зоопарка».
Читать дальше →
Total votes 73: ↑64 and ↓9+55
Comments15

Atomic Heart или как забилось сердце русского геймдева

Level of difficultyEasy
Reading time14 min
Views21K
image

Atomic Heart — это один из главных сюрпризов 2023-го года. Сложно было представить, что российская игровая индустрия до сих пор способна на что-то настолько сложное и масштабное. При этом разработка проекта, несмотря на немецкое название студии Mundfish, шла в лучших русских традициях — наперекор всему, с превозмоганием и погоней за мечтой. Откуда взялась главная игра последних лет для наших широт, какой она могла бы быть и чего достигла — сегодня и обсудим, дорогие товарищи.
Читать дальше →
Total votes 87: ↑79 and ↓8+71
Comments82

Как компьютерная модель 1970-х спрогнозировала гибель человечества в XXI веке

Level of difficultyEasy
Reading time11 min
Views7.5K

50 лет назад ученые попробовали спрогнозировать будущее всей Земли с помощью компьютерной модели. Выводы доклада 1972 года «Пределы роста» были пугающими — бесконтрольный рост экономики ведет к коллапсу цивилизации. К прогнозам тогда мало кто всерьез прислушался. Но сейчас проблемы экологии и устойчивого развития обсуждаются довольно бурно, и работу вспоминают все чаще. Рассказываем об этом смелом исследовании — а также о том, как оно изменило мир. 

Читать далее
Total votes 22: ↑18 and ↓4+14
Comments47

Загружаем OpenIPC по сети на камеру без удаления заводской прошивки

Level of difficultyMedium
Reading time13 min
Views15K


Многие уже слышали о проекте OpenIPC, который представляет собой альтернативную универсальную прошивку для камер видеонаблюдения. Сегодняшний пост для тех, кто хочет попробовать этот софт, кто дружит с Linux, но далёк от программатора, паяльника, фена и многих подобных вещей, которые, как правило, сопровождают смену прошивки и путь обратно к заводской. Ведь многие боятся, что залив новую прошивку, она не заработает, а дороги к родной уже не будет. И эти опасения вполне оправданы, потому как на большинстве плат производители всеми средствами ограничивают возможности создания бэкапов. С каждой новой версией это становится сделать всё сложнее. Ещё такой вариант загрузки будет удобен администраторам, кому требуется обслуживать огромное количество одинаковых камер, ведь одно изменение в директории обновит сразу все камеры.

Из дополнительных железок нам понадобится мультиметр, USB UART-адаптер на 3.3 вольта и dupont-проводки от макетной платы, чтобы подключиться к камере. Сегодня будем настраивать загрузку OpenIPC на камере с сервера вместо классической загрузки с микросхемы флэш-памяти. Если понравится, можно даже оставить работать камеру таким образом навсегда.

Особенно такой вариант будет удобен тем, кто разрабатывает программы для камеры, и нужно быстрым и удобным способом подкидывать в систему программы, модули ядра, менять ядро и саму корневую файловую систему. А также тем, кто использует камеру как одноплатный компьютер вместо плодово-ягодных плат.
Дальше о том, как заставить загружаться камеры с сервера по сети
Total votes 60: ↑60 and ↓0+60
Comments7

Полная история игровой вселенной «Гарри Поттера» — «Золотое поколение»

Level of difficultyEasy
Reading time47 min
Views5K
image
Автор иллюстрации: Иван Ефимов

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

Серия игровых адаптаций «Гарри Поттера» — ярчайший пример подобного подхода. Компания Electronic Arts одновременно занималась разработкой четырех, а то и шести игр в преддверии выхода очередной части фильма. Какие-то получились хуже, какие-то лучше, но все они отличались.

Я потратил полтора года на прохождение всех игровых адаптаций «Гарри Поттера», — а это почти 60 игр. Среди них как основные части серии, так и мобильные и любительские проекты. Я изучил историю из разработки, нашёл малоизвестные факты и вырезанный контент.

Из-за большого объёма мы решили разделить материал на три лаконичных главы. В первой разберём все версии «Философского камня», «Тайной Комнаты», «Чемпионата мира по квиддичу» и «Узника Азкабана».
Читать дальше →
Total votes 39: ↑38 and ↓1+37
Comments5

Главные мемы 2023 года: атомный советпанк, русы с ящерами, барбенгеймер и гусь-матерщинник

Level of difficultyEasy
Reading time7 min
Views14K

2023 год вновь оказался не только бурным, но и богатым на мемы разной степени упоротости. Некоторые из них кажутся существующими уже несколько лет как, хотя появились или плотно завирусились совсем недавно. Вспомним же перед встречей нового 2024-го, над чем мы кекали и угорали в уже ставшем историей 2023-м — ну а в конце немного обсудим свежайшие мемы о наступающем годе!
Читать дальше →
Total votes 76: ↑70 and ↓6+64
Comments7

Как Додо Пицца доставляет свежий код: история мобильного CI для iOS

Level of difficultyEasy
Reading time9 min
Views5.1K

Мобильная разработка под iOS особенная: собрать приложение можно только на macOS, среда разработки по сути только одна, большая часть принятого в сообществе тулинга написана на Ruby, свой пакетный менеджер появился только пару лет назад. Тяжко.

А когда речь заходит про автоматизацию тестирования и сборок — тушите свет: Xcode Cloud появился полгода назад и почти ничего не умеет, популярные облачные решения могут месяцами не обновлять стек на новые мажорные релизы среды разработки или ОС (вставить ссылку на тред где гитхаб не может привести новую макось уже полгода), а ценник при этом может быть в 10 раз больше, чем за машинки на Linux. Ещё тяжелее.

Меня зовут Леха Берёзка, я iOS-техлид в Додо Пицце и сейчас я расскажу как мы собрали свой CI на М1, с виртуализацией и на полном нативе.

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

Как изменилась Amnezia за 2023 год

Reading time5 min
Views19K

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

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

2d движок для игр Javascript Game Engine (JsGE)

Level of difficultyMedium
Reading time7 min
Views6.8K

Привет всем. Меня зовут Артурас, я пишу на Javascript. Полтора года назад я уволился из оффшорной компании и решил написать свой движок для браузерных 2d игр. Сегодня - делюсь результатами.

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

Pet-проект «Наручные часы на светодиодах»

Level of difficultyEasy
Reading time9 min
Views15K

Что стоит самому разработать электронные наручные часы. Можно ли сделать часы простыми и одновременно эффектными. Как совместить в одних часах отладочное средство для изучения программирования и полезный гаджет.

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

Про наручные часы со светодиодами
Total votes 155: ↑155 and ↓0+155
Comments83

Квантовый эксперимент показал, почему эффективность фотосинтеза близка к 100%

Reading time10 min
Views24K

"Святой Грааль" любой физической системы - это 100% КПД. В большинстве условий это практически невыполнимая задача, поскольку с момента передачи любой формы энергии в систему она неизбежно теряется под воздействием различных факторов – переноса тепла, столкновений, химических реакций и т. д., - прежде чем выполнить конечную задачу, для которой она была создана. Единственный способ, с помощью которого физикам удалось создать системы с практически идеальной эффективностью, - это довести природу до граничных условий:

охладить до температур, близких к абсолютному нулю,

обстрелять монохроматическими (лазерными) фотонами (кристаллические) системы с поглощающими решётками,

или довести до таких экстремальных условий, как сверхпроводимость и сверхтекучесть.

Читать далее
Total votes 43: ↑41 and ↓2+39
Comments15

Да кто такой этот ваш impl Trait

Level of difficultyMedium
Reading time4 min
Views4.8K

В преддверии выхода Rust 1.75.0, наполненным async trait-ами и return-position impl Trait in trait, надо разобраться, что такое impl Trait и с чем его едят.

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

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

Работа с часовыми поясами без библиотек

Level of difficultyMedium
Reading time13 min
Views2.5K

Итак, настал тот moment, когда вам нужно работать с датами в разных часовых поясах (Новый год же!), а ваш архитектор/начальник не разрешает использовать Moment Timezone или Luxon, потому что они увеличат размер вашей сборки, а для вашего проекта важно, чтобы UI грузился быстро. Или потому что вы делаете небольшую задачу, и непонятно пока, будет ли расширение работы с часовыми поясами.

Поэтому и основной сценарий будет тоже UI: когда с бэкенда приходит таймстэмп, (см. определение ниже) и нужно работать с ним в разных часовых поясах. Обратное преобразование, когда по местному времени и часовому поясу, наоборот, нужно получить таймстэмп, я рассмотрю очень коротко.

Кто виноват и что делать?
Total votes 7: ↑7 and ↓0+7
Comments2

GPT-like модель «впервые сделала научное открытие»: что, как, и куда дальше?

Level of difficultyMedium
Reading time21 min
Views96K

14го декабря в одном из самых авторитетных общенаучных журналов Nature была опубликована статья с, кажется, сенсационным заголовком: «ИИ-модели Google DeepMind превосходят математиков в решении нерешённых проблем». А в блогпосте дочки гугла и вовсе не постеснялся указать, что это — первые находки Больших Языковых Моделей (LLM) в открытых математических проблемах. Неужели правда? Или кликбейт — и это в Nature? А может мы и вправду достигли техносингулярности, где машины двигают прогресс? Что ж, давайте во всём разбираться!

Ну давай разберёмся →
Total votes 182: ↑178 and ↓4+174
Comments271

SSLH: Прячем SSH/HTTPS/OpenVPN/Telegram за единым портом 443

Reading time3 min
Views118K
image

SSH/HTTPS/OpenVPN/Telegram и всё на одном порту?! Что?!
— Да!
  • Хотите скрыть наличее у вас некоторых сервисов?
  • В публичной wi-fi сети блокируется всё кроме 443 (https) порта?
  • Настроили Telegram Proxy/OpenVPN и не хотите его «светить» ?
  • SSH подключение к своему серверу из стран с цензурой?

На все эти вопросы ответ один — Мультиплексирование SSL/TLS соединений, или SSLH.

В посте мы рассмотрим как в 1 команду спрятать кучу сервисов за 1 портом.
Читать дальше →
Total votes 83: ↑79 and ↓4+75
Comments100

Вам не нужен для этого JavaScript

Level of difficultyMedium
Reading time11 min
Views28K

Прошу вас не возмущаться названием статьи. Я не ненавижу JavaScript, я люблю его. Ежедневно я пишу на нём кучу кода. Но ещё я люблю CSS и даже люблю JSX HTML. Я люблю все эти три технологии по причине, которая называется…

▍ Правило наименьших полномочий


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

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

В отличие от JS с его императивностью, HTML и CSS декларативны. Вы говорите браузеру, что делать, а не как это делать. Это значит, что браузер сам выбирает, как это делать, и может сделать это наиболее эффективным образом.

Так как функции HTML и CSS обрабатываются браузером, они могут быть более производительными, более нативными, более адаптируемыми к предпочтениям пользователя и в общем случае иметь бОльшую accessibility. Это не значит, что так будет всегда (особенно когда дело касается accessibility), но когда все сложные задачи берёт на себя браузер, от этого обычно выигрывают конечные пользователи.
Читать дальше →
Total votes 97: ↑95 and ↓2+93
Comments38

std fs в Rust медленнее, чем Python? Нет, это аппаратный баг

Level of difficultyMedium
Reading time19 min
Views9.9K

В этой статье я поделюсь с вами долгой историей, которая начинается с op.read() opendal, а заканчивается неожиданным поворотом. Это путешествие оказалось для меня достаточно поучительным, надеюсь, и для вас оно будет таким же. Я постараюсь максимально точно воссоздать свой опыт и дополню его выводами, которые сделал в процессе.

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

Самая дешевая заводская панель управления умным домом, которая отлично работает

Level of difficultyHard
Reading time4 min
Views76K

Несколько лет назад уже писал про свои поиски идеальной и недорогой панели управления умным домом (статья собрала 200 закладок), тогда в 2020 году я остановился на недорогом андроид планшете, который перепрошил на чистый андроид для выполнения удаленных команд через ADB.

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

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

Выбор пал на NSPanel из‑за цены около 3,5 тысяч рублей, а также возможности установки в подрозетник или покупки настольной подставки — как у меня на фото.

Панель в подрозетник или на стол
Total votes 106: ↑103 and ↓3+100
Comments126

У меня дергался глаз, когда я пытался найти квартиру родителям. Больше не будет

Level of difficultyEasy
Reading time4 min
Views8.3K

Запустили сайт HomeBro, который ищет квартиры сразу на всех топовых сайтах объявлений. Все предложения по недвижке на одной карте + уведомления о новых вариантах в телегу.

Читать далее
Total votes 27: ↑23 and ↓4+19
Comments59

Прорывная концепция ракетного двигателя

Level of difficultyHard
Reading time25 min
Views86K

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

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

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

Читать далее
Total votes 299: ↑292 and ↓7+285
Comments491

Information

Rating
2,042-nd
Location
Белореченск, Краснодарский край, Россия
Date of birth
Registered
Activity