Как стать автором
Обновить
83
0
Павел @Paul

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

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

Conan: менеджер зависимостей для C/C++

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

Здравствуйте. Сегодня речь пойдёт про Conan — современный менеджер зависимостей для C/C++. Если Вы уже активно работаете с ним, то навряд ли найдёте что-нибудь новое для себя. Иначе — прошу под кат.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии72

Книга «Энергия, секс, самоубийство: митохондрии и смысл жизни»

Время на прочтение30 мин
Количество просмотров19K
Всем привет! У нас вышла замечательная книга Ника Лейна из серии «New Science»:

image Испокон веков люди обращали взоры к звездам и размышляли, почему мы здесь и одни ли мы во Вселенной. Нам свойственно задумываться о том, почему существуют растения и животные, откуда мы пришли, кто были наши предки и что ждет нас впереди. Пусть ответ на главный вопрос жизни, Вселенной и вообще всего не 42, как утверждал когда-то Дуглас Адамс, но он не менее краток и загадочен — митохондрии.

Они показывают нам, как возникла жизнь на нашей планете. Они объясняют, почему бактерии так долго царили на ней и почему эволюция, скорее всего, не поднялась выше уровня бактериальной слизи нигде во Вселенной. Они позволяют понять, как возникли первые сложные клетки и как земная жизнь взошла по лестнице восходящей сложности к вершинам славы. Они показывают нам, почему возникли теплокровные существа, стряхнувшие оковы окружающей среды; почему существуют мужчины и женщины, почему мы влюбляемся и заводим детей. Они говорят нам, по-чему наши дни в этом мире сочтены, почему мы стареем и умираем. Они могут подсказать нам лучший способ провести закатные годы жизни, избежав старости как обузы и проклятия. Может быть, митохондрии и не объясняют смысл жизни, но, по крайней мере, показывают, что она собой представляет. А разве можно понять смысл жизни, не зная, как она устроена?
Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии13

Околоайтишные подарки из настольных игр

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


Привет!

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

Осторожно, трафик.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии44

Какой квадрокоптер выбрать для GoPro? Рассмотрим лучших среди бюджетных

Время на прочтение4 мин
Количество просмотров119K
Свой первый квадрокоптер я купил более двух лет назад и купил я его, чтобы открыть новые ракурсы для своей «гопрошки». Сегодня совсем другая ситуация и на рынке квадрокоптеров и с курсом доллара, однако желание купить квадрокоптер для съёмки с воздуха — всё так же актуально. Поэтому в этой статье я расскажу о том, на какие квадрокоптеры стоит обратить внимание и с какими сложностями вы можете столкнуться.


«Подвес DJI Phantom»
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии10

Vim по полной: Введение

Время на прочтение5 мин
Количество просмотров70K
Привет, хабраюзер!

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

В этой серии статей я решил поделиться собственными наработками и, возможно, показать, на что может быть способен этот редактор в руках программиста. Серия будет состоять из следующих частей:
  1. Введение (vim_lib)
  2. Менеджер плагинов без фатальных недостатков (vim_lib, vim_plugmanager)
  3. Уровень проекта и файловая система (vim_prj, nerdtree)
  4. Snippets и шаблоны файлов (UltiSnips, vim_template)
  5. Компиляция и выполнение чего угодно (vim-quickrun)
  6. Работа с Git (vim_git)
  7. Деплой (vim_deploy)
  8. Тестирование с помощью xUnit (vim_unittest)
  9. Библиотека, на которой все держится (vim_lib)
  10. Другие полезные плагины

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

Готов? Вперед под кат!
Всего голосов 52: ↑49 и ↓3+46
Комментарии86

Межпроцессная репликация объектов с помощью QtRemoteObjects

Время на прочтение7 мин
Количество просмотров12K
7 октября 2014 года в публичном доступе появились исходники Qt-модуля QtRemoteObjects. Модуль создан в недрах Ford Motor Company (автор Brett Stottlemyer). Вещь, на мой взгляд, очень перспективная. Модуль позволяет, например, передавать сигналы между объектами по сети. Но этим возможности модуля не ограничиваются. Более точно суть модуля описывает его предыдущее наименование — Replica, так как объекты «реплицируются» между процессами.



Ключевой идеей QtRemoteObjects, которая качественно отличает его от других способов межпроцессного взаимодействия/удаленного вызова процедур, является идея полностью продублировать Qt-объект в другие процессы. Это значит, что все изменения свойств (properties) в объекте — источнике отражаются (с уведомлением посредством сигналов) в объекте-реплике. Любые сигналы, которые эмитируются объектом-источником будут также эмитированы в каждом объекте-реплике. Также можно устанавливать свойства, вызывать слоты и в объекте-реплике, при этом запросы отправляются объекту-источнику, который их обрабатывает и затем изменения отражаются в других объектах-репликах посредством сигналов или с помощью изменения свойств. В результате все объекты (включая объект-источник) синхронизируются. При этом вся сложность межпроцессного взаимодействия скрыта внутри QtRemoteObjects.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии9

Об удобной навигации и отладке C++ кода в Vim

Время на прочтение7 мин
Количество просмотров42K
Компания, где я работаю, разрабатывает программное обеспечение на C++ под Linux. Долгое время мы использовали Qt Creator, с редкими ребятами работающими из Emacs и Vim. Когда я сам попытался пересесть на Vim, я понял, что ситуация с плагинами для разработки на С++ очень не простая. Поработав немного с CTags, я быстро понял, что без напильника работать в Vim будет очень сложно.
К сожалению, с ростом опыта работы с Vim редактор в Qt Creator в режиме эмуляции устраивал меня все меньше, и в какой-то момент я решил потратить немного времени и разобраться, как же сделать из Vim нормальную среду.
Я очертил для себя четыре вещи, которые я бы хотел от среды разработки, и которых мне бы хватило в Vim, чтобы полностью на него перейти:

1. Автодополнение
2. Навигация по коду
3. Отладка прямо из среды
4. Интеграция с Git (в частности Blame прямо в редакторе, и Git Grep)

Автодополнение в Vim — это решенная проблема, и название у решения YouCompleteMe. Это очень качественный плагин, который реализует автодополнение для большого количества языков программирования, в частности Python и C++. Ходят слухи, что внутри Google YouCompleteMe решает и вторую проблему с навигацией кода, но использует для этого внутренные инструменты гугла для индексирования.

Интеграция с Git в какой-то степени решена с помощью vim-fugitive. Это не такая комплексная интеграция, как бывает у Jet Brains, или в Visual Studio, но сравнимая с тем, что предлагает Qt Creator. Те два сценария, которые нужны были мне: blame и grep — работают хорошо.

Отладка и навигация были проблемами, решенными гораздо хуже. В этой статье я расскажу о плагине, который мы написали для навигации по С++ коду. В конце статьи я также расскажу о том, как мы для себя решили проблему с интегрированным отладчиком.
Читать дальше →
Всего голосов 56: ↑51 и ↓5+46
Комментарии92

Process Explorer vs Process Hacker

Время на прочтение6 мин
Количество просмотров94K
Многим людям рано или поздно приходит в голову мысль, что стандартный менеджер процессов Windows весьма слаб по функционалу. Начинаются поиски альтернативы, которые в основном тут же и заканчиваются при обнаружении Process Explorer от Марка Руссиновича. Вот и Хабр даже советует эту программу.

Что тут можно сказать? Конечно, Process Explorer — это хорошая программа. Однако, не идеал. Именно в пику её неидеальности существует не только бесплатная, но и свободная альтернатива — Process Hacker. А теперь мы детально и по пунктам рассмотрим, почему Process Hacker не просто «чуть-чуть лучше», а лучше на порядок, лучше на столько, что переводит программу для продвинутого пользователя в класс инструмента системного программиста или администратора.
Читать дальше →
Всего голосов 91: ↑80 и ↓11+69
Комментарии64

Строение двигателей

Время на прочтение7 мин
Количество просмотров130K
Недавно наткнулся на прекрасный сайт (англ.), который по полочкам размусоливает и показывает строение большинства типов двигателей. Попытаюсь вольно и сжато пересказать самое на мой взгляд главное, совсем по пальцам и как для самых маленьких. Конечно можно было бы позаимствовать точные определения из авторитетных источников, но такой любительский перевод обещает быть единственным в своем роде :)

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

Читать дальше →
Всего голосов 249: ↑220 и ↓29+191
Комментарии142

Съемка Full HD видео теперь возможна на Canon 50d

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


Введение. About Magic Lantern


Magic Lantern — открытая среда разработки расширений возможностей цифрозеркалок Canon 5D Mark II / 500d / 550D / 600D / 60D / 50D. По сути это не взломанная или модифицированная прошивка, а дополнение, которое запускается вместе с оригинальной прошивкой, загружаясь с карты памяти при каждом включении фотоаппарата. Исполняемый файл записывается на флеш-карту и автоматически подгружается в память при включении камеры. Единственным изменением оригинальной прошивки является возможность загрузки этого самого дополнения с карты памяти. В основном прошивка заточена для съёмки видео (после её установки Mark II получает функционал, сравнимый с профессиональными видеокамерами RED ONE и Phantom 65, которые находятся в совершенно других ценовых категориях), но присутствует немало новых возможностей для фото:
Читать дальше →
Всего голосов 65: ↑63 и ↓2+61
Комментарии87

Adobe выпустила конвертер Flash в HTML5

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


Adobe выпустила новый экспериментальный инструмент под кодовым названием Wallaby для преобразования Flash в HTML5.

Wallaby — это AIR-приложение с очень простым интерфейсом, позволяющим легко конвертировать fla-файлы в HTML5-код. Преобразованный контент можно просматривать в браузерах на движке WebKit, включая Google Chrome и Safari.

Технология была представлена на конференции Adobe MAX осенью прошлого года. Теперь пользователи могут свободно получить доступ к Wallaby на Adobe Labs.
Всего голосов 130: ↑122 и ↓8+114
Комментарии69

12 способов не накосячить со вспышкой

Время на прочтение8 мин
Количество просмотров354K
После трёх лет работы со студийным светом я думал, что знаю про накамерную вспышку если не всё, то очень много. Три недели назад я попал в гости к одному особо опытному стробисту, который рассказал и показал столько, что я сразу понял, что надо садиться и делать перепись грабель, а потом тестить, тестить и ещё раз тестить.

Ниже — достаточно известные вещи, которые, однако, вызывали facepalm у тех, кто был вместе со мной или же у меня. В списке грабель вы с некоторой вероятностью можете найти что-нибудь новое. Если хотя бы она фича использования вспышки окажется для вас полезной, то мою задачу можно считать выполненной.
Читать дальше →
Всего голосов 228: ↑223 и ↓5+218
Комментарии73

SICP теперь по-русски

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

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

В качестве эксперимента выкладываю перевод первой из 20 лекций. Если это получит должный отклик, буду переводить дальше.
Читать дальше →
Всего голосов 97: ↑92 и ↓5+87
Комментарии61

Игра, созданная одним человеком. Эадор. Сотворение

Время на прочтение2 мин
Количество просмотров6.8K
Давно такого не было! Во времена доминирования супер гигантов игровой индустрии, таких как EA, мы уж и забыли достойные проекты, сделанные несколькими разработчиками в свободное от работы время. А в данном случае речь идет об одном разработчике, создавшего Эадор.

Итак, Эадор.

image
Читать дальше →
Всего голосов 101: ↑93 и ↓8+85
Комментарии69

Физика невозможного: Научное объяснение фазеров, силовых полей, телепортации и путешествий во времени

Время на прочтение2 мин
Количество просмотров6.3K
Наверное каждый читатель Хабра мечтает получить свой световой меч или пообщаться с представителем инопланетной цивилизации. Но сбудется ли это когда-нибудь? Ответу на этот и другие подобные вопросы посвящена книга «Физика невозможного».  

Она написана физиком-теоретиком, ведущим научно-популярных передач BBC и популяризатором науки Митио Каку, много общавшимся с выдающимися умами современности. Его консультантами выступили 10 лауреатов Нобелевской премии, известные физики, астрономы, публицисты и даже один автор комиксов. 

Доктор Каку исследует передовые области науки, чтобы дать ответ на «мучившие его с детства» вопросы: Научимся ли мы когда-нибудь проходить сквозь стены? Строить звездные корабли, способные летать быстрее скорости света? Читать мысли? Мгновенно преодолевать космическое пространство?
Читать дальше →
Всего голосов 117: ↑92 и ↓25+67
Комментарии60

Онлайн патентование в Бюро Патентов и Торговых Марок США

Время на прочтение3 мин
Количество просмотров5.8K
Это возможно. Может быть, для кого-то это не новость, но для меня это стало почти открытием: можно запатентовать свое изобретение в Бюро Патентов и Торговых Марок США (United States Patent and Trademark Office), сокращенно — USPTO (именно там патентуются все Гуглы и Эплы) не вставая из-за компьютера. В буквальном смысле этого слова. У меня вся процедура заняла ровно 15 минут. Спешу поделиться.

Информация к размышлению:

1. USPTO — это американский Роспатент, только с мозгами.
2. USPTO принимает заявки на патентование у жителей любых стран, в т. ч. из РФ.
3. У них есть такая замечательная штука, как временная заявка (Provisional Application) — это приоритет на изобретение в упрощенной и ускоренной форме. Своего рода анонс вашего будущего патента.
4. Provisional Application (далее Provisional Application) действует 12 месяцев, после чего ее нужно подтвердить «настоящим патентом», иначе теряет силу.
5. Временная заявка нигде не публикуется.
6. Заявка может быть написана по-русски (но перевод должен быть предоставлен не позднее 16 месяцев с момента подачи).
7. Заявка стоит от 105 долларов. Можно и больше, но это зависит только от количества информации, которую вы попытаетесь запихнуть в заявку. Мне вполне хватило 105.
8. Оформление заявки делается с помощью веб-приложения EFS-Web. Оно может: добавлять заявку в базу USPTO, проверять эту заявку, принимать пошлину за прием заявки и высылать заявителю квитанцию о приеме заявки.
9. Я не патентный поверенный, не юрист и вообще не-не-не. Просто любитель. Поэтому если надумаете получать таким образом патент — проверяйте. Хотя у меня, вроде, все получилось.
10. Услуга по оформлению Provisional Application у патентных поверенных стоит в среднем 15 000 рублей. Не считая самих пошлин.

Итак, поехали
Читать дальше →
Всего голосов 66: ↑62 и ↓4+58
Комментарии37

«Намертво прибитая к ядру» графическая подсистема

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


То, что принято называть «графикой в ядре» обычно относится к win32k. Win32k.sys представляет собой ядерную часть графической подсистемы. Загружается пользовательским процессом smss.exe в процессе инициализации всех остальных подсистем. Путь к исполняемому образу для «kmode» подсистемы прописан здесь:


Как же это происходит?
Читать дальше →
Всего голосов 271: ↑246 и ↓25+221
Комментарии120

Ускорение загрузки Windows for fun and profit

Время на прочтение4 мин
Количество просмотров807K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста
Всего голосов 533: ↑517 и ↓16+501
Комментарии365

Атипичные клавиатуры

Время на прочтение7 мин
Количество просмотров18K
Говорят, что обычная QWERTY-клавиатура была изобретена с целью уменьшить скорость набора, потому что у слишком быстрых машинистов первые машинки клинили. Не знаю, сколько в этом утверждении правды, но то, что раскладка далеко не идеальна — факт. Факт также то, что разрабатывалась она для печати десятью пальцами на больших клавишах размещенных в три ряда.

В неизменном виде она перекочевала на электрические пишущие машинки, а затем и на компьютерные клавиатуры, где все стало ещё удобнее — теперь клавиши срабатывали от легкого нажимания, и по ним не приходилось лупить со всей дури.
Все было бы просто отлично, если бы не страсть к минимизации. Ноутбуки, нетбуки, классические смартфоны (не «тачфоны») — QWERTY-клавиатура стремительно уменьшалась в размерах, сохраняя при том свою сущность. Для некоторых таких творений впору вести набор спичками. Были и неплохие инженерные решения — например на Sony-Ericsson M600i клавиши-качели содержали по две-четыре символа, и они выбирались в зависимости от способа нажима.

Но когда это добро перекочевало на экраны… возьмем в качестве образца айфон(да, исторически первым [массовым] тачфоном все-таки было яблоко): три с половиной дюйма диагонали, отношение сторон — 2:3. Кто помнит теорему Пифагора, какова ширина экрана?
x² + (3x/2)² = 3,5²
x² = 49/13
x ≈ 1,94" ≈ 49,3мм.
Итак, ширина экрана — меньше 5 сантиметров. В ряду — 10 клавиш. Получается — около 5 мм на клавишу, и это включая промежутки между ними. Не знаю как у вас, а меня пальцы ощутимо шире, да и печатать на приборе таких размеров я могу только одним, ну максимум двумя большими пальцами одновременно. Ну не могу я печатать на ЭТОМ, при всей его умности! Хватит обратной совместимости! Я печатать вслепую научился за неделю, так дайте мне клавиатуру, где не придется целится в клавиши! Я её изучу! Я хочу комфортно и быстро печатать!

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

Их я и попытаюсь сегодня осмотреть.
Читать дальше →
Всего голосов 161: ↑148 и ↓13+135
Комментарии157

Osmand — Руководство пользователя

Время на прочтение8 мин
Количество просмотров232K
Osmand — программа для Android, которая позволяет работать с офлайн картами OpenStreetMap и не только, использовать голосовую навигацию, запись, отображение и навигацией GPX треков, а также ряд возможностей по редактированию OSM. Судя по предыдущему топику , среди хабровчан достаточно большое число пользователей данной программы, которые бы хотели узнать тонкости работы данной программы.

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

Osmand, как и большинство Linux приложений, предназначен, для всех, поэтому конкретную целевую аудиторию даже сложно назвать. Это является и плюсом и минусом приложения. В принципе все open source развиваются по этому сценарию, потому как сообщество постоянно добавляет маленькие и нужные патчи и редко добавляет большие и нужные. Так и получаются приложения с кучей настроек, кучей перекрывающихся функций и тысячами сценариев использования.

Кратко темы, раскрытые ниже:
  • Карта — векторные и растровые карты, различные настройки
  • Экран Карты — индикаторы на главном экране приложения и контекстное меню
  • Настройки приложения — профили настроек и обзор базовых настроек
  • Фоновый сервис — работа приложения с выключенным экраном и с заданным периодом включения
  • Мониторинг — запись GPX треков
  • Навигация — онлайн и офлайн навигация
  • Поиск — поиск POI, транспорта, адреса
  • OSM редактирование — POI и Osm bugs

Читать дальше →
Всего голосов 76: ↑66 и ↓10+56
Комментарии67
1
23 ...

Информация

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