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

Разработка

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

Метод document.write, подобное и связанное с ним

HTML *JavaScript *
Из песочницы

Данная заДанная заметка является своего рода комментарием к другой статье на Хабре Удивительная история document.write, которая, в свою очередь, представляет из себя перевод публикации с сайта https://eager.io/ The Curious Case of document.write. Я же здесь хочу лишь подчеркнуть определённую полезность данного метода клиентского JavaScript (https://developer.mozilla.org/ru/docs/Web/API/Document/write), а также немного порассуждать о подходах и проблемах, связанных с генерацией разметки.

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

Новости

Сказ о том, как мы Python-микросервисы для облака шаблонизировали

Блог компании Конференции Олега Бунина (Онтико) Блог компании QIWI Python *Программирование *Микросервисы *

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

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

Меня зовут Олег Чуркин. Я больше 10 лет занимаюсь разработкой на Python и сейчас руковожу разработкой нового процессинга платежей в QIWI. Расскажу, как мы реализовали boilerplate-шаблон для сервисов — на примере небольшого стартапа внутри нашей большой компании.

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

О бедном Arcanum замолвите слово

.NET *Разработка игр *Игры и игровые консоли
Из песочницы

В Arcanum, как и в любой другой игре, существует масса собственных бинарных форматов. Эта статья познакомит вас с форматом упаковки изображений, который использовала студия Troika Games.

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

PostgreSQL Antipatterns: когда мешает внешний ключ

Блог компании Тензор PostgreSQL *Администрирование баз данных *SQL *Высокая производительность *

Внешние ключи (foreign keys) - мощный и удобный механизм контроля логической целостности данных в базе. Но он бывает не только лишь полезен, и может неплохо пригрузить вашу БД.

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

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

Security Week 2219: мобильные трояны со встроенной подпиской

Блог компании «Лаборатория Касперского» Информационная безопасность *
Эти истории слышали все: купил телефон, вроде бы ничего такого не делал, пока не обнаружил отсутствие денег на счету. Одной из причин внезапного добавления платных услуг на мобильном телефоне может быть вредоносное ПО. На прошлой неделе специалисты «Лаборатории Касперского» опубликовали обзор технических приемов в свежих вредоносных программах такого типа. Их можно называть троянами-подписчиками: звучит слегка неуклюже, зато точно передает суть.



На скриншоте выше показаны три примера приложений с вредоносной добавкой, которые какое-то время висели в официальном магазине приложений Google Play. Во всех присутствовал троян семейства Jocker. Так как в данном случае стоит задача прорваться сквозь проверки в аппстор, первоначальная версия приложения не содержит вредоносного кода. После установки активируется загрузчик, подгружающий «дополнительную функциональность», но и он срабатывает после простой проверки: опубликовано ли приложение в магазине? Если нет, программа считает, что выполняется в сендбоксе проверяющего и скрывает вредоносную функциональность.
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 485
Комментарии 0

Защита от спама и зловредного ПО в Carbonio

Блог компании Zextras Спам и антиспам Информационная безопасность *

Электронная почта, которая является одним из наиболее распространенных форматов корпоративного общения, как правило становится основной целью злоумышленников, которые используют электронные письма как средства доставки зловредного ПО во внутреннюю сеть предприятия. В результате таких атак появляются утечки важной информации или потери корпоративных данных, которые влекут за собой не только финансовые, но и репутационные потери. Надежная защита почтового сервера от кибератак позволяет купировать большую часть киберугроз и именно поэтому защита почтового сервера предприятия становится приоритетом номер один среди системных администраторов и специалистов по кибербезопасности. В Carbonio для защиты от угроз используются такие Open-Source решения, как антивирус ClamAV, антиспам SpamAssassin и интерфейс для их взаимодействия с почтовым сервером new-amavisd. В данной статье мы расскажем о том, как правильно использовать их для обеспечения безопасности почтового сервера Carbonio.

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

Некоторые станции международной службы лазерной дальнометрии перестали предоставлять данные для ГЛОНАСС

Глобальные системы позиционирования *Беспроводные технологии *Геоинформационные сервисы *Астрономия

В системе ГЛОНАСС пользователь ориентируется по навигационным спутникам как по маякам. Эти маяки удалены на расстояние около 20 000 км и движутся относительно поверхности земли со скоростью более 3 км/с. Но при этом спутники непрерывно передают параметры, позволяющие рассчитать их положение с точностью порядка метра. И чем точнее эти параметры, тем точнее вы, как пользователь системы, можете определить своё местоположение...

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

Как мы создавали движок на Unity (часть 0)

Программирование *Анализ и проектирование систем *Разработка игр *Unity *Игры и игровые консоли
Из песочницы

Привет, Хабр!

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

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

Разработчик и колпак

Python *Data Mining *R *Управление разработкой *DevOps *

*«You Only Live Twice», (1967)*


Развитие микроэлектроники, ИТ технологий и широкого спектра программных продуктов открыло новые возможности по контролю всего. Датчики, камеры, цифровые следы… Магнитофон в чемодане уже неактуален.


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


Все предыдущие публикации.

Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 1.1K
Комментарии 4

Критическая информационная инфраструктура Индии

Информационная безопасность *

Автор: Евгений Баклушин, руководитель направления

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

С учетом влияния внешних обстоятельств и изменений в геополитической обстановке первостепенным вектором сотрудничества становится Азия. При этом Китай и обе Кореи довольно самостоятельны и закрыты внутри себя, а Япония активно взаимодействует с западным альянсом. Таким образом наиболее перспективным является взаимодействие (союз) с глобальным ИТ-хабом или «новым информационным чудом» – Индией.

В данной статье мы рассмотрим, как обстоит ситуация с защитой КИИ в Индии, а также чем она отличается от обстановки в России.

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

Мультиклеты: влияние реконфигурации на бенчмарки и задачи майнинга

Высокая производительность *Видеокарты Процессоры Криптовалюты Суперкомпьютеры

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

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

Сегодня большинство бенчмарков процессоров, в первую очередь, оценивают производительность. Насколько быстро рисуется картинка на дисплее, насколько быстро перемножаются матрицы или как быстро осуществляется поиск в базе данных. Это, безусловно, важно. Но почему-то мало кто задается вопросом, насколько это оптимально. Может быть, лучше увеличить время решения на 10% и при этом уменьшить энергопотребление на 50%?

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

Как изменилась стандартная библиотека Python за последние годы

Python *Программирование *

Python 3.8+


Когда выходит очередная версия Python, все внимание достается новым фичам языка: моржовому оператору, слиянию словарей, паттерн-матчингу. Еще много пишут об изменениях в асинхронной работе (модуль asyncio) и типизации (модуль typing) — эти модули на виду и бурно развиваются.


Остальным модулям стандартной библиотеки достается незаслуженно мало внимания. Хочу это исправить и рассказать, что интересного появилось в версиях 3.8–3.10.

Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Просмотры 2.3K
Комментарии 3

Что происходит с лицензиями в open source

Блог компании T1 Cloud Open source *

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

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

Книга «Изучаем Arduino. 65 проектов своими руками. 2-е издание»

Блог компании Издательский дом «Питер» Профессиональная литература Разработка под Arduino *
image Привет, Хаброжители! Что такое Arduino? За этим словом прячется легкое и простое устройство, которое способно превратить кучу проводов и плат в робота, управлять умным домом и многое другое. Разнообразие устройств ввода/вывода — датчиков, индикаторов, дисплеев и электромоторов — позволяет создавать самые невероятные проекты. Второе издание этой книги было полностью переработано, ведь технологии не стоят на месте. Познакомившись с основами Arduino, вы сможете экспериментировать с сенсорными экранами и жидкокристаллическими дисплеями, займетесь робототехникой, освоите работу с датчиками и беспроводной передачей данных и научитесь дистанционно управлять устройствами с помощью телефона. В мире продано уже более 35000 экземпляров этой книги.
Читать дальше →
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 1.3K
Комментарии 0

Управление агрегацией логов с помощью Logstash-operator в Kubernetes — opensource-решение от М2

Блог компании m2 tech DevOps *Kubernetes *

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

Логи можно собирать и отправлять в централизованную систему по-разному, например используя библиотеки в самом приложении или сторонние агенты вроде Filebeat, Fluent Bit, Vector. Есть множество систем хранения вроде Elasticsearch, Loki, Splunk, файлы на диске или объекты в S3.

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

Посмотреть opensource-решение
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 527
Комментарии 0

Используем клиентский процессор по максимуму. Часть 1: Rust + WebAssembly

Блог компании RUVDS.com Высокая производительность *Программирование *Rust *WebAssembly *

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

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

Прирост производительности при использовании всех техник оптимизации по сравнению с реализацией на чистом JS может составлять ~1000%: от 8–9 до 100–110 фпс. Это можно проверить на интерактивном онлайн-демо, позволяющем также поиграться с числом потоков, способом вычислений и формой фрактала.
Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Просмотры 1.3K
Комментарии 2

Парадоксальный рост популярности Python в научных вычислениях

Блог компании Издательский дом «Питер» Python *Программирование *Алгоритмы *Fortran *
Перевод

Чтобы уверенно пересечь незнакомую местность, можно или двигаться быстрее, или подыскивать удобную дорожку. Другими словами, слишком пристальное внимание к скорости как таковой может вас притормозить. То же касается и разработки программного обеспечения.

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

Прыжок горбатой лошади или как мы обновляем наши системы

Блог компании Lamoda Программирование *Apache *Kotlin *

Привет! Меня зовут Евгений Сальников и я тимлид одной из команд Outbound, которая входит в департамент Business Process Automation в Lamoda. В нашем направлении мы отвечаем за сервисы доставки.

Эта статья написана по мотивам реальной задачи по обновлению нашей большой системы, а именно — переход с очень старой версии Apache Camel на актуальную. Я не расскажу чего-то особо нового, но если у вас уже есть Apache Camel и вам «только спросить», как с ним управляться — милости просим.

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

Смарт-карты: особенности протокола T=0 и на что они влияют

Информационная безопасность *IT-стандарты *Сотовая связь

Когда начинаешь изучать смарт карты, то все выглядит достаточно понятно и логично: команды APDU несложны и описаны в ISO 7816-4, интерфейс winscard описан в MSDN. В глубины PCSC погружаться особо и не приходится. Первые программы можно написать довольно быстро. Непонятные особенности вылезают чуть позже, и выясняется, что известные два протокола T=0 и T=1 на самом деле совсем разные протоколы, и они просто похожи друг на друга. Поначалу возникает соблазн работать с ними одинаково, а это может доставить много хлопот вплоть до сбоя коммуникации в самый неожиданный момент.

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

Зачем разработчикам игр на Unity использовать статический анализ?

Блог компании PVS-Studio .NET *Разработка игр *C# *Unity *

С годами стоимость создания игр стала больше, вырос их масштаб, а следовательно, и их кодовая база. Разработчикам становится всё сложнее уследить за ошибками. А забагованная игра влечёт финансовые и репутационные убытки. Как же с этим может помочь статический анализ?

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