Как стать автором
Обновить
0
0

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

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

Типографика фильма «Чужой»

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

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

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

Начальные титры «Чужого» — настоящий шедевр типографики. Можно посмотреть их целиком на сайте Art Of The Title. Если вкратце, их смысл таков: медленное, постепенное появление частей букв модифицированного шрифта Helvetica Black в течение 90 секунд раскрывает основную тему фильма.
Читать дальше →
Всего голосов 101: ↑100 и ↓1+99
Комментарии51

Умный дом xiaomi правильнее, чем home assistant, но можно еще правильнее

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

В предыдущих сериях я:


  1. Накупил устройств от Xiaomi для умного дома и посредством паяльника заставил их работать в увлекательной манере — без родных серверов через home assistant (ссылка на пост)
  2. Завернул web interface от home assistant в electron (ссылка на пост) с поддержкой нотификаций, менюшек, точбара итд (код тут)
  3. Разобрал протокол miio со стороны рассылки сообщений (ссылка на пост) и реализовал поддержку всяческих кнопок в xiaomi_miio.

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

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

В подходе к математике столетней давности найдены новые ключи к разгадке природы времени

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

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



Если числа нельзя записывать бесконечными последовательностями цифр, то и будущее не предопределено

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

К примеру, в теории относительности Эйнштейна время переплетено с тремя измерениями пространства, и формирует гибкий четырёхмерный пространственно-временной континуум – "блок-вселенную", охватывающую прошлое, настоящее и будущее. Уравнения Эйнштейна описывают всё в блок-вселенной, как предрешённое с самого начала; изначальные условия космоса определяют, что будет дальше, и никаких сюрпризов не происходит – они только кажутся сюрпризами. «Для нас, верящих в физику, — писал Эйнштейн в 1955, за несколько недель до смерти, — различие между прошлым, настоящим и будущим является лишь упорной и настойчивой иллюзией».
Читать дальше →
Всего голосов 102: ↑91 и ↓11+80
Комментарии430

Платформа ARM и брокер MQTT, как современная основа решений для Интернета вещей

Время на прочтение11 мин
Количество просмотров39K
Протокол MQTT, на текущее время, завоевал свою популярность и стал стандартом де факто в проектах, направленных на создание решений для Интернета вещей (IoT). Конечно, Интернет вещей – это определенная абстракция или, правильнее, концепция построения распределенных сетей устройств или машин. При этом, частные задачи взаимодействия машин Machine-to-Machine (M2M), уже сегодня эффективно решаются, включая и уровень подключения этих систем к Интернет, как для создания промышленных систем автоматики, так, например, и для построения систем «умного дома». Очевидно, что для критически важных систем требуется наличие локального арбитра или брокера и устройств, позволяющих отработать решение ситуации не зависимо от качества Интернет-подключения, а также в случае полного разрыва связи.

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


ClusterHAT review: Raspberry Pi cluster computer kit. Photo: MagPi magazine
Всего голосов 20: ↑18 и ↓2+16
Комментарии11

Современный PHP без фреймворков

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


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

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

Поиск горнолыжных трасс из космоса

Время на прочтение4 мин
Количество просмотров5.1K
Если вы любите кататься на горных лыжах или сноуборде по некатанным склонам, или же вам просто надоели скучные выглаженные склоны Сорочан и Волена с их безумными ценами на подъемники – то эта статья для вас.

image

В феврале 2000 года шатл Endeavour 11 дней снимал топологию земли с помощью Spaceborne Imaging Radar-C/X-band Synthetic Aperture Radar. См. подробности тут

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

Полный массив данных имеет огромный размер и оперировать с ним в рамках ПК довольно проблематично. К счастью на сайте проекта Consortium for Spatial Information можно скачать топологический файл для интересующей вас области.

Данные доступны в формате ESRI GRID(ARC ASCII), которые представляют собой простую матрицу высот. Каждая ячейка матрицы имеет одинаковую широту и долготу. Файл состоит из метаинформации и матрицы высот в 6001 строк и 6001 столбцов.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии5

Объяснение блокчейна для веб-разработчиков

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

Предисловие переводчика


Предлагаю читателям Хабрахабра перевод статьи «The Blockchain Explained to Web Developers, Part 1: The Theory» за авторством Francois Zaninotto. Эту статью я нашел в блоге компании Marmelab. Статья представляет собой отличное введение в технологию блокчейн «с нуля», но может оказаться интересной и для тех, кто уже «в теме». Она касается не только того, как работает блокчейн, но и перспектив его развития, а также с чего начать, если вы хотите создать свой проект, использующий блокчейн.

Объяснение блокчейна для веб-разработчиков, Часть первая: Теория


Блокчейн – это новая популярная технология. Даже если вы не слышали о ней, вы, вероятнее всего, знаете о Bitcoin. Блокчейн — это одна из фундаментальных технологий на которых основан Bitcoin. Эксперты говорят, что блокчейн вызовет революцию схожую с той, которую некогда вызвал Интернет. Но что это на самом деле и как его можно использовать для создания приложений? Эта статья является первой в серии из трех, рассказывающей о феномене Блокчейна. Мы обсудим теорию, покажем фактический код и поделимся своим опытом, основанным на реальном проекте.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии50

Настройка окружения SELinux на примере LAMP-сервера

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

Это третья статья из цикла


И сегодня она попала в поток «Администрирование». Сегодня мы не будем писать модули или настраивать RBAC, а пойдем по пути наименьшего сопротивления и просто захарденим обычный LAMP-сервер при помощи готовой политики, включив необходимые настройки.

Если кто забыл, за аббривиатурой LAMP скрывается Linux, Apache, Mysql, PHP, т.е. это большая часть всех VDS, которые покупают люди для хранения своих личных блогов. Надеюсь, что этот поможет всем им стать немного безопаснее :)
Читать дальше →
Всего голосов 36: ↑35 и ↓1+34
Комментарии10

Что такое grep и с чем его едят

Время на прочтение6 мин
Количество просмотров657K
Эта заметка навеяна мелькавшими последнее время на хабре постами двух тематик — «интересные команды unix» и «как я подбирал программиста». И описываемые там команды, конечно, местами интересные, но редко практически полезные, а выясняется, что реально полезным инструментарием мы пользоваться и не умеем.
Небольшое лирическое отступление:
Года три назад меня попросили провести собеседование с претендентами на должность unix-сисадмина. На двух крупнейших на тот момент фриланс-биржах на вакансию откликнулись восемь претендентов, двое из которых входили в ТОП-5 рейтинга этих бирж. Я никогда не требую от админов знания наизусть конфигов и считаю, что нужный софт всегда освоится, если есть желание читать, логика в действиях и умение правильно пользоваться инструментарием системы. Посему для начала претендентам были даны две задачки, примерно такого плана:
— поместить задание в крон, которое будет выполняться в каждый чётный час и в 3 часа;
— распечатать из файла /var/run/dmesg.boot информацию о процессоре.

К моему удивлению никто из претендентов с обоими вопросами не справился. Двое, в принципе, не знали о существовании grep.

image

Поэтому… Лето… Пятница… Перед шашлыками немного поговорим о grep.
Читать дальше →
Всего голосов 188: ↑174 и ↓14+160
Комментарии144

Как получаются дети [18+]

Время на прочтение5 мин
Количество просмотров92K
Каждый по-своему пытается попасть в будущее: люди отправляют послания в бутылке, замораживают тела, пишут книги, сажают деревья и строят дома… Но самый простой способ передать «частичку себя» сквозь время — создать ребенка с помощью методов полового размножения (впоследствии также воспитать его в духе традиционных ценностей и позаботиться о том, чтобы появились внуки и генеалогическое древо продолжало давать плоды). Что именно передает человек своему потомку и как это происходит — в новом материале Genotek.

image
Читать дальше →
Всего голосов 51: ↑43 и ↓8+35
Комментарии104

Bitcoin in a nutshell — Blockchain

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

Blockchain — это технология, на базе которой построен Bitcoin. И если пару лет назад вся слава доставлась криптовалюте, то сегодня все чаще можно слышать смелые фразы вроде: "Forget Bitcoin, Long Live Blockchain". Активно развиваются платформы вроде Ethereum, IPFS или Overstock, которые рассматривают блокчейн не как инструмент для создания еще одной платежной системы, а как совершенно обособленную технологию, сравнимую по своей инновационности разве что с Интернетом.


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


meme

Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Комментарии2

Горизонтальное масштабирование. Что, зачем, когда и как?

Время на прочтение17 мин
Количество просмотров118K
Александр Макаров

Александр Макаров ( SamDark )


Здравствуйте! Я Александр Макаров, и вы можете меня знать по фреймворку «Yii» — я один из его разработчиков. У меня также есть full-time работа — и это уже не стартап — Stay.com, который занимается путешествиями.

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

Что такое масштабирование, вообще? Это возможность увеличить производительность проекта за минимальное время путем добавления ресурсов.

Обычно масштабирование подразумевает не переписывание кода, а либо добавление серверов, либо наращивание ресурсов существующего. По этому типу выделяют вертикальное и горизонтальное масштабирование.
Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии17

Распознавание чеков в Google Docs с помощью ABBYY OCR SDK

Время на прочтение3 мин
Количество просмотров23K
В северном полушарии нынче зима, а это значит что пора на лыжи! Мы с друзьями поддались этому течению и приступили к подготовке нашего совместного зимнего отдыха. Детали всего процесса планирования раскрывать не буду, скажу лишь только, что мне выпала ответственная роль сбора магазинных чеков наших совместных трат.
Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии45

Настройка окружения для PHP разработчиков

Время на прочтение9 мин
Количество просмотров45K
В данной статье мы рассмотрим настройку окружения для PHP разработчиков с использованием Vagrant, Docker, Xdebug, PHPUnit, и интеграцию с IDE PHPStorm.

+

Требования


  • Окружение должно развертываться на Windows, MacOS, Linux
  • Установка должна быть максимально простой
  • Быстрая работа с файловой системой
  • Интеграция с IDE PHPStorm
  • Несколько версии PHP интерпретаторов (5.6, 7.0)

Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии62

Темная сторона protobuf

Время на прочтение7 мин
Количество просмотров90K
В среде разработчиков часто бытует мнение, что протокол сериализации protobuf и его реализация — это особая, выдающаяся технология, способная решить все реальные и потенциальные проблемы с производительность одним фактом своего применения в проекте. Возможно на такое восприятие влияет простота применения этой технологии и авторитет самой компании Google.

К сожалению, на одном из проектов мне пришлось вплотную столкнуться с некоторыми особенностями, которые никак не упоминаются в рекламной документации, однако сильно влияют на технические характеристики проекта.
Читать дальше →
Всего голосов 29: ↑25 и ↓4+21
Комментарии52

Docker. Зачем и как

Время на прочтение6 мин
Количество просмотров501K
Есть множество прекрасных публикаций для тех, кто уже пользуется docker-ом. Есть хорошие статьи для тех, кто хочет этому научиться. Я пишу для тех, кто не только не знает, что такое docker, но и не уверен стоит ли ему это знать.

Я сознательно опускаю некоторые технические подробности, а кое где допускаю упрощения. Если вы увидите, что docker – то, что вам нужно, вы легко найдете более полную и точную информацию в других статьях.
Читать дальше
Всего голосов 62: ↑60 и ↓2+58
Комментарии159

Организация TEDx-ивента

Время на прочтение4 мин
Количество просмотров7.8K
Привет, Мегамозг!

Меня зовут Иван и вместе с командой я занимаюсь организацией конференции TEDxHSESaint-Petersburg, которая будет проведена в Высшей Школе Экономики в Санкт-Петербурге 23 апреля 2016 года.

На «Мегамозге» не раз публиковались различные подборки TED-выступлений и другие материалы, но для тех, кто не знаком с форматом конференции, пару слов о ней.

TED (Technology, Education, Design) — некоммерческая организация, ежегодно проводящая конференцию, на которой выступают выдающиеся люди планеты (Билл Гейтс, Билл Клинтон, Сергей Брин и многие другие) с целью распространения идей и обсуждения социально значимых проблем.

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

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


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

ДНК, новые технологии и геном человека: Биоинформатика в Университете ИТМО

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


Биоинформатика – перспективная сфера науки и стремительно развивающаяся индустрия. Применение информационных технологий в биологических исследованиях сегодня позволяет тестировать лекарственные препараты в виртуальной среде и расшифровывать последовательности ДНК за считанные часы. В этом материале мы расскажем о биоинформатике и о том, какие разработки ведутся в этой сфере в Университете ИТМО.
Читать дальше →
Всего голосов 25: ↑24 и ↓1+23
Комментарии4

Несколько полезных приемов для разработки на Yii 2

Время на прочтение17 мин
Количество просмотров57K
Собрал несколько классов и сниппетов из серии «tips & tricks», которые могут оказаться кому-нибудь полезными.
Содержание:
Несколько атрибутов в одной колонке грида
Исправление навигации для активных пунктов меню
Маппинг таблиц на другие названия
Почему TimestampBehavior обновляет свойство updated_at, если ничего не изменено
Bootstrap DateTimePicker — 2 разных формата для показа в интерфейсе и для отправки значения на сервер
Учет временной зоны пользователя для полей с DateTimePicker
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии6

Как работать «в потоке»? Нужны всего 3 ресурса

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

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

Читать дальше →
Всего голосов 120: ↑110 и ↓10+100
Комментарии110

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность