Как стать автором
Обновить
6
0
Александр @minalexpro

Пользователь

Отправить сообщение

Release Timeline — визуализация GitHub релизов в вашей документации

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

Данное приложение было создано для красивого и удобного показа изменений во Vue 3 проекте в его документации на VitePress. После оно было сделано универсальным, и может быть подключено в любой HTML странице как Web component или микрофронтенд.

Попробовать - https://vuesence.github.io/release-timeline/. Слева вверху можно указать любой публичный репозиторий.

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

Создание Web components на Vue 3

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

Можно написать на Vue 3 какой-нибудь полезный компонент и захотеть дать возможность использовать его не только в Vue проектах, но и на любых других фронтендах. Сделать это несложно через регистрацию его как web component, или подключение "микро-фронтендом". Оба варианта будут рассмотрены ниже.

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

Микрофронтенд с использованием Module Federation. Соединяем компоненты между системами на разных фреймворках

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

Всем привет! Мы — Иван и Даниил, ведущие разработчики компании ITFB Group. У компании два собственных продукта — ЕСМ/CSP/BPM-платформа СИМФОНИЯ (документооборот, хранение контента, архив, портал) и система распознавания/обработки документов ITFB EasyDoc. Пару месяцев назад к нам прилетела задача интегрировать ряд функций распознавания из продукта ITFB EasyDoc и оформить их в отдельный модуль платформы СИМФОНИЯ, дабы пользователь всё делал в одном месте и не дрейфовал по разным системам. Однако возникла загвоздка: СИМФОНИЯ — на React, а ITFB EasyDoc — на Vue. Для решения вопроса посерчили различные источники информации и плавно ушли в собственное творчество, поскольку не обнаружили стоящих вариантов с вменяемой технической детализацией. В какой-то момент возникло острое желание поделиться нашими итоговыми наработками на Хабре и заполнить пробелы базы знаний в интернете по этому вопросу. Всем, кому интересно увидеть наше решение, добро пожаловать под кат :-)

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

Авторизация и управление доступом на основе ролей для фронтенда

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

В этом модуле проекта мы погрузимся в волнующий мир авторизации и управления доступом во фронтенд-разработке. Сегодня я поделюсь с вами моим опытом работы с технологиями Vue 3, Pinia для глобального управления состоянием и TypeScript. Однако, стоит отметить, что основные принципы, которые мы рассмотрим здесь, применимы к любым современным технологиям фронтенда. Таким образом, даже если вы предпочитаете другой стек технологий, вы все равно найдете этот материал полезным.

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

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

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

Как мы реализовали текстовый поиск за 48 часов

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

В компании Циан (где я, Клюшев Александр, и работаю в роли ML-инженера) проводятся внутренние хакатоны, и один из таких проходил в начале лета 2023. Достаточно давно в компании обсуждали идею по реализации поиска объявлений через текстовую строку, и было принято решение эту идею воплотить в жизнь. В статье я расскажу, как выглядит флоу поиска, какую мы использовали модель и какие результаты получили.

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

Как обнаружить галлюцинации в LLM?

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

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

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

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

То, что вы пишете, это точно composables?

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

В этой статье c помощью простого чек листа за пару шагов выясним, являются ли функции, которые вы пишете в своем vue коде, настоящими composables

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

Как протестировать Android-приложение, которому требуются разрешения

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров3K
Часто для корректной работы приложению нужен доступ к определенным функциям мобильного устройства: к камере, записи голоса, совершению звонков, отправке SMS-сообщений и т. д. Приложение может получить доступ к ним и использовать только в том случае, если пользователь даст на это разрешение.

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



В этой статье мы покажем, как данные проблемы решает библиотека Kaspresso — популярный (1,7 тысячи звезд на Github) open-source-фреймворк для автотестов.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+23
Комментарии3

Реклама в Telegram Ads: дешевый способ закрыть гештальт для тех, кто опоздал с инстой, ВК и Яндекс Директом

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

Привет, это Влад Силантьев, основатель агентства по рекламе в Tg Ads. Хочу немного поторопить вас с запуском рекламы в Telegram.

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

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

Распознавание виджетов на экране приложения Flutter

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

Hola, Amigos! На связи Саша Чаплыгин, Flutter-dev агентства продуктовой разработки Amiga и соавтор телеграм-канала Flutter. Много. Сегодня мы вновь займемся практикой! Расскажу об интересной теме — определение положения объекта на экране. Это может быть полезно, когда мы хотим понять, виден тот или иной виджет на экране в данный момент или нет.

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

Анатомия htmx

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



Hello world!


По данным 2023 JavaScript Rising Stars библиотека htmx заняла второе место в разделе Front-end Frameworks (первое место вполне ожидаемо принадлежит React) и десятое место в разделе Most Popular Projects Overall.


htmx — это библиотека, которая предоставляет доступ к AJAX, переходам CSS, WebSockets и Server Sent Events прямо из HTML через атрибуты, что позволяет создавать современные пользовательские интерфейсы (насколько сложные — другой вопрос), пользуясь простотой и мощью гипертекста. На сегодняшний день у библиотеки почти 30 000 звезд на Github. Удивительно, что до такого решения мы додумались только сейчас, учитывая, что весь функционал был доступен уже 10 лет назад (вы сами убедитесь в этом, когда мы изучим исходный код htmx).


В этой статье мы с вами разберемся, как htmx работает. Но давайте начнем с примера ее использования.

Читать дальше →
Всего голосов 23: ↑21 и ↓2+28
Комментарии8

Самый простой гайд по созданию бота для анализа сообщений в Telegram

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

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

В этой статье рассказываем, как с помощью нейросети создать бота, который собирает и обрабатывает информацию из сообщений, и задеплоить его на облачный сервер.
Читать дальше →
Всего голосов 27: ↑24 и ↓3+30
Комментарии5

Как я сдала IELTS в 2023 году и подтвердила свой уровень Advanced

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

Dear Habr, I am writing to share my experience... ой, кажется, я переобучилась на вариантах части Writing. В общем, я пишу эту небольшую статью, чтобы поделиться личным способом сдачи международного экзамена по английскому языку, рассказать о подготовке, мотивации и издержках.

Let's go!
Всего голосов 5: ↑3 и ↓2+2
Комментарии10

Новый протокол машинного обучения Confidential-DPproof от Brave

Уровень сложностиСложный
Время на прочтение5 мин
Количество просмотров659

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

Наша модель верифицируемого конфиденциального обучения под названием Confidential-DPproof (Confidential proof of differentially private training) способствует более конфиденциальному обучению и не раскрывает никакой информации об использованных данных и самой модели.

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

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

Голодные игры начались. Развитие ИИ приведёт к естественному отбору населения

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

Эта статья, как выразился мой коллега, может «усугублять депрессивное состояние и «экзистенциальный крысис». Будьте осторожны при прочтении.

Мы попытаемся ответить на главные вопросы современности: научится ли ИИ программировать? Если да, то как быстро? И чьи должности пойдут под нож в первой партии, а кому повезёт поработать плечом к плечу с цифровым напарником?

Читать далее
Всего голосов 91: ↑52 и ↓39+25
Комментарии542

WordPress: разбор уязвимости в Discount Rules for WooCommerce

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

Добрый день, уважаемые читатели! Сегодня мы разберем одну старую уязвимость в плагине Discount Rules for WooCommerce < 2.2.0 для WordPress.

WooCommerce - это плагин для создания онлайн-магазина на движке WordPress, а WooCommerce Discout Rules - дополнение для WooCommerсe для предоставления и управления скидками на товары.

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

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

Высказывания трех известных людей о проблемах современной разработки ПО

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

Думаю, что после прочтения статьи Никиты Прокопова «JavaScript Bloat in 2024» (рус. «Насколько потолстел JavaScript к 2024 году?») не я один стал с пессимизмом смотреть на будущее веб-разработки. Хотя тема раздутия JavaScript не нова (одним из первых на эту проблему обратил внимание Эдди Османи в своей статье-отчете «The Cost Of JavaScript» (рус. «Сколько стоит JavaScript?») в 2017 году), но здесь поражает масштаб проблемы, обозначенный автором статьи.

Нечто подобное было с HTML (и в какой-то степени с графикой) на ранних этапах развития Всемирной паутины (далее веб). Проблему раздутия HTML удалось практически полностью решить к середине 00-х за счет внедрения веб-стандартов и совершенствования WYSIWYG-редакторов HTML. Появление технологии AJAX и одностраничных приложений (SPA) сместило акцент на JavaScript, но это не привело к мгновенному утяжелению веб-приложений (например, первые версии Gmail прекрасно работали даже на самых медленных dial-up-соединениях).

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

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

Читать далее
Всего голосов 15: ↑12 и ↓3+11
Комментарии21

Как фриланс помог мне открыть свое агентство

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

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


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


До фриланса: качайте скиллы!


Заниматься бизнесом мне хотелось с детства. С восьми лет я зарабатывал на чем только мог: сначала снимался в рекламе и фильмах в качестве массовки, потом, с 14 лет, работал на разных низкоквалифицированных позициях: курьером, официантом, доставщиком, проводил инвентаризацию в магазинах. В 17 лет поступил в университет, но поскольку меня там ничему интересному не учили, я стал участвовать в разных инкубаторах, хакатонах и прочих активностях. Параллельно прочел все изданные к тому времени книги “Манн Иванов и Фербер” и “Альпина Паблишер”.


Что меня всегда привлекало – это маркетинг, и в качестве первого самостоятельного проекта я организовал бизнес-клуб, в который приглашал топов бизнеса выступать перед студентами. Собирая мероприятия, на которые приходило по 300 человек, я получал первые навыки работы с партнерами, биз-девом, рекламой, контентом. Фактически, это и был бизнес, только без денег. Благодаря ему я познакомился со своим первым работодателем и ментором – Ильей Балахниным, основателем одного из лучших независимых маркетинговых агентств Paper Planes. Он позвал меня вместе делать онлайн-университет, который запускала его компания. Проработав с ним бок-о-бок четыре месяца, запустив 4 потрясающих практических оффлайн курсов по стратегическому маркетингу и схожим дисциплинам, я набрался знаний о том, как работает агентство и рынок онлайн-образования, продажи, маркетинг и копирайтинг.

Всего голосов 13: ↑5 и ↓8+2
Комментарии3

Чему менеджеры по продукту могут научиться у Симпсонов

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

Много статей написано о том как тренировать продуктовую насмотренность.

Обычно они включают следующие пункты:

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

Сегодня я бы хотел остановиться на последнем пункте, и, как ни странно, порекомендовать вам посмотреть мультсериал Симпсоны. А в свете закрытия автомобильного направления в Apple статья становится еще более актуальной. 😀

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

Как я зарабатывал $10,000 в месяц на серверах ARK: Survival Evolved

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

Я — ведущий гейм дизайнер с опытом разработки крупных, хардкорных проектов в жанрах от MMORPG и CRPG до мобильной MOBA. Почти три года мы с лучшим другом продюсировали, дизайнили, разрабатывали и занимались живым оперированием своих серверов по игре ARK: Survival Evolved. За это время мы неплохо заработали (в среднем проект приносил $6000-12000 gross ежемесячно). Конечно же, мы столкнулись с тонной сложностей и челленджей, и выучили много уроков. В этой статье я хочу не только рассказать о нашем приключении, но и поделиться выученными уроками. Оперирование кастомных серверов огромных франшиз типа Roblox, Fortnite или Minecraft и других игр похожа на разработку игр в классическом понимании, но имеет под собой свою специфику. Этот опыт будет полезен не только моддерам, но и разработчикам и продюсерам игр. 

ARK: Survival Evolved — ММО экшен от 1 и 3-го лица с крафтом, строительством и динозаврами. На динозаврах в игре можно охотиться, можно приручать, ездить на них, разводить и воевать с другими племенами в игре, и это основная фишка, привлекающая игроков. Но настоящая основная особенность игры в том, что карты — собственно, ковчеги, объединены в кластеры, внутри которых игроки могут беспрепятственно путешествовать между карт, превращая мир игры в настоящее ММО — в отличие от большинства остальных подобных игр. Это гениальная игра, о которой невозможно рассказать в двух словах, и она доводит своих игроков до настоящей аддикции, и те проводят в ней тысячи и десятки тысяч часов.

Читать далее
Всего голосов 108: ↑102 и ↓6+114
Комментарии44

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность