Открыть список
Как стать автором
Обновить
9
Карма
0
Рейтинг

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

Переезд из СНГ в Чехию, собственный опыт (часть 2)

Карьера в IT-индустрии
Обещанного ждут два года, и я свое слово держу. В предыдущем материале я делился личным опытом переезда в Чехию и сегодня продолжу раскрывать тонкости, связанные с жизнью за рубежом. Под катом подробно про трудоустройство, визы, быт.


Читать дальше →
Всего голосов 35: ↑34 и ↓1 +33
Просмотры33.5K
Комментарии 80

Цифро-аналоговое и смешанное моделирование в PADS Professional

Блог компании НанософтАнализ и проектирование системCAD/CAMПроизводство и разработка электроники
🔥 Технотекст 2020 🔥 Технотекст 2020
Tutorial


Одной из полезных функций, включенных в PADS Professional, является встроенный инструмент моделирования аналоговых смешанных сигналов (AMS), который позволяет моделировать ваши схемотехнические проекты с использованием моделей SPICE и VHDL-AMS. Возможность использования обоих вариантов моделей позволяет выполнять более гибкую и точную проверку сложных мехатронных систем. Выполняя моделирование до начала этапа компоновки, трассировки или производства, вы сможете гарантировать, что ваши схемотехнические решения будут работать так как вы задумывали, исключив при этом проблемы, связанные с их эксплуатационными характеристиками. В рамках этой статьи мы спроектируем и смоделируем схему генератора с использованием моделей SPICE и VHDL-AMS. Затем мы рассмотрим, как использовать интегрированные функции AMS для моделирования уже существующих схем.

Все самое интересное под катом.


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

SamsPcbGuide, часть 13: Использование IBIS-моделей

Производство и разработка электроникиЭлектроника для начинающих
Tutorial
В этой спонтанной статье решил поделиться опытом применения IBIS-моделей на примере простой задачи.

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

Методы наименьших квадратов: текст, написанный программистом для программистов

ПрограммированиеC++Data MiningАлгоритмыМатематика
Tutorial
Продолжаю публикацию своих лекций, изначально предназначенных для студентов, учащихся по специальности «цифровая геология». На хабре это уже третья публикация из цикла, первая статья была вводной, она необязательна к прочтению. Однако же для понимания этой статьи необходимо прочитать введение в системы линейных уравнений даже в том случае, если вы знаете, что это такое, так как я буду много ссылаться на примеры из этого введения.

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


Читать дальше →
Всего голосов 84: ↑80 и ↓4 +76
Просмотры28.6K
Комментарии 13

Методы наименьших квадратов без слёз и боли

ПрограммированиеC++Разработка игрАлгоритмыМатематика
Tutorial


Итак, очередная статья из цикла «математика на пальцах». Сегодня мы продолжим разговор о методах наименьших квадратов, но на сей раз с точки зрения программиста. Это очередная статья в серии, но она стоит особняком, так как вообще не требует никаких знаний математики. Статья задумывалась как введение в теорию, поэтому из базовых навыков она требует умения включить компьютер и написать пять строк кода. Разумеется, на этой статье я не остановлюсь, и в ближайшее же время опубликую продолжение. Если сумею найти достаточно времени, то напишу книгу из этого материала. Целевая публика — программисты, так что хабр подходящее место для обкатки. Я в целом не люблю писать формулы, и я очень люблю учиться на примерах, мне кажется, что это очень важно — не просто смотреть на закорючки на школьной доске, но всё пробовать на зуб.

Итак, начнём. Давайте представим, что у меня есть триангулированная поверхность со сканом моего лица (на картинке слева). Что мне нужно сделать, чтобы усилить характерные черты, превратив эту поверхность в гротескную маску?



В данном конкретном случае я решаю эллиптическое дифференциальное уравнение, носящее имя Симеона Деми Пуассона. Товарищи программисты, давайте сыграем в игру: прикиньте, сколько строк в C++ коде, его решающем? Сторонние библиотеки вызывать нельзя, у нас в распоряжении только голый компилятор. Ответ под катом.
Читать дальше →
Всего голосов 54: ↑54 и ↓0 +54
Просмотры38.3K
Комментарии 58

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6

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

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Постановка задачи


Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.

Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:



Внимание, это обучающий материал, который в целом повторит структуру библиотеки OpenGL. Это будет софтверный рендер, я не ставлю целью показать, как писать приложения под OpenGL. Я ставлю целью показать, как сам OpenGL устроен. По моему глубокому убеждению, без понимания этого написание эффективных приложений с использованием 3D библиотек невозможно.
Читать дальше →
Всего голосов 198: ↑196 и ↓2 +194
Просмотры357.1K
Комментарии 119

Алгоритм Кэхэна: как получить точную разность произведений

АлгоритмыМатематика
Перевод
image

Недавно я вернулся к анализу погрешностей чисел с плавающей запятой, чтобы усовершенствовать некоторые детали в следующей редакции книги Physically Based Rendering. Числа с плавающей запятой — интересная область вычислений, полная сюрпризов (хороших и плохих), а также хитрых трюков, позволяющих избавиться от неприятных неожиданностей.

В процессе работы я наткнулся на этот пост на StackOverflow, из которого узнал об изящном алгоритме точного вычисления $a \times b-c \times d$.

Но прежде чем приступать к алгоритму, нужно понять, что же такого хитрого в выражении $a \times b-c \times d$? Возьмём $a=33962.035$, $b=-30438.8$, $c=41563.4$ и $d=-24871.969$. (Это реальные значения, которые получились у меня во время запуска pbrt.) При 32-битных значениях float получаем: $a \times b=-1.03376365 \times 10^9$ и $c \times d=-1.03376352 \times 10^9$. Выполняем вычитание, и получаем $-128$. Но если выполнить вычисления с двойной точностью, а в конце преобразовать их во float, то получится $-75.1656$. Что произошло?

Проблема в том, что значение каждого произведения может сильно выйти за нижнюю границу $-1 \times 10^9$, где расстояние между представимыми значениями с плавающей запятой очень велико — 64. То есть при округлении $a \times b$ и $c \times d$ по отдельности до ближайшего представимого float, они превращаются в числа, кратные 64. В свою очередь, их разность будет кратной 64, и не останется никакой надежды, что она станет к $-75.1656$ ближе, чем $-64$. В нашем случае результат оказался ещё дальше из-за того, как два произведения были округлены в $-1 \times 10^9$. Мы напрямую столкнёмся со старым добрым катастрофическим сокращением1.
Читать дальше →
Всего голосов 31: ↑31 и ↓0 +31
Просмотры7.1K
Комментарии 9

Низкорисковые биржевые инвестиции: как использовать счета ИИС и облигации как альтернативу банковским вкладам

Блог компании ITI CapitalФинансы в IT


Изображение: Unsplash

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

Другой вариант – биржевые инвестиции. Здесь уже есть возможность заработать больше, но возникают и существенные риски, которые хочется контролировать. Поэтому в последние годы все активнее развиваются инвестиционные инструменты, позволяющие решить эту задачу. Среди них – счета ИИС и облигации федерального займа и крупных российских компаний. Сегодня мы поговорим именно о них.
Читать дальше →
Всего голосов 38: ↑24 и ↓14 +10
Просмотры15.4K
Комментарии 32

Доступно о криптографии на эллиптических кривых

КриптографияАлгоритмыМатематика
Перевод
image


Тем, кто знаком с криптографией с открытым ключом, наверно известны аббревиатуры ECC, ECDH и ECDSA. Первая — это сокращение от Elliptic Curve Cryptography (криптография на эллиптических кривых), остальные — это названия основанных на ней алгоритмов.

Сегодня криптосистемы на эллиптических кривых используются в TLS, PGP и SSH, важнейших технологиях, на которых базируются современный веб и мир ИТ. Я уже не говорю о Bitcoin и других криптовалютах.

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

В этой серии статей я познакомлю вас с основами мира криптографии на эллиптических кривых. Моя цель — не создание полного и подробного руководства по ECC (в Интернете полно информации по этой теме), а простой обзор ECC и объяснение того, почему её считают безопасной. Я не буду тратить время на долгие математические доказательства или скучные подробности реализации. Также я представлю полезные примеры с визуальными интерактивными инструментами и скриптами.
Читать дальше →
Всего голосов 127: ↑125 и ↓2 +123
Просмотры140.1K
Комментарии 58

Подробный разбор симплекс-метода

Математика
Из песочницы

Пролог


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

Замечание. Пост будет написан достаточно формальным языком, но будет снабжен комментариями, которые должны внести некоторую ясность. Такой формат позволит сохранить научный подход и при этом, возможно, поможет некоторым в изучении данного вопроса.
Читать дальше →
Всего голосов 33: ↑33 и ↓0 +33
Просмотры80.2K
Комментарии 26

Советские мечты о будущем

Блог компании MadrobotsНаучная фантастика


Помните очаровательного котика, которые чихал в заставке советского мультфильма? Мы помним, и нашли его — вместе с ворохом другой рисованной фантастики. В детстве она пугала и обескураживала, поскольку поднимала серьезные, взрослые темы. Настала пора пересмотреть старые мультфильмы, чтобы узнать, о каком будущем мечтали в той стране.
Читать дальше →
Всего голосов 138: ↑136 и ↓2 +134
Просмотры85.5K
Комментарии 144

Как найти работу с релокацией в Европу: практический гайд для IT-специалистов

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

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

Telegram-каналы



Джоб-борды для IT-специалистов и нишевые сайты


AngelList


На сегодняшний день AngelList является одним из наиболее популярных сайтов по поиску работы в стартапах по всему миру. Процесс поиска вакансий с релокацией на этом сайте очень прост – во вкладке «Compensation» выбираем опцию «Company Will Sponsor Visa». Чтобы сузить полученный список вакансий до максимально релевантных, можно использовать фильтры «Role» и «Location».

image

Glassdoor


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

Чтобы найти вакансии, которые предлагают релокейт, пишем в поисковой строке relocation developer или relocation и название интересной вам позиции. Чтобы сузить результаты поиска, уточняем город/страну, куда хотели бы переехать.

image

Поскольку на сайте Glassdoor нет специального фильтра для поиска работы с переездом, при поиске вакансий описанным выше методом могут попадаться нерелевантные. В целом же, ключевое слово relocation в поисковой строке делает свое дело.
Читать дальше →
Всего голосов 36: ↑31 и ↓5 +26
Просмотры40.5K
Комментарии 23

Обратное собеседование: какие вопросы задавать компании?

Интервью
Перевод

Этот текст — перевод репозитория viraptor. Вы можете предложить свои вопросы на английском, в оригинальном репозитории, или на русском — в моём форке, а я постараюсь перевести их и передать автору


Обратное собеседование


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


Если вы задавали вопросы, которых нет в этом списке, отправьте пожалуйста пулл-реквест!

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

История второго места в Mini AI Cup 4: Paper IO

Спортивное программированиеЗанимательные задачкиПрограммированиеJavaРазработка игр
Из песочницы

Меня зовут Волков Игорь. Я работаю в консалтинговой компании на позициях Java разработчика, архитектора, руководителя команды, технического менеджера. Разные роли в зависимости от текущих потребностей проекта. Обратил внимание на конкурсы от mail.ru давно, но активно поучаствовать получилось только на Paper IO.


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


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

Как использовать диаграммы Вороного для управления ИИ

Разработка игрАлгоритмыДизайн игрИскусственный интеллект
Перевод
image

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



Пространственные отношения


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

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



У Вороного есть ответ


Диаграмма Вороного описывает пространственное отношение между близко расположенными точками или их их ближайшими соседями. Это множество соединённых многоугольников, полученных из точек или локаций. Каждая линия «области» Вороного находится посередине между двумя точками.
Читать дальше →
Всего голосов 40: ↑40 и ↓0 +40
Просмотры10.9K
Комментарии 9

Окружи, откуси, распили: новое соревнование Mini AI Cup #4

Блог компании Mail.ru GroupСпортивное программированиеЗанимательные задачкиПрограммированиеРазработка игр

Привет! Большинство из нас, специалистов в IT сфере, любит играть в игры — карточные, настольные, компьютерные и другие. Зачастую бывает, что игры пользы никакой не приносят, а хотелось бы всё и сразу — удовольствие, фан и знания. Специально для вас мы стараемся изобретать «игры для программистов», которые сочетают в себе всё вышеперечисленное. Предлагаем вам познакомиться с ними и приглашаем принять участие в соревновании по искусственному интеллекту Mini AI Cup #4!
Читать дальше →
Всего голосов 48: ↑48 и ↓0 +48
Просмотры13.2K
Комментарии 9

Создание прослушивающего приложения для просмотра трафика мобильной MMORPG

.NETРазработка игрРеверс-инжиниринг
Это вторая часть цикла статей про разбор сетевого трафика мобильной MMORPG. Примерные темы цикла:

  1. Разбор формата сообщений между сервером и клиентом.
  2. Написание прослушивающего приложения для просмотра трафика игры в удобном виде.
  3. Перехват трафика и его модификация при помощи не-HTTP прокси-сервера.
  4. Первые шаги к собственному («пиратскому») серверу.

В этой части я опишу создание прослушивающего приложения (sniffer), который позволит нам фильтровать события по их типу и источнику, выводить информацию о сообщении и выброчно сохранять их для анализа, а также немного залезу в исполняемый файл игры («бинарник»), чтобы найти вспомогательную информацию и добавить поддержку Protocol Buffers в приложение. Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Просмотры7.5K
Комментарии 1

Java, Istio, Kubernetes, Docker — приглашаем на митапы IBM в Москве и Санкт-Петербурге

Блог компании IBMOpen sourceJavaОблачные сервисыKubernetes


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

Напоследок перед летними каникулами решили порадовать уважаемых подписчиков серией митапов! На следующей неделе их будет целых три! И не только в Москве…

  • 19 июня в 18:00 (Москва) в офисе IBM митап по Java технологиям. У нас будет Java Champion, Себастиан Дашнер. Будем обсуждать использование Java в новых облачных реалиях.
  • 20 июня в 18:00 (Москва) в офисе IBM митап по Service Mesh — Istio. Давно хотели сделать и тут к нам приезжают основные контрибьюторы проекта. К примеру, Вадим Айзенберг входит в топ-5 людей — контрибьюторов Istio.
  • 20 июня в 18:00 (Санкт-Петербург) — Себастиан Дашнер выступит совместно с Денисом Цыплаковым на площадке DataArt по темам Java и микросервисных архитектур

Для детальной программы и регистрации (количество мест, к сожалению, ограничено!) — смотрите далее!
Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Просмотры1.7K
Комментарии 1

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы

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

image

В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
Читать дальше →
Всего голосов 216: ↑202 и ↓14 +188
Просмотры95.5K
Комментарии 307

По следам индустриального ниндзя: приглашаем участвовать в онлайн-конкурсе по промышленной безопасности

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


На прошедшем PHDays 9 мы проводили конкурс по взлому завода по перекачке газа Industrial Ninja. На площадке было три стенда, эмулирующих индустриальный процесс: под большим давлением в воздушный шар закачивался воздух. У каждого стенда был свой уровень сложности (по степени защиты): новичок, бывалый и ниндзя. При этом оборудование и технологический процесс не различались.

Перед конкурсантами стояла задача разобраться в технологическом процессе, перехватить управление заводом и спровоцировать аварию: в реальности — сдуть или лопнуть шарик. Однако самое сложное задание так и осталось нерешенным.
Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Просмотры2K
Комментарии 0

Информация

В рейтинге
3,872-й
Зарегистрирован
Активность