Pull to refresh
27
0
Валерий Северин @Selmaril

Разработка ПО

Send message

Нейробиологические методы, и крутые штуки, которые можно делать с их помощью: часть 1

Reading time7 min
Views11K
Нейробиологические методы подобны невоспетым героям научной журналистики. Периодически СМИ озаряются словосочетаниями вроде «управляемые мозгом машины» и «чтение мыслей» («ученые, наконец, научились читать ваши ГРЯЗНЫЕ МЫСЛИШКИ!!!11»). Но как это делается? И раз уж мы заговорили об этом, какими методами достигается реализация таких футуристических проектов, как управление виртуальной реальностью при помощи глаз или определение того, присутствовал ли подозреваемый на месте преступления? Вопросы, одни вопросы. Ответы – в этом посте.

Отслеживание движений глаз и виртуальная реальность


По определению, отслеживание движений глаз (ОДГ) измеряет активность ваших глаз. Когда и как часто вы моргаете? Отчего сужаются зрачки? Остаётся ли ваш взгляд дольше на её шикарной груди или на прекрасных глазах? Отвечая на подобные вопросы, отслеживание движений глаз позволяет выяснить, сконцентрирован ли человек, или расслаблен и устал, удобен ли для пользователей ваш веб-сайт, есть ли у пациента аутизм – эта технология применима в различных областях, количество которых продолжает увеличиваться.
Total votes 17: ↑15 and ↓2+13
Comments14

Тепловизор на FLIR Lepton своими руками

Reading time6 min
Views80K


Наконец-то мы дожили до тех времен, когда тепловизионная техника, во-первых, стала доступна не только военным и шпионам, а во-вторых, миниатюризировалась до размеров карманного устройства. И более того, появились модули для сборки собственных DIY-тепловизоров. Но об этом позже.
Сначала немного теории
Total votes 51: ↑48 and ↓3+45
Comments75

Создаем игру для WebGL с помощью Unity 5 и JavaScript

Reading time10 min
Views52K


Unity – это кроссплатформенный игровой движок, позволяющий создавать игры для ПК, консолей, мобильный устройств и веб-сайтов. Последняя версия движка (Unity 5) имеет возможность экспорта в WebGL, благодаря чему разработчики могут без труда публиковать свои игры в вебе. Как следует из названия, данный экспортер использует WebGL – JavaScript API для рендеринга интерактивной компьютерной 3D графики, а также asm.js – подмножество JavaScript, которое было разработано компанией Mozilla и преподносилось как «язык ассемблера для веба». Больше информации о Asm.js и WebGL для Unity и Unreal Engine доступно здесь.

В этом уроке я хочу показать, как настроить работу с Unity. А также продемонстрирую, как создать простую игру на Unity с помощью JavaScript и выполнить ее экспорт для веба.
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments28

Регулятор для паяльника на Atmega8

Reading time8 min
Views40K
Радиолюбительство — мое хобби, поэтому постоянного рабочего места нет. Обычно приходится каждый раз доставать все причендалы из шкафа, раскладывать на столе или на полу, затем каждый раз убирать. Розетка при этом в зоне работы обычно одна, сделать удлинтель все время лень, да его тоже нужно где-то хранить. А с одной розеткой напрягает проведя тест устройства питающегося от розетки, потом снова ждать минут 5 пока разогреется паяльник. Почитав интернет решил что мне нужна паяльная станция, но тратить 5-10 т.р. ради увлечения пока оказался не готов. Решение — самодельная пальная станция.
Кому интересно что получилось — прошу под кат.

Далее
Total votes 30: ↑27 and ↓3+24
Comments66

NPM и left-pad: мы разучились программировать?

Reading time4 min
Views110K
Автор — Дэвид Хейни (David Haney), ведущий инженер-программист Stack Overflow

Итак, разработчики, время для серьёзного разговора. Вы уже наверное в курсе, что на этой неделе React, Babel и куча других популярных пакетов на NPM сломались. Причина довольно удивительная.

Простой пакет NPM под названием left-pad был установлен как зависимость в React, Babel и других пакетах. Модуль, который на момент написания этого поста, имеет 11 звёзд на Github (сейчас 323 — прим.пер). Весь пакет состоит из 11 простых строчек, которые реализуют примитивную функцию вставки пробелов в левой части строк. Если какие-то из ссылок когда-нибудь умрут, вот его код:

module.exports = leftpad;
function leftpad (str, len, ch) {
  str = String(str);
  var i = -1;
  if (!ch && ch !== 0) ch = ' ';
  len = len - str.length;
  while (++i < len) {
    str = ch + str;
  }
  return str;
}
Что меня беспокоит, так это такое большое количество пакетов, где установлена зависимость от простой функции набивки строки пробелами, вместо того чтобы потратить 2 минуты и написать эту базовую функцию самому.
Читать дальше →
Total votes 148: ↑127 and ↓21+106
Comments273

2000 часов в одиночестве, или как был сделан RSS reader / Я робокоп

Reading time14 min
Views6.6K
I. Am. Robocop.Всем привет,

Собираюсь поделиться с вами технической стороной того, как я за 16 недель сделал новый вебовый rss ридер, и чуть не сошел с ума.
Отходя от долгой предыстории, будем считать, что все началось в феврале этого года, когда мы с Дэвидом (dmiloshev, UI-дизайнер) решили сделать прототип нашего детища вдвоем.
«В одиночестве» — потому, что не было никаких скрамов, совещаний, «коллективного разума», а всю техническую часть, довелось делать самому.

Если бы меня попросили описать всю статью в одном предложении, то получилось бы:
No-SQL, mongodb, node.js, фак мой мозг, Evented I/O, очереди, выводы, git, nginx, memcached, Google Reader, Atom, TTL, PHP, ZF, jQuery, выводы.
Читать дальше →
Total votes 258: ↑231 and ↓27+204
Comments173

Эффективный Django. Часть 1

Reading time14 min
Views298K

Представляю вам перевод статей о Django с сайта effectivedjango.com. Наткнулся я на этот сайт во время изучения данного фреймворка. Информация размещенная на этом ресурсе показалась мне полезной, но так как нигде не нашел перевода на русский, решил сделать сие доброе дело сам. Этот цикл статей, как мне думается, будет полезен веб-разработчикам, которые делают только первые шаги в изучении Django.
Приступить к чтению
Total votes 45: ↑40 and ↓5+35
Comments15

Отпуск. Где? Когда? R

Reading time4 min
Views13K
imageВ то время как за окном температура на пути к очередным рекордам, интересно посмотреть, а какие вообще бывали температуры в произвольный интервал времени, за любые года за последние несколько десятилетий в 30 000 точках по всему миру. А может не прогадать с днями отпуска, и взять их в те дни, когда есть какое-то «статистическое преимущество» в выбранном местоположении по теплой погоде, а может быть по холодной, оценив его визуально на любой из трех типов диаграмм. Ну или можно просто повращать глобус, визуально оценить разнообразие температур и «как прекрасен этот мир».
Описание далее
Total votes 9: ↑9 and ↓0+9
Comments8

Погружение в ASP.NET 5 Runtime

Reading time16 min
Views28K

Вступление от переводчика


Данная статья является переводом ASP.NET 5 — A Deep Dive into the ASP.NET 5 Runtime — введения в архитектуру DNX и построенного на нем ASP.NET 5. Так как оригинальная статья была написана в марте 2015 года, во время, когда ASP.NET 5 был еще в стадии активной разработки (примерно beta 3), многое в ней устарело. Поэтому при переводе вся информация была актуализирована до текущей версии ASP.NET 5 (RC1), также были добавлены ссылки на связанные ресурсы (в основном на docs.asp.net) и исходный код на GitHub (смотрите только в случаях, если вам интересна реализация). Приятного погружения!

.NET Runtime Environment (DNX)


ASP.NET 5 базируется на гибком, кроссплатформенном runtime, который может работать с разными .NET CLR (.NET Core CLR, Mono CLR, .NET Framework CLR). Вы можете запустить ASP.NET 5 используя полный .NET Framework или можете запустить используя новый .NET Core docs, который позволяет вам просто копировать все необходимые библиотеки вместе с приложением в существующее окружение, без изменения чего-либо еще на вашей машине. Используя .NET Core вы также можете запустить ASP.NET 5 кроссплатформенно на Linux docs и Mac OS docs.

Инфраструктура позволяющая запускать и исполнять приложения ASP.NET 5 называется .NET Runtime Environment docs или кратко DNX. DNX предоставляет все что необходимо для работы .NET приложений: host process, CLR hosting логику, обнаружение управляемой Entry Point и т.д.

Логически архитектура DNX имеет пять слоев. Я опишу каждый из этих слоев вместе с их обязанностями.
Изображение взято из статьи DNX-structure wiki
Архитектура ASP.NET 5 и DNX

Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments14

Книга Стивена Вольфрама «Элементарное введение в язык Wolfram Language»

Reading time15 min
Views21K

Перевод поста Stephen Wolfram "I Wrote a Book—To Teach the Wolfram Language".
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации

Книга «Элементарное введение в язык Wolfram Language» доступна для вас в печатной форме, бесплатно в Интернете, а также в других формах.



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

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

Результат — книга Элементарное введение в язык Wolfram Language, вышедшая сегодня в печать. Она также свободно доступна в Интернете, и в других формах.


Читать дальше →
Total votes 24: ↑20 and ↓4+16
Comments6

Солнечная энергетика: Чемодан энергии для туриста

Reading time6 min
Views23K
Корни моей любви к туризму уходят в далекое прошлое, когда мне исполнился первый год жизни — тогда меня первый раз родители взяли в поход в горы. Годы шли, география путешествий множилась, а походный набор оставался примерно одинаковым, за исключением того, что техника обновлялась: палатки стали не брезентовые, а синтетические (гораздо легче и компактнее), спальники стали меньше и теплее, а деревья больше… И только одно, источник света, был без изменений — фонарик с галогеновой лампой. Садились батарейки быстро, а свечи в палатке использовать категорически нельзя, так как палатки горят особенно быстро. Только с появлением достаточно мощных светодиодов проблема начала решаться.
Я вырос, а любовь к туризму осталась — я успел поспать в палатке в Булонском лесу, эта же палатка прикрывала от ветра на Лазурном берегу средиземноморского побережья, укутывался в спальник в Карелии, спал на пенке на южном берегу Крыма. И везде, так или иначе, возникал вопрос организации электроснабжения: зарядить фотоаппарат и камеру, обеспечить питанием ноутбук для продолжения работы, включить музыку (хотя я и не любитель музыки на природе), зарядить шуруповерт (приходилось работать в пути), ну и обеспечить лагерь ночным освещением. В общем, источник энергии нужен всегда.
Я давно увлекаюсь автономными источниками энергии и солнечной энергетикой, о чем даже написал немало публикаций, а в этом году в мои руки попал Мобильный Источник Энергии (МИЭ Travel). Но поскольку это был тестовый экземпляр, было бы неверно писать о нем сразу, но теперь я получил серийный образец и с радостью поделюсь опытом. Это будет особенно интересно в преддверии Нового Года (для меня это оказался отличный подарок) и очень актуально в связи с энергетическими событиями на территории полуострова Крым.


Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments30

Практическое применение преобразования Фурье для анализа сигналов. Введение для начинающих

Reading time9 min
Views278K

1. Преобразование Фурье и спектр сигнала


Во многих случаях задача получения (вычисления) спектра сигнала выглядит следующим образом. Имеется АЦП, который с частотой дискретизации Fd преобразует непрерывный сигнал, поступающий на его вход в течение времени Т, в цифровые отсчеты — N штук. Далее массив отсчетов подается в некую программку, которая выдает N/2 каких-то числовых значений (программист, который утянул из инета написал программку, уверяет, что она делает преобразование Фурье).

Чтобы проверить, правильно ли работает программа, сформируем массив отсчетов как сумму двух синусоид sin(10*2*pi*x)+0,5*sin(5*2*pi*x) и подсунем программке. Программа нарисовала следующее:

image
рис.1 График временной функции сигнала

image
рис.2 График спектра сигнала

На графике спектра имеется две палки (гармоники) 5 Гц с амплитудой 0.5 В и 10 Гц — с амплитудой 1 В, все как в формуле исходного сигнала. Все отлично, программист молодец! Программа работает правильно.

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

Итого, наш реальный измеренный сигнал, длительностью 5 сек, оцифрованный АЦП, то есть представленный дискретными отсчетами, имеет дискретный непериодический спектр.
С математической точки зрения — сколько ошибок в этой фразе?

Теперь начальство решило мы решили, что 5 секунд — это слишком долго, давай измерять сигнал за 0.5 сек.
Читать дальше →
Total votes 51: ↑46 and ↓5+41
Comments77

Как без мата создать игру на Unity3D

Reading time9 min
Views128K

Пролог


В начале 2015 года я решил написать свою первую игру. В качестве движка я, не долго думая, выбрал Unity3D, так как у меня был опыт в C# и JavaScript, и знакомые, которые могли помочь. Я вспомнил одну мини-игру, в которую я играл в детстве, и решил сделать нечто похожее. Установил себе Unity и поставил себе цель сделать рабочий прототип за пару недель, параллельно изучая движок.

Я начал реализовывать эту идею в свое свободное время. Через неделю был рабочий прототип, через полтора месяца у меня уже был работоспособная версия игры со всей прописанной логикой. Я удовлетворился этим и на время отложил игру на полочку. В июне я снова взялся за нее, с мыслями, что мне понадобится максимум месяц на то, чтобы ее доделать. Ох, как же я был не прав…
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments25

Почему SMS ограничены именно 160 символами, а сообщения в Twitter — 140 символами?

Reading time5 min
Views48K

Документ из архива Твиттер, около 2000 г., рабочее название Твиттер — «Stat.us». Credit: Jack Dorsey

Шел 1985 год. Фридхельм Хиллебранд напряженно работал, сидя за столом в пустой комнате своего дома в Бонне (Германия), и непрерывно печатал на пишущей машинке случайные фразы: новости, просьбы, вопросы… все вперемешку. Закончив печать очередную страницу, Хиллебранд подсчитывал количество букв, цифр, знаков пунктуации и пробелов в каждом напечатанном на странице предложении, и тут же принимался за следующую страницу.

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

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

«Полторы сотни символов»… Перед тем экспериментом с пишущей машинкой у Хиллебранда был спор с друзьями относительно достаточности такого ограничения для большинства пользователей мобильных телефонов.

«Мои друзья уверяли меня в один голос, что такое ограничение слишком малó для массового рынка»,- вспоминает Хиллебранд, и добавляет: «но я был более оптимистичен».

Читать дальше →
Total votes 44: ↑36 and ↓8+28
Comments45

Подпольный рынок кардеров. Перевод книги «KingPIN». Глава 7. «Max Vision»

Reading time9 min
Views20K
Кевин Поулсен, редактор журнала WIRED, а в детстве blackhat хакер Dark Dante, написал книгу про «одного своего знакомого».

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

Начало и план перевода тут: «Шкворень: школьники переводят книгу про хакеров».

Логика выбора книги для работы со школьниками у меня следующая:
  • книг про хакеров на русском языке мало (полторы)
  • книг про кардинг на русском нет вообще (UPD нашлась одна)
  • Кевин Поулсен — редактор WIRED, не глупый товарищ, авторитетный
  • приобщить молодежь к переводу и творчеству на Хабре и получить обратную связь от старших
  • работать в спайке школьники-студенты-специалисты очень эффективно для обучения и показывает значимость работы
  • текст не сильно хардкорный и доступен широкому кругу, но затрагивает вопросы информационной безопасности, уязвимости платежных систем, структуру кардингового подполья, базовые понятия инфраструктуры интернет
  • книга иллюстрирует, что «кормиться» на подпольных форумах — плохо заканчивается

Перевод книги окончен. Это последний «хвост». Теперь главы будут идти по порядку.

Кто хочет помочь с переводами крутых эссе Пола Грэма — пишите в личку magisterludi.

Глава 7. «Max Vision»

(за помощь с переводом спасибо Валентину Аникееву)

Когда сотрудничество с правительством прекратилось, Макс, несмотря на гнёт федерального расследования, принялся нарабатывать себе репутацию «белого» хакера.

Раскрытие уязвимости в BIND и последовавший за этим успех сайта whitehats.com стали хорошим подспорьем для Макса. Теперь он позиционировал себя в качестве консультанта по компьютерной безопасности и создал сайт, где рекламировал свои услуги. Нанять Макса можно было за сто долларов в час, а некоммерческим организациям он помогал бесплатно. Самым весомым его аргументом было стопроцентное проникновение в исследуемую сеть – осечек не было ни разу.

Это было замечательное время для «белых» хакеров: бунтарский дух, который двигал open-source сообщество, проник в сферу информационной безопасности. Выпускники колледжа и отчисленные студенты, бывшие и нынешние «чёрные» хакеры разрушали устои компьютерной безопасности, которые за десятки лет стали привычным делом.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments0

Тысяча и один блистер. Поиск лекарств с завышенной ценой

Reading time3 min
Views41K
Недавно Минздрав выложил таблицу с предельными ценами на жизненно необходимые лекарства, я неслабо заморочился и проверил как часто эти пределы в Москве превышаются.


Читать дальше →
Total votes 98: ↑94 and ↓4+90
Comments174

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №177 (14 — 20 сентября 2015)

Reading time7 min
Views33K
Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости


Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments0

Интересные примеры клеточных автоматов

Reading time4 min
Views29K
Интересные примеры клеточных автоматов.

На хабре много статей по клеточным автоматам (http://habrahabr.ru/post/168291/, http://habrahabr.ru/post/227003/), особенно по игре “Жизнь” (http://habrahabr.ru/post/67790/, http://habrahabr.ru/post/154509/, http://habrahabr.ru/post/237629/). Я хочу рассказать что-то новенькое — про другие клеточные автоматы, привести неожиданные и интересные, по моему мнению, примеры. Мы посмотрим на структуру, которая постепенно копирует свою исходную конфигурацию; и на структуру, которая рисует круг.

Осторожно, большие gif-ки
Читать дальше →
Total votes 53: ↑52 and ↓1+51
Comments3

Как я участвовал в конкурсе Сбербанка про предсказание оттока клиентов

Reading time4 min
Views33K
В рамках ICBDA 2015 Сбербанк проводил конкурс про предсказание оттока своих клиентов. Я неслабо заморочился по этому поводу, ничего не выиграл и тем не менее хотел бы описать процесс решения.

Читать дальше →
Total votes 38: ↑36 and ↓2+34
Comments49

Рисоваська, часть 3: Амазоновские веб-сервисы в действии

Reading time10 min
Views36K
В данной статье я расскажу, что же такое Amazon Web Services или сокращенно AWS, для чего это можно использовать, и приведу пошаговую инструкцию, как настроить их у себя с самого начала. В статье основной упор будет сделан на Amazon Elastic Compute Cloud или EC2 и Amazon Simple Storage Service или S3. Amazon CloudFront, являющийся логическим продолжением S3, хорошо рассмотрен в статье mish: Настраиваем CloudFront для работы с S3. С остальными амазоновскими сервисами вы можете познакомиться самостоятельно: Amazon SimpleDB, Amazon Simple Queue Service или SQS, а также другими сервисами Амазона. Данная статья является продолжением первой и второй статей. Итак:

Что такое Amazon Web Services


Это набор удобных сервисов, которые можно использовать как по отдельности, так и вместе. В первую очередь это «облачные вычисления» (анг. Elastic Compute Cloud). Что это значит? Это значит, что вы можете запустить в «облаке» любое кол-во компьютеров нужной вам конфигурации c нужной вам операционной системой всего за пару минут. Это действительно так. Время запуска одного инстанса (instance называется один виртуальный сервер в амазоне) обычно не превышает двух минут. Сразу после запуска инстанс начинает работать, к нему есть root-доступ по SSH или Remote Desktop, если там установлен Windows. Не правда ли, здорово! С момента запуска оплата за инстанс идет по часам. В любой момент вы можете остановить инстанс и деньги за его использование перестанут сниматься. Помимо времени работы инстанса, так же отдельно оплачивается входящий и исходящий трафик.
Читать дальше →
Total votes 101: ↑98 and ↓3+95
Comments51
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity