Search
Write a publication
Pull to refresh
4
0
Send message

Physically-based rendering. Ray marching (часть 1)

Reading time6 min
Views10K

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

Читать далее

Внутренности SDR чипа AD9361 — когда микроэлектроника выгоднее наркоторговли

Reading time5 min
Views62K
Когда в 2013 году Analog Devices выпустила SDR трансивер AD9361 — случилась настоящая революция в цифровой радиосвязи. SDR были и раньше, но теперь в одном чипе можно было получить все: 2 канала на прием и 2 на передачу (с набортными 12-бит ЦАП и АЦП) с шириной канала до 56МГц, локальные генераторы и радиотракт — для работы в диапазоне от 70 (на передачу от 47) до 6000Мгц. На AD9361 «из коробки» можно реализовать почти любой цифровой приемопередатчик, за исключением наверное только UWB и начинающего набирать популярность диапазона 60ГГц (но там без аппаратной многоэлементной ФАР все равно делать почти нечего). Остается лишь добавить источник/приемник данных (пока это обычно FPGA), внешние фильтры и LNA/PA, если задача того требует.

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

Читать дальше →

KiCad: скругление дорожек и создание каплевидных падов

Reading time11 min
Views14K

KiCad с годами стал намного лучше, но при этом ему по-прежнему недостаёт возможности рисовать плавные, закруглённые дорожки с каплевидными падами (teardrops). И хоть многие находят этот функционал не особо нужным, в его пользу существует ряд аргументов, которые и привели к реализации данного проекта, а именно двух плагинов — для скругления дорожек и формирования каплевидных подводов.
Читать дальше →

Как оплачивать зарубежные сервисы?

Reading time5 min
Views210K

Как известно, 10 марта Visa и Mastercard официально прекратили транзакции в РФ. Наши соотечественники, срочно выехавшие или уже проживающие в других странах попали в ситуацию, когда российские карты перестали работать (с них нельзя снять наличные, ими нельзя расплатиться). Внутри России, будут работать до конца срока действия, благодаря Национальной системе платежных карт, но платить с использованием Apple Pay и Google Pay нельзя. Банки предлагают альтернативу: кобейджинговые карты МИР / UnionPay, но с ними все так просто и оформление таких карт - еще тот бег с препятствиями. Как итог, проблема с оплатой зарубежных сервисов стоит остро, мы уже привыкли к удобным и доступным сервисам и теперь очень не хочется отвыкать...

Как же теперь оплачивать зарубежные сервисы?

Читать далее

О квадратных уравнениях в правильном порядке

Reading time4 min
Views48K

Как вам преподавали квадратные уравнения в школе? Это был 7-8 класс, примерно. Вероятнее всего, вам рассказали что есть формулы корней через дискриминант, что направление ветвей зависит от старшего коэффициента. Через пару занятий дали теорему Виета. Счастливчикам еще рассказали про метод переброски. И на этом решили отпустить.

Читать далее

Собираем «Тревожный чемоданчик». Мнение спортивного туриста

Reading time18 min
Views219K
Когда началась война, все произошло так быстро, что я не могла ни понять, что происходит, ни подумать о том, что хотела бы взять с собой, когда мы убегали. (из интервью сирийской беженки)

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


Собираем тревожный чемоданчик вместе

Извлечение максимальной пользы из Git

Reading time7 min
Views15K
image

Сегодня ни один проект не обходится без контроля версий с помощью Git под колпаком. Хорошее знание Git поможет вам улучшить свои навыки разработчика, ускорить рабочий процесс и действительно улучшить качество вашей кодовой базы. Однако для этого необходимо немного выйти за пределы привычной нам зоны комфорта. Оказывается, в Git есть нечто большее, чем просто commit, push и pull.

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

В этой статье мы рассмотрим четыре продвинутых инструмента Git и, надеюсь, пробудим в вас желание узнать о Git ещё больше.
Читать дальше →

Стивен Вольфрам: кажется, мы близки к пониманию фундаментальной теории физики, и она прекрасна

Reading time70 min
Views390K
В продолжение моего поста про вычислимую Вселенную я хочу представить вам свой перевод статьи Стивена Вольфрама, созданной в рамках его проекта The Wolfram Physics Project.


Неожиданное открытие


За прошедшие несколько веков произошел настоящий прорыв в наших знаниях о принципах работы окружающего нас мира. Но несмотря на это, у нас все еще нет фундаментальной теории физики, и мы все так же не имеем ответа на вопрос о том, как именно работает наша Вселенная. Я занимаюсь этой темой уже порядка 50-и лет, но только в последние несколько месяцев все кусочки пазла наконец-то начали складываться вместе. И получающаяся картина оказалась гораздо прекрасней, чем все, что я только мог себе представить.
Читать дальше →

FIFO для самых маленьких (вместе с вопросами на интервью)

Reading time8 min
Views21K

"Напишите на доске код на верилоге для FIFO" - это популярный вопрос во время интервью в компании типа Apple и AMD, причем у него есть вариации для всех уровней инженеров, так как существуют десятки типа реализаций FIFO: на D-триггерах, встроенной SRAM памяти или на массиве D-защелок; с одном или двумя тактовыми сигналами; с одним, двумя или N вталкиваниями / выталкиваниями в одном такте; с разделяемой несколькими FIFO общей памятью; с парой указателей для записи/чтения и с хранением элементов в виде связанного списка; FIFO позволяющее undo; FIFO позволяющие потери данных; всякая экзотика типа FIFO шириной ноль итд.

Если человек не в теме или не понял вопроса, он может начать "запускаем GUI от Xilinx, вносим параметры и инстанциируем сгенерированный код". Это вызывает реакцию, как если бы школьная учительница геометрии спросила "найдите гипотенузу" и школьник бы ткнул пальцем в гипотенузу и с улыбкой ответил "вот она!"

Читать далее

Создавая непредсказуемость. Примеры использования генераторов случайных чисел

Reading time8 min
Views7K

Привет, Хаброжители! У нас вовсю продолжается распродажа «Старый Новый год»

Кто пытается арифметическими методами генерировать случайные числа, тот, конечно, живет во грехе. Поскольку, как указывалось уже неоднократно, нет такого феномена, как случайное число  —  есть только методы для получения случайных чисел. – Джон фон Нейман

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

Читать далее

Мой опыт технического собеседования: как не превратить его в экзамен и найти профпригодного сотрудника

Reading time21 min
Views31K
image

Привет, Хабр! Меня зовут Леонид Титов, я бэкенд разработчик в #CloudMTS. Так уж сложилось, что я не только пишу код, но и иногда собеседую кандидатов. Мне нравится процесс, и, думаю, у меня это получается.

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

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

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

Кодирование Рида-Соломона для чайников

Reading time14 min
Views32K

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

этой статьи

Арифметика с полиномами для кода Рида-Соломона

Reading time10 min
Views16K

Если хочется сделать передачу или хранение данных более надёжными, применив к ним избыточное кодирование, то для этого неплохо подойдёт код Рида-Соломона. Понимаю, что на эту тему написано немало материала, тем не менее ориентирован он, как правило, на людей неплохо подготовленных в математике. Если просто хочется реализовать такой алгоритм в каком-нибудь проекте, не сильно углубляясь в математику, то надеюсь этот материал будет весьма полезным.

Читать дальше →

Программная реализация умножения в полях Галуа

Reading time8 min
Views22K

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


Итак, я отвлёкся. В детстве-юношестве для помехоустойчивого кодирования можно было бы применить контроль чётности по матричному методу, но сейчас это не серьёзно. Полистав интернет я решил остановиться на кодировании по методу Рида-Соломона. Алгоритм не то, чтобы совсем новый, его ещё в первых CD применяли, но при этом, насколько мне известно, не потерявший своей актуальности и на данный момент. В этой статье о самих кодах Рида-Соломона я не буду сильно распространяться – это за меня на Хабре сделали много раз и много кто. Здесь я хочу описать реализацию алгоритма умножения в GF[256]. Тем не менее, чтобы не заставлять читателя прыгать по ссылкам, кратенько опишу зачем вообще приходится иметь дело с полями Галуа.

Читать дальше →

Как войти в IT?

Reading time8 min
Views125K

Цель статьи помочь желающим войти в IT, либо показать, что оно им не нужно.

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

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

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

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

Читать далее

Запускаем мелкосерийное производство электроники. Личный опыт

Reading time6 min
Views48K

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

Чтобы статья получилась максимально практичной в ней будут приводиться ссылки на поставщиков оборудования, которое используется нами. Не сочтите за рекламу.

Читать далее

Обзорная экскурсия в криптографически стойкие генераторы псевдослучайных чисел

Reading time14 min
Views9.1K

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

Читать далее

Щуп осциллографа. Устройство и принцип работы

Reading time9 min
Views57K

Эта статья для тех кто всегда хотел знать как устроен щуп осциллографа, но боялся спросить. Для тех кто начинает работать с осциллографом, а также для тех кто много лет работает, но никогда не хватало времени и сил для того, чтобы разобрать как устроен щуп(пробник) осциллографа на самом деле. Этот материал основан на статье Doug Ford «The secret world of oscilloscope probes» с некоторыми изменениями и дополнениями. В статье будут рассматриваться только пассивные щупы. Исследование работы будем проводить в популярном симуляторе электронных схем LTSpice. Разберем последовательно назначение и особенности каждого элемента, моделируя эквивалентные схемы начиная от простых вариантов и переходя к более реалистичным. Узнаем кто изобрёл и запатентовал первый прототип этого устройства в том виде в котором он используется сейчас. А также в конце рассмотрим как устроен реальный щуп фирмы Keysight(бывший Agilent) 10073C, вышедший из строя и давший согласие предоставить свои останки на благо научного прогресса.

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

Читать далее

Как разработать микросхему, от идеи до результата. Часть 2. Установка программного обеспечения

Reading time9 min
Views11K
В этой статье мы поставим все необходимые инструменты для того, чтобы начать разработку микросхемы. Также мы установим Process Design Kit, про который мы говорили в предыдущей статье.

Напоминаю, что я продолжаю идти к цели — сделать свой собственный Отечественный Процессор (TM). Продолжение процесса разработки можно посмотреть под катом.

Читать дальше →

Делаем твёрдый переплёт для любимых книжек

Reading time6 min
Views552K
Небольшое вступление

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

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

Большое вступление

Некоторое время назад мне захотелось прочитать цикл Дугласа Адамса «Автостопом по галактике». Я попробовал почитать несколько переводов и не один меня не устроил. Поэтому было принято решение — читать на английском! Найти эти книги в оригинале в наших книжных магазинах довольно сложно. А если и есть, то только первая часть цикла. В электронном виде найти несколько проще. Но я предпочитаю читать с бумаги (читалку на E-ink куплю обязательно — очень нравятся), поэтому книги я распечатываю.

Первые две книги выглядели так:
image

Я их прочитал с огромным удовольствием, но выглядели они не очень хорошо. И я решил, что «Life, the Universe, and Everything» нужно делать книжкой.

Процесс с картинками и комментариями под катом. Осторожно, действительно много картинок.
Читать дальше →

Information

Rating
4,052-nd
Registered
Activity