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

Все потоки

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

Почему свет и темнота на фотографии — это сложно

Обработка изображений *Фототехника
Перевод
HDR imagery on Flickr

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

Мы привыкли считать, что фотографии просто объективно фиксируют освещение и отображают его, однако это не так. Оттенок фотографии отражает множество решений, сделанных фотографом и производителем камеры. Сегодня фотографии, снимаемыми нашими мобильными телефонами, становятся всё лучше и лучше, реализуя всё более сложные (но сокрытые от нас) эстетические решения.

Эта статья, наряду с моим предыдущим постом о перспективе, является частью более обширной темы зависимости картин и фотографий от художественных и технических решений. Фотографии — это не объективная фиксация реальности, как и картины — не точные отображения воспринимаемого художником. Подробнее я расскажу об этом в своём следующем посте.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 493
Комментарии 0

Новости

Пространственный анализ тренировок

Python *Геоинформационные сервисы *Визуализация данных
Tutorial

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

Для решения задач я использовал несколько библиотек Python, предназначенных для работы с пространственными данными и их визуализации – GeoPandas, PyProj, Shapely, Folium, Branca, H3-Pandas, OSMnx.

Подробное описание кода, примеры картографических изображений и ссылка на полный git-проект внутри.

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

Клептография и криптовирология

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

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

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

На эти вопросы отвечают профессиональные криптографы, специалисты российской технологической компании «Криптонит».

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

Цифровая валюта (CBDC) спасение или очередная утопия?

Блог компании OSOM Finance Финансы в IT Криптовалюты

CBDC (цифровая валюта) станет реальностью и станет важной и, возможно, доминирующей формой цифровой валюты в будущем. Суть цифровых валют — это определенность, поскольку глобальное развитие финансов требует инноваций от центральных банков. Преимущества для центральных банков очевидны: более жесткий контроль, выдающиеся возможности отслеживания и мониторинга, способность быстро реализовывать меры денежно-кредитной политики и способность противостоять растущему влиянию финтеха и финансовых институтов.  Тем не менее, у этих новых инноваций есть и темная сторона.

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

22 новых фичи C# — каким будет C# 11+

Программирование *.NET *C# *

1. Полуавтоматические свойства и ключевое словоfield.
2. Модификатор уровня доступа file.
3. Первичные конструкторы для классов и структур.
4. Паттерн-матчинг для списков.
5. Атрибуты для Main в программах с top level statement.
6. Сырые строки без экранирования внутри строки для удобства работы с json, xml, html и регулярными выражениями.
7. Строковые литералы для UTF-8.
8. Паттерн-матчинг для Span<char>.
9. Перенос строк в выражениях интерполяции.
10. Возможность перегрузки операторов с проверкой на переполнение
11. Оператор побитового сдвига вправо без знака >>>.
12. Доступ к параметрам методов nameof.
13.nameof для членов экземпляров.
14. Ключевое слово required для обязательно инициализируемых свойств и полей.
15. Автоматическая инициализация свойств структур значением по-умолчанию.
16. generic-атрибуты.
17. локальные переменные и параметры только для чтения.
18. Кэширование делегатов при использовании method group для статических методов.
19. Поля с значением хранящимся по ссылке.
20.params Span<T>/params ReadOnlySpan<T>/params IEnumerable<T> в объявлении методов чтобы избежать лишних неявных созданий массива в куче и копирований коллекций.
21. Удаление оператора проверки параметров на null !!.
22. Предупреждения для имен типов полностью в нижнем регистре.

Внутри — разбор каждой фичи и сценарии применения.

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

Esperanto: не только язык, но и производительный 1000-ядерный RISC-V процессор для систем машинного обучения

Блог компании Selectel IT-инфраструктура *Машинное обучение *Процессоры IT-компании

Постепенно в индустрии производства процессоров развиваются альтернативные архитектуры, на базе которых создают весьма примечательные чипы. Так, стартап Esperanto Technologies представил собственную версию RISC-V процессора, причем не обычного, а высокопроизводительного, предназначенного для работы с ИИ-системами и машинным обучением. Мы уже не раз писали об экспериментах в этой отрасли, давайте посмотрим, что это за новинка.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.8K
Комментарии 3

Переход с 1С: УПП на 1C:ERP: Переделываем интеграции с SQL-запросами к СУБД (на примере УПП &gt; QlikView &gt; ERP)

SQL *SQLite *Промышленное программирование *Управление проектами * *
Из песочницы

Для тех, кто не читал предыдущую статью, расскажу о сути проекта. В 2020-2021 году я участвовал в роли руководителя команды разработчиков Внедренческого центра "Раздолье" в проекте Управление продажами в международной компании на базе "1С:ERP" (ссылка на сайт 1c.ru). Проект был выбран победителем международного конкурса «1С:Проекта года» в номинации «Лучший проект с использованием технологии "Дистанционное внедрение"».

Суть проекта заключалась в переводе Заказчика с 1С:УПП на 1С:ERP. На его примере кратко опишу, какой была организационная структура и какие программы мы использовали при взаимодействии в команде и с пользователями.

Практически весь проект выполнялся удалённо. Многие сотрудники Заказчика, участвующие в проекте, в условиях карантинов и локдаунов были переведены на удалённую работу. Многие сотрудники нашей компании тоже работали удалённо, с командировками в этот период были большие проблемы. Сам Заказчик работает в режиме 24х7 и является одним из крупнейших предприятий в России по производству кофе. На начало проекта в качестве основы корпоративной системы у Заказчика была программа 1С:УПП редакции 1.2 (даже не 1.3). По завершению проекта в 2021-м перешли на ERP 2.5. К слову, когда начинали работу, в 2020-м году, когда 2.5. была ещё в бета-версии, но мы решили прислушаться к рекомендациям "Фирмы 1С" запускать новые проекты на ней, а не на 1С:ERP 2.4.

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

Пол Грэм: «После эпохи дипломов»

Развитие стартапа Образование за рубежом
Перевод

Пол Грэм — американский предприниматель, известный русскому человеку, в первую очередь, благодаря своими эссе о бизнесе и жизни. В своем эссе «После эпохи дипломов» (After Credentials) Пол Грэм рассуждает о дипломах: откуда появились, для чего нужны, почему до сих пор не изжили себя, а также почему они не панацея.

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

В апреле выйдет GNU Compiler Collection 12

Блог компании SkillFactory Программирование *C++ *Компиляторы *
Перевод

Смягчение уязвимости Trojan Source, оптимизация функций приведения типов, многомерный оператор [], подавление предупреждений о вендорных атрибутах — вот лишь некоторые возможности GCC 12. Подробностями делимся к старту курса по разработке на C++.

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

Сам себе Роскомнадзор

Сетевые технологии *

Список заблокированных РКН ресурсов для использования с VPN стремительно теряет актуальность, поскольку, во-первых, многие ресурсы блокируются или замедляются на ТСПУ и записи для этих ресурсов в выгрузку не вносятся, во-вторых, после известных событий конца февраля многие ресурсы начали изображать РКН из себя и блокировать доступ с российских IP, в-третьих, избыточная отправка трафика в VPN приводит к недоступности уже российских ресурсов, которые отгородились от иностранных IP.

Поэтому на уже известном сервисе antifilter.download создан отдельный дополнительный сервис community.antifilter.download, предназначенный для ведения списка при помощи сообщества.

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

Использование и переработка ПО: когда можно, а когда нельзя

Терминология IT Управление проектами *Управление продуктом *Управление продажами *Управление персоналом *

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

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

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

Библиотека для создания веб-приложений OMGlib, как это работает?

Lisp *

В предыдущем посте я, немного сумбурно, рассказал про библиотечку OMGlib, которая позволяет создавать полностью динамические веб-приложения. Вкратце, идея состоит в следующем: приложение использует браузер для взаимодействия с пользователем, для этого браузер открывает WebSocket-соединение с сервером, после чего просто выполняет получаемый от него javascript-код, отправляя результаты обратно через это же соединение. Все DOM-элементы при этом создаются динамически, через соответствующие функции javascript, без использования HTML вообще. Также, сервер может создавать функции в браузере и вызывать их, сгружая, таким образом, всю логику и механику, связанную с интерфейсом, прямо в браузер. Библиотечка реализована на языке Common Lisp, развитая система макросов которого позволяет писать код единообразно, просто помечая часть функций как browser-side, а компиляция их в JS происходит при помощи JSCL прозрачно для программиста.

Казалось бы, что тут может пойти не так?
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 1.3K
Комментарии 9

Тернистый путь вендора. Часть 2

Блог компании Юнидата Управление разработкой *IT-компании

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

Миф 1. Особые продуктовые специалисты

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

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

Хороший vs Плохой

Соблазн применить эту категорию очень велик. «Хорошесть» или «плохость» не зависит от места работы, опыта работы, роста или цвета глаз. Это интегральная экспертная оценка ;-). Хорошего программиста видно по его коду, который компактен, понятен, легко поддерживается. Хорошего QA видно по въедливости, упорядоченности и понятности его кейсов. Видно его по вопросам, которые он задет до/при реализации/тестировании.

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

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

Доклады PHDays 11: заражение буткитами, санитайзеры для ядра Linux, новое лицо OSINT и фишинг на официальном сайте

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

Считаные недели остаются до Positive Hack Days 11. Международный форум по практической безопасности пройдет 18–19 мая в Москве. Команды атакующих и защитников для The Standoff уже сформированы, а мы завершаем подготовку инфраструктуры киберполигона и программы конференции.

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

Как создать цифровой двойник электроэнергетического объекта. Часть 1. Sampled Values

Блог компании ЦИТМ Экспонента Сетевые технологии *Прототипирование *Matlab *Энергия и элементы питания

Так вышло, что испытания релейной защиты обязательно проводят на специальных комплексах в режиме реального времени. Внутри этих комплексов находятся цифровые двойники электроэнергетических объектов. Чтобы разобраться как и зачем их туда загружают, мы прольем свет на всеми любимый и ненавистный стандарт МЭК 61850 и поделимся своим опытом моделирования энергосистем на КПМ РИТМ.

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

Нереальный baselining или доработки PVS-Studio для Unreal Engine проектов

Блог компании PVS-Studio Unreal Engine *

Статический анализатор PVS-Studio постоянно развивается: улучшаются различные механизмы, происходит интеграция с игровыми движками, IDE, CI/CD и другими системами и сервисами. Благодаря этому несколько лет назад появилась возможность использования PVS-Studio для анализа Unreal Engine проектов. Однако один из важных механизмов PVS-Studio – подавление сообщений анализатора (baselining, отключение выдачи предупреждений на существующий код) — не работал с UE-проектами. Почему он не был реализован сразу, и как в итоге была решена эта задача – читайте далее.

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

Что болит у техлидов и DevOps-инженеров?

Блог компании Конференции Олега Бунина (Онтико) Управление разработкой *Конференции DevOps *

В этом году DevOps & TechLead Conf 2022 пройдут на одной площадке. Участников ждут погружение в инженерные процессы в IT (от XP до devOps & beyond), musthave-инструменты и практики изменений в командах для быстрых и качественных релизов.

Мы встретились с экспертами из Программного комитета конференций — Дмитрием Зайцевым и Анастасией Асеевой-Нгуен. Поговорили о болях DevOps-инженеров и техлидов, о новых форматах и о самых актуальных темах в индустрии. О том, что получилось — читайте под катом.

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

Made at Intel. Architecture and religion

История IT Процессоры

Я подустал от мрачных текстов и вспомнил о своей давней мечте. За 20 с хвостиком лет работы в Интел у меня развеселых историй накопилось на целую книгу. Хотелось в ретроспективе посмотреть на некоторые события, участником которых мне довелось быть. И еще хотелось отдать дань уважения компании и людям, с которыми мне посчастливилось работать. Я уже даже название придумал – Made at Intel. Понятно, что пока я был внутри конторы, речь о публикации этих баек идти не могла. Я сам подшучивал, что для публикации нужно правильно выбрать время. В смысле сначала уволиться, а потом публиковать, а не быть уволенным вследствие публикации. :) Однако примерно 2 года назад я Интел покинул, и казалось бы меня уже ничего не сдерживало. Но тут, как всегда – то перо поломается, то струна порвется, то еще какая бяда приключится. К тому же на то чтобы писать книжку – это же рeшимости набраться надо... И вот – вчера я решил, что большое надо начинать с малого. Буду писать по главке и выкладывать сюда - собирать фидбек. Так мало –помалу и наберется.

Итак, сегодня вашему вниманию представляется первая глава, в которой эволюция архитектур Intel рассматривается с точки зрения ... истории религиозных течений. Да –да, не удивляйтесь, архитектура вычислительных устройств –это одна из самых религиозных вещей. Не думайте, что все решения по Instruction Set Architecture принимаются исключительно на основе анализа данных – это совсем не так. Скорее похоже на средневековое государство – тут есть немного бизнеса, побольше политики и очень много религии. Все просто – почти любой эксперимент в этой области растягивается на годы и обходится в миллиарды долларов. Хуже всего, что в процессе дизайна можно давать лишь приблизительные оценки ключевых характеристик – частоты, производительности, энергопотребления, температурной карты. То, как все оно будет на самом деле становится понятным уже только тогда, когда чип выходит из печки. Да сейчас в этой области уже накоплен определенный опыт и наши оценки становятся несколько точнее, но и только. А 20 лет назад этих знаний было куда меньше. И пионеры, подобные Интел двигались в темноте на собственный страх и риск. Разумеется, в таких условиях на первый план выходит кто во что ВЕРИТ. Ну да – еще кто лучше говорить умеет. Поэтому лучшие архитекторы приходят из школ с углубленным изучением богословия. :)

Читать далее
Всего голосов 58: ↑57 и ↓1 +56
Просмотры 5.7K
Комментарии 16

Псс, парень… индекс нужен?

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

Самый больной вопрос для любого разработчика, которому приходится вычитывать данные из базы: "Как сделать мой запрос быстрее?". Классический ответ - необходимо создать подходящий индекс. Но куда именно его стоит "накатывать", да и как вообще он должен выглядеть?..

Мы научили наш сервис визуализации планов PostgreSQL отвечать на эти вопросы, и под катом расскажем, чем именно он руководствуется в своих рекомендациях.

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

Поворотный энкодер: насколько сложен он может быть

DIY или Сделай сам Электроника для начинающих
Перевод

Как вы могли заметить, я давно работаю с процессором STM32 ARM при помощи Mbed. Были времена, когда Mbed был весьма прост, но многое изменилось с тех пор, как он превратился в Mbed OS. К сожалению, это означает, что многие примеры и библиотеки, которые вы могли бы найти, с относительно новой системой работать не будут.

Мне нужен был поворотный энкодер — и я вытянул дешевый экземпляр из одного набора «49 плат для Arduino», какие продаются повсюду. Уверен, это не самый филигранный поворотный шифратор из имеющихся в природе, но для поставленной задачи его должно было хватить. К сожалению, в Mbed OS нет драйвера для такого датчика, а первые несколько сторонних библиотек, которые я нашел, либо работали по принципу опроса, либо не компилировались под последнюю версию Mbed. Разумеется, для чтения поворотного энкодера никакой магии не требуется. Но насколько сложно самостоятельно написать для него код? В самом деле, довольно сложно. Подумал, поделюсь моим кодом и расскажу, как к этому коду пришел.

Читать далее
Всего голосов 25: ↑14 и ↓11 +3
Просмотры 3.9K
Комментарии 21