Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Невероятно гибкие и переиспользуемые UI контролы для Angular

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 449

В данной статья я расскажу о том как создавать невероятно гибкие UI контролы в несколько строк кода, которые легко расширяются, кастомизируются и поддерживаются!

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Новости

Фаззинг с AFL++. Знакомство

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 367

Для реверсера, пывнера и бинари ресерчера очень важно уметь фаззить, поэтому данные статьи посвященны новичкам, которые только начинают фаззить и знакомятся со зверьком - AFL++.

Фаззинг (fuzzing) — техника тестирования программного обеспечения, часто автоматическая или полуавтоматическая, заключающаяся в передаче приложению на вход неправильных, неожиданных или случайных данных. Предметом интереса являются падения и зависания, нарушения внутренней логики и проверок в коде приложения, утечки памяти, вызванные такими данными на входе. Фаззинг является разновидностью выборочного тестирования, часто используемого для проверки проблем безопасности в программном обеспечении и компьютерных системах. (Wikipedia)

Упражнение 1 - Xpdf

В этом упражнении мы проведем фаззинг просмотрщика Xpdf PDF. Цель - найти сбой для CVE-2019-13288 в XPDF 3.02.

Чему вы научитесь

После выполнения этого упражнения вы будете знать основы фаззинга с помощью AFL

Читать далее
Рейтинг 0
Комментарии 0

Ландшафт разработки

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 650


Нашла у Сергея Абдульманова (Milfgard) пост 4 крутые штуки про разработку игр. В посте ссылки на 4 перевода из блога геймдизайнера Тайнана Сильвестра, создателя игры «RimWorld». Но ссылки мертвые. С разрешения автора публикую переводы из архива Мосигры ([часть 1 про симуляторы], [часть 2 про скорость разработки]).

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

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



Я веду ламповый Telegram-канал GameDevils. Заглядывайте в гости, я делюсь там материалами про геймдизайн, разработку и историю игр ^__^
Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0

Ещё раз об экзоконтинентах, тектонике плит и зарождении жизни

Время на прочтение 10 мин
Количество просмотров 702

Не так давно уважаемый @SLY_G опубликовал на Хабре перевод интересной статьи «Когда во Вселенной впервые появились континенты». Ссылаясь на исследования и модели Джейн Гривз из Школы физики и астрономии Кардиффского университета в Уэльсе, автор статьи (Эван Гоф) рассуждает о том, каким образом может быть связана потенциальная обитаемость экзопланеты и наличие континентов на ней. Также в этой статье (и в работе Гривз) выдвигаются предположения, каков может быть возраст древнейших континентов во Вселенной, и какова вероятность образования континентов на планете в зависимости от того, в какой области галактического диска сформировалась звёздная система.

Эта тема, нелестно и незаслуженно охарактеризованная одним комментатором как «гадание на кофейной гуще», возвращает меня ко многим другим темам, которые я уже рассматривал на Хабре. В частности, я писал о планетах в приливном захвате, о том, как всё сложно у Венеры с тектоническими процессами, а также о том, по каким причинам могла существовать Земля-снежок. Статья @SLY_G выносит эту проблему на уровень целой галактики и заставляет задуматься о том, какова роль континентов в формировании климата, экологических ниш и, в конечном итоге, жизнепригодности далёких планет.

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

Читать далее
Всего голосов 14: ↑12 и ↓2 +10
Комментарии 2

Хорошо ли жить в Испании на 5.000€ в месяц? (или 500 000 руб.)

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 4.5K

Привет, я переехал в Барселону в июле 2022, в целом мне тут очень нравится, и иногда друзья и знакомые спрашивают сколько нужно денег для жизни в Барселоне)

Я решил рассмотреть на примере зарплаты программиста, на что ее хватает?

По моему субъективному мнению 5 000 евро это ГРОСС (до налогов) медиана для зарплаты программиста в Испании и в целом по Европе независимо от тех стека.

Я где-то прочитал, чтобы быть в топ 1% по всему миру по заработной плате нужно получать от 32.000 долларов в год, не знаю насколько это правда, но посмотрим что может позволить себе топ 1% в Испании)

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

Читать далее
Всего голосов 36: ↑11 и ↓25 -14
Комментарии 74

Переделка мини компьютера в мобильный NAS

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 3.7K

Что если взять готовый мини компьютер и установить в него несколько SSD дисков для того чтобы получить мобильный NAS?

В статье рассмотрена возможность доработки готового мини ПК на процессоре RK3568 до мобильного NAS с помощью дополнительного модуля дисков.

Рассказывается как собрать почти полный прототип мобильного NAS на основе мини ПК и приводится пример разработки своего модуля дисков.

Доработать можно всё, но...
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 3

Жизнь самоподобной системы как вечное познание субъектом своего бесконечно сложного объективного прошлого

Уровень сложности Средний
Время на прочтение 22 мин
Количество просмотров 847

(Данная статья создана за 3 дня при помощи ChatGPT 4.0, поэтому её следует воспринимать как эксперимент по переводу мыслей автора на более менее удобочитаемый текст)

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

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

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

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

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

Читать далее
Всего голосов 12: ↑6 и ↓6 0
Комментарии 8

Недельный геймдев: #146 — 5 ноября, 2023

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 661

Из новостей: Flax Engine 1.7, GDevelop 5.3 с полноценной поддержкой 3d, Dagor Engine официально в опенсорсе, Capcom приравнивает моды к читам.

Из интересностей: полная деконструкция Warcraft Rumble, вот почему игры типа Baldur’s Gate 3 так редки, эксперименты Troika Games с плоской структурой.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Как мы запустили телеграм-радио

Время на прочтение 2 мин
Количество просмотров 1.3K

Привет, я Леша, и я подписан на 38 телеграм-каналов. В этих каналах много интересного: про технологии и стартапы, про бизнес и политику, про финансы и науку.

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

Так и родилась идея телеграм-радио. Потом были 9 месяцев сложной и неочевидной разработки, и получился Radiogram (www.radiogram.ai).

Читать далее
Всего голосов 14: ↑11 и ↓3 +8
Комментарии 7

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

Время на прочтение 5 мин
Количество просмотров 2K

В технической документации часто встречаются фразы с использованием страдательного залога. Параметры там «задаются», файлы «сохраняются», а программа «запускается». Ох, опасная эта форма для строгих и однозначных описаний! Почему же страдательный залог заставляет читателей страдать? Будем разбираться...

Читать далее
Всего голосов 40: ↑37 и ↓3 +34
Комментарии 8

Общаемся с базой знаний: как мы улучшили точность генеративных ответов LLM с помощью собственного RAG

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 547

Одна из основных проблем при использовании больших языковых моделей это практически неустранимые галлюцинации, возникающие при ответах на вопросы по загруженным документам. Задача "поговорить со своими документами" возникает очень часто, и как правило, она решается с помощью промптинга - вы загружаете вашу статью, договор или другой документ и пишете промпт "Ответь на вопрос по тексту:". Этот способ работает, но у него есть существенные недостатки: размер документа ограничен 1-3 страницами, рандомное возникновение галлюцинаций - неправильных ответов, выглядящих правдоподобно.

В этой статье мы показываем работающие кейсы и синергию подходов, реализованных нами в рамках разработки агента вопросно ответной системы - FractalGPT QA агента. В частности, с помощью алгоритма Fractal answer synthesis и интерпретируемого ИИ нам удается существенно снизить % галлюцинаций и стабильно сильно повысить точность и полноту ответов. Если читать теорию не охота - можно сразу промотать на кейсы.FractalGPT QA агента доступен в закрытой бете, запрос на тест QA системы по базе знаний можно оставить тут.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0

Как удобно хранить всю информацию по SMM проектам с помощью Obsidian?

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 1.1K

Всем привет, на связи снова команда Skill Vortex! Хоть обычно мы пишем про софт скилы и саморазвитие, сегодня отвлечемся от привычной тематики, нырнув в техническую часть.

Скорее всего, многие из читателей знакомы с приложением для заметок Obsidian. Если кратко, то этот сервис позволяет внести все свои знания и мысли в одно хранилище, вдобавок систематизировав их.

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

Как мы пришли к такому методу?

Тексты: как удобнее всего организовать и какие есть плюшки?

Сайт: удобная визуализация и быстрый доступ.

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

Как сделать коллективный разум?

А что по плагинам?

Заключение и пара полезных ссылок.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 3

Как устроено автоматическое удаление мёртвого кода в Meta*

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 3.4K

В фреймворке Systematic Code and Asset Removal Framework (SCARF) компании Meta* есть подсистема выявления и удаления мёртвого кода.

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

В своём предыдущем посте об автоматическом выводе из эксплуатации продуктов мы говорили о сложностях этого процесса, а также о созданном Meta* решении под названием Systematic Code and Asset Removal Framework (SCARF). В качестве примера мы рассмотрели Moments — приложение обмена фотографиями, запущенное Meta в 2015 году и закрытое в 2019 году. В статье говорится о том, как SCARF помогает в проведении процесса вывода из эксплуатации благодаря его функциям управления рабочим процессом. Мы сказали, что SCARF экономит время разработчиков, выявляя правильный порядок задач для очистки продукта, и указали, что можно заблокировать автоматическую очистку при наличии межсистемных зависимостей. Это естественным образом приводит нас к следующему вопросу: как автоматически разблокировать SCARF при наличии кода, ссылающегося на ресурс?
Читать дальше →
Всего голосов 28: ↑26 и ↓2 +24
Комментарии 1

Ближайшие события

Битва пет-проектов
Дата 25 сентября – 30 ноября
Место Онлайн
HolyJS
Дата 2 – 12 ноября
Время 15:00 – 19:00
Место Санкт-Петербург Онлайн
IT Recruiting – HR Forum 2023
Дата 8 – 10 ноября
Время 9:00 – 18:00
Место Москва
Яндекс Backend Tour
Дата 13 – 26 ноября
Время 18:00 – 23:00
Место Москва Нижний Новгород Екатеринбург Новосибирск Санкт-Петербург Онлайн
Национальный рекламный форум
Дата 15 – 17 ноября
Время 10:00 – 19:30
Место Москва
Онлайн IT HR-конференция HR42
Дата 17 – 18 ноября
Время 10:00 – 14:00
Место Онлайн
Импульс Т1
Дата 17 ноября
Время 13:00
Место Иннополис Онлайн
HighLoad++ 2023
Дата 27 – 28 ноября
Время 9:00 – 20:00
Место Москва Онлайн
Импульс Т1
Дата 1 декабря
Время 12:30
Место Москва Онлайн

Чудо китайской промышленности YEELIGHT Lightstrip Pro и как я её подключал к Razer Synapse 3

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 2.7K

Просто так взять и подключить RGB-ленту к приложению Yeelight Station на ПК нельзя. Для этого нужно поплясать с бубном до упаду.

Я сэкономлю Вам силы и нервы, поэтому гоу под кат за подробностями.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 7

Что внутри мощного мини-компьютера Mini IT13? Разборка нового неттопа от Geekom на базе процессора Intel 13th Gen

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 3.7K
Мощный неттоп с претензией — новая модель от Geekom на базе процессора Intel 13th Gen. Подобный неттоп не просто заменяет офисный десктоп, полностью обеспечивая работу с документами, таблицами, доступ в интернет. Быстрый процессор, увеличенный объем памяти и скоростной накопитель делают по силам даже запуск тяжелых, требовательных приложений: на борту 32 Гб памяти и 2 Тб SSD. Модель достаточно продуманная в плане компоновки и охлаждения — в статье будет разборка.


Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 14

I2C датчик INA219 + Python + Repka Pi: измеряем ток, напряжение и мощность во встраиваемых системах управления

Уровень сложности Средний
Время на прочтение 29 мин
Количество просмотров 1.8K

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

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

В этой статье мы расскажем об использовании для контроля напряжения, тока и мощности недорогого модуля GY-219 с интерфейсом I2C и чипом INA219. Вы сможете подключить его практически к любому микрокомпьютеру, где есть такой интерфейс.

В статье будет описано подключение GY-219 к отечественному микрокомпьютеру Repka PI, однако все будет работать и с Raspberry Pi. В интернете вы найдете руководства, как подключить GY-219 к любому другому микрокомпьютеру или микроконтроллеру с интерфейсом I2C.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 7

Краткая история лития: от открытия до промышленного производства

Уровень сложности Средний
Время на прочтение 17 мин
Количество просмотров 2.7K

Хрестоматийная история открытия лития и первых технологий его получения на первый взгляд чересчур академична и скучна, и, честно говоря, на сегодня полна лакун. Такова она по одной простой причине. С недавних пор, когда литий стал «белым золотом», «нефтью XXI века» и «металлом энергетики будущего», и вдобавок к этому еще вошел в «Перечень основных лекарственных средств Всемирной организации здравоохранения» как лекарство от тихого и буйного помешательства, история его открытия двухвековой давности мало кому интересна. Ну, открыли его какие-то ученые, а какие-то инженеры изобрели способы его промышленного получения, пусть спасибо скажут за то, что их имена присутствуют в научных монографиях, школьных и вузовских учебниках, энциклопедиях и справочниках, вникать в детали их научной и промышленной архаики просто некогда. 

Читать далее
Всего голосов 12: ↑10 и ↓2 +8
Комментарии 3

Использование Content-Security-Policy вместе с React & Emotion

Уровень сложности Средний
Время на прочтение 3 мин
Количество просмотров 438

Content-Security-Policy (CSP) - это HTTP заголовок, который улучшает безопасность веб-приложений за счет запрета небезопасных действий, таких как загрузка и отправка данных на произвольные домены, использование eval, inline-скриптов и т.д. В этой статье будет сделан фокус на директиве style-src и ее использование вместе с CSS-in-JS библиотекой emotion.

Читать далее
Рейтинг 0
Комментарии 0

Почему Cities: Skylines 2 так тормозит (часть 1)

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 7.9K

Одна из самых долгожданных игр для PC Cities: Skylines 2 вышла в конце октября, но получила смешанные отзывы. По моим ощущениям, геймплейно и с точки зрения симуляции игра сделала шаг в правильном направлении, и по крайней мере, теоретически она выглядит более целостной по функциям, чем первая часть. Однако в ней присутствуют существенные изъяны, от проблем с балансом и спорных дизайнерских решений до багов, из-за которых экономическая симуляция игры становится практически бесцельной. Стала ли она достойным преемником оригинала — пока вопрос открытый, но все сходятся в одном: производительность проекта далека от должного уровня.

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Комментарии 12

Вышел релиз GitLab 16.5 с отчётами о соответствии требованиям и правилами задания целевой ветки мерж-реквестов

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 1.6K
Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0