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

Разработка

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

Исследуем фактор случайности в JavaScript

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

В одном недавнем посте я рассказал, как написать утилиту для работы с палитрой в Alpine.js, и важной составляющей этой работы было запрограммировать случайность: каждый пробник на палитре генерировался как совокупность произвольно взятых значений «оттенок» (Hue) (0..360), «насыщенность» (Saturation) (0..100) и «осветление» Lightness (0..100). Собирая этот демо-пример, я наткнулся на Web Crypto API. Как правило, при генерации случайных значений я пользуюсь методом Math.random(); но в документации MDN указано, что есть более безопасный метод Crypto.getRandomValues(). Так что я решил всё-таки попробовать Crypto (оставив модуль Math в качестве резервного варианта). Но в итоге мне осталось только задумываться, а вдруг найдутся конкретные практические случаи, в которых «повышенная безопасность» означает «повышенную случайность».

Можете выполнить это демо в рамках моего проекта JavaScript Demos на GitHub.

Просмотрите этот код в рамках моего проекта JavaScript Demos на GitHub.

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

Новости

Создание микросервисов на Groovy с Micronaut

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

Micronaut — фреймворк для ЯП Groovy. Он предназначен для создания микросервисов и серверных приложений на JVM. Он был разработан с учетом всех недостатков и ограничений предыдущих фреймворков, таких как Spring и Grails.

В статье рассмотрим, как работать в Groovy с Micronaut на практическом примере.

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

Миссия «wayland на gentoo c nvidia» (провалена)

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

Вечером, в районе 8 часов, стукнуло в голову таки посмотрeть на wayland. Вообще такие мысли возникают переодически, но обычно идея быстро затухает после некоторого времени чтения мануалов, ибо нефига не понятно. Десктоп - gentoo с nvidia. Последннее время графическая часть на нем это: Xorg, проприетарные дрова nvidia, LightDM на входе, WM в виде awesomewm. До awesomewm были xfce -> i3wm. В целом все работает, устраивает, но иногда хочется нового. Надо ли говорить что KDE/Gnome терпеть ненавижу.

Включаю wayland в USE в /etc/portage/make.conf, пересобираю все что его умеет через emerge -avtN @world . Что интересно, пересобирается без ошибок. Насколько я помню, я уже пытался включать этот флаг с мыслью что потом попробую, но в итоге выключал, потому что были проблемы со сборкой некоторых пакетов. Параллельно ищу что там вообще с WM.

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

UV. Обзор пакетного менеджера Python

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

Всем привет! Недавно познакомился с замечательным пакетным менеджером uv. Хочу и Вас с ним познакомить!

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

Истории

NetApp Snapvault и SnapLock – 100% защита от шифрования данных?

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

В  современно мире, где данные это ценный актив, постоянно находящийся под атакой злоумышленников и некомпетентности обращения с ними со стороны «обороны», защита от шифрования выходит на первый план. В сложившемся положение, выделяются технологии NetApp SnapVault и SnapLock предлагающие ряд решений обещающих полную защиту данных, но действительно ли они могут гарантировать 100% безопасность? Давайте разберемся.

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

10 библиотек Python для машинного обучения — подборка для начинающих

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

Составили список самых важных библиотек Python для машинного обучения и рассказали, для каких задач они могут быть полезны начинающим ML-инженерам и специалистам по Data Science.

Собрать подборку помог Кирилл Симонов — ML-разработчик компании IRLIX с экспертизой в компьютерном зрении.

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

7 способов выгрузить данные из 1С для бизнес-аналитики

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

При загрузке данных из 1С во внешнюю BI-платформу обычно возникают трудности. 1C – закрытая проприетарная система, подключиться к которой напрямую и просто выгрузить данные без нарушения лицензионной политики нельзя.

Как решить эту проблему?

Рассматриваем 7 самых популярных способов извлечения данных из 1С для бизнес-аналитики, их плюсы и минусы.

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

Основы работы с файлами и потоками в C#

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

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

В этой статье мы рассмотрим основы работы с файлами и потоками в C#.

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

Лучшие ИИ-генераторы видео

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

Мир стоит на пороге новой эры цифрового творчества, где воображение обретает форму не только с помощью кисти и холста, но и благодаря строчкам кода. Искусственный интеллект, некогда фантастическая идея, становится повседневной реальностью, предлагая художникам, дизайнерам и просто энтузиастам новые инструменты для воплощения своих идей. Одной из самых захватывающих областей в этом контексте является генерация видео с помощью ИИ. Представьте себе: вы описываете свою идею, а интеллектуальный алгоритм превращает её в захватывающий видеоролик, полный движения, цвета и эмоций. Звучит невероятно? Тем не менее, это уже реальность благодаря таким моделям, как Sora, Kling, Runway Gen-3, Veo и Dream Machine.

Приятного прочтения (:

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

Автоматизация тестирования без скриптов: возможно ли?

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

Тестирование программного обеспечения играет ключевую роль в проверке качества любого ИТ-продукта. Раньше тестирование выполнялось только вручную, что требовало значительных усилий и времени. Однако с развитием технологий автоматизация тестирования становится всё более популярной.

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

Поэтому перед многими компаниями встаёт вопрос: можно ли создавать и выполнять тесты с помощью более доступных инструментов, которые не требуют от тестировщиков глубоких знаний кода?

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

Ограничения традиционной автоматизации

Ниже мы подробнее разберём ограничения автоматизации тестирования, при которой требуется написание скриптов.

1. Сложность поддержки: при использовании скриптов для автоматизации тестирования может возникнуть проблема сложности поддержки. Когда ПО меняется, необходимо обновлять и поддерживать существующие скрипты, для чего потребуются дополнительные ресурсы компании.

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

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

Локальные LLM в разработке: а почему бы и да?

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

Меня зовут Антон Гращенков, и я занимаюсь развитием Java в Альфа-Банке. Программированием увлекаюсь ещё со школы: писал на множестве разных языков — от Pascal до TypeScript, мне это просто нравится. В статье я на примерах покажу, для каких задач я использую локальные модели. Да, существует много инструментов доступных в облаке, — тот же ChatGPT, Copilot или YandexGPT. Однако можно запустить такую модель и локально, и сделать это крайне просто. 

Ведь если хочется, то почему бы и да?

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

GPU-ускорение FFmpeg. Видите прибавку в скорости? И я нет. А она должна быть…

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

Привет, Хабр! С вами Матвей Мочалов, и сегодня у нас небольшая лабораторная работа. Вспомним, что GPU нужны не только для нейронок и AI — еще они могут ускорять много других полезных задач. А конкретно мы сравним разницу в скорости между работой FFmpeg на процессоре и на видеокарте Nvidia.

В ролях у нас гибридный ноутбук под Linux с мобильной видеокартой RTX 3050Ti и процессором Ryzen 5 5600H. Также в массовке участвует удалённый тестовый сервер с Xeon и заглушкой в PCI слот, которую дядя Дженсен Хуанг решил по доброте сердечной добавить в линейку Quadro.

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

Книга: «Hypermedia-разработка. htmx и Hyperview»

Время на прочтение25 мин
Количество просмотров536
image Привет, Хаброжители!

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

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

Познакомьтесь с новыми инструментами — htmx и Hyperview, которые используют гипермедиа в качестве системной архитектуры. Научитесь строить сложные пользовательские интерфейсы с использованием гипермедиа как базовой технологии: на базе htmx для веб-приложений и на базе Hyperview для мобильных. А затем исследуйте прикладные современные подходы к построению веб-приложений, в которых эта архитектура используется.

Гипермедиа-управляемая архитектура подойдет не для каждого приложения, но повышенная гибкость и простота станут огромным преимуществом. Даже если этот подход не улучшит вашу программу, вам стоит понять его суть, сильные и слабые стороны и отличия от традиционно применяемой методики. Веб-среда росла быстрее, чем любая другая распределенная система в истории, и веб-разработчики должны уметь использовать сильные стороны базовых технологий, которые сделали возможным этот рост.
Читать дальше →
Всего голосов 6: ↑5 и ↓1+8
Комментарии0

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

12 – 13 июля
Геймтон DatsDefense
Онлайн
14 июля
Фестиваль Selectel Day Off
Санкт-ПетербургОнлайн
19 сентября
CDI Conf 2024
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн

RAIDIX: тернистый путь к светлому счастью? Разбор на винтики

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

Привет, Хабр, и добрый день, уважаемые читатели! Я архитектор по инфраструктурным решениям, и в этой статье расскажу про свой личный опыт работы программной СХД RAIDIX 5.1 — 5.2. Все изложенное — мой личный опыт, пройденный от сборки, тестирования, до внедрения.

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

Конечно, у меня будут проходить параллели с именитыми игроками рынка СХД (ну не смогу я без этого), т.к. мой путь работы с СХД начинался еще в те далекие времена, когда господствовал IBM со своей серией DS и EMC со своей серией Clariion. Через мои руки прошло несметное число СХД, и я ярый поклонник классических СХД, как бы косо на меня не смотрели поклонники HCI и выделенных серверов со встроенными дисками. Но я остаюсь при своем мнении, что СХД — это эталон удобства, масштабируемости и отказоустойчивости.

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

Как я использую СВЧ рефлектометр Caban в своих проектах

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

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

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

Как правильно тестировать конкурентные структуры данных

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

Есть потрясающая библиотека Rust под названием loom, которую можно использовать для тщательного тестирования неблокируемых (lock-free) структур данных. Я давно хотел разобраться, как она работает. И сейчас хочу! Но недавно я случайно реализовал небольшой эксперимент, который, как мне кажется, содержит часть идей loom, поэтому о нём стоит написать. Моя цель — не научить вас тому, что нужно использовать на практике (если вы хотите этого, то почитайте документацию loom), а, скорее, вывести пару идей из фундаментальных принципов.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+23
Комментарии1

Карты, шлейфы, два чипа, или Аппаратный менеджер паролей для особых случаев

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

Менеджер паролей — штука удобная, а иногда и незаменимая, ведь количество комбинаций, которые приходится помнить среднестатистическому ИТ-специалисту, не позволяет ему рассчитывать только на собственную память. Подобные менеджеры давно научились генерировать не только пароли требуемой сложности, но и автоматически вводить их в типовые экранные формы. Наиболее продвинутые решения умеют входить в аккаунт в сложных, заранее настроенных сценариях. Вот только в ситуациях, когда парольный менеджер недоступен (например, при локальном входе в систему), пароль приходится вводить «по старинке». Кроме того, существуют специфические риски: при компрометации мастер-пароля (что нередко происходит при взломе пользовательского устройства) все пароли пользователя считаются украденными. Это значительный риск, в особенности для ИТ-администраторов.

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

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

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

Акценты в продвижении стартапа. С чего начать продвижение

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

Запустить стартап - это только полдела. Чтобы он взлетел, нужно уметь правильно его продвигать. Но с чего начать? Как привлечь внимание потенциальных клиентов и инвесторов, когда конкуренция огромна, а ресурсы ограничены?

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

Как сохранять медиафайлы с Tilda в облако? Пошаговая инструкция

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

Если вы работали с Tilda, то наверняка задумывались, где хранить изображения, видео, и прочие файлы. Если использовать серверы CMS и Tilda, то в тарифных планах сталкиваемся с ограничениями на вес данных. Вдобавок хранение больших медиафайлов негативно сказывается на ресурсах — сайт загружается медленнее. Как избежать этих проблем? Оптимальное решение — использовать S3, ведь объектное хранилище позволяет улучшить производительность и легко масштабируется.

Привет! Меня зовут Наташа, я менеджер в Selectel. Сегодня расскажу, как интегрировать сайт на Tilda с S3-хранилищем для оптимизации хранения и доставки файлов. Подробности под катом!
Читать дальше →
Всего голосов 24: ↑24 и ↓0+31
Комментарии0

Гонка за экзоскелетами: а что с патентами?

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

Экзоскелет (от греческого: εξω внешний и σκελετος скелет) —  техническое устройство, предназначенное для снятия с человека-оператора внешних статических и динамических нагрузок и увеличения его мышечных усилий. Экзоскелет представляет собой внешний каркас в виде многозвенного исполнительного механизма, образующего параллельные взаимосвязи с оператором. Восприятие внешних нагрузок обеспечивается за счёт использования в исполнительном механизме (ИМ) экзоскелета силовых приводов различного вида. Силовые приводы управляются сигналами с системы датчиков, получающих информацию от оператора и исполнительного механизма. Для обеспечения выполнения различных движений оператора экзоскелет должен повторять биомеханику человека. В нашем материале мы коротко расскажем об истории и патентом аспекте создания экзоскелетов.

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