Обновить
0

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

Отправить сообщение

Электронный микроскоп в гараже

Время на прочтение5 мин
Охват и читатели76K
image

Позвонил мне как-то друг и говорит: нашёл интересную штуку, нужно привезти к тебе, весит полтонны. Так у меня появилась колонна от сканирующего электронного микроскопа JEOL JSM-50A. Её давно списали из какого-то НИИ и вывезли в металлолом. Электронику потеряли, а вот электронно-оптическую колонну вместе с вакуумной частью удалось спасти.

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

  • Понять основы работы электронных микроскопов
  • Разобраться в том, что такое вакуум, какой он бывает
  • Как измеряют вакуум, как его получают
  • Как работают высоковакуумные насосы
  • Минимально разобраться в химии (какие растворители использовать для очистки вакуумной камеры, какое масло использовать для смазки вакуумных деталей)
  • Освоить металлообработку (токарные и фрезерные работы) для изготовления всевозможных переходников и инструментов
  • Разобраться с микроконтроллерами, схемотехникой их подключения

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

Восстановление микроскопа после как минимум десятка лет — под катом.
Подробности с фото и видео

ARM64 и Ты

Время на прочтение10 мин
Охват и читатели84K
Несколько запоздалый перевод заинтересовавшего меня блогпоста о том, что в действительности дает 64-битность процессора в iPhone без маркетинговой шелухи. Если текст покажется вам слишком очевидным, пропустите часть «Базовые преимущества и недостатки».

Как только был анонсирован iPhone 5S, технические медия были переполнены недостоверными статьями. К сожалению, написание хороших статей занимает время, а мир технической журналистики больше ценит скорость, чем достоверность. Сегодня, по просьбе нескольких своих читателей, я кратко изложу, что дает 64-bit ARM в iPhone 5S в плане производительности, возможностей и разработки.

64 бита


Давайте для начала рассмотрим что, собственно, 64-битность означает. С этим термином связанно много путаницы, в основном из-за того, что нет единого устоявшегося определения. Однако, существует общее понимание этого термина. «Битность» обычно означает либо размер числового регистра, или размер указателя. К счастью, для большинства современных процессоров, их размер совпадает. Таким образом, 64-битность означает что процессор обладает 64-битными числовыми регистрами и 64-битными указателями.

Важно также отметить, что 64-битность не означает, т.к. и здесь есть много недопонимания. Итак, 64-битность не определяет:
Читать дальше →

Создаём личный «Архив интернета»

Время на прочтение7 мин
Охват и читатели38K


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

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

Магия SwiftUI или о Function builders

Время на прочтение5 мин
Охват и читатели21K


Вы пробовали добавить в VStack больше 10 вьюх?


var body: some View {
        VStack {
            Text("Placeholder1")
            Text("Placeholder2")
            // ... тут вьюшки с 3 по 10 . . .
            Text("Placeholder11")
        }
    }

Я попробовал — это не компилируется. Да, я тоже сначала был удивлен и погрузился в изучение форума Swift и гитхаба. Результатом моего изучения стало — "все равно не компилируется ¯\_(ツ)_/¯ ". Но подождите, давайте разберемся почему.

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

Продвинутое компьютерное зрение. Введение в Прямое визуальное отслеживание

Время на прочтение9 мин
Охват и читатели15K

Задача отслеживания объектов на изображении - одна из самых горячих и востребованных областей ML. Однако уже сейчас мы имеем огромное разнообразие различных техник и инструментов. Данная статья поможет начать Ваш путь в мир компьютерного зрения!

Сперва, мы представим некоторые типы методов визуального отслеживания. После, мы объясним как классифицировать их. Мы также поговорим о фундаментальных аспектах прямого визуального отслеживания, уделяя особое внимание методам, основанным на регионах, и методам основанным на градиентах. В будущих статьях мы представим подробный математический вывод алгоритма Лукаса-Канаде с акцентом на выравнивание изображений. И наконец, мы представим, как реализовать эти методы в Python. Давайте начнем!

Читать далее

Информационная архитектура и технология DITA. По мотивам лекции в Яндексе

Время на прочтение21 мин
Охват и читатели20K
Darwin Information Typing Architecture (DITA) — XML-технология для автоматизации процессов, связанных с технической документацией. За время существования DITA накопилось большое количество разнообразных возможностей, подходов к организации контента, а также конкретных механизмов их реализации. Запутаться в них немудрено, и это часто приводит к появлению непонятных, неэффективных и просто неудобных решений по автоматизации документирования. Директор по проектам компании «Философт» Михаил Острогорский раскладывает всё по полочкам.


Предисловие


Предлагаемая статья написана по мотивам небольшого доклада, сделанного автором на одном из «Гипербатонов», которые время от времени бывают в Яндексе. Не то что бы я был слишком недоволен собой как оратором, но в этом случае публиковать дословную расшифровку устной речи — не лучшая идея, на мой взгляд.

Шпаргалка по функциональному программированию

Время на прочтение23 мин
Охват и читатели50K

Привет, меня зовут Григорий Бизюкин, я преподаватель Школы разработки интерфейсов и фронтенд-разработчик в Яндексе. Давайте поговорим о функциональном программировании в мире JavaScript. Мы все про ФП что-то слышали, нам всем оно интересно, но у меня, когда я искал полезные материалы для подготовки к лекциям, сложилось такое впечатление: есть куча статей, каждая из которых либо говорит об ФП общими словами, либо раскрывает отдельный маленький кусочек темы, чего, конечно, недостаточно.



Добавим функционального света


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

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

OCR или как мы учимся читать спам на 5+

Время на прочтение12 мин
Охват и читатели23K


Всем привет, меня зовут Михаил Марюфич. Я занимаюсь машинным обучением в команде антиспама в Одноклассниках. И сегодня я расскажу про то, как и зачем мы сделали свою технологию распознавания текстовых символов с изображения OCR (Optical character recognition).
Читать дальше →

Теория инвестиций для начинающих, часть 4

Время на прочтение28 мин
Охват и читатели65K
Франс Франкен Младший. Смерть и скупец. XVII в. Галерея Wellcome, Лондон.

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

Краткое содержание четвёртой части:
  • как жить в мире, в котором среднестатистический инвестор паевого фонда получает доходность хуже рынка (купить рыночный портфель, то есть индекс);
  • какие инструменты позволяют купить индексный портфель в один клик (биржевые фонды, они же ETF'ы);
  • насколько эффективным может быть рынок, и как быстро новая информация отражается в цене акций (эффективность пугающая: рынок расследует космические катастрофы за несколько минут);
  • если не покупать индекс, то можно ли заработать на фондовом рынке по-другому (можно, если вы помогаете остальным преодолевать рыночные трения);
  • как автор инвестирует собственные деньги и копит на пенсию (всё скучно: индексные фонды).
Читать дальше →

Что нужно знать об ARC

Время на прочтение5 мин
Охват и читатели59K
Автоматический подсчет ссылок (Automatic Reference Counting, ARC) для языка Objective-C был представлен компанией Apple еще в 2011 году для iOS 4.0 и выше, Mac OS X 10.6 и выше, с использованием xCode 4.2 и выше. И, хотя всё больше библиотек, фреймворков и проектов сегодня используют ARC, до сих пор среди программистов встречается либо неприятие этой технологии, либо eё неполное понимание. Опытные программисты, привыкшие к retain/release, иногда считают, что они лучше и эффективней справяться с подсчетом ссылок, чем это за них сделает компилятор, а новички, начищающие сразу использовать ARC, полагают, что им не надо вообще думать об управлении памятью, и всё сделается магическим образом само.
Давайте расставим точки над i

Атрибуты свойств в Objective-C. Инструкция для начинающих

Время на прочтение9 мин
Охват и читатели84K
image

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

Эффективное тестирование верстки

Время на прочтение15 мин
Охват и читатели31K
Тестировать полезно. Тесты позволяют в автоматическом режиме безопасно рефакторить код и гарантируют его работу. Тесты – это живая документация: если информация в Wiki или в Confluence может устареть, то тесты всегда актуальны. Также многие крутые практики связаны с тестированием. Например, самотестирующийся код или разработка через тестирование (TDD), когда тесты пишутся перед кодом, а некоторые практики DevOps и Extreme Programming применимы только в условиях хорошего покрытия проекта тестами.



Но написать простые тесты, которые будут помогать в написании кода и не срывать дедлайны, задача сложная. Она становится ещё сложнее, если учесть, что нам приходится тестировать вёрстку. Это не два JSON сравнить: здесь не работают простые подходы «вызову функцию, проверю результат» — тестирование UI сложнее. Как эффективно и правильно тестировать верстку и писать для неё тесты, чтобы они были полезны, а дедлайны не горели, расскажет Максим Соснов (crazymax11), ведущий разработчик в СКБ Контур.

Полупроводниковая электроника

Время на прочтение30 мин
Охват и читатели399K

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



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



Иллюстраций: 34, символов: 51 609.

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

Обратная разработка XC2064 — первой микросхемы FPGA

Время на прочтение17 мин
Охват и читатели15K
Программируемая Логическая Интегральная Схема (ПЛИС) может реализовать произвольную логику, что угодно, от микропроцессора до генератора видеосигнала или майнера криптовалюты. ПЛИС состоит из множества логических блоков, каждый из которых обычно состоит из триггера и логической функции, а также из сети проводников, соединяющей логические блоки. Что делает ПЛИС особенной, это то, что она является программируемым аппаратным обеспечением, вы можете сконфигурировать каждый логический блок и соединения между ними. В результате вы можете построить сложную цифровую схему без физического соединения каждого логического элемента и триггера, что обошлось бы вам в стоимость разработки заказной интегральной схемы.


Фотография показывает один из 64 блоков микросхемы XC2064. Слои металлизации убраны, мы видим кремний и поликремниевые транзисторы, лежащие под металлизацией. По ссылке вы можете увидеть фото в большем масштабе: siliconpr0n.
Читать дальше →

Мы опубликовали современные STT модели сравнимые по качеству с Google

Время на прочтение2 мин
Охват и читатели12K


Мы наконец опубликовали наш набор высококачественных пре-тренированных моделей для распознавания речи (т.е. сравнимых по качеству с премиум-моделями Google) для следующих языков:


  • Английский;
  • Немецкий;
  • Испанский;

Вы можете найти наши модели в нашем репозитории вместе с примерами и метриками качества и скорости. Мы также постарались сделать начало работы с нашими моделями как можно более простым — выложили примеры на Collab и чекпойнты для PyTorch, ONNX и TensorFlow. Модели также можно загружать через TorchHub.


PyTorch ONNX TensorFlow Качество Colab
Английский (en_v1) ✓ ✓ ✓ ссылка Открыть в Colab
Немецкий (de_v1) ✓ ✓ ✓ ссылка Открыть в Colab
Испанский (es_v1) ✓ ✓ ✓ ссылка Открыть в Colab
Читать дальше →

Проект Natasha. Набор качественных открытых инструментов для обработки естественного русского языка (NLP)

Время на прочтение34 мин
Охват и читатели128K
Два года назад я писал на Хабр статью про Yargy-парсер и библиотеку Natasha, рассказывал про решение задачи NER для русского языка, построенное на правилах. Проект хорошо приняли. Yargy-парсер заменил яндексовый Томита-парсер в крупных проектах внутри Сбера, Интерфакса и РИА Новостей. Библиотека Natasha сейчас встроена в образовательные программы ВШЭ, МФТИ и МГУ.

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

Для новостных статей качество на всех задачах сравнимо или превосходит существующие решения. Например с задачей NER Natasha справляется на 1 процентный пункт хуже, чем Deeppavlov BERT NER (F1 PER 0.97, LOC 0.91, ORG 0.85), модель весит в 75 раз меньше (27МБ), работает на CPU в 2 раза быстрее (25 статей/сек), чем BERT NER на GPU.

В проекте 9 репозиториев, библиотека Natasha объединяет их под одним интерфейсом. В статье поговорим про новые инструменты, сравним их с существующими решениями: Deeppavlov, SpaCy, UDPipe.

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

Время на прочтение18 мин
Охват и читатели114K
Это будет длиннопост. Я давно хотел написать этот обзор, но sim0nsays меня опередил, и я решил выждать момент, например как появятся результаты ImageNet’а. Вот момент настал, но имаджнет не преподнес никаких сюрпризов, кроме того, что на первом месте по классификации находятся китайские эфэсбэшники. Их модель в лучших традициях кэгла является ансамблем нескольких моделей (Inception, ResNet, Inception ResNet) и обгоняет победителей прошлого всего на полпроцента (кстати, публикации еще нет, и есть мизерный шанс, что там реально что-то новое). Кстати, как видите из результатов имаджнета, что-то пошло не так с добавлением слоев, о чем свидетельствует рост в ширину архитектуры итоговой модели. Может, из нейросетей уже выжали все что можно? Или NVidia слишком задрала цены на GPU и тем самым тормозит развитие ИИ? Зима близко? В общем, на эти вопросы я тут не отвечу. Зато под катом вас ждет много картинок, слоев и танцев с бубном. Подразумевается, что вы уже знакомы с алгоритмом обратного распространения ошибки и понимаете, как работают основные строительные блоки сверточных нейронных сетей: свертки и пулинг.

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

Герундий в английском языке: просто о сложном

Время на прочтение5 мин
Охват и читатели99K
В грамматике английского языка есть много нюансов, которых просто не существует в русском. И из-за этого многие русскоговорящие студенты путаются в грамматике.

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

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


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

Следим за качественными цифровыми релизами фильмов без суеты

Время на прочтение8 мин
Охват и читатели98K


В большинстве случаев качественные нелегальные раздачи какого-то фильма начинают появляться только после цифрового релиза (не путайте цифровые релизы с премьерами в кинотеатрах), т.е. в VOD-сервисах или на Blu-ray. Под качественными подразумеваются BDRip 1080p, BDRemux и UHD BDRemux, самый минимум — это WEB-DL 1080p (чаще всего из iTunes), с русскоязычными звуковыми дорожками от лицензионного издания Blu-ray или из iTunes. А до этого с раздачами фильма творится чехарда с комбинацией мха и опилок, которая может ввести в заблуждение зрителя, желающего смотреть новинки с хорошим качеством.
Читать дальше →

Оценка сроков на разработку и тестирование задачи (не нужна)

Время на прочтение5 мин
Охват и читатели66K

Я в тестировании 12 лет, работал в Naumen и Яндексе. Сейчас руковожу отделом тестирования из 150 человек в Контуре и продолжаю работать тестировщиком в одной из команд.


После полугодовых performance review менеджеры из разных команд рассказали, какие цели поставили своим тестировщикам. У каждого пятого была такая: «Научиться оценивать сроки на тестирование задач». Часто такой «оценки сроков» хотят не только от тестировщиков, но и от разработчиков.



Оценка сроков в 95 % случаев. Спасибо, xkcd.


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

Сейчас объясню, как это работает.

Горькая правда

Информация

В рейтинге
Не участвует
Откуда
Пенза, Пензенская обл., Россия
Зарегистрирован
Активность