суббота, 31 декабря 2011 г.

Google OpenID URL

Весьма удобно использовать свой аккаунт google для авторизации на сайтах по OpenID. Для этого необходимо вводить следующий URL: https://www.google.com/accounts/o8/id

пятница, 23 декабря 2011 г.

Новые ссылки

В связи с выходом новой версии стандарта языка C, обновлена страница сайта, где приведены ссылки как на сам текст стандарта, так и на соответствующую страницу Международной Организации по Стандартам.

воскресенье, 18 декабря 2011 г.

Улучшаем GNOME 3

GNOME 3 сегодня, на мой взгляд, есть самый нелепый рабочий стол. Лично я использую Unity и счастлив, однако, если кому-то Unity не по душе, использовать GNOME 3 все-таки можно, ибо мир, как говорится, не без добрых людей. В связи с вышесказанным, рекомендую GNOME Shell Frippery - набор расширений для GNOME Shell, позволяющий, посредством GNOME Tweak Tool (программа доступна в репозиториях Ubuntu), провести ряд модификаций рабочего стола в целях повышения удобства использования. Среди таких улучшений:
  • нижняя панель в стиле GNOME 2;
  • меню приложений на верхней панели в стиле GNOME 2;
  • кнопки быстрого запуска на верхней панели в стиле GNOME 2;
  • "возвращение на место" даты/времени;
  • возвращение диалога при выключении компьютера.
После всех манипуляций рабочий стол натурально преображается и уже не вызывает столь негативных эмоций как ранее.

вторник, 29 ноября 2011 г.

Цитата

Помните - очень важно писать программы наиболее очевидным и простым способом, чтобы их потом можно было легко читать и понимать.
Бьерн Страуструп

воскресенье, 27 ноября 2011 г.

Релиз mixan-1.8.0

Изменения:
  1. Добавлена настройка создавать / не создавать временные файлы с графиками, доступная в виде чекбокса в диалоговом окне настроек программы;
  2. Улучшена обработка исключительных ситуаций;
  3. Проведена оптимизация кода.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

четверг, 24 ноября 2011 г.

mixan-1.7.5

На github перезагружена последняя версия mixan (1.7.5) для m$ windows. В дистрибутив добавлены библиотеки, позволяющие работать в форматом jpeg (и др.). Проблема была выявлена на win xp, в то время как на win 7, где данная сборка тестировалась, все было ОК.

Также, на github загружен обновленный архив с изображениями для проведения тестовых расчетов.

воскресенье, 20 ноября 2011 г.

Релиз mixan-1.7.5

Изменения:
  1. Внешний вид графиков;
  2. Оптимизация кода.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

Релиз r49-11.15

  • libtoxic v6.1.0
  • cr49 v1.0.0
  • Qr49 v3.0.0
  • Qt v4.7.4 (linux), Qt v4.7.3 (win)
Изменения:
  1. Qr49 лишена возможности работы без загрузки GUI. Данный функционал перемещен в программу cr49, отныне доступную в составе дистрибутива r49 и предоставляющую CLI;
  2. Реализовано перемещение курсора на следующую ячейку текущей колонки при ручном вводе данных в таблицы Qr49;
  3. В Qr49 добавлена "Панель расчетов", в которой размещены параметры расчета выбросов ВВ и различные дополнительные расчеты;
  4. В протокол расчета выбросов газообразных компонентов ОГ добавлен параметр fa (ранее был доступен только в файле отладочных данных);
  5. В протокол расчета по Правилам 96 (диапазоны мощностей H, I, J, K) добавлены значения gNOx и gCH по циклу;
  6. Изменен коэффициент в формуле расчета alpha_O2;
  7. Реализован автоматический переход на следующий параметр при импорте данных в Qr49;
  8. Пересмотрена и оптимизирована система сообщений об исключительных ситуациях во время работы программы;
  9. Вследствие невостребованности, удален параметр "Разделитель параметров в файлах CSV". Отныне разделители только пробелы;
  10. Дистрибутив r49 для систем, основанных на GNU/Linux, теперь поставляется без компонентов Qt. Рекомендуется использовать библиотеки из системных репозиториев;
  11. Проведена оптимизация кода;
  12. Обновлен перевод интерфейса Qr49 на русский язык;
  13. Обновлена документация "Быстрый старт".
Замечание:
  • В виду того, что разделителями файлов CSV теперь являются пробелы, для пересчета "старых" данных в Qr49, при загрузке исходных данных, рекомендуется использовать диалог импорта с настройками: Разделитель ";" Строк заголовков "1".
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

суббота, 12 ноября 2011 г.

Релиз mixan-1.7.3

Изменения:
  1. Для всех графиков добавлены заголовки осей;
  2. Для всех графиков добавлены названия;
  3. Реализовано автоматическое сохранение графиков (в подкаталог temp каталога программы). При повторном проведении расчета предыдущие файлы перезаписываются;
  4. Оптимизация кода.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

воскресенье, 6 ноября 2011 г.

Релиз mixan-1.7.1

Изменения:
  1. Изменены значения по умолчанию для настроек программы;
  2. Улучшения кода.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

суббота, 5 ноября 2011 г.

Релиз mixan-1.7.0

Изменения:
  1. Реальные гистограммы изображений вместо распределений пикселей по оттенкам серого;
  2. Корректировка значений аппроксимирующего полинома;
  3. Улучшение алгоритма определения порогового оттенка;
  4. В диалог настроек программы добавлены параметры: "точность определения порогового оттенка" и "идеальная концентрация";
  5. Имена файлов изображений компонентов смеси в отчете;
  6. Улучшения кода.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

среда, 2 ноября 2011 г.

Релиз r49-11.13.2

  • libtoxic v5.5.0
  • Qr49 v2.2.3
  • Qt v4.7.4 (linux), Qt v4.7.3 (win)
Изменения:
  1. Дополнительная проверка вводимых в таблицы Qr49 исходных данных;
  2. Возвращена иконка Qr49.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

воскресенье, 30 октября 2011 г.

Новые возможности C++11

Очередной весьма интересный и полезный обзор новых возможностей C++11. В этот раз от Герба Саттера. В статье приводятся примеры с комментариями, а также сравнение различных реализаций, произведенных средствами С++03 и С++11.

http://herbsutter.com/elements-of-modern-c-style/

суббота, 29 октября 2011 г.

Релиз mixan-1.6.1

Изменения:
  1. Проведена оптимизация использования памяти программой;
  2. Добавлена иконка.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

пятница, 28 октября 2011 г.

Цитата

Для написания хороших программ требуются ум, вкус и терпение.
Бьерн Страуструп

четверг, 20 октября 2011 г.

Релиз mixan-1.6.0

Изменения:
  1. Добавлена возможность провести анализ изображений материалов без анализа изображений проб смеси;
  2. Добавлен диалог настроек с возможностью изменить степень аппроксимирующего полинома и размер выводимых в отчет изображений, а также возможностью включить/выключить режим редактирования отчета;
  3. Обновлена панель инструментов.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

Stand up for your freedom to install free software!

Поддержим FSF в их борьбе со злом!
Stand up for your freedom to install free software!!!

http://www.fsf.org/campaigns/secure-boot-vs-restricted-boot/statement

воскресенье, 16 октября 2011 г.

Релиз mixan-1.5.2

Изменения:
  1. Незначительный рефакторинг кода;
  2. Откорректирован выводимый в отчет текст.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

суббота, 15 октября 2011 г.

Diodon - менеджер буфера обмена

Наверное, многие со мной согласятся, что менеджер буфера обмена это наиполезнейшая утилита в окружении рабочего стола. В не столь отдаленные времена Ubuntu 11.04 в качестве такой программы я использовал pastie, установленную и обновляемую из ppa-репозитория. Однако, на дворе компьютерах уже вовсю радует пользователей Ubuntu 11.10, а пакет pastie под нее и не думает появляться... После 30 секунд гуглежа (или гугления), обнаружилась аналогичная программа - diodon. Также, как и pastie, diodon хорошо интегрируется в полюбившийся Unity и имеет ppa-репозиторий с deb-пакетом под Ubuntu 11.10.

Страница программы на launchpad - https://launchpad.net/diodon.
Страница команды разработчиков на launchpad - https://launchpad.net/~diodon-team.

пятница, 14 октября 2011 г.

Релиз mixan-1.5.1

Новое в версии 1.5.1:
  1. Построение и вывод в окно отчета характеристик изображений смешиваемых материалов (распределение пикселей по оттенкам серого и аппроксимирующий полином);
  2. Построение и вывод в окно отчета графика с изображением рассчитанного порогового оттенка серого для анализа изображений проб смеси относительно точки пересечения аппроксимирующих полиномов изображений материалов;
  3. Автоматическое сохранение при выходе и восстановление при запуске настроек программы (размер и расположение окна, расположение панели инструментов).
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

четверг, 13 октября 2011 г.

Ubuntu 11.10

Релиз Ubuntu 11.10.

Умер Деннис Ритчи

С печальнейшей новости начался сегодняшний день. Умер Деннис Ритчи, один из создателей языка C и системы UNIX. Огромное спасибо ему за все его труды. RIP.

opennet.ru:
Роб Пайк с прискорбием сообщил о смерти Денниса Ритчи, создателя языка Си и одного из ключевых разработчиков операционной системы UNIX. Впоследствии Ритчи принимал участие в разработке ОС Inferno и Plan 9, а также языка Limbo. Ритчи умер дома, в возрасте 70 лет, после продолжительной болезни.
Сложно переоценить влияние этого человека на развитие IT индустрии, как, впрочем, и на весь технический прогресс в последние 30-40 лет. Созданные Ритчи идеи, философия и технологии существенно повлияли на развитие всей компьютерной индустрии и отражаются практически в любом программном продукте. В 1983 году Деннис был награжден премией Тьюринга, в 1990 году был отмечен медалью Ричарда Хэмминга от лица Института инженеров электротехники и электроники (IEEE), в 1999 году Деннис получил из рук президента США Билла Клинтона Национальную медаль за достижения в области технологий. В 2011 году он был награжден Призом Японии за достижения в области информации и связи.
Выпущенная в соавторстве с Брайном Керниганом книга "Язык программирования Си" стала отправной точкой для миллионов разработчиков. Русскоязычное издание данной книги было одним из первых руководств по языку Си, выпущенных массовым тиражом (первое издание вышло в 1985 году, а второе с тиражом 100 тыс. экземпляров в 1992 году).

среда, 12 октября 2011 г.

Новый облик github

Буквально несколько часов назад на github-е все было по-старому. Однако, зашедши только что, я был приятно удивлен. Все стало еще шикарней ) По крайней мере мне внешний вид сайта и расположение элементов управления очень нравится. Красиво, удобно, информативно. Молодцы. Отличное местечко этот github )

Официальный анонс - https://github.com/blog.

Релиз r49-11.13.1

  • libtoxic v5.5.0
  • Qr49 v2.2.2
  • Qt v4.7.4 (linux), Qt v4.7.3 (win)
Изменения:
  1. Новый вид панели "Параметры расчета";
  2. Возможность менять расположение панели "Параметры расчета";
  3. Расчет лабораторного атмосферного коэффициента при расчете приведенной мощности теперь, также как и при остальных расчетах, зависит от типа системы наддува двигателя;
  4. Новый диалог "Дополнительные расчеты". Помимо доступных ранее расчетов оборотов A, B, C и дыма по циклу ELR, диалог дополнен расчетами затрат мощности на привод вентилятора и расхода воздуха по значениям разряжения на измерительном сопле, а также конвертером значений дымности ОГ из [м-1] в [%] и обратно;
  5. Откорректирована реакция элементов управления панели "Параметры расчета" на изменение задания на расчет;
  6. Некоторые улучшения кода и структуры дерева исходных кодов;
  7. Обновлен перевод интерфейса на русский язык;
  8. Обновлена документация "Быстрый старт".
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

суббота, 8 октября 2011 г.

Релиз mixan-1.4.0

Новое в версии 1.4.0:
  1. Выполнение анализа изображений организовано в отдельном потоке;
  2. Добавлен диалог прогресса при выполнении анализа изображений;
  3. Возвращена поддержка формата JPEG;
  4. Отменен вывод в отчет обесцвеченных изображений;
  5. Более короткая форма информационной строки в отчете после выбора изображений;
  6. Улучшения структуры кода.
Исходный код и сборки доступны на github.

понедельник, 3 октября 2011 г.

Релиз mixan-1.3.0

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

воскресенье, 25 сентября 2011 г.

Календарь WRC 2012

Опубликован календарь WRC на 2012 год.
  1. 17-22 января: Rallye Monte-Carlo
  2. 09-12 февраля: Rally Sweden
  3. 08-11 марта: Rally Mexico
  4. 29 марта - 01 апреля: Rally Portugal
  5. 27-29 апреля: Rally Argentina
  6. 25-27 мая: Acropolis Rally
  7. 22-24 июля: Rally of New Zealand
  8. 02-05 августа: Rally Finland
  9. 24-28 августа: Rallye Deutschland
  10. 13-16 сентября: Rally of Great Britain
  11. 04-07 октября: Rallye de France - Alsace
  12. 18-21 октября: Rally d’Italia
  13. 01-04 ноября: Rally de Espana

пятница, 2 сентября 2011 г.

Праздник продолжается

Эта неделя вышла настолько богатой на релизы, что об этом просто невозможно не написать. Причем релизы ПО, каждодневно мною используемого. Позавчера Libre Office 3.4.3вчера целую серию выдала Nokia, а сегодня мы узнаем о первой бета версии Ubuntu 11.10.
Но это еще не все. Сегодня Blogger ввел в эксплуатацию новую версию панели администрирования блога. Наконец-то интерфейс стал адекватным. Как же удобно-то стало! Я счастлив )
Кроме того, стали доступны дополнительные темы для самого блога, одна их которых мне тут же приглянулась.

четверг, 1 сентября 2011 г.

Qt 4.7.4, Qt Creator 2.3.0, Qt SDK 1.1.3

Сегодня Nokia порадовала нас выпуском новых версий Qt и Qt Creator! Разумеется, обновился и Qt SDK.

вторник, 23 августа 2011 г.

Релиз r49-11.12.4

  • libtoxic v5.3.4
  • Qr49 v2.1.2
  • Qt v4.7.3
Серия незначительных поправок:
  1. В отладочных данных добавлен удельный эффективный расход топлива;
  2. В режиме "Свободный расчет" теперь, как и в остальных режимах, происходит проверка исходных данных. При необходимости расчета только некоторых параметров см. руководство "Быстрый старт" на предмет обязательных параметров в таблице исходных данных;
  3. Диалоговое окно ввода значений масс фильтров ТЧ теперь появляется только когда в нем действительно есть необходимость )
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

Индикаторы для панели Unity

В дополнение к предыдущей заметке, хотелось бы упомянуть еще об одном полезном индикаторе - indicator-virtualbox (ppa:michael-astrapi/ppa), позволяющем запускать виртуальные машины, не загружая панель управления VirtualBox.
Информацию об indicator-virtualbox я обнаружил в очередном обзоре.

пятница, 19 августа 2011 г.

Релиз r49-11.12.1

  • libtoxic v5.3.1
  • Qr49 v2.1.1
  • Qt v4.7.3
Несколько неприятных "косметических" недочетов и необходимость реализации более адекватной реакции Qr49 на нулевое значение массы ТЧ заставили досрочно выпустить корректирующий релиз, ибо так оставлять было бы просто нехорошо.
Изменения:
  1. Коррективы в описании стандартов;
  2. Коррективы в руководстве "Быстрый старт";
  3. Коррективы в переводе интерфейса Qr49 на русский язык;
  4. Коррективы в файле README;
  5. При запуске расчета с параметром PTmass = 0, Qr49 теперь предлагает ввести веса фильтров в диалоговом окне, а не в консоли.
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) доступны на github.com.

среда, 17 августа 2011 г.

Релиз r49-11.12

Выпуск r49-11.12 потребовал некоторых волевых усилий, т.к. просьбы добавить ту или иную функцию посыпались вдруг одна за другой )) Разумеется, реализовать хотелось многое, однако, ждать новой версии пришлось бы тогда очень и очень долго, особенно учитывая надвигающийся дефицит времени. Итак, часть заказов реализована, а часть - оставлена на будущее.
Что нового в v11.12:
  1. Автоматическая прокрутка таблицы назначения при импорте данных;
  2. Более удобное и логичное размещение таблиц с исходными данными в окне Qr49;
  3. Параметры расчета в более удобной формулировке и на русском языке;
  4. Отмена ожидания после завершения расчета при работе без загрузки графического интерфейса;
  5. В диалоге Qr49 "Общие параметры" добавлены размерности, в которых эти параметры должны быть представлены;
  6. В диалоге Qr49 "Отладочные данные" добавлено имя загруженного файла;
  7. Qr49 теперь запоминает расположение панели инструментов;
  8. Добавлен параметр расчета "Наддув двигателя";
  9. Добавлен расчет параметра fa (лабораторный атмосферный коэффициент) и вывод в отчет информации о корректности условий проведения испытаний;
  10. Более информативные имена каталогов с результатами расчетов;
  11. Улучшения в коде и файлах проектов;
  12. Элементы Qt в составе дистрибутива обновлены до версии 4.7.3;
  13. Откорректирован документ "Быстрый старт".
Исходный код, а также сборки для ОС на базе GNU/Linux (64 бит) и ОС MS Windows (32 бит) уже традиционно доступны на github.com.

понедельник, 1 августа 2011 г.

WRC 2011. R08. Rally Finland

Вот и завершилось одно из самых интересных ралли сезона - Rally Finland. Красивейшее и, наверное, самое скоростное гравийное ралли в чемпионате.
Т.к. мне довелось там побывать, хочется сказать пару слов об организации данного мероприятия. Честно говоря, я был поражен до глубины души. Такого, простите, хамства от организаторов я не ожидал. Ведь все-такие этап чемпионата мира. Просто вымогательство денег и ничего взамен. Даже насладиться спец участками по-человечески не дали. Хотите иметь возможность проходить в сервис парк и на трассы? 60 евро! Не знаете как проехать? Журнальчик 10 евро! Ах, вы уже приехали посмотреть на прохождение? А парковочка-то у нас 5 евро! Не беда, что прямо в поле. Не на что присесть? Стульчик за 7 евро не желаете? Ах, простите, на стадион со своей водичкой нельзя. Не желаете пройти к киоскам и оставить там свои евры? Да-да, евры оставляйте и продолжайте стоять под палящим солнцем, обливаясь потом и наблюдая машины за 300 метров из за голов впереди стоящих. Вы приехали на трассу в лесу? На гонку хотите посмотреть? Нееет. Тут вставать нельзя, тут тоже, а тут вообще ходить запрещено! В общем, вставайте вон за теми кустами и представляйте как шикарно машина проходит этот поворот - рев мотора вам поможет, его вы услышите. Так за что же я заплатил 60 евро, черт вас подери?!
В плане организации ралли я, честно говоря был сильно разочарован. Я от финнов такого не ожидал. Особенно обидно было, когда идешь 3 км пешком до трассы, бросив свой автомобиль на шоссе, а тебя обгоняют машины, заставляя глотать пыль. Это машины VIP. Что, черт возьми, за VIP? Почему и откуда? Даже лимузин один раз мимо проехал. И это на проселочной дороге по пути к раллийной трассе! Это ралли или балаган? Почему болельщики, заплатившие каждый по 60 евро, чтобы подойти к трассе жмутся под палящим солнцем, пытаясь хоть что-нибудь увидеть, а в 100 метрах под навесом и в комфорте сидят какие-то избранные, да еще и с большущим монитором, развернутым к болельщикам задом???
Это было крайне неприятно. Ну да черт с ними с этими организаторами и VIP-ами! Ибо незабываемые моменты, несмотря ни на что, были и что-то, вопреки всему, увидеть все же удалось.
Не передать словами ощущения когда рядом с тобой по трассе с ревом и шлейфом пыли и гравия из под колес пролетает раллийный автомобиль. Это просто шикарно! Трамплины и шпильки. И опять рев мотора и шлейф гравия. Красивое и четкое прохождение поворотов. Ралли это красиво. И, как и в любом другом виде спорта, чемпионат мира - это возможность увидеть верх мастерства. Насладиться зрелищем и талантом любимых спортсменов. Неизгладимые впечатления конечно же оставляет и церемония награждения. Это вообще нечто, когда при объявлении победителей огромная толпа просто взрывается оглушительными овациями в их адрес. Вот это шикарно. А организаторы... Черт с ними. Главное - это само ралли!
Ну и, конечно же, о результатах. Известно, что ралли Финляндии - это не то ралли, где победа чужеземцев нормальное явление ) И победитель в этом году - Себастьян Леб. Талантливейший автогонщик. Я рад снова видеть его на первом месте. Однако, стоит отдать должное и пилотам Форд. Несмотря на проблемы с автомобилем, Микко Хирвонен провел великолепную гонку. Это его ралли. Уверен, что если бы не технические проблемы, он поливал бы всех шампанским с самой высокой ступени пьедестала. Также отлично смотрелся и провел красивую гонку Яри-Матти Латвала. Заслуженное второе место. Очень отрадно видеть на чемпионате мира нашего соотечественника Евгения Новикова. Жаль, что который раз проблемы с техникой не дают ему выступить на полную. Мы болели и будем болеть за Евгения.

Результаты:
  1. Себастьян Лёб
  2. Яри-Матти Латвала +8.1
  3. Себастьян Ожье +12.8
  4. Микко Хирвонен +1:09.1
  5. Петтер Солберг +1:16.2
  6. Мадс Остберг +1:27.8
  7. Хеннинг Солберг +3:25.5
  8. Мэттью Уилсон +3:53.2
  9. Кими Райкконен +3:59.8
  10. Юхо Хяннинен +5:13.6
Видео обзоры от команд Citroen Total WRT, Ford Abu Dhabi WRT и ALM RUSSIA:

четверг, 21 июля 2011 г.

Google Earth в Ubuntu 11.04

Обычно, выезжая погонять на велосипеде, запускаю Sports Tracker. Это весьма приятная программа для коммуникатора. Пишет треки, выдает статистику: среднюю и максимальную скорость, пройденные километры и т.п. Так вот, сконвертировав затем полученный трек в нужный формат, здорово посмотреть его в Google Earth, которую еще надо установить. Делается это следующим образом:
  1. устанавливаем пакеты googleearth-package и lsb-core;
  2. просим googleearth-package скачать необходимые файлы и создать deb-пакет с Google Earth: sudo make-googleearth-package --force;
  3. устанавливаем полученный пакет.

среда, 13 июля 2011 г.

Будущее Qt

Думаю, что не ошибусь, если скажу, что все, кто использует в настоящее время библиотеку Qt (речь о программистах C++), серьезно обеспокоены за ее будущее и, возможно, в настоящее время "осматриваются по сторонам" в поисках альтернатив для создания кроссплатформенных приложений с графическим интерфейсом на C++. Хотя я, признаться, таковых не вижу. К сожалению.
Для понимания того, что уже случилось и что происходит в настоящий момент, рекомендуется к прочтению статья "Qt в фокусе: прошлое, настоящее и будущее", опубликованная в электронном журнале "Open Source" (выпуск 086 и выпуск 087).
Грустно все это...

14.07.2011
Хотя... Вспоминая историю про OpenOffice и его замечательную вторую жизнь в виде LibreOffice, есть надежда, что и с Qt в итоге все будет хорошо. Нельзя C++ на второй план задвинуть. Неправильно это.

среда, 29 июня 2011 г.

Индикаторы для панели Unity

В Gnome 2 верхняя панель у меня выполняла роль системного монитора плюс, разумеется, меню и трей. При переходе на Unity, чего не хватало, так это старых добрых апплетов, к которым я привык во времена Gnome 2.
Хорошие новости! Похоже, что на сегодняшний день уже существует весьма приличное количество индикаторов (аналоги апплетов) для панели Unity, что разумеется не может не радовать.
Я использую следующие индикаторы:
  1. Системный монитор indicator-multiload (ppa:indicator-multiload/stable-daily);
  2. indicator-sensors для отображения показаний аппаратных датчиков температуры (ppa:alexmurray/indicator-sensors);
  3. Менеджер буфера обмена pastie (ppa:hel-sheep/pastie);
  4. indicator-cpufreq для управления режимами работы процессора (ppa:artfwo/ppa).
Более полный список доступных индикаторов см., например, здесь.

пятница, 24 июня 2011 г.

STL и QTL

На днях мне приспичило сравнить производительность std::vector и QVector при их простейшем использовании, а сегодня на глаза попалась хорошая заметка - сравнение STL и QTL.
Вообще, в консольных приложения я использую только STL, однако, при создании кросс платформенных приложений с графическим интерфейсом, Qt сильно облегчает жизнь.

четверг, 23 июня 2011 г.

Оформление исходного кода в статьях на blogger.com

Опять же чтоб не забыть и не потерять )
При написании предыдущей заметки столкнулся с тем, что движок blogger.com не поддерживает должного оформления листингов исходного кода в статьях. Удивительно конечно, ну да ничего не поделаешь. Тем более, что решение нашлось очень быстро.

Во-первых, необходимо внести небольшие изменения в шаблон блога. Заходим в "Дизайн" -> "Изменить HTML" и в коде шаблона, после тега <head>, вставляем следующий код.
<script src='http://yandex.st/highlightjs/6.0/highlight.min.js'/>
<script type='text/javascript'>
initHighlightingOnLoad();
</script>
<link href='http://yandex.st/highlightjs/6.0/styles/default.min.css' rel='stylesheet'/>
<style>
pre&gt;code {
width: 100%; 
overflow: auto;
}
</style>
Данный код обеспечивает автоматическое распознавание языка и стиль подсветки синтаксиса по умолчанию.

Во-вторых, необходимо скачать библиотеку highlight, запустить файл export.html и подготовить свой код для вставки в статью блога. Вставку производить в режиме "Изменить HTML".

std::vector и QVector

А что мы, собственно, теряем по скорости используя QVector вместо sdt::vector? Оказывается не так уж и мало...

Машина и ПО, использовавшиеся в тесте:


Код с использованием std::vector
#include <vector>

using std::vector;

int main(int argc, char *argv[]) {

    vector<double> v;
    v.resize(10000000);

    for (size_t i=0; i<v.size(); i++) {

        v[i] = 67.687353 * (i + 13.507867) /
        (i * 45.686754) - 12.56;
    }

    return 0;
}

Код с использованием QVector
#include <QVector>

int main(int argc, char *argv[]) {

    QVector<double> v;
    v.resize(10000000);

    for (int i=0; i<v.size(); i++) {

        v[i] = 67.687353 * (i + 13.507867) /
        (i * 45.686754) - 12.56;
    }

    return 0;
}

Замеры времени выполнения программы проводились с помощью утилиты time.

Результаты: в среднем, (по пяти замерам) использование QVector увеличило время выполнения программы на 10%...

среда, 22 июня 2011 г.

g++ -Ox...

Один программист провел интересное исследование: сравнение эффективности одного и того же простого действия при использовании глобальной функции, inline глобальной функции, чистого функтора, лямбда-функции C++11 и лямбда-функции Boost.Phoenix. Полученные результаты оказались весьма интересны, в особенности то, насколько на таблицу результатов повлиял флаг g++ -Ox. Итак, при -O0 в лидеры вышел код с использованием лямбда-функции C++11, а при использовании -O3 лямбда-функция C++11 оказалась на последнем месте! В лидерах при максимальной оптимизации глобальная функция, чистый функтор и лямбда-функция Boost.Phoenix. Вот так.

Более подробно - см. первоисточник.

"Горячие" клавиши Unity

Хочется поделиться с теми, кто еще не в курсе, да и, в общем-то, чтобы самому не забыть )

Итак, речь о Unity - замечательной и очень удобной оболочке рабочего стола ОС Ubuntu, используемой мной каждый божий день.
Лично мне, зачастую очень лениво отрывать руки от клавиатуры, тянуться к мыши и потом возить курсором по экрану (да и непродуктивно это), поэтому удобные "горячие" клавиши я считаю огромным плюсом ПО с GUI (а здесь речь вообще об оболочке рабочего стола). Собственно, Unity предлагает следующий набор "горячих" клавиш для навигации и вызова некоторых ходовых функций.

  • Ctrl + Alt + T - открыть терминал
  • Кратковременное нажатие Win - открыть Dash (меню выбора приложений и поиска файлов)
  • Удерживание Win - открытие боковой панели быстрого запуска (Launcher) с подписями на иконках, состоящих из цифр и букв (назовем это номером приложения)
  • Удерживание Win + номер приложения - запуск приложения, либо его активация (в случае, если оно уже запущено)
  • Удерживание Win + Shift + номер приложения - запуск ещё одной копии программы
  • Alt + F1 - перевод фокуса на Launcher с навигацией стрелками ↑ (вверх), ↓ (вниз), запуск - Enter
  • F10 - перевод фокуса на системный трей. Перемещение осуществляется стрелками ← (назад), → (вперёд)
  • F11 - растянуть текущее окно на весь экран (выход из полноэкранного режима осуществляется теми же кнопками)
  • Win + D - свернуть все окна текущего рабочего стола
  • Win + W - отобразить окна всех рабочих столов
  • Win + S - отобразить все рабочие столы
  • Ctrl + Alt + ← / → / ↑ / ↓ - перемещение по виртуальным рабочим столам
  • Ctrl + Alt + L - заблокировать экран
  • PrtScr - сделать снимок всего рабочего стола
  • Alt + PrtScr - сделать снимок только активного окна

Источник: unityenvironment.

понедельник, 20 июня 2011 г.

WRC 2011. R07. Rally Acropolis

Применение тактических ухищрений против команды-противника еще можно понять, хотя и это мне, как болельщику, сильно не по нраву, но внутри команды... Это уже, как говорится, ни в какие ворота. Лично мое мнение - победа Ожье на этом ралли - гнилая победа.

Итак, результаты (взято с worldrally.ru).
  1. Sebastien Ogier Citroen 4h04m44.3s
  2. Sebastien Loeb Citroen + 10.5s
  3. Mikko Hirvonen Ford + 13.5s
  4. Petter Solberg Solberg Citroen + 38.8s
  5. Henning Solberg Stobart Ford + 5m24.7s
  6. Matthew Wilson Stobart Ford + 6m54.7s
  7. Kimi Raikkonen Ice 1 Citroen + 8m29.4s
  8. Juho Hanninen Red Bull Skoda + 11m34.7s
  9. Jari-Matti Latvala Ford + 13m08.8s
  10. Dennis Kuipers FERM Ford + 15m10.1s

понедельник, 30 мая 2011 г.

WRC 2011. R06. Rally Argentina

Себастьян Леб - победитель Rally Argentina! Фантастический гонщик!

Результаты ралли (взято с almrally.ru):
  1. Себастьян Лёб
  2. Микко Хирвонен +2.4
  3. Себастьян Ожье +7.6
  4. Петтер Солберг +32.6
  5. Мадс Остберг +5:16.8
  6. Федерико Вильягра +6:48.5
  7. Яри-Матти Латвала +9:24.5
  8. Мэттью Уилсон +13:32.7
  9. Хейден Пэддон +25:43.8
  10. Патрик Флодин +33:34.2
Таблицы чемпионата можно посмотреть на сайте worldrally.

воскресенье, 29 мая 2011 г.

C++11 и Qt

Известно, что уже сейчас мы можем использовать C++11 c Qt 4.7, однако в Qt 4.8 в нашем распоряжении будут еще и новые макросы:

Q_COMPILER_RVALUE_REFS
Q_COMPILER_DECLTYPE
Q_COMPILER_VARIADIC_TEMPLATES
Q_COMPILER_AUTO_TYPE
Q_COMPILER_EXTERN_TEMPLATES
Q_COMPILER_DEFAULT_DELETE_MEMBERS
Q_COMPILER_CLASS_ENUM
Q_COMPILER_INITIALIZER_LISTS
Q_COMPILER_LAMBDA
Q_COMPILER_UNICODE_STRINGS

Также, в Qt 4.8 нас порадует новый конструктор у QVector, QList, и QStringList, который позволит инициализировать объект следующим образом:

QVector<int> data { 1, 2, 10, 42, 50, 123 };
QStringList list = { QLatin1String("foo"), QLatin1String("bar") };

Итак, для использования новых возможностей, предоставляемых C++11, добавьте в файл Qt проекта строку:

QMAKE_CXXFLAGS += -std=c++0x

Подробнее о новых возможностях можно узнать на сайте labs.qt.nokia.com.

пятница, 27 мая 2011 г.

Италия. Сардиния. WRC 2011 R05

Интересно съездить куда-нибудь не в составе туристической группы, а просто так, сам по себе. В первом случае тебе все якобы рады, улыбаются, теплый прием и т.д. (разумеется, разные случаи бывают, но в основном вроде так). Совершенно иная картина ждет путешественника, прибывшего в другую страну не в сезон (если страна популярна среди любителей жарить животы на солнце) и остановившегося в какой-нибудь провинции.
Мне довелось побывать в городке Мурта Мария недалеко от г. Олбия на Сардинии. Останавливался в отеле Даниэль (кстати, на гугл картах он отмечен как 4 звезды, в то время как на самом деле только 3). Отель этот просто песня! Когда кроме нас, русских, в отеле были какие-то итальянцы, то на завтраке, помимо йогурта были и колбаса и хлеб. Стоило только итальянцам съехать - все. Ни хлеба, ни колбасы! Даже чай вместо липтона какой-то no name давали... Вот это истинное отношение. Без лживых масок. Честно говоря, в данном случае, я бы предпочел ложь, но с колбасой ))) А еще в этом чудесном отеле Даниэль очень много муравьев. Просто кошмар. Оставил один раз ноутбук на столе на ночь... На утро целый час потратил вытрясая из него муравьев. Они все лезли и лезли. Отовсюду. Из клавиатуры, из радиатора, из всех щелей. В комнате было только 2 места куда ни один муравей не рисковал забираться - кровать и шкаф. Почему? Не знаю. Видимо, обработаны чем-нибудь были.
Ну да черт с ним с этим отелем. Самое главное - мне удалось побывать на пятом этапе чемпионата мира по классическому ралли - Ралли Сардинии. Застал я только Power Stage, но и тому несказанно рад!
Фото ралли можно посмотреть в моем альбоме и в авторской галерее Андрея Фомченкова.

вторник, 22 февраля 2011 г.

Релиз r49-11.10

Новая версия ПО для расчета выбросов вредных веществ с отработавшими газами дизельных двигателей.
  1. Исправлена ошибка. Некорректное обновление содержимого выпадающих списков диалога импорта данных.
  2. Автоматическое перечитывание импортируемых данных из файла при изменении настроек импорта или изменении таблицы назначения.
  3. Обновлено руководство "Быстрый старт".
Сборки x86_64 под Linux и x86 под Windows доступны на github.

воскресенье, 20 февраля 2011 г.

Релиз r49-11.08

  1. В связи с неоднократными просьбами, названия параметров CNOx, CCO, CCH, CCO2in, CCO2out, CO2 изменены на C_NOx, C_CO, C_CH, C_CO2in, C_CO2out, C_O2.
  2. Исправлена ошибка. Как оказалось, не работал чекбокс "Создавать отчеты" на панели конфигурации расчета (отчеты создавались вне зависимости от его состояния)...
  3. Внутренние улучшения в диалоге импорта данных.
  4. Обновлено руководство "Быстрый старт".

пятница, 4 февраля 2011 г.

На github перезалиты сборки r49-11.07 с включенными значками в главном меню Qr49.

четверг, 3 февраля 2011 г.

Релиз r49-11.07

  1. UTF-8 во всем проекте.
  2. Новая версия класса csvRead.
  3. Импорт данных из сторонних файлов, аналогичных получаемым на AVL Puma Open (пункт меню "Файл" - "Импорт данных", кнопка на панели инструментов, диалог "Импорт данных").
  4. Автоматическое увеличение числа строк таблиц "Расчет удельных выбросов" и "Внешняя скоростная характеристика" при вставке и импорте данных.
  5. Обновлена информация о стандартах (меню "Справка" - "Описание стандартов").
  6. Обновлен перевод интерфейса на русский язык.
  7. В составе дистрибутива (каталог Documentation) добавлено руководство "Быстрый старт".

четверг, 27 января 2011 г.

Релиз r49-11.06

  1. В сообщениях об ошибках теперь выводится информация о функции, в которой что-то пошло не так.
  2. Улучшение в поведении программы в нештатных ситуациях.
  3. Для объектов-наследников QObject возвращен delete. Лучше перестраховаться...
  4. Некоторые улучшения стиля кода.
  5. Улучшение производительности функции проверки значений массивов.
  6. Обновлен файл перевода интерфейса на русский язык.

понедельник, 17 января 2011 г.

Релиз r49-11.04

  1. Улучшено удобство использования программы - установлена двусторонняя связь между табами главного окна и заданием на расчет (панель настройки расчета - task).
  2. Установлена корректная ширина столбца при формировании файла-заготовки для расчета выбросов вредных веществ.

воскресенье, 16 января 2011 г.

Релиз r49-11.03

  1. Весь проект переведен на использование контейнеров библиотеки Qt вместо низкоуровневых массивов с ручным управлением памятью.
  2. Удалены операторы освобождения памяти вручную для объектов, среди предков которых есть QObject.
  3. Для некоторых объектов, не имеющих в предках QObject, управление памятью реализовано через "умные" указатели.
  4. Улучшения стиля кода по всему проекту.