Search
Write a publication
Pull to refresh
53
0.2

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

Send message

Scrum — рак, убивающий индустрию

Reading time7 min
Views100K

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

Какой?

Как и зачем мы затащили GeckoView в Почту

Level of difficultyMedium
Reading time9 min
Views8.4K

Начиная с июня 2023 года мы стали получать жалобы от пользователей о том, что у них не отображаются письма в Android-клиенте Почты Mail.ru. В ходе исследования мы даже приглашали пользователя к нам в офис для отладки. В конце концов мы поняли, что проблема на стороне WebView, компонента, с помощью которого мы можем отображать веб страницы. Ни для кого не секрет, что WebView используется во многих банковских и почтовых клиентах, в приложениях интернет-магазинов, сервисов доставки и многих других. Также изучили другие почтовые сервисы, нам хотелось понять, как они с этим справились. Оказалось — никак :)

А теперь обо всём в подробностях и с кодом

С MVP покончено. Вам нужно думать о MVE

Level of difficultyMedium
Reading time6 min
Views53K

Подсказка: V – не значит «жизнеспособный», V – значит «ценный»

Большинство стартапов начинаются с момента озарения.

Основатель вдруг ясно видит проблему без очевидного решения. "Как мне это решить?" — думает он.

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

Читать далее

Перейди по ссылке, и я узнаю твой номер

Level of difficultyEasy
Reading time7 min
Views60K

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

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

Но что если вы не хотите оставлять свой номер на сайте, который просто открыли? Поговорим на примере одного из таких сервисов - dmp.one. Важно: автор рекомендует открывать этот адрес во вкладке инкогнито с включённым uBlock Origin с кастомными правилами (о них ниже), иначе есть риск попадания вашего телефона в базу.

Читать далее

Ода хейта C++

Level of difficultyEasy
Reading time12 min
Views32K

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

Я работаю в геймдеве, где С++ все еще популярен и ценится за все эти качества. Так же я много работал с 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.5K

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

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

Читать далее

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

Level of difficultyMedium
Reading time13 min
Views65K

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
Views324K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно 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
Views51K

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

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

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

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

Читать далее

Оптимизация памяти и управление сборщиком мусора в 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
Views81K

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

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

Читать далее

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

Level of difficultyEasy
Reading time4 min
Views44K

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

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

Читать далее

Information

Rating
5,018-th
Location
Bratislava, Bratislava, Словакия
Date of birth
Registered
Activity