Pull to refresh
3
0.2

NodeJS, Rust

Send message

Как рисовать Sequence без боли и страданий в PlantUML

Level of difficultyEasy
Reading time12 min
Views1.8K

Привет! Меня зовут Настя, я старший системный аналитик в X5 Tech. Я рисую sequence-диаграммы каждый день на протяжении четырёх лет. За это время я прошла все круги ада по Данте, то есть попробовала разные инструменты для рисования этих самых диаграмм. Пока не встретила его – PlantUML. 

Что удивительно, инструмент довольно не новый, но тем не менее лучше него я пока не встречала. А ещё удивительно, что он не особо популярный. Когда мы запустили в управлении системного анализа первый воркшоп по PlantUML, за 3 минуты после анонса пришли 12 заявок от аналитиков разных грейдов – от Junior до Lead. 

В процессе подготовки материалов к воркшопу мы искали статьи и литературу, которые помогли бы дополнительно изучить sequence-диаграммы в PlantUML. Ничего интересного мы не нашли. 

На самих воркшопах участники часто говорили о том, что они пытались самостоятельно изучить PlantUML, но их пугало то, что нужно писать какой-то код и учить какой-то синтаксис. Документация достаточно обширная, но информации о том, как последовательно строить sequence почти нет. 

Поэтому и появилась эта статья. 

Почему PlantUML?
Total votes 13: ↑13 and ↓0+15
Comments25

Какие ошибки есть в коде LLVM?

Level of difficultyMedium
Reading time10 min
Views4.8K

LLVM — open-source проект с огромной кодовой базой. Лучший из лучших, если говорить о качестве кода, учитывая его размеры и открытость. Ведь кому, как не разработчикам инструментов для компиляторов, лучше знать о возможностях языка и правильном их использовании. Их код всегда на высоте, а найти ошибки в нём всегда вызов для нашего анализатора, который мы принимаем.

Читать далее
Total votes 12: ↑11 and ↓1+16
Comments14

Повышение живучести SSD за счёт его превращения из QLC в SLC

Level of difficultyMedium
Reading time14 min
Views36K

В этой статье мы займёмся беспрецедентным экспериментом! Я шаг за шагом проведу вас через процесс преобразования SSD на базе QLC NAND в SLC SSD, что позволит значительно повысить его ресурс и общую производительность.

▍ Спецификация испытуемого SSD



На роль испытуемого я выбрал Crucial BX500, который мы уже много раз тестировали, освещая этот процесс как на нашем сайте, так и на YouTube-канале.
Читать дальше →
Total votes 99: ↑97 and ↓2+123
Comments83

Город в бутылке — движок Raycasting всего на 256 байт

Reading time8 min
Views16K

Привет любителям микро-кодирования. Вот вам кое-что невероятное: крошечный движок raycasting (метод “бросания лучей”) и генератор городов, который помещается в отдельный 256-байтовый HTML-файл.

Читать далее
Total votes 64: ↑56 and ↓8+64
Comments12

Как тренить в кайф — путь минималиста

Reading time7 min
Views7.9K
  • Тренировка слишком длинная, становится скучно, ухожу раньше.
  • Фигачу полгода как не в себя, следующие полгода лежу на диване и закидываю в себя сахар в промышленных масштабах.
  • Для достижения результатов надо торчать в зале 5 дней в неделю. У меня нет столько времени.

Узнали себя? Я такой же. Был. Теперь каждая тренировка занимает не больше 40 минут. Я вижу прогресс. Наконец-то понял каково это — выходить из зала на подъеме. Ниже расскажу как тренить 2 раза в неделю в удовольствие и видеть результат.


Читать дальше →
Total votes 29: ↑23 and ↓6+23
Comments12

Как ELK довел нас… до Vector.dev и Clickhouse

Level of difficultyHard
Reading time7 min
Views7.1K

Меня зовут Дима Синявский, я SRE-инженер в Vi.Tech — это IT-дочка ВсеИнструменты.ру. В этой статье расскажу я вам о том как мы развивались и с нами развивалась наша система логирования. Почему вам нужен Vector.dev + Clickhouse для хранения и когда это выгодно.

Когда компания была маленькой нам хватало и блокнота, чего сейчас уже не скажешь.
У нас 931 000 пайплайнов в месяц, 4 кластера Kubernetes: от 170 до 190 нод в каждом, и 200 ГБ логов ежедневно.

cat elk-vector.md | more // Прочитать...
Total votes 26: ↑26 and ↓0+29
Comments34

Мобильные устройства изнутри. Изменение разметки памяти планшета

Reading time6 min
Views11K

Изменение разметки памяти планшета



1.Введение.


Как-то попался мне в руки планшет YB1-X90L от Lenovo, выполненный на чипе от Intel:

Рис.1. Планшет YB1-X90

Я попытался выполнить над ним некоторые, в принципе, я бы сказал, стандартные модификации для мобильного устройства (МУ), попавшего в руки разработчика:

  • разблокировать загрузчик;
  • установить custom recovery;
  • получить ROOT;
  • посмотреть разметку памяти;
  • ну и общие исследования возможностей работы.

Все пункты плана были успешно выполнены. Одним из незапланированных пунктов стало исследование раздела разметки, который я назвал GPT-разделом Intel-типа.

Тем не менее, на многих сайтах очень популярна тема по изменению разметки МУ, выполненной по GPT-схеме, тем более, если это GPT-раздел Intel-типа. Получается, что этот вопрос, несмотря на теоретические выкладки, так и остается до сих пор не закрытым… Вот я и решил воспользоваться моментом, что у меня на руках имеется свободное МУ, которое можно немного «помучать», и провести натурные испытания своих теоретических познаний. Короче, я задумал изменить разметку памяти…

Перед началом выполнения работ я снял все, что можно по существующей разметке: файлы partitions, dev/block/by-name/ и образ GPT-раздела.

Что мы имеем:

  • планшет, имеющий стоковую прошивку;
  • образ GPT-раздела Intel-типа;
  • файл partitions, снятый с реально работающего МУ.

Что надо: для своих экспериментов мне понадобился отдельный раздел памяти размером 512Мб.

Соответственно, для его размещения нужно где-то в памяти планшета найти эти мегабайты…
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments0

Мы добрались до ядра, или новые возможности AmneziaWG

Reading time6 min
Views17K

Добрый день! 

На связи команда разработчиков Amnezia. 

Обычно наши статьи посвящены оригинальному клиенту Amnezia, но сегодня мы будем упоминать AmneziaVPN весьма косвенно, так как речь пойдет в первую очередь о протоколе AmneziaWG и о связанных с ним проектах. Мы расскажем про нативный клиент AmneziaWG. Как из конфигурации с протоколом WireGuard сделать AmneziaWG, и как развернуть свой VPN с AmneziaWG  на сервере без приложения.   

Честно говоря, мы не ожидали столь высокой заинтересованности протоколом. Нам известно, что некоторые коммерческие VPN уже продают конфигурации с готовым VPN решением, где в качестве протокола, используют AmneziaWG вместе с приложением Amnezia. AmneziaVPN - это open source проект, который могут использовать для VPN, в том числе и для коммерческих VPN решений все желающие,  мы надеемся, что эта тенденция будет продолжаться. 

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

Читать далее
Total votes 30: ↑28 and ↓2+28
Comments20

Как я собрал красивое ведро для гидропоники

Level of difficultyEasy
Reading time10 min
Views27K

Несколько лет назад я писал пост о том, как вырастить на гидропонике крайне острый Trinidad Scorpion CARDI. Он, при его живительных 1.2 миллионах единиц Сковилла, на неподготовленных перцеедов производит впечатление эквивалентное облизыванию паяльника.

Пока Монстр плодоносил и радовал в течение нескольких лет, я продумывал более удобный вариант гидропонной установки, который было бы не стыдно показывать в приличном интерьере гостям. Классический вариант “юного гидропониста” из канализационных труб, алюминиевого скотча и вороха булькающих трубочек был с негодованием забракован женой. Я разработал и протестировал несколько прототипов с 3D-печатными элементами, но потом проект был поставлен на паузу.

Окончательно доделать его получилось после того, как внезапно выяснилось, что коллеги тоже фанаты острого. Мы собрались в нашей виртуальной “курилке”, запилили проект со всеми положенными milestone в Asana и начали тестировать. Садитесь поудобнее, сегодня будет лонгрид-оффтопик, про то, как толпа DevOPS из WiseOPS пилила совместный хобби проект для украшения офиса. Да, мы заняты не только работой) А еще я поделюсь подробной инструкцией и файлами для 3D-печати.

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

Читать далее
Total votes 110: ↑109 and ↓1+132
Comments166

Istio Ambient Mesh для начинающих

Level of difficultyMedium
Reading time7 min
Views3.2K

Представляю вашему вниманию перевод статьи "Demystifying Istio Ambient Mesh for Total Beginners" автора Antonio Berben. В этом посте мы рассмотрим проблемы, возникающие в режиме sidecar, и то, как Istio Ambient Mesh изобретательно решает их, минимизируя использование прокси-серверов, упрощая масштабируемость и поддерживая безопасность. Давайте разберемся.

Читать далее
Total votes 3: ↑3 and ↓0+4
Comments0

RSLike@3. Well-known Symbol, улучшенное использование Typescript, и весим больше

Reading time7 min
Views882

Еще совсем недавно я выпустил библиотеку которая должна была искоренить ошибки связанные с null и undefined . Честно признаюсь, что решил подсмотреть у Rust Option и Result апи, поскольку увидел в этом потенциал и удобство использования!

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

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

Жизнь после отвала eMMC. Часть 2: даём новую жизнь устройствам с полностью мёртвой памятью. Загружаем Android с MicroSD

Level of difficultyMedium
Reading time12 min
Views28K
image

Отвал флэш-памяти типа eMMC — весьма частая болячка смартфонов и планшетов, которая массово преследует современные девайсы на протяжении вот уже более 10 лет. Симптомы проблемы знакомы многим читателям: смартфон виснет на заставке, системные приложения регулярно вылетают, или настройки системы внезапно перестают сохраняться. Сам процесс замены флэш-памяти требует навыков перекатки и пайки BGA-чипов, оборудования (трафареты для реболла, программатор с колодками, опционально подогрев) и понимания того, как работает загрузчик той или иной аппаратной платформы, поэтому в СЦ за эту процедуру могут взять достаточно большую сумму. На некоторых девайсах менять память уже совсем невыгодно, особенно когда другой такой-же аппарат стоит полторы тысячи рублей на барахолке, но воспоминания о любимом девайсе порой гораздо дороже, чем сумма за ремонт смартфона. Год назад я уже писал материал о загрузке Android с MicroSD при условии того, что eMMC ещё подает хоть какие-то признаки жизни, а сегодня я вам расскажу о способе загрузить систему с флэшки уже после того, как чип флэш-памяти отказал и ушёл в read-only. Сегодня мы с вами: узнаем о том, какие типы флэш-памяти существуют и причины их отказа, разметим MicroSD-флэшку и запишем на неё образ системы, пропатчим пути монтирования в boot.img, а также узнаем, как теперь запускать наш смартфон и посмотрим, сможет ли он работать достаточно шустро с MicroSD флэшки! Интересно узнать, как вернуть жизнь таким легендам, как Google Nexus? Тогда добро пожаловать под кат!
Читать дальше →
Total votes 75: ↑73 and ↓2+84
Comments72

Вскрытие детали за 40 тысяч. Ремонт и реверс высоковольтного модуля Traco Power MHV12-2.0K1000N

Level of difficultyMedium
Reading time10 min
Views15K

В этой статье мы заглянем под заливочный компаунд стабилизированному высоковольтному преобразователю напряжения производства Traco Power. Данный прибор из напряжения 12 В вырабатывает отрицательное высокое напряжение в диапазоне от 0 до 2000 В при токе до 1 мА, которое задается внешним резистивным делителем или управляющим напряжением. Выходное напряжение хорошо стабилизировано (декларируется нестабильность в 0,03% при изменении нагрузки или питающего напряжения во всем допустимом диапазоне). Подобные модули — наиболее легкий способ обеспечить стабильным высоковольтным питанием ФЭУ (например, сцинтилляционного детектора радиоактивных излучений), но к сожалению, они слишком дороги (текущая цена, по которой подобный модуль можно приобрести у российских поставщиков элементной базы — около 40 000 руб). Мне такой преобразователь попал в руки неисправным — так что давайте его вскроем, посмотрим, как он устроен и попробуем починить.

Вскрыть
Total votes 134: ↑133 and ↓1+176
Comments70

Последнее издание культовой книги «Искусство схемотехники» стало доступно русскоязычным читателям

Level of difficultyEasy
Reading time4 min
Views41K

“Электронщики, как учит нас Парацельс, самозарождаются среди паяльников, радиодеталей, универсальных плат и проводов” (@teap0t)

Возможно, это действительно так, но без хорошей книги - учебника или справочника, которые служат катализатором, этот процесс может так и не завершиться. А лучшей книгой для начинающих разработчиков электронных схем и практически библией электронщиков последние сорок лет, считается "Искусство схемотехники" (англ. - The Art of Electronics) Пауля Хоровица и Уинфилда Хилла.

Читать далее
Total votes 74: ↑74 and ↓0+83
Comments136

Как я делал сеть на 10 гигабит с минимальным бюджетом

Level of difficultyMedium
Reading time11 min
Views61K


Решил я ускорить тривиальную задачу в виде передачи файлов с одного компьютера на маленький домашний NAS. Раньше 10 гигабит были для меня чем-то заоблачным (с учётом цены на свичи, а также сетевые карты). Но благодаря апгрейду дата-центров, а также свежим чипам для свичей от Realtek, апгрейд оказался недорогим и безболезненным.

О выборе железа и тестах — под катом.
Читать дальше →
Total votes 110: ↑109 and ↓1+135
Comments147

Проджект менеджер свалился под стол с кровавой пеной во рту — что делать?

Level of difficultyEasy
Reading time5 min
Views6.8K

Айтишный труд опасен: можно отравиться соевым латте, словить инфаркт от правок и подраться на корпоративе. Можем ли мы рассчитывать на помощь коллег в случае ЧП? Пока вы врубаете VPN, чтобы спросить совета у ChatGPT, ваш коллега отправится на тот свет. 

В этой статье разобрали несчастные случаи, которые могут настигнуть вас в офисе. Рассказываем, что нужно сделать в таких ситуациях (и что делать ни в коем случае нельзя). Кстати, ВОЗ говорит, что на рабочем месте ежегодно умирает до 600 000 человек. 

Читать далее
Total votes 23: ↑21 and ↓2+27
Comments50

Почему в Grand Theft Auto: San Andreas самолёты падают с неба

Reading time8 min
Views35K


Оббе Вермей [Obbe Vermeij] — один из программистов GTA 3, Vice City и San Andreas. Оббе ушёл из Rockstar после GTA IV и давно занимается другими проектами. В последние месяцы он начал вести блог insiderockstarnorth.blogspot.com, но в ноябре прошлого года закрыл его, поскольку бывшим коллегам мемуары не понравились. Тем не менее в личном микроблоге Оббе иногда делится байками про разработку игр из своей карьеры.

На этот раз Вермей рассказал, почему так часто падают самолёты в San Andreas.
Читать дальше →
Total votes 78: ↑78 and ↓0+78
Comments22

Rust — это не «memory safe C»

Level of difficultyMedium
Reading time27 min
Views48K

TL;DR:
— в Rust намного больше достоинств, чем просто скорость и безопасность
— в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD
— Rust — не сложный язык, особенно если не гнаться за максимальной производительностью

В этой статье я бы хотел рассказать:
— почему взгляд на Rust как на "memory safe C" очень сильно сужает область его возможного применения
— почему я смотрю на Rust как на очень удобный в разработке язык высокого уровня, которому просто случайно повезло оказаться невероятно быстрым
— почему разработка на Rust быстрее, чем многие думают
— почему Rust — это один из лучших языков общего назначения

Читать далее
Total votes 155: ↑149 and ↓6+168
Comments555

KatWalk C2: ч.3: отрезаем провода

Level of difficultyMedium
Reading time28 min
Views2.2K

Итак, мы познакомились с платформой как пользователи. Посмотрели на связь игр с софтом. Софта с платформой. Пришла пора посмотреть как платформа общается со своими сенсорами: нужен ли нам провод до платформы вообще?

Теперь познакомимся с Bluetooth LE и узнаем, почему приходится писать свой приёмник а не просто полагаться на операционную систему.

Кабель? Нет, спасибо. Но как?
Total votes 12: ↑12 and ↓0+12
Comments10

Практическое руководство по Rust. 4/4

Level of difficultyMedium
Reading time34 min
Views4.3K



Hello world!


Представляю вашему вниманию четвертую и последнюю часть практического руководства по Rust.



Другой формат, который может показаться вам более удобным.


Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современным языком программирования. Еще раз: это руководство не рассчитано на тех, кто только начинает кодить 😉

Читать дальше →
Total votes 20: ↑19 and ↓1+25
Comments2
1
23 ...

Information

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