Библиотека функций к Script-fu
Как я ранее уже говорил, обобщённые функции нашей системы производят диспетчеризацию вызовов методов основываясь на типах входящих аргументов. Пока меня устраивала ситуация, что диспетчеризация производится только для классов. Все остальные типы данных не учитывались при диспетчеризации методов. В реально же CLOS возможна диспетчеризация по примитивным типам данных. И вообще для работы обобщённых функций классы не требуются. Можно ли как то реализовать подобное поведение в нашей системе? Решению данного вопроса и посвящена эта статья.
Читать далееРаботая с Oracle Data Integrator (ODI), мы ценим его графический интерфейс за автоматизацию рутины и удобство разработки. Однако, когда проект масштабируется до десятков пакетов и сотен сущностей, GUI перестает быть оптимальным инструментом для отслеживания потоков данных, глубокого анализа и аудита зависимостей.
В таких случаях ключом к эффективности становится прямое взаимодействие с метаданными ODI через SQL-запросы к его репозиториям. Эта статья посвящена именно этому – практической работе со структурой репозиториев ODI и детальному разбору SQL-запроса для построения потоков данных.
Читать далееПривет. Меня зовут Владислав Бердник, я DevOps. Хотя сейчас это не так важно. Ведь чем бы я ни занимался, где бы ни работал, меня окружают люди.
В этой статье я попытаюсь взглянуть на вопросы общения глазами человека с математическим и системным мышлением, но объяснять свои мысли буду инструментами психологии и риторики. Я надеюсь, что такое изложение добавит новые краски в известные аспекты коммуникаций.
Читать далееЗа 3 месяца наша платформа для создания пошаговых инструкций и документации прошла путь от MVP до первых продаж:
1. 100+ регистраций с Product Radar
2. Вырастили активацию пользователей с 40% до 59%
3. Поднялись в поисковой выдаче
4. Получили первых платящих B2B клиентов
Никаких вложений в рекламу, чистый скилл и проверка гипотез. Как? Поделюсь в статье..
Читать далее, он же делитсяПосле статьи о баге в CancelIoEx решил рассказать ещё об одном дефекте в системных компонентах Windows — на этот раз в IP Helper (часть Windows API, отвечающая за работу с сетевой статистикой и таблицами соединений).
Этот API, среди прочего, даёт возможность сопоставлять перехваченные на уровне сети пакеты с локальными процессами. Казалось бы, проверенный механизм, который работает «под капотом» множества утилит и сетевых фильтров. Но в ходе тестирования WireSock Secure Connect в режиме split tunneling по процессам мы наткнулись на утечку, способную за считанные минуты выбить лимит хендлов в системе.
Поводом для расследования стало сообщение в нашей группе поддержки WireSock в Telegram: один из пользователей заметил аномально быстрый рост числа открытых дескрипторов процессов. Проблема стабильно воспроизводилась под нагрузкой и исчезала, если использовать фильтрацию по IP-адресам. Это стало первой зацепкой, которая в итоге вывела нас на баг в реализации IP Helper.
Отдельное спасибо пользователю @dno5iq, который обнаружил проблему, выполнил реверсинг GetOwnerModuleFromPidAndInfo и помог подтвердить наличие дефекта в её реализации.
Читать далееВ программировании микроконтроллеров обычно код исполняется из on-chip NOR flash памяти. Однако иной раз надо разместить Си-функцию в RAM памяти.
В этом тексте я написал как запустить функцию из оперативной памяти.
Кто‑то говорит, что изолированные сервисы — обязанность любой команды и любой проект, даже стартап, должен быть написан только так, другие говорят, что это только модное направление, куда все побежали, плохо разобравшись и вообще, performance — наше все. Как всегда, правда где‑то посередине. В этой статье я хотел бы осветить проблемы перехода от монолита к микросервисам, рассказать про свой опыт и трудности, которые команде пришлось преодолевать.
Читать далееsolidjs-hook-form — библиотека для удобной и быстрой работы с формами в SolidJS. Использует Zod для мощной валидации и встроенную реактивность SolidJS для высокой производительности. Легковесная, не навязывает стили и дает полный контроль над UI. Идеальна для разработчиков, которые хотят меньше возиться с формами и больше фокусироваться на логике приложения. Попробуйте, если работаете с SolidJS — возможно, это то, что вам нужно!
Читать далееВ данном кейсе расскажу как мы продвигаем крупный интернет-магазин детской одежды с учётом сезонности поискового спроса, ну и про 1.500.000 малоценных или маловостребованных страниц тоже расскажу.
Задача, контекст: SEO‑продвижение в ТОП‑10 с целью увеличения потенциальных покупателей и увеличение продаж.
Ниша: Детская одежда.
Срок работ над проектом: 07.2023–07.2024.
Клиент: Крупный интернет-магазин модной детской одежды. Большой ассортимент — более 15 000 товаров, БЕЗ учёта размерной сетки! Оффлайн магазины в более 10ти ТЦ Москвы.
Читать далееНесмотря на сложности, стоящие на пути инди, тысячи талантливых разработчиков и команд продолжают запускать новые игровые проекты. Часто один человек выполняет сразу несколько ролей. Трудно представить себе, чтобы в большой компании геймдизайнер и программист были одним лицом. Но в инди - это реальность. В этой статье я поделюсь опытом пересечения игровой и программной логики, который помогает геймдизайнерам развиваться и лучше понимать как их идеи и документы будут реализованы на практике.
Читать далееКаждый раз, когда мы выкатываем обновление платформы быстрой разработки корпоративных приложений Jmix, мы популярно рассказываем о том, что изменилось и как перейти на новую версию. Несмотря на доступность технических материалов и удобных инструментов, аспект накопления технического долга как был, так и остается сильно недоинвестированным со стороны команд разработки. Проценты капают, а через пару лет вопросы к нам - “Почему так сложно на новую версию переходить!? Что-то вы тут недоработали”.
Мы разрабатываем Jmix уже более 10 лет, и за это время видели много случаев игнорирования командами работы с техническим долгом. Предлагаем вашему вниманию статью, которая поможет диагностировать операции по работе с техническим долгом и понять, где образовались разрывы. Не благодарите - просто скачайте Jmix и попробуйте;)
Читать далееПривет, Хабр!
В конце мая директор КЕДР Solutions Егор Гуторов побывал в Новосибирске, на первом приборостроительном форуме “Прибориум”. На этой площадке лидеры российской микроэлектроники и программного обеспечения рассказывали о своих продуктах, делились опытом, обсуждали актуальные проблемы отрасли и вопросы импортозамещения.
Воспользовавшись случаем, Егор встретился с несколькими участниками мероприятия и записал три коротких выпуска подкаста “Платы и байты”:
Читать далееПривет, Хабр!
Мы — Алевтина Чугунова (владелец продукта дизайн‑системы) и Дарья Каткова (QA‑инженер). В этой статье расскажем, как создаём и тестируем дизайн‑систему, с какими проблемами сталкивались и какие инструменты разработали, чтобы упростить жизнь себе и командам.
Вы узнаете:
- Что такое дизайн‑система и зачем она нужна.
- Как тестировать интерфейсы без боли.
- Какие инструменты помогают автоматизировать проверки.
Читать далееРазвитие нейросетей создало прецедент, когда видеозапись события не может быть однозначным достоверным доказательством. Однако на горизонте зажглась надежда в виде системы аутентификации, которая будет добавлять не просто водяные знаки на видео, а целый световой мерцающий код, используя освещение на месте съёмки.
Читать далееПривет, Хабр. Давайте о больном. У вас 5+ лет опыта, вы уверенно решаете сложные задачи, менторите джунов и знаете свой стек досконально. Вы чувствуете себя сеньором. Но раз за разом на собеседованиях вам либо предлагают позицию Middle+, либо дают оффер с зарплатой, которая явно не дотягивает до сеньорской.
В чем проблема?
Проблема в том, что вы пытаетесь измерить свой уровень одномерной линейкой «знания технологий». А в голове у адекватного нанимающего менеджера - многомерная система координат.
Как бывший рекрутер, я видел десятки таких «матриц компетенций» в разных IT-компаниях. И сейчас я вскрою этот черный ящик и покажу, по каким на самом деле осям вас оценивают.
Читать далееВ этой статье вы найдете немного личных наблюдений и советов о том, как сохранить проект живым и здоровым с течением лет. Без иллюзий всезнания. С лёгким, здоровым цинизмом.
Мой личный опыт связан с разработкой сервисов в рамках продуктовой разработки. В данной статье я говорю именно о такой разработке, а не о создании библиотек, фреймворков, баз данных и других замечательных вещей. Также я не касаюсь проектной разработки, где код пишется на заказ и передаётся в поддержку другим.
Читать далееПривет!
В интернете можно найти разные объяснения того, как работают нейросети, но те, что мне попадались, были либо слишком специфичны и ориентированы на специалистов, либо слишком упрощены.
Постарался написать свои объяснения, которые были бы не было слишком упрощены, но при этом по возможности понятны.
Статья на 10 процентов скомпилирована из других статей, на 30 процентов скомпилирована из множества диалогов с разными LLM и на 60 процентов «написана от руки» на основании статей и ответов.
Читать далееВ этой статье автор рассказывает о том, как самостоятельно построить сервис-меш с помощью современных инструментов и Open Source-решений. Материал будет полезен разработчикам и инженерам, интересующимся внутренним устройством сервис-мешей, их преимуществами, а также возможностями настройки и кастомизации под собственные нужды.
Читать далее10 новых российских продуктов для монетизации контента, авторазбора звонков продавцов, поиска работы в IT, изучения иностранных языков и многого другого. Битва за «Продукт недели» началась!
Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.
Читать далееПрогулки на велосипеде, чтение, шахматы — все эти приятные и ныне полезные для тела и ума занятия некоторое время назад считались пустой тратой времени, а иногда и вредными делами.
Читать далее