Pull to refresh
53
0

Разработчик под Android, перешедший на Rust

Send message

Ода хейта C++

Level of difficultyEasy
Reading time12 min
Views31K

Я люблю С++. Это мой основной язык разработки на работе и в домашнем проекте. Я люблю его за скорость, за гибкость и близость к железу. Используя его, я понимаю "что происходит внутри". Я учился на нем программировать, и когда я пишу программы я "думаю на С++".

Я работаю в геймдеве, где С++ все еще популярен и ценится за все эти качества. Так же я много работал с C#, Lua, Python, немного JS и PHP. В общем, есть с чем сравнить.

Однако, у меня есть изрядная доля ненависти к С++. Я вижу в нем кучу проблем, которые не решаются годами. Я вижу как другие страдают от этих проблем.

В этой статье я хочу излить душу, за что я ненавижу С++. Мне от этого станет легче, возможно кому-то еще. Не стесняйтесь писать свой хейт (или защиту), устроим групповой сеанс терапии (или холивар)

Дисклеймер: Не стоит относиться слишком серьезно к этому тексту. Он наполнен душевной болью, и направлен лишь на релаксацию и сброс напряжения

Читать далее

Трендовые уязвимости апреля: до пяти лет скрытой эксплуатации

Level of difficultyEasy
Reading time8 min
Views2.6K

Хабр, привет! Я Александр Леонов, ведущий эксперт лаборатории PT Expert Security Center. Мы с командой аналитиков Positive Technologies каждый месяц анализируем информацию об уязвимостях из баз и бюллетеней безопасности вендоров, социальных сетей, блогов, телеграм-каналов, баз эксплойтов, публичных репозиториев кода и выявляем во всем этом многообразии трендовые уязвимости. Это те уязвимости, которые либо уже эксплуатируются вживую, либо могут эксплуатироваться в ближайшее время.

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

Какие уязвимости были в тренде в апреле

Книга рецептов Rust. 1/2

Level of difficultyMedium
Reading time34 min
Views6.7K



Hello world!


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


Читать дальше →

Посмотрел 100 000 Youtube Shorts и определил 10 причин БОЛЬШИХ просмотров

Level of difficultyEasy
Reading time3 min
Views6.4K

Все просмотренные Shorts я анализировал, досмотрел/не досмотрел, зацепила ли картинка, захотелось ли репостнуть или сохранить видео. Особенно пристально вглядывался в видео, которые уже набрали миллионы просмотров, разбирал каждую секунду, каждое слово

Постараюсь на каждый из 10 пунктов привести хороший и плохой пример(ы), чтобы было наглядно понятно, что и как снимать, а не типичная вода в интернете (даже будет несколько моих видео, естественно в "хороших" примерах)/

Читать далее

Бардак в GNOME — это не случайность

Level of difficultyMedium
Reading time13 min
Views64K

GNOME удалось добиться, казалось бы, невозможного: это самая ограниченная по возможностям и раздутая десктопная среда для Linux. Но это не просто случайность. Это результат высокомерия и дилетантства основных разработчиков, превративших архитектурные решения GNOME в шедевр хаоса. Чтобы лучше понять, что происходит, давайте проанализируем некоторые из примеров. Даже если ни один из них не затрагивает непосредственно вас, стоит понять modus operandi ведения проектов GNOME и то, как они вредят сообществу Linux.
Читать дальше →

Как запустить Mixtral на своём компьютере

Level of difficultyMedium
Reading time4 min
Views15K

Всякий раз, когда выходит новая хорошая публичная ИИ модель, Хабр наполняется вопросами "Как нам её попробовать" и неправильными ответами, будто нужно платить за какие-то сервисы или иметь железа на сто лямов. Поэтому я вновь напишу инструкцию, как запустить новейший mixtral-8x7 на обычных средних компьютерах.

Читать далее

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Views323K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее

Самые крупные DDoS-атаки нулевого дня на HTTP/2

Level of difficultyEasy
Reading time9 min
Views7.3K

В августе и сентябре злоумышленники развернули крупнейшие распределённые DDoS-атаки в истории интернета, эксплуатирующие известную уязвимость в ключевом техническом протоколе. В отличие от других серьёзных атак нулевого дня последних лет – например, Heartbleed или log4j – которые вызвали хаос повсеместным наплывом эксплойтов, более недавняя их форма, получившая название HTTP/2 Rapid Reset, привлекла пристальное внимание лишь нескольких инженеров.
Читать дальше →

Самый маленький Docker образ Rust приложения

Level of difficultyMedium
Reading time5 min
Views12K

Привет %username%, эта статья про то, как поместить Rust приложение в Docker и получить образ размером с бинарный файл (6 Мб). А также про причины, которые привели к переходу с NodeJS на Rust. Отдельная пара слов о проблемах вначале, переходе на Go, и том, как команда Rust устранила эти проблемы за пол года.

TL;DR Dockerfile в конце статьи и ссылка на example репозиторий

Читать далее

Что содержится в вейпах? Токсины, тяжёлые металлы; возможно, радиоактивный полоний

Level of difficultyEasy
Reading time4 min
Views50K

Если бы вы спросили меня, что содержится в электронных сигаретах, одноразовых вейпах или электронных жидкостях, я бы ответил кратко: «Мы точно не знаем».

Огромный и постоянно растущий ассортимент продуктов и вкусов, представленных на рынке, изменения в ингредиентах при нагревании или взаимодействии друг с другом, а также неадекватная маркировка делают этот вопрос сложным.

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

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

Читать далее

Оптимизация памяти и управление сборщиком мусора в Go: GOGC и GOMEMLIMIT

Level of difficultyMedium
Reading time11 min
Views24K

Всем привет, меня зовут Нина Пакшина, я работаю Golang разработчиком в Лента Онлайн в команде операций.

В данной статье я расскажу о том, как управлять сборщиком мусора в Go, как оптимизировать потребление памяти приложением и защититься от ошибки out-of-memory.

Читать далее

Дайте крудошлепа

Level of difficultyMedium
Reading time7 min
Views117K

Я устроился в небольшую компанию, которая сделал круд‑приложуху на 20 таблиц типа «заметки» и активно ее продавала госорганам за невменяемый бабос.

У нас был 3(три) Т‑Р-И статуса юзера. Anonym → Logined → Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда‑Уоршелла, прикрутил стейт‑машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.

Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.

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

Это было вступление.

Уважаемый Яндекс, Сбер и прочая! Я умею быстро решать задачи и кратно увеличивать выхлоп простыми решениями. Я самый умный программист, среди всех ваших работников! Я — НадНадсеньор! Сейчас докажу.

Потому что, только я могу решить задачку, которую вы уже 10 лет решить не можете, когда прилетает пуш‑уведомление или смс и в твоем всплывающем окне написано:

«Ваш шестизначный пароль доступа в наше приложение: 123...»

Не согласен! ...

OpenAssistant: Вышла бесплатная открытая альтернатива ChatGPT

Level of difficultyEasy
Reading time3 min
Views53K

Участники открытого сообщества LAION-AI выпустили в открытый доступ первые обученные модели OA_SFT_Llama_30B и OA_SFT_Llama_13B. и запустили ИИ-чатбот OpenAssistant на их основе. На текущий момент доступны модели в 13 и 30 млрд параметров, дообученные на мультиязычных датасетах, собранных сообществом. В основе моделей лежит уже успевшая стать популярной LLaMA.

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

"Мы хотим, чтобы OpenAssistant стал единой, объединяющей платформой, которую все другие системы используют для взаимодействия с людьми." - декларируют своё видение члены сообщества LAION.

Вы можете попробовать поговорить с OpenAssistant уже сейчаст тут.
Еще вы можете принять участие в формировании датасета на своём языке тут.

Читать далее

MLS (Messaging Layer Security) — единый протокол шифрования для всех приложений

Reading time3 min
Views4.1K
Инженерный совет Интернета IETF официально принял стандарт Messaging Layer Security (MLS) — новый протокол сквозного шифрования сообщений поверх TLS. Это дополнительный уровень криптографии, который может покрыть все существующие приложения и обеспечить совместимость между ними. То есть он в идеальном случае станет всеобщим протоколом для всех мессенджеров.

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

До появления MLS не существовало открытой, совместимой спецификации для этого дополнительного уровня криптографии. Новый протокол заполняет этот пробел. Он предоставляет систему, которая полностью специфицирована, формально проверена и проста в использовании для разработчиков.
Читать дальше →

Локальные нейросети (генерация картинок, локальный chatGPT). Запуск Stable Diffusion на AMD видеокартах

Level of difficultyEasy
Reading time5 min
Views79K

Многие слышали про Midjourney, но про то, что есть локальная Stable Diffusion, которая может даже больше, знает уже куда меньше людей, или они не знают, что она локальная. И если они пробовали её онлайн, то быстро приходили к выводу, что она сильно хуже чем Midjourney и не стоит обращать на неё более внимания. И да, SD появился раньше Midjourney. Для запуска хватит и cpu или 4гб видеопамяти.

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

Читать далее

Как настроить Alpaca (аналог ChatGPT) на своём арендованном сервере. Гайд для самых маленьких

Level of difficultyEasy
Reading time4 min
Views43K

После публикации https://habr.com/ru/news/t/723638/ меня попросило несколько человек написать гайд для новичков, как же это всё запустить поиграться где-нибудь на арендованном сервере, если локальная машина не позволяет? На всё про всё нам потребуется минут 20 и сто рублей денег.

Но уже появились бесплатные варианты на HuggingFace

Читать далее

Как одиночество перестраивает мозг

Reading time11 min
Views24K

Одиночество меняет мозг таким образом, что это может помешать способности доверять и устанавливать отношения с другими людьми



Научно-исследовательская антарктическая станция «Ноймайер III» расположена на краю безжалостного антарктического шельфового ледника Экстрем. В период зимовки, когда температура может опускаться ниже минус 50 градусов по Цельсию, а ветер может достигать скорости более 100 км/ч, никто не может ни прибыть на станцию, ни покинуть ее. Изоляция станции необходима для метеорологических, атмосферных и геофизических научных экспериментов, проводимых на ней небольшой группой ученых, которые работают там в зимние месяцы и стойко переносят холодное одиночество.

Читать дальше →

Объясните, почему мой рокет-саенс бэкенд билдится пару секунд, а четыре формы на фронте — полгода

Reading time6 min
Views64K

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

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

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

Читать далее

Information

Rating
9,122-nd
Location
Bratislava, Bratislava, Словакия
Date of birth
Registered
Activity