Pull to refresh
4
0
Send message

Junior FPGA Design Engineer: как стать?

Reading time 11 min
Views 141K
Всем привет!

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

Разработка под FPGA (ПЛИС) — это не просто какой-то язык. Это очень объемная область, с огромным количеством подводных камней и нюансов.

В этой статье вы найдете:
  • список тем, которые должен освоить начинающий разработчик под FPGA
  • рекомендуемую литературу по каждой из тем
  • набор тестовых вопросов и лабораторных работ
  • классические ошибки новичков (и советы по исправлению)

Добро пожаловать под кат!
Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Comments 58

Уолтер Левин — Во имя физики

Reading time 1 min
Views 20K


16 мая 2011 года Уолтер Левин, заслуженный профессор MIT в отставке, вернулся в свой старый лекционный зал, чтобы провести последнюю лекцию, которая была приурочена к публикации его новой книги «FOR THE LOVE OF PHYSICS: From the End of the Rainbow to the Edge Of Time — A Journey Through the Wonders of Physics», написанной совместно с Уорреном Гольдштейном.

«Эта книга раскрывает перед нами незаурядный интеллект Уолтера Левина, его страсть к физике и блестящий навык преподавания. Надеюсь, благодаря ей еще больше людей узнает об этом потрясающем преподавателе и учёном».

— Билл Гейтс


Оригинальное видео

P.S. В комментариях вы можете предложить интересное видео на перевод и озвучивание.
Total votes 27: ↑27 and ↓0 +27
Comments 12

Интерфейсы vs. классы

Reading time 4 min
Views 283K
Обсуждая с различными людьми — в большинстве своём опытными разработчиками — классический труд «Приёмы объектно-ориентированного проектирования. Паттерны проектирования» Гаммы, Хелма и др., я с изумлением встретил полное непонимание одного из базовых подходов ООП — различия классов и интерфейсов.

Читать дальше →
Total votes 4: ↑4 and ↓0 +4
Comments 161

Что такого особенного в Nim?

Reading time 7 min
Views 80K


Язык программирования Nim (ранее именовался Nimrod) — захватывающий! В то время как официальная документация с примерами плавно знакомит с языком, я хочу быстро показать вам что можно сделать с Nim, что было бы труднее или невозможно сделать на других языках.

Я открыл для себя Nim, когда искал правильный инструмент для написания игры, HoorRace, преемник моей текущей DDNet игры/мода Teeworlds.

(прим. пер. На синтаксис Nim имели влияние Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon.)

Запускаем!


Да, эта часть всё ещё не захватывает, но просто следите за продолжением поста:

for i in 0..10:
  echo "Hello World"[0..i]

Читать дальше →
Total votes 63: ↑57 and ↓6 +51
Comments 93

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

Reading time 2 min
Views 41K
image

Моника Пишетсридер (Monika Pischetsrieder) с коллегами из Эрлангенского университета в Германии обнаружили, что крысы, имея возможность выбора, тяготеют к пище с определённым сочетанием жиров и углеводов. Волшебная формула – 50 к 35, то есть еда, в которой содержится 35% жиров и 50% углеводов. А это практически полностью совпадает с картофельными чипсами, шоколадом и арахисовым маслом. Это исследование было опубликовано 17 марта в журнале Nature.

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

image

Бытует точка зрения, что мозг просто предпочитает высококалорийную еду. Исследователи проверяли правоту этого утверждения — будут ли подопытные крысы выбирать себе еду по содержанию калорий, или отдадут предпочтения какой-либо из комбинаций питательных веществ.
Читать дальше →
Total votes 44: ↑42 and ↓2 +40
Comments 60

Ночные кошмары Питона: неявный `this`

Reading time 3 min
Views 27K
Обсуждение статьи "Не совсем крутой Ruby" зашло достаточно далеко: недостатки и достоинства Ruby между делом перетекали в обсуждение недостатков и достоинств Python. Не сильно удивило то, что передача self в качестве первого аргумента метода класса, некоторым хабравчанам кажется лишней. Ну что ж, не хотите явного self, будет вам неявный this! Под катом, немного магии на чистом Python.
Читать дальше →
Total votes 63: ↑58 and ↓5 +53
Comments 18

Как мы запускали метеозонд на Урале. Часть 1

Reading time 8 min
Views 78K
Запуск метеозонда в небо — есть старинная забава ученых и энтузиастов, со времен инцидента в Розуэлле (штат Нью-Мексико). Метеорологи запускают зонды для наблюдения за процессами в верхних слоях атмосферы. Кто-то запускает зонды в торнадо, чтобы узнать его структуру. Энтузиасты же, в основном, делают это для красивой картинки нашей родной планеты с высоты полета Фрэнсиса Гэри Пауэрса.

Наш хакспейс полон энтузиастов, и был лишь вопрос времени, когда мы проведем такое грандиозное мероприятие. Это время настало весной текущего года. Прохладным утром 11 апреля 2015-го, хакспейс MakeItLab вместе с сетью магазинов оптики «Четыре глаза» и несколькими другими организациями запустили метеозонд в «уральскую» стратосферу!

Надо сказать, мы решили сделать из запуска хорошее шоу, и организовали прямой видеолинк с зонда на большой телевизор. Куча школьников смогли наблюдать за собой сверху, с высоты полета быстро удаляющегося воздушного аппарата. Было очень круто! Разумеется, на борту была и обычная action-камера, которая запечатлела красоты почти-космоса. Наконец, мы отсняли наш марш бросок на 200 км за упавшим зондом. Обо всем этом читайте/смотрите под катом.
Читать дальше →
Total votes 46: ↑46 and ↓0 +46
Comments 29

Арбелос

Reading time 15 min
Views 31K

Скачать статью в виде документа Mathematica (NB), CDF-файла или PDF.
Выражаю огромную благодарность Кириллу Гузенко за помощь в переводе.

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

Введение


Будучи мотивирован вычислительными преимуществами, которыми обладает Mathematica, некоторое время назад я решил приступить к исследованию свойств арбелоса — весьма интересной геометрической фигуры. С тех пор я был впечатлен большим количеством удивительных открытий и вычислительных проблем, которые возникали из-за всё расширяющегося объёма литературы, касающейся этого примечательного объекта. Я вспоминаю его сходство с нижней частью культового велосипеда пенни-фартинг из The Prisoner (телесериал 1960-х), шутовской шапкой Панча (знаменитых Punch and Judy) и символом инь-ян с одной перевёрнутой дугой; см. рис. 1. В настоящее время существует специализированный каталог архимедовых кругов (круги, содержащиеся в арбелосе) [1] и важные применения свойств арбелоса, которые лежат вне поля математики и вычислительных наук [2].

Многие известные исследователи занимались этой темой, в том числе Архимед (убитый римским солдатом в 212 г. до н.э.), Папп (320 г. н.э.), Кристиан О. Мор (1835-1918), Виктор Тебо (1882-1960), Леон Банкофф (1908-1997), Мартин Гарднер (1914-2010). С недавних пор свойствами арбелоса занимаются Клейтон Додж, Питер Ай. Ву, Томас Шох, Хироши Окумура, Масаюки Ватанабе и прочие.

Леон Банкофф — человек, который привлекал всеобщее внимание к арбелосу в последние 30 лет. Шох привлёк внимание Бэнкоффа к арбелосу в 1979 году, открыв несколько новых архимедовых кругов. Он послал 20-страничную рукописную работу Мартину Гарднеру, который направил её Бэнкоффу, который затем отправил 10-страничный фрагмент копии рукописи Доджу в 1996 году. Из-за смерти Бэнкоффа запланированная совместная работа была прервана, пока Додж не сообщил о некоторых новых открытиях [3]. В 1999 году Додж сказал, что ему потребуется от пяти до десяти лет, чтобы отсортировать весь материал, которым он располагает, разложив всё это дело по стопкам. В настоящее время эта работа все ещё продолжается. Не удивительно, что в четвертом томе The Art of Computer Programming, сказано о том, что важная работа требует большого количества времени.


Рис. 1. Велосипед пенни-фартинг, куклы Панч и Джуди, физический арбелос.

Арбелос (“нож сапожника” в греческом языке) назван так из-за своего сходства с лезвием ножа, использующегося сапожниками (Рис. 1). Арбелос — плоская область, ограниченная тремя полуокружностями и общей базовой линией (рис. 2). Архимед, вероятно, был первым, кто начал изучать математические свойства арбелоса. Эти свойства описаны в теоремах с 4-ой по 8-ую его книги Liber assumptorum (или Книги лемм). Возможно, эту работу написал не Архимед. Сомнения появились после перевода с арабского Книги лемм, в которой Архимед упоминается неоднократно, но ничего не сказано о его авторстве (однако, существует мнение, что эта книга — подделка [4]). Книга Лемм так же содержит знаменитую архимедову Problema Bovinum [5].

Эта статья направлена на систематическое изложение некоторых свойств арбелоса и не носит исчерпывающий характер. Наша цель состоит в том, чтобы выработать единую вычислительную методологию для того, чтобы преподнести данные свойства в формате обучающей статьи. Все свойства выстроены в рамках определённой последовательности и представлены с доказательствами. Эти доказательства были реализованы посредством тестирования эквивалентных вычисляемых утверждений. В ходе выполнения данной работы автором было совершено несколько открытий и сделано несколько обобщений.
Читать дальше →
Total votes 73: ↑69 and ↓4 +65
Comments 29

Хроники лаборатории: крыса в полимерном шлеме, спектральный анализ банкой чипсов и синяя изолента

Reading time 10 min
Views 48K

Знакомьтесь — подопытная крыса Теодор-младший.

Как многие знают, я сменил род деятельности и теперь основную часть времени я занимаюсь выращиванием суперсолдат и порабощением мира стволовыми клетками. Сразу хочу предупредить — работа в нашей лаборатории сопряжена с NDA, поэтому некоторых вещей я коснусь лишь поверхностно.
Когда вы занимаетесь наукой, то очень часто возникает необходимость решать сложные и нестандартные задачи. Какими бы глянцевыми и красивыми ни были ваши портативные коллайдеры, любовно приборетенные для разработок, иногда возникает необходимость создать что-то «на коленке» для проверки какой-то идеи. Особенно остро это ощущается в госучреждениях, где, несмотря на зачастую прекрасное финансирование, закон вынуждает организовывать межгалактический тендер на приобретение карандаша. Поэтому я расскажу вам про синюю изоленту, спектральный анализ с помощью банки чипсов и художественную лепку экзоскелета для крысы-мутанта. А заодно узнаем, стоит ли топить сухой лед в унитазе и можно ли потом это пить.
Дальше очень-очень много фотографий и текста
Total votes 81: ↑80 and ↓1 +79
Comments 71

Kerbal Space Program обновилась до релизной версии 1.0

Reading time 1 min
Views 16K
image

Симулятор космической программы Kerbal Space Program, позволяющей взять на себя руководство ЦУПом одной маленькой, но очень энергичной планеты, недавно обновился до версии 1.0
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Comments 56

Заглянем за кулисы разработки: подборка исходных кодов классических игр

Reading time 10 min
Views 82K
Обожаю заглядывать за кулисы. Мне интересно, как делаются вещи. Мне кажется, что большинству людей это тоже интересно.

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

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

Многие игры после выпуска исходников были улучшены и дополнены сообществом – я намеренно даю ссылки только на оригинальные исходники. Так что, если вас вдруг интересуют апгрейды – они могут существовать.

Многие игры были рассмотрены на сайте Fabien Sanglard. Если вам интересны подробности их работы, то пожалуйте к нему.

Можно заметить, что многие игры принадлежат id Software/Apogee. Совпадение? Не думаю. id славится открытостью и привычкой выпускать исходники. Старые коммерческие игры уже не имеют ценности и были бы потеряны – не лучше ли, чтобы кто-то учился чему-то полезному на их основе?

Итак, приступим (в хронологическом порядке):
Читать дальше →
Total votes 58: ↑56 and ↓2 +54
Comments 12

Линейная алгебра: пробный заезд

Reading time 7 min
Views 143K
Привет, Хабр!

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

Часто первое знакомство с линейной алгеброй выглядит как-то так:

image

Не очень вдохновляет, правда? Сразу возникает два вопроса: откуда это все взялось и зачем оно нужно.

Начнем с практики


Когда я занимался вычислительной гидродинамикой (CFD), один из коллег говорил: «Мы не решаем уравнения Навье-Стокса. Мы обращаем матрицы.» И действительно, линейная алгебра — «рабочая лошадка» вычислительной математики:


Читаем дальше...
Total votes 36: ↑35 and ↓1 +34
Comments 15

IBM PC своими руками — это очень просто

Reading time 34 min
Views 199K
image

После того, как я воплотил свою давнишнюю мечту и все-таки (хотя и с опозданием почти на 30 лет) построил Радио 86РК, некоторое время мне казалось, что на этой части моей истории поставлена вполне достойная точка.

Тем не менее, обнаружилось, что болезнь до конца не вылечена, и она вернулась еще более острым рецидивом. Наверное, сказались как неожиданно успешный опыт постройки 86РК, так и то, что у меня в ходе данного процесса образовалось довольно большое количество весьма притягательно выглядящих инструментов, приборов и деталей, которым очень хотелось найти применение.
В конце концов ломка стала нестерпимой, и мне пришлось снова взяться за паяльник, а также вспомнить некоторые другие навыки из прошлого. Что из этого получилось, можно увидеть вместе с некоторым количеством картинок и очень (повторяю – ОЧЕНЬ) большим количеством букв (и даже не букв, а страниц) дальше…
Читать дальше →
Total votes 261: ↑260 and ↓1 +259
Comments 81

Facebook распознаёт происходящее на видео и находит смысл в тексте

Reading time 2 min
Views 9.3K
image

На конференции F8 для разработчиков приложений, работающих с Facebook, главный инженер компании Майк Шропфер объявил о прорыве, совершённом в области искусственного интеллекта. Поводом для заявления послужила работа двух систем ИИ.

Первая система способна распознать, какой из 487 различных видов спорта показан на видео. При этом, например, она отличает фигурное катание от хоккея. Неизвестно, насколько это проще или сложнее для ИИ, чем отличить кошку от собаки, но в любом случае, это очень интересная система. Уже хочется опробовать её, подсунув для распознавания фрагмент батальной сцены из «Властелина колец».
Читать дальше →
Total votes 26: ↑24 and ↓2 +22
Comments 16

Планеты и четвёртое измерение

Reading time 5 min
Views 98K
Наверняка вам известно, что планеты движутся вокруг солнца по эллиптическим орбитам. Но почему? На самом деле, они двигаются по окружностям в четырёхмерном пространстве. А если спроецировать эти окружности на трёхмерное пространство, они превращаются в эллипсы.

image

На рисунке плоскость обозначает 2 из 3 измерений нашего пространства. Вертикальное направление – это четвёртое измерение. Планета движется по кругу в четырёхмерном пространстве, а её «тень» в трёхмерном движется по эллипсу.

Что же это за 4-е измерение? Оно похоже на время, но это не совсем время. Это такое особенное время, которое течёт со скоростью, обратно пропорциональной расстоянию между планетой и солнцем. И относительно этого времени планета двигается с постоянной скоростью по кругу в 4 измерениях. А в обычном времени его тень в трёх измерениях двигается быстрее, когда она находится ближе к солнцу.
Читать дальше →
Total votes 80: ↑72 and ↓8 +64
Comments 51

Файловая система Linux полностью на tmpfs — скорость без компромиссов

Reading time 4 min
Views 121K

Предыстория


Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.

Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.

Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Читать дальше →
Total votes 83: ↑74 and ↓9 +65
Comments 167

Занимательная теория вероятностей или сколько нужно двигателей?

Reading time 6 min
Views 25K


В обсуждении проекта «большого глупого носителя» OTRAG, состоящего из пакета простых ракет, неоднократно поднимался вопрос надёжности такого количества двигателей. Вспоминалась печальная история советской сверхтяжёлой ракеты Н-1, у которой на первой ступени стояло 30 двигателей, и которая ни разу за четыре полёта не долетела до конца её работы. В комментарии рассказать про теорию вероятностей и расчёт надёжности места нет, поэтому предлагаю вашему вниманию занимательный рассказ о количестве двигателей, надёжности, комбинаторике и теории вероятностей.
Читать дальше →
Total votes 34: ↑32 and ↓2 +30
Comments 17

Коллекционирование химических элементов — на что это похоже? (UPD. Коллекционеру из статьи можно задавать вопросы)

Reading time 2 min
Views 28K

Металлический натрий в запаянной ампуле

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

По известным причинам (распад некоторых элементов происходит за тысячные доли секунды) полную коллекцию элементов собрать не получится. Но есть люди, которые приблизились к идеалу, собрав максимум того, что возможно. Один из таких людей — Теодор Грей. К слову, он — один из создателей Wolfram Alpha.
Читать дальше →
Total votes 42: ↑37 and ↓5 +32
Comments 38

Создан открытый аналог Siri — Sirius, доступный по лицензии BSD

Reading time 1 min
Views 17K


Группа Clarity Lab, находящаяся в университете Мичигана, предлагает решение с открытым исходным кодом для персонального компьютерного помощника. Их программа распознаёт голос и ищет ответы на запросы, точно как делают Siri от Apple, Google Now от Google, и аналогичные решения от Microsoft и Amazon. Проект под названием Sirius умеет даже больше, чем его аналоги – например, ему можно предоставить картинку и задать по ней вопрос.

Проект спонсируют Google, DARPA, американские военные и Национальный научный фонд США. Он распространяется по лицензии BSD, что означает полную открытость и бесплатность для всех желающих. Значит, любые стартапы смогут реализовать такую функциональность в своих проектах и устройствах.
Читать дальше →
Total votes 35: ↑35 and ↓0 +35
Comments 12

Игра за 14 дней [Для тех, кто годами собирает команду, но так и не сделал прототип]

Reading time 16 min
Views 108K
На просторах интернета часто встречаются «команды», которые существуют уже годами, список разработчиков состоит из десятка персон, да ещё и «нужны все!». При этом никакой адекватной демки нет даже в ближайших планах. Глядя на это всё так и хочется сказать: «Да что же вы, блин, делаете?!». Но это деструктив. Мало раскритиковать. Нужно и позитивные примеры предоставить.

Эти размышления натолкнули меня на занятный эксперимент: в ноябре на gamedev.ru стартовал «конкурс леталок». Конкурс предполагал разработку в течении двух месяцев. Однако мне показалось, что это многовато. Поэтому я записался в участники… И забыл о конкурсе на полтора месяца.

Основная идея эксперимента — сделать полноценный проект за две недели. Срок завершения конкурса — неплохой дедлайн. К тому же последняя неделя конкурса совпала с концом новогодних праздников, что дало возможность не отвлекаться на другие задачи. Итак: конкурс, проект с нуля, две недели.

image
Читать дальше →
Total votes 111: ↑106 and ↓5 +101
Comments 25

Information

Rating
Does not participate
Date of birth
Registered
Activity