В этой небольшой статье мы с вами напишем свое простое приложение по типу "заказа еды". Само приложение если что будет статичным и здесь главный упор будет сделан на использование компонентов Vuetify и рассмотрение того как именно они работают. Также добавлю что здесь мы не будем рассматривать отдельную библиотеку Bootstrap Vue которую использует Vuetify чтобы строить гриды.
Разработка
- Новые
- Лучшие
- Все
- ≥0
- ≥10
- ≥25
- ≥50
- ≥100
Новости
Прытко бегают, так часто падают
Нередко я нахожу подтверждение тому, что нарушение правила “сначала думай потом делай” с целью ускорения выполнения задач приводит к обратно пропорциональному результату.
Приступив к разработке без изучения предметной области и без проведения анализа технологий и подходов, пренебрегая написанию технического дизайна, процесс выполнения задачи может превратиться в непрерывный стресс с неудовлетворительным результатом.
Поскольку ранее я довольно часто участвовал в городских спортивных мероприятиях, мне нравится приводить пример в рамках соревнований.
В десктопном Linux всё ещё больно
25 августа 1991-го Линус Торвальдс впервые сообщил миру, что работает над новой ОС. Если отсчитывать от этого, то позавчера Linux исполнилось 30 лет, так что можно подвести какие-то итоги: например, скоро ли настанет «год линукса на десктопе»?
А неделю назад я написал о нюансах перехода на Mac. И быстро появились комментарии, что вот в линуксах нет описанных сложностей — мол, непонятно, зачем вообще люди страдают за маками. На мои слова «так в Linux другие проблемы, там многие чинят звук, лазая по форумам» ответили, что это устаревшие стереотипы. А сейчас всё работает из коробки, даёшь детям и они не нарадуются.
Я уже почти десять лет не использовал Linux в качестве основной системы, поэтому подумал: может, действительно напраслину возвожу, а всё уже изменилось и с форумами больше никогда не сталкиваешься? Наконец можно рекомендовать линукс родственникам? Вот-вот к нему придёт массовая популярность?
Захотелось хотя бы бегло глянуть. Тут ещё и повод подвернулся: помогал другому человеку выбрать ноутбук, и он был не против установки линукса. В общем, глянул. И быстро испытал столько ярких ощущений, что написал этот пост.
Как мы внедрили BI-платформу и начали развивать self-service аналитику
Всем привет! Меня зовут Дима. Я BI Engineering Manager в inDriver. В компанию я пришел в марте 2020 года развивать направление Business Intelligence. О том, как это происходило и происходит сейчас, с какими вызовами приходится сталкиваться и какие у нас планы на будущее по этому направлению, читайте далее в этой статье.
ТОП-3 ИБ-событий недели по версии Jet CSIRT
На этой неделе в подборке ключевых новостей ИБ – проблемы безопасности Windows при подключении периферийных устройств, критическая уязвимость в медицинском оборудовании, обнаружение очередного Zero-Click эксплойта под iOS. ТОП-3 собрал Игорь Фиц, аналитик центра мониторинга и реагирования на инциденты ИБ Jet CSIRT компании «Инфосистемы Джет».
Подробнее читайте под катом.
Задача выбора (назначения). Венгерский метод решения
Среди задач линейного программирования выделяют задачи, обладающие определенной спецификой, мотивирующей поиск и разработку специфических методов их решения. Эти методы существенно проще общего симплексного метода, так как учитывают особенности структуры и процессов (в транспортной задаче - это перевозки), описываемых задачей. В этой задаче для ее решения предложен как раз такой метод, получивший название "венгерский метод".
А что у них? Обзор американской бухгалтерии QBD
В статье вы найдете обзор системы, а также немного аналитической информации.
Проигрыватель мелодий из игры Monkey Island
Приключение начинается...
Кратко:
- Я модифицировал DOSBox для извлечения пар значений частоты/задержки мелодий PC-спикера из игры «Остров обезьян».
- Затем с помощью алгоритма Хаффмана я втиснул всю эту музыку в ATiny85 (512 байтов ОЗУ, 8Кб флэш).
- После этого собрал небольшую плату с динамиком для ее воспроизведения…
- … в качестве подарка моим племянникам и племянницам, с которыми встречусь в ближайшем будущем спустя год изоляции из-за пандемии.
Все верно – их дядя откровенный ботан, позаботившийся о том, чтобы детство племяшей не прошло без знакомства с Гайбрашем Трипвудом:)
Как NAS защитить от программ-вымогателей?
Программы-вымогатели и другие угрозы всё чаще нацелены на NAS – Network Attached Storage – сетевые файловые накопители. Поэтому важно убедиться в том, что устройства настроены в соответствии с уже отработанными практиками безопасности.
Библиотека СleanAPI: cоздаем микросервис на Python за 30 секунд
Использование микросервисной архитектуры для построения корпоративных приложений взамен традиционной монолитной — популярный тренд в веб-разработке.
Первая проблема, которую вам предстоит решить, столкнувшись на практике с задачей написать микросервис на Python — выбор подходящего фреймворка.
Мой выбор — Tornado. Поработав с Tornado в паре коммерческих проектов, я в целом остался доволен результатами. Однако, как бы ни было хорошо, всегда хочется чего-то большего.
Результатом моих раздумий стала небольшая библиотека CleanAPI, представляющая собой оболочку над Tornado, позволяющую повысить удобство разработки и снизить порог вхождения для новичков.
Языки Data Mining и AI переживают бум
Смартфоны много лет назад стали хитом, а за ними последовали языки программирования мобильных приложений. Достигший пика на третьей позиции Objective-C использовался только для iPhone. Сегодня ту же картину мы видим в Data Mining и искусственном интеллекте: языки программирования в этих областях переживают бум.
Ярчайший пример — Python, отвоевавший вторую позицию у Java. Благодаря этому возродился Fortran, но не только он. Подробности, которыми делимся к старту флагманского курса по Data Science, читайте под катом.
Метод персон против Франкенштейна: эликсир продакта для бизнес анализа
Необходимость описания персон для создания внутренних продуктов организации (автоматизация бизнес процессов) может показаться продуктовой блажью, отголоском agile фанатизма или развлекательной пищей для скучающего ума. Но это поверхностное мнение, ведь изменения бизнес-процессов компании зачастую затрагивают продуктовые характеристики для внешнего клиента. Создавая внутренний продукт, вы можете воздействовать на очертания внешнего и наоборот.
Можно встретить много примеров того как применять customer development, который опирается на “персоны”, для B2C, B2B продуктов, даже для B2BC решений, но сегмент продуктов внутреннего потребления как правило скрыт от посторонних взглядов. Их чаще называют проектами по “автоматизации бизнес-процессов”, которые решают задачу для внутреннего клиента. Особенностью таких проектов/продуктов является секретность, неотвратимость пользования создаваемым продуктом (как считают многие оптимизаторы) и возможность “дотянуться” до потребителя рукой.
В статье аккумулированы некоторые типичные ситуации, выстраданные многолетней практикой по автоматизации бизнес-процессов в десятке отраслей, где я побывал на разных ролях: от business analyst до product manager. Ключевый объект суммирирования опыта — люди, а именно знаниях об их осознанных или неосознанных потребностях, которые являются отправной точкой улучшений.
JavaScript: 2 интересных примера практического использования Intersection Observer API
Привет, друзья!
На днях мне посчастливилось заниматься решением 2 несложных, но довольно интересных задач на чистом JavaScript
(из-за React
чуть не забыл, как это делается). В процессе решения этих задач никто не пострадал, напротив, все остались довольны. Поэтому я решил поделиться результатами с сообществом.
Обратите внимание: данная статья рассчитана, преимущественно, на начинающих разработчиков и вряд ли покажется интересной опытным, хотя, смею надеяться, что и последние не пожалеют потраченного времени, если прочитают ее до конца.
Введение
Итак, задачи были следующими:
- Реализовать навигацию по разделам сайта с визуальным переключением индикатора текущего местонахождения пользователя и возможностью переходить к определенному разделу по клику. Сама навигация согласно макету должна была выглядеть так:
- Реализовать "ленивую" (отложенную, lazy) загрузку медиаресурсов (изображений, аудио и видео), поскольку те же изображения даже после сжатия с помощью
gulp-imagemin
весили (и весят, потому что они никуда не делись) неприличные 50 Мб и загружались при запуске приложения (больше они себя так не ведут).
Ускоряем разработку с Quarkus 2.0 при помощи горячей перезагрузки и тестирования
Quarkus поставляется с набором инструментов, позволяющих разработчикам быстро начать разработку используя расширения для многих популярных IDE. Одной из наиболее известных и простых в использовании функций является возможность выполнять горячую перезагрузку (Live Reload) в реальном времени в режиме разработки (Dev Mode), позволяя разработчику изменять свой код на лету без перезапуска приложения. С выходом новой версии Quarkus 2.0 разработчики полчили ещё больше возможностей. Например, в режиме разработки появилась интерактивная оболочка, предлагающая набор различных опций для более детального контроля над тем, какие из компонентов нужны разработчику в данный момент. Quarkus также предоставляет утилиту командной строки для конфигурации проекта и дальнейшей быстрой разработки.
Разработчики Mozilla выяснили, почему гиперссылки синие
Интернет проник во все аспекты нашей жизни, но мы уверены, что один аспект цифрового мира вы считаете чем-то само собой разумеющимся. Замечали ли вы, что множество ссылок, в частности, гипессылок, имеет синий цвет? Когда коллега спросил меня, почему ссылки синие, я была поражена. Я UX-дизайнер и создаю веб-сайты с 2001 года, и я всегда делала ссылки синими. Да, я отстаивала выбор конкретного оттенка синего и согласованное применение синего цвета, но никогда не задумывалась: почему же ссылки синие? Это просто был факт из жизни. Трава зелёная, гиперссылки синие. В нашей культуре настолько принято ассоциировать ссылки с синим цветом, что когда в 2016 году Google изменила цвет ссылок на чёрный, это вызвало разногласия.
Но теперь меня поглотил вопрос: ПОЧЕМУ же ссылки синие? КТО решил сделать их синими? КОГДА было принято это решение и КАК это решение оказалось таким влиятельным?
MicroProfile и его экосистема
Совсем недавно вышла новая версия MicroProfile - 4.1. Я бы хотел рассказать, что вообще такое MicroProfile, для чего он применяется, из каких компонентов состоит и чем привлекает к себе разработчиков. В этой статье я покажу несколько примеров того, как он может использоваться на практике на примере работы с Quarkus, фреймворком, который является одной из множества реализаций спецификаций MicroProfile.
Рекомендательные системы: как алгоритмы ЯRUS подбирают пользователям новости
Руководитель технической дирекции ЯRUS, Дмитрий Илюхин
Сегодня мы поговорим о внутренней кухне рекомендательных систем на примере приложения ЯRUS. Разработчики предлагают ярусный контент – новости, видео, события, музыку и многое другое. Однако цель команды ЯRUS – не только собирать разнообразный контент на одной площадке, но и правильно показывать его пользователям, за что и отвечает рекомендательная система. Что же такое рекомендательные системы и как они работают, расскажет руководитель технической дирекции ЯRUS Дмитрий Илюхин.
— Привет, как ты долго занимаешься проектом?
— В ЯRUS я с самого его основания, с июля 2020 года. Многое, что вы можете увидеть сейчас, – итог наших общих трудов с командой.
— Расскажи чуть подробнее, как связаны приложение и рекомендательная система?
— Наше приложение выступает не только как социальная платформа, но и как агрегатор. Основная задача проекта – это собрать контент: аудио, видео, текст и изображения для пользователя так, чтобы он ему был максимально интересен. Для этого и используются рекомендательные системы.
Есть два типа подходов. Первые основаны на том, что смотрит группа пользователей; вторые – на предпочтении конкретного человека. Мы учитываем всё.
Например, к нам в систему ежедневно подтягивается около 56 000 новостей от 10 000 источников СМИ. Все они проходят внутреннюю чистку: на качество, язык и прочие параметры. Оставляем только литературные тексты.
После этого идет формирование новостного сюжета. При выборе главной новости используются разные веса: новизна и объем новости. Это и станет той базой, что мы будем рекомендовать пользователям, используя различные алгоритмы ранжирования.
Мой крошечный любительский проект оказался важнее, чем десять лет работы в индустрии ПО
Первую версию я написал в пятницу днём на работе, когда обратил внимание, как много времени коллеги тратят на копипаст текста из Word в CMS и последующее форматирование. Такие однотипные действия еженедельно забирают часы рабочего времени. Я написал утилиту для автоматизации этого процесса, с учётом нашей стройной рабочей системы конвертации стилей Word в нужные классы CSS вместо мешанины HTML-тегов, которые выдаёт нативный экспорт Word. Программка была не идеальной — коллегам всё равно приходилось что-то поправлять, но ускорила рутинные операции примерно на порядок.
По пути к вершине Эльбруса: Кузнечик на DSP
C интересом прочитал статью о впечатляющих показателях процессора Эльбрус на алгоритме шифрования Кузнечик. В этой же статье приведена ссылка на проект с реализацией указанного алгоритма. Вот мне и захотелось посмотреть, как пойдет реализация этого алгоритма шифрования на сигнальном процессоре К1967ВН44(28) , с которым мне часто приходится работать.
Шаг за шагом
DSP серии К1967ВНхх имеют собственную среду разработки CM-LYNX , компилятор С и С++ на базе Clang. Этого набора достаточно чтобы попробовать сделать оценку производительности процессора на указанной выше реализации алгоритма . В архиве проекта два файла: в одном 8-битная версия алгоритма, а в другом 128-битная версия, т.е. вариант для процессоров поддерживающих операции со 128-разрядными числами.
Для полноты эксперимента, начинаю с 8-битной версии. После компиляции и запуска на отладочной плате К1967ВН44, при максимально возможном уровне оптимизации –О2, получаю результат
Self-test OK!
kuz_encrypt_block(): 54.804 kB/s (n=200kB,t=3.649s)
kuz_decrypt_block(): 52.435 kB/s (n=200kB,t=3.814s)
Программа информирует , что тест самопроверки прошел успешно , а затем производит замер скорости шифрования-дешифрования. По умолчанию, в инструментальном софте для платы К1967ВН44 используется определение частоты процессора 250 МГц. Для этой частоты и произведены вычисления.
Чтобы понять, что это за уровень скорости 54.804 kB/s, приведу аналогичный показатель последовательной обработки для процессора Эльбрус(8СВ) - 150 мегабайт в секунду на одном ядре. До Эльбруса нужно еще ускориться где-то в 3 000 раз.
Инженерная магия кинематографа
27 августа в нашей стране отмечается День российского кино. Хороший повод, чтобы поговорить об инженерной стороне кинематографа. Ведь кино — это не только замысел сценаристов и режиссеров, взгляд оператора и игра актеров. Огромный пласт работ остается за кадром, но часто именно такие, не видимые зрителю действия и ложатся в основу того, что мы называем магией кино. В честь праздника подготовили обзор инженерных находок в кино — от самых первых картин до современности.