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

Как я регистрировал свой автомобиль

Как ни странно, а пост о программном обеспечении.

Регистрировал я тут свой новый автомобиль.
Тема сама по себе банальна - пришел, отстоял 50 минут очередь, сдал доки в окно номер 1, посидел 50 минут, получил документы, пошел в Сбербанк, постоял 50 минут, заплатил пошлину, пришел, отдал в окно номер 2, посидел 50 минут, получил номера из окна номер 3 (есть еще окно номер 4, но это для юр. лиц), прикрутил номера, поехать бы домой счастливым, но... Спросил какую-то женщину, о том, сколько она стоит в очереди для того, чтобы пройти ТО - оказалось 30 часов (т.е. ночевала в машине). Прихожу в ужас, еду домой с ощущением предстоящего ужаса провести те же 30 часов в своей машине.

Но это все не о ПО.

Сегодня делал доверенность на жену. Оказалось, что в одном месте в VIN букву W заменили на V (впредь буду внимательнее). Жуть - переделывать документы, опять стоять в очередях. Звоню (50 минут, как вы догадались), дозвонился - оказывается у них ихнее ПО не печатает W, и на оборотной стороне свидетельства о регистрации добавлена запись о том, что видите-ли VIN надо читать с W, а не V.

Собственно, все. Причем тут ПО?

Судя по всему, и ихнее ПО при печати широких VIN делает так, что широкие строки (а W - буква широкая) вылазят за пределы области, и последняя цифра не допечатывается. Может еще как, но скорее всего так.

Все бы ничего, если на оборотной стороне в том самом комментарии о том, как надо на самом деле читать VIN, не был использован шрифт SUPER-SUPER-SUPER-SUPER-BOLD ARIAL размера 4 кегля - даже в лупу не поймешь, что там написано (и кто ГИБДД такое ПО писал?)...

В общем, дам универсальный совет программиста - читайте внимательнее!!!

среда, 20 октября 2010 г.

Молодцы эти ребята из Apple

Добрый день.

ПРЕДЫСТОРИЯ

Неожиданно я получил сегодня подтверждение своей собственной мысли - Apple за меня слишком много думает и мне это не нравится.

У меня есть iPhone. Хороший девайс. Но пользоваться я им не смог - отдал ребенку.
Если бы у меня не было такого девайса, то мое отношение к Apple можно было бы счесть за зависть. Но девайс то есть...

Казалось бы, чем объяснить подобное мое отношение к iPhone и к Apple как к производителю?

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

На своей субъективности я и остановился в размышлениях о моем отношении к iPhone и к Apple, отдавая телефон (модно - гаджет) ребенку полгода назад (ребенок счастлив!).

И ВОТ СЕГОДНЯ...

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

Если кратко, то я в тестовых целях (что-то типа демо-версии) даю дистрибутив своей программы (программа для Windows), но для его запуска нужен специальный текстовый файл с кодом.

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

Почему не работает?! Мистика!

Я свою программу знаю - это может быть только если файл "кривой".

Прошу прислать пользователя файл. Файл вроде правильный, но на 5 байт меньше. После разбирательства оказалось, что переводы строки (файл то текстовый) реализованы через символ #10, а не через пару #10#13, как принято в Windows.

Мистика! Где же он такой файл взял?! Файл явно мой, но перекодированный.

После ряда неудачный предположений с моей стороны оказалось, что пользователь пользуется ноутбуком Mac и файл он скачал через браузер, встроенный в Mac (Safari, вроде). И только потом файл был перенесен в Windows.

И представьте себе - этот Mac не говоря ни слова взял и перекодировал файл, заменив #10#13 на #10!

Лично мне данный факт видится возмутительным!

Все, закачиваю. Я же сам сказал, что мое отношение субъективно...

PS. Хотя все это возмущение в русле идеологии, заложенной в сами продукты Apple. Подробно об этом пишет Гай Кавасаки (http://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B2%D0%B0%D1%81%D0%B0%D0%BA%D0%B8,_%D0%93%D0%B0%D0%B9). У него книга "Стартап" есть. Вполне интересно, как промыть мозги потребителю. Книга не интересна будет IT-специалисту, я думаю. Скорее она для тех, кто хочет повторить успех Apple ))
И вот именно сегодня я понял как раз мысль Гая: Apple осознанно рождает противоречивый клубок отношений к своим продуктам - должны быть фанаты и ненавистники - в этом коммерческий успех! Гады )

среда, 15 сентября 2010 г.

Что такое plugin-container.exe?

Я пользуюсь браузером FireFox.
Недавно обновился до версии 3.6.8.
Сразу заметил, что сильно стало тормозить.
Появился новый рожденным самим FF процесс plugin-container.exe, который на моем слабом компьютере отъедал 10% CPU (или даже больше).
Порылся в интернете, нашел четко по теме http://www.makak.ru/2010/06/26/chto-takoe-plugin-container-exe/.
Если кратко, то FF теперь все плугины (а у меня это Flush Player) выполняет в отдельном процессе - вроде так безопасней.
Сделал как советуют - отключил выделение плугинов в отдельный процесс.
Все заработало намного быстрее!

суббота, 8 мая 2010 г.

Как я устанавливал DLINK DIR-615

Купил я себе сабж. Дальше эмоции... можно не читать.

Сразу скажу, что производитель сабжа - урод, но не полный, а процентов так на 10%.

Итак.

Есть бумажная инструкция производителя по настройке - 400 символов (сам считал). Т.е. мало.

Сделал все как в инструкции. В результате лишился настроек интернета у своего текущего LAN-подключения (20 минут висел на телефоне, пока дождался службы поддержки - продиктовали настройки).

В итоге вообще не фига не заработало - ни LAN, ни Wi-Fi. После введения настроек от поддержки LAN заработал.

Выпил первую бутылку пива.

Включил этот девайс без инструкции. С компьютера жены нашел его, настроил (IP, Mask, DNS, Gateway, MAC). У нее все заработало. На моем ноуте - не работает!

Долго думал над фразой на моем ноуте: в настоящий момент используется Wi-Fi-сеть DOM3KV104 (у меня квартира, замечу, 93, т.е. точно не моя сеть). В общем находил я в 104 квартире эту сеть упорно целый час. Если пытаешься искать другую, то говорит, что не может ничего другого найти, т.к. у меня установлена некая другая софтина, которая занимается поиском Wi-Fi сетей (не не уроды?! это я про Windows XP), и я должен использовать ее.

И тут я понимаю! У меня отключена искалка сетей Wi-Fi. Ищу в своей TOSHIBA (у производителя ноута до фига утилит) соответствующую тулзу - не может найти, т.к. в компьютере установлена другая софтина, которая занимается поиском беспроводных сетей (ну не пидары?! это я уже про TOSHIBA), и я должен использовать ее.

Еще через час меня посещает мысль - все снести и восстановиться из ноут бекапа.
Четвертая бутылка пива помогла этого не делать.

И тут я решаю полазить по службам - и точно: служба "Беспроводная настройка" отключена! Включил - все заработало как часы сразу же. Видимо, я отключил службу сам.

Итоги:
1. Моя вина - 50%: не фиг отключать службы, а потом забывать про это.
2. Windows - 40%: могли бы в своей искалке беспроводных сетей указать на факт остановки службы.
3. Установщик DLINK - 10%: могли бы сказать аналогично пункту 2 и при этом не стирать мои текущие настройки.

Вывод:
1. На ноутах не надо отключать службу "Беспроводная настройка"

Удачи в настройках!

среда, 14 апреля 2010 г.

Самый простой профайлер для Дельфи

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

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

А как понять, что тормозит больше всего?

Самый простой вариант - использовать QueryPerformanceCounter перед и после вызова функции. Но функций много. Перед какой ставить-то?

Где бы взять хотя бы намек на то, какую бы функцию надо анализировать внимательно, а на какие можно забить?

Погуглив я нашел несколько семпловых профайлеров. Искал-то я просто профайлеры, но нашел именно семпловые.

Насколько я понял, такие профайлеры наблюдают за работой программы и периодически анализируют - какой конкретно код выполняется? И вот на основе частоты выполнения конкретного бинарного кода (семплов) профайлер делает вывод - какая же функция чаще всего выполняется и больше всего (как следствие) тормозит. Для нахождения имени функции используется отладочная информация, например, *.MAP файл проекта.
Добавлю - в программе не надо делать ни единого изменения - можно использовать обычный бинарник!!!

Я использовал http://delphitools.info/samplingprofiler. Он немного глючил у меня. Но в целом работал.

В итоге я нашел функции, которые тормозили больше всего. Самое удивительное, что это были не те функции, на которые я думал. В итоге я ускорил свой код (мат. вычисления экономической модели) в 2 раза (факт ускорения подтверждает замер времени до и после выполнения расчета)!!!

Всем успехов! Профайлеры - это не так страшно.

суббота, 14 ноября 2009 г.

Вредит ли хобби

Про жизнь.

Бытует мнение, что человек не может жить без хобби.

У меня до 2003 года было хобби - игра на бас-гитаре. Потом продал, решил, что вырос из этого. За шесть последних лет (без хобби) я стал профессиональным программистом.

А вот тут побывал на концерте. Увидел свой старый бас и решил снова заиметь хобби. Пошел в магазин музыкальный. И реально офигел - за шесть лет цены на гитары выросли в 2.5 раза!!! Fender Jazz Bass американский (у меня был именно такой) сейчас стоит от 75 тыс. руб.

Посему купил Warwick Corvetter Standart Bubinga с пассивными звучками и электроникой. Доволен как слон!

Надеюсь шестилетний перерыв в хобби сделает удовольствие от него только острее!!!

ЗЫ. Сегодня весь вечер лабал (это играл, значит). Сразу шутка (профессиональная, для бас-гитаристов) родилась - я ничего не забыл, все помню, только получается вот фигово )))

суббота, 7 ноября 2009 г.

Борьба с Семантеком или почему я в очередной раз люблю Google

Два года назад прямо перед отпуском мне было нужно срочно выбрать антивирус на новый ноутбук. Время на поиск было где-то час или два. А т.к. я сторонник легального софта, то купил, что было проще купить по MasterCard'у, а именно - Norton Internet Security.

Критики много о нем слышал, но за 1.5 года у меня не было ни одной проблемы с ним - где я только не лажу в интернете, а вирусов нет.

Но вот я обнаружил, что этот семантек начинает зажирать много места в папке C:\Program Files\Common Files\Symantec Shared\VirusDefs. У меня там было 6Гб данных, которые нельзя было удалить!!!

Задачу я решил. Излагаю ниже как - может кому полезно будет, кто столкнулся с аналогичной проблемой.

Час поисков по саппорту выявил, что нужно у авторов брать какую-то утилиту - она может почистить эти данные. Причем, ее нужно специально заказать через тикет (запрос в службу поддежки). А у меня 2Мб на диске осталось!!! Нервы, сами понимаете...

И вот тут приходит на помощь Гугл. Ну как всегда. Вот аналогичный вопрос - http://groups.google.com/group/symantec.support.winnt.nortonantivirus.general/browse_thread/thread/9bded8b605559e85/4e3da41c11b97548?lnk=raot. Обошлись без обращения в службу поддержки.

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

Сделал как сказали - полет нормальный (нужно было только потом не забыть обновить сигнатуры вирусов).

Ищите гуглом!!!