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

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

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

Ловцы молний. Необычные эксперименты с грозой

Время на прочтение7 мин
Количество просмотров167K
Добрый день, уважаемые читатели Хабра.

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

image

Меня всегда вдохновляла красота и мощь молний. Сила тока в разряде молнии достигает 10-300 тысяч ампер, а напряжение — от десятков миллионов до миллиарда вольт. Мощность разряда — от 1 до 1000 ГВт. Вот было бы хорошо «приручить» эту энергию!

Хочу предупредить, не повторяй это дома! Я соблюдаю особую осторожность и хорошо знаю природу электрических явлений. Помни, поражение молнией смертельно.
Читать дальше →

Лучшие плагины для Sublime Text

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

WebInspector


Мощный инструмент для дебаггинга JavaScript, полноценный инспектор кода для Sublime. Фичи: установка брейкпоинтов прямо в редакторе, показ интерактивной консоли с кликабельными объектами, остановка с показом стек трейса и управление шагами дебаггера. Все это работает на ура! А еще есть Fireplay от Mozilla, который позволяет подключаться к Firefox Developer tools и максимально простой дебаггер JSHint.



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

Фоторепортаж из сердца китайского интернет-гиганта Alibaba Group

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


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

По недавно запущенной и пока единственной линии метро я приезжаю куда-то в пригород, ловлю такси и говорю «师傅,到阿里巴巴集团» ([Довезите] до компании Alibaba). Едем еще десять минут, выезжаем на улицу с красноречивым названием ул. Электронной коммерции (网商路) и вдали виднеется футуристическое здание, напоминающее мне почему-то корову. «Это оно», — думаю я, и вот уже у ворот огромного комплекса меня встречает Денис Маккавеев, с которым мы договорились об интервью и путешествии в сердце китайского интернет-гиганта.
Читать дальше →

Как перестать беспокоиться и начать снимать панорамы

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

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

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

Призраки в ROM

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


Старый компьютер иногда хранит совершенно неожиданные секреты. Ребята с сайта NYResistor опубликовали историю, как они героическими усилиями восстановили несколько цифровых фотографий из флэш-памяти доисторического компьютера Macintosh SE, который валялся на обочине дороги в Бруклине. Неизвестных людей на этих снимках они назвали «призраками в ROM».
Читать дальше →

Экстремальная сестра Земли. Прошлое и будущее «Утренней Звезды»

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


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

Ниже под катом мы постараемся разобраться какие космические и геологические процессы предопределили столь большую разницу между Венерой и ее сестрой Землей. А так же, какие действия человечества в будущем могут вернуть «утренней звезде» статус тропического рая.
Читать дальше →

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

Время на прочтение4 мин
Количество просмотров46K
Статья посвящена описанию метода CRF (Conditional Random Fields), являющимся разновидностью метода Марковских случайных полей (Markov random field). Данный метод нашел широкое применение в различных областях ИИ, в частности, его успешно используют в задачах распознавания речи и образов, обработки текстовой информации, а также и в других предметных областях: биоинформатики, компьютерной графики и пр.
Читать дальше →

Новые 5 способов ускорить запросы API Facebook

Время на прочтение4 мин
Количество просмотров19K
Прошлой осенью я публиковал на Хабре пост Пять способов ускорить запросы API Facebook на практике, который оказался неплохим сборником рецептов. За это время Facebook API сильно изменился, став еще лучше. Теперь я редко встречаю задачи, с которыми я бы не смог справиться за один HTTP запрос к API. А все благодаря новым возможностям, о которых я и расскажу сейчас.

image

Вот какие способы были в прошлый раз:
  1. Запрашиваем только необходимые поля
    me?fields=id,name,birthday
  2. Запрашиваем данные нескольких объектов в одном запросе
    ?ids=4,501012028
  3. Используем фильтрацию и пагинацию
    me/friends?limit=10&offset=10
  4. Используем запросы FQL
    fql?q=SELECT uid, name, birthday_date FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())
  5. Отправляем Batch Request с несколькими запросами
    batch=[{«method»:«GET», «relative_url»:«me»},{«method»:«GET», «relative_url»:«me/friends?limit=50»}]

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

Пять способов ускорить запросы API Facebook на практике

Время на прочтение7 мин
Количество просмотров14K
Ни для кого не секрет, что самым узким местом веб-приложений чаще всего являются HTTP-запросы к внешним серверам. Так, время загрузки данных запроса API много больше чем время, необходимое для выполнения большинства самых сложных скриптов веб-приложения.

За время работы с API Facebook я накопил несколько рецептов оптимизации запросов: как увеличить скорость работы скриптов, уменьшить их количество и ресурсоёмкость.



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

Основы 6-сигм и контрольных карт Шухарта (слайдкаст)

Время на прочтение1 мин
Количество просмотров38K
Недавно дошли руки до превращения записи моего доклада на AgileKitchen в полноценный слайдкаст.

По моему опыту, в Agile-командах процент собираемых метрик, использующихся для принятия управленческих решений, заметно выше, чем в командах, следующих более консервативным моделям разработки. Однако нужно понимать, что каждое измерение неизбежно содержит в себе ошибку. Перед тем, как принять то или иное решение на основе «аномалий» в наблюдаемых значениях, было бы не плохо понять, что стоит за этой «аномалией»: некоторая особая причина, требующая реакции со стороны руководства, или такое поведение является нормальным для рассматриваемой системы?

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

Как два программиста хлеб пекли

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


Я работаю программистом уже много лет, на протяжении которых, как это ни странно, я всё время что-то программирую. И вот какую интересную вещь я заметил: в коде, написанном мной месяц назад, всегда хочется что-то чуть-чуть поправить. В код полугодичной давности хочется поменять очень многое, а код, написанный два-три года назад, превращает меня в эмо: хочется заплакать и умереть. В этой статье я опишу два подхода. Благодаря первому архитектура программы получается запутанной, а сопровождение — неоправданно дорогим, а второй — это принцип KISS.

Итак, представим себе, что есть два программиста. Один из них умный, прочёл кучу статей на Хабре, знает каталог GoF наизусть, а Фаулера — в лицо. Другой же делает всё просто. Первого будут звать, например, Борис Н., а второго — Маркус П. Само собой, имена вымышленные, и все совпадения с реальными людьми и программистами случайны.

Итак, к ним обоим приходит проектный менеджер (если в вашей вселенной PM не ходит сам к программистам, назовите его как-то иначе, например BA или lead, сути это не изменит) и говорит:
— Ребята, нам нужно, чтобы делался хлеб.

Именно так, «делался», без уточнения способа производства.

Как же поступят наши программисты?
Читать дальше →

Четыре профессиональные деформации программистов на языке Perl, демонстрируемые на живом примере

Время на прочтение8 мин
Количество просмотров8.6K
Эдсгер Вибе Дейкстра оказался известен, в частности, как автор нескольких ёмких и выразительных высказываний, очерчивающих бездну профессиональной деформации программистов, предпочитающих тот или иной неуютный язык программирования. Небезызвестны, в частности, следующие оценки Дейкстры (я процитирую их по Викицитатнику):

  • «Программирование на КОБОЛе калечит мозг, поэтому обучение ему должно трактоваться как преступление». («The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense».)
     
  • «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации». («It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration».)

Дейкстра умер 6 августа 2002 года. Сегодня, спустя десять с небольшим лет после его смерти, мы вправе оглянуться вокруг и спросить себя: а насколько изменились обстоятельства? Иными словами: а сейчас (в наши дни) среди широко употребляемых языков программирования есть ли такие языки, использование которых влечёт для склонных к ним программистов почти неминуемый риск заметной профессиональной деформации?

Как мне кажется, они есть; и это прежде всего те языки, которые подпадают под определение write-only language, то есть поощряют написание такого исходного кода, прочтение и понимание которого слишком трудно, неоправданно трудно (как правило, даже труднее, чем его написание автором кода), хотя в нормальных языках должно быть наоборот.

Наиболее употребительным из таких языков является Perl.

Будьте покойны: я не намерен просто ткнуть пальцем в Perl и объявить, что он плох. Это вышло бы слишком малоубедительно без доказательств и подробностей. И именно поэтому прямо сейчас на примере, взятом из жизни, я покажу вам четыре механизма, при помощи которых Perl воздействует на сознание программиста и поощряет сочинение им такого кода, который оказывается неприглядным write-only.

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

Пайка для начинающих

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

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

Интервью с Чарльзом Уэзереллом, автором книги «Этюды для программистов»

Время на прочтение2 мин
Количество просмотров29K
Не секрет, что не одно поколение программистов зачитало до дыр книгу «Этюды для программистов» Чарльза Уэзерелла, оригинал которой на английском вышел аж в 1978.



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

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

Волею судеб, недавно у меня появилась возможность связаться с Чарльзом и взять у него интервью.
Читать дальше →

Как я СКАДу писал. Часть третья

Время на прочтение8 мин
Количество просмотров11K
Снова всем вечер добрый.
Продолжаю цикл своих статей, предыдущая находится здесь.
Чем дальше в лес, тем толще партизаны, а времени в сутках все меньше и меньше. Но не смотря на своеобразный перегруз я все же упорно продолжаю совершенствоваться и прилагать свою неуемную фантазию с инженерными помыслами к своему детищу, на которое уже основательно подсел. На текущий момент на моей системе уже сделаны и внедрены 5 реальных объектов, три из которых сделали любопытные сторонние разработчики, которым было интересно пощупать систему в деле. Хоть объем их не так и велик, но все же это уже что-то, референс растет. Сам я, не размениваясь по мелочам, как тот, которому больше всех надо, лезу в самое пекло — итогом которого уже стали две крупные разработки на моей скаде: на 3000 точек ввода/вывода (система работает уже почти полгода и сейчас перешла в промышленную эксплуатацию) и вот недавняя на 5500. Но обо всех новшествах чуть ниже и по тексту...
Читать дальше →

Сложные методы авторизации

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

Вместо предисловия


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

Много полей ввода для ввода email адреса



На форме авторизации находится некоторое число полей ввода привязанных к сетке.
Ключ для входа — это связка: email + ключ.
Например:
pupkin@mail.ru
F2C1

Логин записываем в ячейку F2, адрес почтового сервера с собакой — в ячейку C1.
Читать дальше →

Программисты — самые оптимистичные люди на свете!

Время на прочтение3 мин
Количество просмотров21K
Мы, программисты — самые оптимистичные люди, из всех, кого я только встречал. Спросите любого из нас, сколько времени займёт сделать ту или иную вещь — и вы получите супер-оптимистеческий ответ, очень далёкий от реальности. Это не потому, что мы специально стараемся вас дезинформировать и запутать, нет. И не потому, что мы глупы. Просто мы смотрим на всё с оптимизмом.

Вот есть проект, вот наши знания и возможности, вот ваши спецификации, вот Неведомые Загадочные Вещи… Последнее, конечно, самая большая проблема. Нельзя заранее предусмотреть всего и есть большие шансы встретить в тихом болоте таких громадных чертей, что вся Королевская Рать будет их бороть очень долго. Но всегда хочется верить, что их не будет. И вот мы даём оценку времени «1 час», начинаем работать, встречается одна странность, вторая, баг в чужом компоненте — и вот уже на задачу ушел целый день, а она еще не закончена.

Есть, к стати говоря, еще одна профессия, люди которой также дают оценки в условиях неопределенности. И тоже часто ошибаются. Это доктора. Давайте ка я расскажу вам две истории об оценках времени.
Читать дальше →

Информация

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