Pull to refresh
9
0
Исайкин Роман @romixlab

User

Send message

Лю Цысинь, «Темный лес», вторая книга из серии «Задача трех тел». Анонс

Reading time10 min
Views33K
Прошло всего полгода с окончания перевода первой книги из научно-фантастической трилогии китайского писателя Лю Цысиня «Задача трех тел». И вот я анонсирую перевод на русский язык второй книги: «Темный лес». Перевод начался еще во время работы над первой книгой, немного другой командой, и на этот раз я был не литературным редактором, а выступал в скромной роли альфа- и бета-ридера. Процесс окончательного редактирования закончится в ближайшие пару недель, две части из трех уже полностью готовы. В качестве анонса выкладываю начало из первой части.

Предварительные варианты обложек книги (кликабельны):

image
Читать пролог второй книги
Total votes 24: ↑22 and ↓2+20
Comments50

Робототехника в сельском хозяйстве

Reading time4 min
Views14K
image

Сельское хозяйство является одной из самых важных отраслей промышленности. Оно дает пищу, корм и топливо, необходимые для нашего выживания. И поскольку количество мирового населения, как ожидается, достигнет 9 миллиардов к 2050 году, сельскохозяйственное производство должно удвоиться, чтобы удовлетворить спрос. Урожайность должна вырасти на 25%, чтобы помочь достижению этой цели. 
Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments1

Глобалы — мечи-кладенцы для хранения данных. Деревья. Часть 1

Reading time5 min
Views37K
Настоящие мечи-кладенцы баз данных — глобалы — давно известны, но до сих пор немногие умеют эффективно ими пользоваться или вовсе не владеют этим супероружием.

Если использовать глобалы в решении тех задач, в которых они действительно хороши, то можно добиться выдающихся результатов. Либо в производительности, либо в упрощении решения задачи (1, 2).

Глобалы — это специальный способ хранения и обработки данных, совершенно другой, чем таблицы в SQL. Они появились в 1966 году в языке M(UMPS) (эволюционное развитие — Caché ObjectScript, далее COS) в медицинских БД и до сих пор там активно используются, а также проникли в некоторые другие области, где требуется надёжность и высокая производительность: финансы, трейдинг и т.д.

Глобалы в современных СУБД поддерживают транзакции, журналирование, репликацию, партиционирование. Т.е. на них можно строить современные, надёжные, распределённые и быстрые системы.

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

Глобалы как способ хранения данных можно использовать во многих современных языках программирования, как высокоуровневых, так и низкоуровневых. Поэтому в этой статье я сфокусируюсь именно на глобалах, а не на языке, из которого они когда-то вышли.
Читать дальше →
Total votes 39: ↑28 and ↓11+17
Comments336

Приватные слоты в паттерне Pimpl от Qt

Reading time10 min
Views7.5K

Вступление.


Недавно я писал по поводу реализации паттерна Pimpl в библиотеке Qt и призывал людей следовать такому подходу при разработке их собственных бибиотек. Теперь я хочу поговорить о таком понятии, как приватные слоты и тем самым продолжить эту тему. Заключительной статьей на эту тему будет реализация механизма Implicit Sharing и shared d-pointer.

Что это и зачем это нужно.


Приватные слоты — это механизм дополняющий функционал d-указателей. Он позволяет реализовать слоты для приватного класса, даже если он не является наследником от QObject (обычно он им и не является), но для этого публичный класс должен быть наследником от QObject. Тоесть по факту создается некий приватный слот в публичном классе и он непосредственно дергает нужный метод приватного класса.
Зачем это нужно? Ну рассмотрим на примере. Есть класс QAbstractScrollArea. Он просто отображает некий виджет (viewport) и обеспечивает прокрутку. Прокрутка обеспечивается с помощью двух экземпляров класса QScrollBar. Сами эти скролбары он хранит в приватном классе. Теперь проблемма: как подключить сигнал от скроллбара об изменение его позиции с классом QAbstractScrollAreaPrivate, ведь он не является QObject'ом? Сделать его наследником от QObject — лучше не делайте это :-). Можно сделать слот в публичном классе и повесить на него, то в таком случае это не очень красиво — так как наружу выходят слоты от внутренней реализации. Вот ту Qt-шниками был придуман достаточно разумный и элегантный подход — приватные слоты.

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments17

Видео докладов с MoscowJS Meetup

Reading time1 min
Views12K
Недавно в офисе Badoo проходил юбилейный MoscowJS Meetup. Делимся с вами видео докладов.

1. «Специфика верстки мультиязычных веб-приложений»
Александр Тевосян, Badoo.




+ Выложили на GitHub нашу утилиту rtl-css специально к митапу: https://github.com/badoo/rtl-css
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments6

CAN-USB адаптер из stm32vldiscovery

Reading time15 min
Views142K


При разработке устройств с CAN-интерфейсом желательно иметь удобный инструмент для отслеживания сообщений в сети. Для RS232/485 существует множество бюджетных USB адаптеров и куча разнообразного софта, а вот для CAN мне не удалось найти недорогое готовое решение.

В то же самое время на сайтах автолюбителей находились самодельные устройства для подключения к CAN шине автомобиля. Одними из готовых проектов были USB<>CAN Bus Interface (CAN Hacker), реализованный на Atmega+SJA1000 и проект STM32-CAN-Busadapter, реализованный на STM32F105. Работают они с программой CAN Hacker, которая выглядит достаточно удобной для работы. Беглый анализ протокола команд по USB показал, что эти устройства представляются COM портом, и дальнейшее общение происходит в виде передачи команд из ASCII символов.

В закромах была найдена плата STM32VLDiscovery, которая и стала объектом испытаний. На ней мы будем повторять «STM32-CAN-Busadapter».
Что из этого получилось
Total votes 27: ↑26 and ↓1+25
Comments9

Благодаря распределенным вычислениям совершен научный прорыв в лечении детского рака

Reading time6 min
Views16K

О распределенных вычислениях


Для меня было странным обнаружить, что на Гиктаймс и Хабре почти не пишут о такой IT-сфере, как распределенные научные вычисления (Volunteer computing, разновидность HTC — High-throughput computing). Казалось бы, «идеальное» хобби для IT-гика (сочетающее в себе реальную пользу, интересное занятие и благотворительность одновременно). Например, я лично ими плотно увлекаюсь последние 5 лет (а впервые поучаствовал около 12 лет назад). Но даже хаба соответствующего не нашел (может плохо искал?).

Я попытаюсь закрыть этот пробел. Начну с перевода одной из статей, в которой описывается, на мой взгляд, одно из самых серьезных/значимых достижений практического (а не чисто теоретически фундаментального) плана от медицинских РВ проектов. На отсутствие которых многие жалуются и теряют интерес к РВ в целом. Вероятно, это одна из основных причин малой популярности РВ на «Гиктаймс» (возможно, многие в свое время поискав «зеленых человечков» в SETI@Home разочаровались в идее в целом как не несущей какой либо пользы?).
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments35

Самолет, стилизованный под R2D2

Reading time1 min
Views5.9K
image

Рекламная кампания Star Wars VII набирает обороты: вчера, 16 апреля, был выпущен тизер фильма, но это еще не все. Японская компания ANA заявила о разработке нового дизайна для Boeing 787 Dreamliner, который будет стилизован под самого милого робота в истории (после WALL-E, конечно) — R2D2, сообщает Theverge.com.
Читать дальше →
Total votes 14: ↑9 and ↓5+4
Comments6

Брутфорс паролей инженерного меню радиостанции

Reading time5 min
Views39K
image

Что такое инженерное меню и зачем оно нужно? Позволю себе процитировать из wiki:
Недокументи́рованные возмо́жности (англ. undocumented features), НДВ — возможности технических устройств и/или программного обеспечения, не отраженные в документации. Чаще всего недокументированные возможности сознательно закладываются разработчиками в целях тестирования, дальнейшего расширения функциональности. Недокументированные возможности обнаруживаются, обычно, в процессе обратной разработки, но могут быть обнаружены и случайно.
Далее в статье, описание моей попытки подобрать коды к инженерному меню радиостанции.
Читать дальше →
Total votes 59: ↑58 and ↓1+57
Comments64

Пока космические корабли бороздят просторы…

Reading time2 min
Views15K
А что именно они бороздят? Предлагаю оторваться ненадолго от лирики о полётах к другим звёздам. Почему бы не посмотреть, что летает у нас над головой буквально в каких-то 200-400 км. А как это сделать сейчас расскажу (специалистам напомню).
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments3

Фантастические фильмы для долгих зимних вечеров

Reading time5 min
Views71K


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

Полнометражная фантастика — тема необъятная. Количество снятых за всю историю кинематографа фантастических фильмов наберётся великое множество. Поэтому мы решили ограничиться некими временными рамками, скажем, последними десятью годами.
Читать дальше →
Total votes 78: ↑57 and ↓21+36
Comments136

Chart Wars: Диаграммы наносят ответный удар

Reading time4 min
Views31K
Что может быть хуже круговой диаграммы?
Две круговые диаграммы! Эдвард Тафти
Все мы уже не раз видели, что может пойти не так с визуализацией данных. Сегодня обсудим несколько важных принципов, лежащих в основе качественной графики, и что гораздо интересней, узнаем, что произойдет, если эти правила НЕ соблюдать.



Структура статьи
  1. Восприятие измерений
  2. Соотношение чернила-данные
  3. Фактор обмана
  4. Парадокс Симпсона
  5. Джон Сноу всё-таки что-то знает — пример классики визуализации
  6. Что еще посмотреть-почитать
  7. Круговая диаграмма в реальной жизни

(*осторожно трафик*)
Читать дальше →
Total votes 62: ↑56 and ↓6+50
Comments13

Программирование Arduino в CLion

Reading time4 min
Views41K
В этой статье я расскажу о небольшом how to о разработке для Arduino в CLion www.jetbrains.com/clion.
CLion — новая IDE для C/C++ от JetBrains. По стилю и поведению очень похожа на IDEA (IDE для Java). А так как я пишу на Java под IDEA с использованием «фишек» это IDE, то хотелось бы все эти «фишки» и use case разработки перенести на разработку для Arduino.
Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments20

CAD для разработки снежинок: SnowFlaker

Reading time3 min
Views63K

Привет всем.
Да да, это CAD, для разработки снежинок, написанный мной за пару дней.

Предисловие


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

В статье не будет никакого процесса разработки и программирования. В ней я поделюсь с вами получившейся программой, и расскажу как ей пользоваться. Под катом много картинок.
Забрать сборку под win можно тут: sourceforge.net/projects/snowflaker
Там же исходный код в GIT. Сборки под linux пока нет, но программа написана на fpc, и должна собираться и работать под linux-ом. Добавлена сборка под Linux.
Читать дальше →
Total votes 127: ↑127 and ↓0+127
Comments43

15 лучших JavaScript-библиотек для построения диаграмм и сводных таблиц

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

В этой статье я покажу вам некоторые из лучших JavaScript библиотек для построения диаграмм/схем (и сводных таблиц). Эти библиотеки помогут вам в создании красивых и настраиваемых графиков для ваших будущих проектов.

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

Читать дальше →
Total votes 71: ↑65 and ↓6+59
Comments17

FISCHERTECHNIK: хемотроника, ионисторы, электрохимические суперконденсаторы внутри детского конструктора для программистов

Reading time6 min
Views89K
В детстве я не расставался с конструкторами. У меня их было 2 типа: аналог LEGO (пластмассовый и с пупырышками) и металлический с болтиками. После поста на Хабре, я понял, насколько скудный был в те времена выбор. Пару недель назад мембер хакспейса Костя Костюк подсказал мне, что в Москве есть люди, которые занимаются продвижением и обучением FISCHERTECHNIK.


(на фото: Электромобиль с заправочной станцией и водородный топливный элемент, солнечная батарея)

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

Чем понравился мне этот конструктор — хардкорностью научно-технической серьезностью и отсылками ко множеству реальных механизмов/устройств (от принтера, CD-привода и механизмов Леонардо да Винчи, до шаговых экскаваторов, роботов и электромобилей). В наборы входит и контроллер с графической средой программирования, что позволяет учить детей основам алгоритмов и программирования.

Под катом немного про автомобиль на водородном топливном элементе (из конструктора «Экологическая
энергетика»
+ «Топливный элемент»), про изобретателя конструктора и короткий обзор существующих в Москве наборов для конструирования (можно только позавидовать тем гикам, кому сейчас 8+ лет, ибо на новый год их ждут такие подарки).


(Осторожно! Под катом боль за бесцельно прожитые годы)
Читать дальше →
Total votes 86: ↑84 and ↓2+82
Comments16

JarvisJS: Функциональное тестирование веб-приложений

Reading time4 min
Views17K
Здравствуй Хабр! В этом посте мы хотели бы поздороваться и впервые показать миру наш проект JarvisJS.com — сервис для функционального тестирования веб-приложений. Проект еще совсем молод и с любовью разрабатывается командой из трех человек в течении вот уже семи месяцев.

Под катом мы расскажем о нашем сервисе и о причинах, побудивших нас на его создание.
Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments18

Красота космоса или как я научно-популярную лекцию читал

Reading time6 min
Views70K


28 августа в уфимском антикафе «GoodZone» прошла научно-популярная лекция «Красота космоса». И я хочу представить вашему вниманию адаптацию лекции в Хабрапубликацию, а также небольшой рассказ о технических аспектах и софте, который использовался при подготовке и показе.
Читать дальше →
Total votes 90: ↑89 and ↓1+88
Comments16

Интересно и познавательно: разгонный блок «Бриз-М»

Reading time9 min
Views100K

Хорошая реакция на первый пост о космическом симуляторе Orbiter и, как минимум, двести человек, которые заинтересовались и скачали аддоны к нему, привели меня к идее продолжить цикл постов образовательной и игровой направленности. Также, я хочу облегчить переход от первого поста, в котором всё делает автоматика, не требуя ваших действий, к самостоятельным экспериментам, чтобы не получился анекдот о рисовании совы. Этот пост имеет следующие цели:
  • Рассказать о семействе разгонных блоков «Бриз»
  • Дать представление об основных параметрах орбитального движения: апоцентре, перицентре, наклонении орбиты
  • Дать представление об основах орбитальной механики и запусках на геостационарную орбиту (ГСО)
  • Предоставить простое руководство по освоению ручного выхода на ГСО в симуляторе

Читать дальше →
Total votes 103: ↑100 and ↓3+97
Comments48

История накопителей в рекламе. Часть 1: 1956-1991 годы

Reading time3 min
Views51K
Совсем недавно я был рад выиграть внешний жёсткий диск A-Data на 500 Гб стоимостью 3900 рублей, а сейчас он стоит раза в два дешевле. А 33 года назад за 10 Мб пришлось бы отдать несколько тысяч долларов…

image
Читать дальше →
Total votes 41: ↑38 and ↓3+35
Comments20
1

Information

Rating
Does not participate
Location
Реутов, Москва и Московская обл., Россия
Registered
Activity