Как стать автором
Обновить
1
0
Андрей @Clevik

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

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

Вычислительные устройства, которые опередили своё время

Время на прочтение14 мин
Количество просмотров14K

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

От аналоговых и механических вычислений до ранних цифровых снимков другой планеты; от первых мультимедийных средств до изобретения интернета ещё до того, как он стал так называться – история знает много примеров технологий высокого уровня, которые по тем или иным причинам не пользовались популярностью. В этой статье мы расскажем о достижениях вычислительной техники, которые казались невероятными для своего времени. Мы рассмотрим несколько примеров вычислительных устройств до прихода цифровой эпохи, взглянем на опережавшие своё время технологии 20-го века и уделим особое внимание самой безумной в плане технологических экспериментов декаде —80-ым.



Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии7

Математика верстальщику не нужна 2: Матрицы, базовые трансформации, построение 3D и фильтры для картинок

Время на прочтение19 мин
Количество просмотров16K


В прошлый раз мы говорили о графиках и траекториях для покадровых анимаций, а сегодня речь пойдет про матрицы. Мы разберемся с тем, как строятся базовые трансформации в CSS, SVG и WebGL, построим отображение 3D-мира на экране своими руками, попутно проводя параллель с таким инструментом, как Three.js, а также поэкспериментируем с фильтрами для фотографий и разберемся, что же за магия такая лежит в их основе.

Напомню, что в этой серии статей мы знакомимся с разными штуками из области математики, которые пугают верстальщиков, но могут быть полезны при решении рабочих задач. Мы стараемся избежать излишней теоретизации, отдавая предпочтение картинкам и объяснению на пальцах, с акцентом на практическое применение во фронтенде. В связи с этим формулировки местами могут быть не совсем точными с точки зрения математики, или не совсем полными. Цель этой статьи – дать общее представление о том, что бывает, и откуда можно начать в случае чего.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии4

Математика верстальщику не нужна, или Временные функции и траектории для покадровых 2D анимаций на сайтах

Время на прочтение15 мин
Количество просмотров14K


«Математика верстальщику не нужна!», — говорили они. «Арифметики за 2 класс школы хватит!», – говорили они. «Верстальщик – не программист, так что нечего себе голову забивать точными науками!», — чего только не услышишь на просторах интернета на тему нужности тех или иных знаний при разработке сайтов. И на самом деле в большинстве случаев человеку, который делает интерфейсы, и правда хватает умения складывать числа. Что-то более сложное встречается редко и обычно уже есть готовый алгоритм где-то в недрах NPM. Но сайты – понятие растяжимое, и иногда все же нужно включить голову, и разобраться в каком-то вопросе. И один из таких вопросов – это траектории в 2D анимациях.


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


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

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

iOS Responder Chain или Что спрашивают на собеседовании

Время на прочтение4 мин
Количество просмотров50K

image


Какая разница между первым и вторым примером?

За что отвечает таргет?

В каком случае вызывается метод при нажатие кнопки?

TL;DR


При нажатии на кнопку наш метод вызывается в обоих случаях.


Только в первом примере UIKit попытается вызвать метод в назначенном таргете(у нас это ViewController). Будет краш, если этого метода не существует.


Во втором же примере используется iOS Responder Chain, UIKit будет искать самого ближнего UIResponder-a у которого есть данный метод. Краша не будет, если наш метод не найден.


UIViewController, UIView, UIApplication наследуют от UIResponder.

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

Самодельные беспроводные оконные датчики: STM32L051 + RFM69 + Android

Время на прочтение11 мин
Количество просмотров23K
Добрый день, уважаемые хабровчане! Несколько лет назад я купился на красочную рекламу zWave и установил себе оконные датчики, базирующиеся на этом протоколе. К домашнему серверу был подключен USB zWave-Stick, который играл роль контроллера, написан небольшой модуль на Java, который получал данные с этого контроллера, а также написано небольшое приложение для Андроида, которое красиво отображало состояние всех датчиков. Батарейки вставлены, датчики зарегистрированы на контроллере, все заработало. Но через пару месяцев наступило жесточайшее разочарование. Во первых, данные zWave датчики работают по принципу «послать сообщение и, не ожидая подтверждения, заснуть». В моем случае это привело к тому, что сигнал от наиболее дальних от контроллера датчиков просто не доходил до контроллера. Не помогла даже установки дополнительного zWave-повторителя. Во-вторых, они настолько быстро садили батарейку, что примерно через шесть месяцев работать переставали все датчики. Причина в том, что они каждый час просыпались, чтобы сообщить контроллеру свое состояние. Отключить или изменить этот параметр не получилось, так как штатное программное обеспечение это сделать категорически не позволяло. Помучавшись два года с этой сырой, ненадежной и недружественной технологией, я решил что с меня хватит. Но вместо того, чтобы все убрать и выкинуть, мне пришла идея оставить корпуса, но поменять в них электронику. Выбор пал на достаточно простой приемопередатчик RFM69 (433 MHz), на базе которого удалось сделать как плату для датчика, так и контроллер, подключаемый через USB к серверу. Новая система в эксплуатации уже 5 месяцев, надежность близка к 100% (но некоторые сбои таки были), батарейки садиться пока не думают. То есть уже сейчас видно, что все недостатки старой системы на базе zWave устранены, и я хочу поделиться техническими подробностями этой моей поделки, см. картинку.



Кому интересно, прошу под кат.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии77

Каково разрешение человеческого глаза (или сколько мегапикселей мы видим в каждый отдельный момент времени)

Время на прочтение5 мин
Количество просмотров212K
Очень часто фотографы, а иногда и люди из других специальностей, проявляют интерес к собственному зрению.

Вопрос, казалось бы, простой на первый взгляд… можно погуглить, и всё станет ясно. Но практически все статейки в сети дают либо «космические» числа — вроде 400-600 мегапикселей (Мп), либо это и вовсе какие-то убогие рассуждения.

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

Начнём с общей структуры зрительной системы


  1. Сетчатка
  2. Зрительный нерв.
  3. Таламус(ЛКТ).
  4. Зрительная кора.



Сетчатка состоит из трёх типов рецепторов: палочки, колбочки, фоторецепторы(ipRGC).
Читать дальше →
Всего голосов 249: ↑244 и ↓5+239
Комментарии404

Как наладить поиск адреса по координатам (и где взять нужный справочник)

Время на прочтение10 мин
Количество просмотров39K


Весной мы добавили в API DaData.ru фичу «Обратное геокодирование», она же «Адрес по координатам». Название намекает: метод принимает геокоординаты и отдает данные об адресе.

Солидный продукт с той же функциональностью предлагает «Яндекс» — он называется «Геокодер». Но сервис «Яндекса» бесплатен только для открытых некоммерческих проектов. Стандартный же тариф — от 120 000 ₽ в год — подходит не всем.

Мы подумали — если сделать бесплатную или недорогую альтернативу «Геокодеру», разработчики наверняка скажут спасибо. И сделали. В статье расскажу, как устроен «Адрес по координатам»: как мы наладили поиск, собрали справочник и упаковали в готовый метод.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии33

Все, что нужно знать об iOS App Extensions

Время на прочтение7 мин
Количество просмотров20K


App Extensions появились в iOS 8 и сделали систему более гибкой, мощной и доступной для пользователей. Приложения могут отображаться в виде виджета в Центре Уведомлений, предлагать свои фильтры для фотографий в Photos, отображать новую системную клавиатуру и многое другое. При этом сохранилась безопасность пользовательских данных и системы. Об особенностях работы App Extensions и пойдёт речь ниже.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии4

Распознавание автомобильных номеров в деталях

Время на прочтение9 мин
Количество просмотров149K
image
Настало время подробно рассказать, как работает наша реализация алгоритма распознавания номеров: что оказалось удачным решением, что работало весьма скверно. И просто отчитаться перед Хабра-пользователями — ведь вы с помощью Android приложения Recognitor помогли нам набрать приличного размера базу снимков номеров, снятых совершенно непредвзято, без объяснения как снимать, а как нет. А база снимков при разработке алгоритмов распознавания самое важное!
Читать дальше →
Всего голосов 69: ↑69 и ↓0+69
Комментарии40

ГМО. Группе ученых не удалось доказать вред ГМ-пищи. Разбор исследования дилетантом и комментарии специалистов

Время на прочтение13 мин
Количество просмотров70K
image

Я вижу, что сообществу интересна тема генетически модифицированной пищи. Были интересные публикации, которые оказались для меня полезны, но до сих пор здесь не публиковали разбор какого-то конкретного исследования. Я не специалист, не имею специального образования, но интересуюсь темой и постараюсь рассказать об одной нашумевшей работе по исследованию ГМО.
Читать дальше →
Всего голосов 126: ↑117 и ↓9+108
Комментарии313

Микроинтеракции в iOS. Лекция Яндекса

Время на прочтение14 мин
Количество просмотров4.9K
Несколько недель назад в офисе Яндекса прошло специальное мероприятие сообщества CocoaHeads — более масштабное, чем традиционные митапы. Разработчик Антон Сергеев выступил на этой встрече и рассказал о модели микроинтеракций, которой обычно пользуются UX-дизайнеры, а также о том, как применить заложенные в ней идеи на практике. Больше всего внимания Антон уделил анимации.


— Для меня очень важно, что именно мне выпала честь встречать гостей. Я вижу здесь тех, с кем я знаком очень давно, тех, с кем знаком совсем недавно, и тех, с кем еще не знаком. Добро пожаловать на CocoaHeads.
Всего голосов 19: ↑19 и ↓0+19
Комментарии1

Умный дом: новое измерение комфорта и стремление к совершенству. Часть вторая

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


Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии58

Умный дом: новое измерение комфорта и стремление к совершенству. Часть первая

Время на прочтение10 мин
Количество просмотров17K
Эта статья – логическое продолжение поднятой ранее темы мониторинга систем загородного дома. Тому, кто не читал предыдущую статью, некоторые мысли в данной статье могут показаться странными. Напомню: уже в процессе проектирования и выбора базовых компонентов стало понятно, что мониторингом работы систем загородного дома дело не закончится и что нужно делать не просто мониторинг, а фундамент умного дома. Теперь посмотрим, как развивались события. Как и прежде, я не буду приводить полные листинги программ или детальные схемы. Моя задача – показать ход мысли и, возможно, инициировать дискуссию.


Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии32

Мониторинг работы систем загородного дома: первые шаги к умному дому

Время на прочтение12 мин
Количество просмотров20K

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

Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии16

Опыт использования солнечной энергии в московском регионе: за, против и кому это нужно

Время на прочтение7 мин
Количество просмотров43K
Привет, Хабр! Меня зовут Ярослав Медокс, в Сбертехе я занимаюсь технологиями корпоративно-инвестиционного бизнеса. В этой заметке пойдет речь о вполне обычном подмосковном загородном доме, ставшем по прихоти его хозяина полигоном для проверки солнечной энергетики.


Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии257

Оптическая нейросеть

Время на прочтение3 мин
Количество просмотров21K

Обученная многослойная фазовая маска (классификатор рукописных символов). Справа показана физическая модель оптической нейросети D²NN, напечатанная на 3D-принтере: слои 8×8 см с расстоянием 3 см друг между другом

Группа исследователей из Калифорнийского университета в Лос-Анджелесе разработала новый тип нейронной сети, которая в работе использует свет вместо электричества. В журнале Science опубликована статья с описанием идеи, рабочего устройства, его производительности и типов приложений, которые, по мнению авторов, хорошо вычислять в нейросети нового типа.

Полностью оптический фреймворк глубокого обучения Diffractive Deep Neural Network (D²NN), который физически сформирован из множества отражающих или прозрачных поверхностей. Эти поверхности работают сообща, выполняя произвольную функцию, усвоенную в результате обучения. В то время как получение результата и прогнозирование в физической сети организовано полностью оптически, обучающая часть с проектированием структуры отражающих поверхностей рассчитывается на компьютере.
Читать дальше →
Всего голосов 46: ↑45 и ↓1+44
Комментарии33

ITSM-менеджер по счастью: как профессия будущего помогает расширить границы сервис деск

Время на прочтение9 мин
Количество просмотров7.4K

«Что за бред? Разве бывают менеджеры по счастью?» – спросит пессимист, прочитав название статьи. «А ведь идея вполне реальная! В ОАЭ давно настоящий министр счастья работает!» – парирует оптимист.


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


Вопросами оптимизации бизнес-процессов с применением сервисного подхода я активно занимаюсь последние 10 лет. И мне всегда интересно общаться с коллегами на эту тему.


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


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

Blender: 3D-модель микросхемы для подключения в библиотеке KiCad

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

Но есть проблема: профессиональный CAD-редактор стоит не дёшево, а свободно распространяемые не всегда удобны в использовании.

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

Читать дальше →
Всего голосов 54: ↑52 и ↓2+50
Комментарии21

По каким правилам летит самолёт в России

Время на прочтение10 мин
Количество просмотров79K
Чаще всего самолёты летают не абы как, а по определённым, уже созданным маршрутам.


Например, наводятся на радиовышки. Это ориентиры в пространстве. Когда диспетчер говорит воздушному судну, как лететь, он называет определённую вышку, радиостанцию. Там у него поворотная точка. Пилоту так и говорят: «От этой теперь лети к следующей». В итоге самолёт летит ломаной загогулиной — от одного поворотного пункта к другому.

Сделано это для того, чтобы не было сомнений в координатах на разных самолётах с разными приборами.

Современное самолётное оборудование позволяет вместо этой сложной ломаной линии лететь напрямую. То есть диспетчер говорит: «Лети сюда, поворотная точка такая». Не у всех есть настолько современное навигационное оборудование, поэтому радиовышки будут ещё долго использоваться.

Но давайте разбираться дальше, как вообще устроено воздушное пространство, кому и куда можно.
Читать дальше →
Всего голосов 101: ↑101 и ↓0+101
Комментарии119

Как победить рутину, или Готовое приложение в Xcode за пару кликов

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


У каждого опытного разработчика есть набор инструментов, к которым он привык и с которыми ему удобно работать. Это может быть простейшая настройка окружения, утилиты для промежуточных операций (к примеру, помощник по тестированию API Postman), проверенные временем и лично разработчиком библиотеки и сниппеты.

Также у многих разработчиков может быть свой подход к реализации выбранной архитектуры. Поэтому очень полезно иметь в своем арсенале заготовку приложения – общий скелет, к которому останется только добавлять новые модули, экраны и фичи. В этом материале я расскажу, как создать собственный шаблон приложения в Xcode.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии2
1
23 ...

Информация

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