вторник, 21 октября 2008 г.

Жесткий диск под контролем

Когда-то у меня был старенький Pentium 133 с жестким диском, страшно подумать, 1.6 Гб. Я тогда еще играл в компьютерные игрушки, любил покопаться в разных программах, программировал потихоньку... Полтора гига — это даже тогда было мало. В общем, свободное дисковое пространство постоянно было проблемой, и я прилагал неимоверные усилия для освобождения каждых 10 Мб. Я помнил практически наизусть, где какие файлы у меня лежат и что сколько занимает. Я дошел даже до того, чтобы удалять некоторые неиспользуемые системые файлы. Потом появился винчестер на 20 Гб, но проблема не исчезла, а просто приобрела несколько другие масштабы.

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

Сама идея тривиальна — наглядно изобразить относительное распределение занимаемого места между каталогами на диске.



Первое, что я нашел — i.Disk. Простая как валенок и надежная как автомат Калашникова. Проверена на живых блондинках. Единственная, по сути, функция — отображать занимаемое место в виде гистограммы. Можно еще скопировать статистику по выделенной папке в буфер обмена в формате CSV или в виде текстового дерева (русские буквы не отображаются). Есть еще загадочная функция "Replicate Folders", видимо, призванная как-то по-умному копировать один каталог в другой, с фильтрацией и прочими рюшечками.
Неприятно удивило, что ежели просканировать, скажем, сначала диск C:, а потом диск D:, то последующий выбор C: приведет к повторному его сканированию. Это не говоря уже о том, что сканирование само по себе неторопливо. В погоне за простотой автор, видимо, поленился прикрутить простейшее кэширование результатов.





Другая программа, Need4Space, не так проста. Тут уже одной кнопкой не обойтись. Она может не только во все закоулки жесткого диска свой любопытный нос засунуть и доложить о результатах, но и с готовностью предложит разнообразные услуги по высвобождению несправедливо занятого пространства. Кроме того, через Need4Space покаявшиеся пираты смогут удалить из системы незаконно установленные программы, непокаявшиеся — лицензионный софт, а жертвы безруких программистов получат возможность почистить реестр от недоудаленных приложений-призраков. Поиск сделан несколько нелогично, но разобраться можно.





И, наконец, звезда нашего сегодняшнего хит-парада — немецкое поделие с нехитрым названием Scanner. Как и i.Disk, выполняет фактически только одну (такую же) функци. Но как изящно! Честное слово, я не мог оторваться от этого чуда с полчаса, тыкая в него мышкой и радуясь как ребенок. В виде концентрических круговых диаграмм можно представить не только один диск, но и сразу все вместе, что особенно приятно.
Но, надо признать, сканирует долго. Дольше даже, чем i.Disk. Зато кэшировать немецкие программисты обучены — после первоначального сканирования все работает без задержек, сколько не тыкай.





Программы сегодня все бесплатные, как на подбор.

среда, 1 октября 2008 г.

Печатай и беги

Эволюция пользователя Windows проходит следующим образом. Для запуска приложений виндузятник-неофит пользуется мышкой, тыкая в "Пуск", "Программы" и т.д. Занятие это неспешное и очень умиротворяющее. Но со временем человек понимает, что как-то это неправильно — делать столько движений мышкой ради запуска одной из десятка программ. Здесь-то и находится ключевой момент эволюции, из которого все идут в разные стороны. Варианты возможны разные:
  • создавать кучу ярлыков на рабочем столе (тупиковая ветвь, поскольку через месяц рабочий стол покрывается ровным слоем всякого нужного и ненужного барахла, в котором может разобраться только автор этой помойки, и то не сразу);
  • вешать на ярлыки горячие клавиши;
  • создавать ярлыки в панели быстрого запуска;
  • пользоваться функцией "Run...";
  • пользоваться постоянно открытой консолью (для тру-извращенцев или как вариант страшной кары для линуксоида);
  • поставить какие-нибудь "специальные программки".
Долгое время я был апологетом панели быстрого запуска, благо рабочий набор у меня относительно постоянный и не приходится часто что-то запускать. Но разум отказывался смиряться с несправедливостью, из-за которой некоторые программы получали прописку возле кнопки "Пуск" (этакая виндовая Рублевка), а остальные томились в недрах иерархии меню "Программы".
В общем, разум поднапрягся, погуглил и нашел-таки парочку шибко полезных программок для а) ускорения запуска всего-чего-угодно и б) повышения чувства собственной крутости.

Launchy — этакая всплывающая командная строка в стиле Vista. По нажатию определенной комбинации клавиш (по умолчанию Alt-Space) вылезает окошко. В нем можно что-нибудь написать, а оно, в свою очередь, проявит зачатки интеллекта и попытается понять, что вы имели в виду. Если предложенный вариант вас не устраивает, через некоторое время озадаченное окошко выдаст список того, что (по его окошечьему мнению) может иметь какое-то отношение к тому, что вы там навводили.

Launchy
Вдумчивый пользователь через пару минут пользования сразу смекнет, что, мол, вышеупомянутый интеллект ограничивается деревом меню "Программы". Так оно и есть. Но если залезть в настройки (видите на рисунке в правом верхнем углу шестеренку?), то можно там добавить и другие папки и даже типы файлов, которые Launchy будет индексировать.
Когда один из предложенных в ответ на введенную строку вариантов устраивает, можно просто нажать Enter, чтобы его запустить. Если хочется указать параметры запуска, жмем Tab, пишем параметры, и снова Enter. Простенько и со вкусом. Кстати, входящий в поставку плагин Runny позволяет создавать собственные алиасы — полезно, если нужно запускать некие утилиты с кучей параметров. Например, создать команду "mailto: $1" с алиасом "mail" (пример из документации), после чего написание в окне Launchy команды "mail (Tab) vasya@pupkin.net" приведет к открытию умолчального почтового клиента в режиме создания нового письма Васе Пупкину. Плагин-побратим Weby позволяет делать то же самое с интернет-адресами, там даже по умолчанию забито несколько (буржуйских) сайтов. Главное, Гугл не забыли.
Приятно также отметить, что есть версия для Linux. Неприятно отметить, что при первом запуске в браузере открывается страница-попрошайка "Donate!", что на мой взгляд, просто хулиганство. На первый взгляд порадовал режим работы "portable", когда все настройки и индекс сохраняются там же, где программа и установлена. Но на деле, если Launchy индексирует множество каталогов, то, скажем, установка ее на флэшку приведет к тому, что при втыкании оной в другой компьютер весь накопленный индекс станет бесполезным, и его придется делать снова. Да и потом, портабельное использование предполагает, что сначала программу все же установят.

Другой кандидат на тот же пост — TypeAndRun — творение российского программиста Евгения Галанцева. Принципиальным отличием от Launchy я бы назвал ориентированность на более продвинутую публику. Подчеркнуто минималистичный дизайн, куча настроек, попытка приблизить поведение к оболочке bash, не слишком внятная логика работы... Зато, как и полагается, возможности поражают. Полнейшая портабельность (нет даже возможности установки), куча плагинов, включая отображение списка процессов и управление WinAMP, горячие клавиши, возможность добавление файла в список команд из контекстного меню...
Справки по плагинам, можно сказать, нет.

TypeAndRun
Резюме будет противоречивое. В блогах (например, здесь, здесь и тут) хвалят (кто бы сомневался) TypeAndRun. Не иначе как из ностальгии по командной строке Юникс-подобных. Мне лично она показалась не слишком удобной и чрезмерно перегруженной функциями, а порой и просто нелогичной. Launchy в этом отношении более сбалансированный и какой-то понятный. Тем не менее, я, поигравшись некоторое время с этими микрошедеврами, снес оба. Потому что понял, что за весь день, проведенный за компьютером, в лучшем случае запускаю пять-шесть программ. Но кому-то наверняка понравится и покажется удобным и полезным. А уж посмотреть однозначно всем стоит.
Не надо также думать, что других подобных программ нет. Отнюдь.
В общем, наступил я на горло собственному снобизму и вернулся к варианту с панелью быстрого запуска.

вторник, 2 сентября 2008 г.

Браузер от Google

Честно говоря, я чуть со стула не упал, когда узнал. Меня спасло любопытство - хотелось скорее посмотреть, что же это такое. Итак, в самом деле, Google сегодня выпускает бета-версию своего браузера Chrome в более чем 100 странах. Будем надеяться, и нам перепадет.
К сожалению, бета-версия будет доступна только под Windows, но гугловцы обещают, что конечные версии будут доступны и для Mac и Linux. Насчет модели распространения можно уверенно сказать, что она будет бесплатной, а вот насчет кода есть сомнения. Вроде бы код можно будет посмотреть:
We've used components from Apple's WebKit and Mozilla's Firefox, among others -- and in that spirit, we are making all of our code open source as well.
Но что-то мне с трудом верится, честно говоря, что Google последует модели open source. Все же один из основных их козырей - команда высококлассных специалистов, и пускать в святая святых посторонних людей они вряд ли станут. Да и не водилось у Google склонности к опенсорсу. Скорее, код если и будет доступен, то только для ознакомления и обнаружения уязвимостей. Хотя кто знает, open source нынче в моде...

Утверждается, что браузер написан с нуля (хотя и с использованием некоторых сторонних наработок), и что главный упор делался на безопасность. Теперь каждая вкладка обрабатывается отдельным процессом, в результате чего обеспечивается полная изоляция открытых страниц. Затея благая, но представляю, как будет выглядеть Task Manager... Хотя, может быть, они под процессами имели в виду что-то вроде дотнетовских доменов? Кто знает.
Движок браузера - опенсорсный WebKit, тот же что используется в Android. Это хорошо, это совместимость мобильного браузера с десктопным.

Но это все так, цветочки. Самое интересное начинается, когда дело доходит до JavaScript. В пресс-релизе это описано туманно:
We also built a more powerful JavaScript engine, V8, to power the next generation of web applications that aren't even possible in today's browsers.
Ключевая фраза здесь "that aren't even possible in today's browsers". Это означает только одно - что Гугл самостоятельно расширяет JavaScript, причем это расширение не будет совместимо с существующими браузерами. От же ловкие какие! Учитывая превосходство Google в мире веб-ориентированных сервисов, нетрудно догадаться, что случится. Будет объявлено, что полная функциональность их сервисов доступна только из Chrome. Пока разработчики остальных браузеров буду, матерясь и обливаясь потом, приводить свою реализацию JavaScript к гугловским стандартам, те усвистят вообще за горизонт. Замечательный козырь в войне браузеров. Нет, серьезно, я уверен, что гугловский браузер довольно быстро оттяпает серьезную долю рынка. Хотя, вроде бы, виртуальная машина V8 будет открытой - это несколько снижает ее конкурентную ценность.
По существу про новую виртуальную машину JavaScript в Chrome можно сказать немного. Во-первых, она станет JIT-компилируемой (еще один шаг к полноценным приложениям, выполняемым в браузере!), со всеми плюшками вроде нормальной сборки мусора, компиляции в машинные коды и оптимизацией под архитектуру. Во-вторых, сам язык приобретет некоторые новые качества, например, неявное определение классов.

В общем, граждане, ясно говорю вам, грядет революция в веб-технологиях. И на коне будут те, кто вовремя освоют JavaScript. Я понимаю, что формат немного не для этого блога, и я обязательно раскрою тему подробнее в своем typedef'е, но все же и для мира пользователей это не менее важное событие. Пожалуй, браузеры - это единственная область в софтостроении, где присутствует полноценная, без дураков, конкуренция. И это не может не радовать, поскольку дальше все будет только лучше (в отличие от сами-знаете-какой компании, которая выпускает сами-знаете-что).

Подробности про новый браузер можно почитать в виде комиксов.

понедельник, 1 сентября 2008 г.

PDF-читатели: гонка за лидером

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

Читательство PDF-, равно как и DJVU-файлов, для меня - ежедневная действительность, без которой я жизни не представляю. А посему проблема выбора соответствующего софта для меня весьма актуальна.
Adobe Acrobat 9Слухи об Acrobat Reader 9 гласили, что адобовские программисты превзошли сами себя, и что нынешняя версия работает достаточно быстро. Вспоминая, насколько тормознутыми были предыдущие версии, я относился к таким заявлениям достаточно скептически. Но в конце концов настойчивость слухов взяла свое, и я решился. Выкачал без малого 34 Мб установщика, запустил. Установщик пошуршал и порекомендовал "перезагрузиться для завершения установки". Ну это, братцы, вообще хулиганство. Я понимаю там, антивирус какой-нибудь или еще какая гадость, запускающая лапы в ядро системы, но просмотровщик!.. В общем, я с презрением отверг кощунственное предложение. Как оказалось, все работает и так.STDU Viewer
Пока качался Акробат, я нашел в списке программ, ожидающих обзора, еще один релевантный экземпляр: STDU Viewer. Программа позиционируется как "Scientific and technical documentation utility" (то есть, средство просмотра технической и научной литературы, что мне как раз и нужно было) и умеет читать не только PDF, но еще и DJVU и даже TIFF. Этакий комбайн. Установщик весит всего 1,4 Мб, и процесс установки не в пример шустрее адобовского монстра. И перезагрузки не требует.

Сравнивал я оба творения со своими старыми добрыми Foxit Reader версии 2.2 и WinDjView версии 0.5.
Как ни удивительно, оба новичка показали неожиданно хорошие результаты по времени загрузки и открытию небольших файлов - и то, и другое они выполняют практически мгновенно. С большими файлами тоже более-менее неплохо справляются, но STDU Viewer ощутимо подтормаживает при подгрузке очередных фрагментов. Даже Foxit Reader, эталон в отношении скорости, иногда притормаживал при быстрой прокрутке. Adobe Reader же прокручивал файл со сверхъестественной плавностью и скоростью, тут он явно лидер, хотя по потреблению памяти тоже легко обходит всех остальных.
Здоровенный, жирный минус Акробата выявился почти сразу: он иногда отказывается отображать структуру файла в виде навигационного дерева. На некоторых файлах отображает, на некоторых - нет. Foxit Reader и STDU Viewer на тех же файлах дерево показывают всегда. Учитывая, что формат PDF - исконно адобовский, это большой для них позор.
Для файлов DejaVu сравнение окончилось, едва успев начаться. STDU Viewer позволяет прокручивать DJVU-файл только невообразимо медленно. Звучит это довольно дико, но так оно и есть: такое количество оборотов колесика мышки, которое нужно потратить, чтобы прокрутить файл на 10 страниц, в WinDjView хватит на прокрутку всей 500-страничной книги. В результате просмотр в STDU Viewer становится совершенно невозможным.

Резюме предсказуемо. Снес обоих претендентов на чемпионский титул и убедился в правильности своего изначального выбора.

понедельник, 30 июня 2008 г.

О жизни, вселенной и вообще

Я вернулся. Дальше болтовня, можно не читать.

Нет, определенно, мои планы не простираются настолько далеко, чтобы дать известный ответ на неизвестный вопрос. И семь с половиной миллионов лет для меня тоже многовато. Но немногим более девяти месяцев для написания диплома мне все же понадобилось, и нельзя сказать, что я уж очень жалею, что настолько долго не писал в блог. Он все это время жил своей жизнью: приходили комментарии, подростал PR, мне на почту приходили пожелания и предложения. Посещаемость выросла. Мне даже начало казаться, что я тут немного лишний.

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

Казалось бы, причем здесь Адамс? А притом, что то, чем я занимаюсь, как раз и напоминает поиск ответа на вопрос, который звучит очень похоже: "Какая программа лучше всего подходит для *****?". Никаких проблем: любой представитель форумного планктона запросто даст развернутый и аргументированный ответ. Правда, в нем будут часто фигурировать слова "отстой", "рулез" и "маздай", не говоря уже о том, что другие представители могут иметь противоположное мнение (выраженное тем же лексиконом). Да и мнение в наше время - штука непостоянная. Ответ "42" в таких условиях будет гораздо информативнее.

Можно вооружиться циркулем и логарифмической линейкой и начать сравнивать занимаемую память, скорость работы, количество фич, приплести сюда метрики интерфейса ("я отформатирую этот документ за 37 кликов!") и даже психоэргономическую характеристику цветовой гаммы ("синий хорошо воспринимается дальтониками"). Только вот результат окажется тем же самым. То есть совершенно бесполезным.

Единственным вменяемым ответом на вопрос, заданный двумя абзацами выше, будет рекурсивное "Лучше всего подходит для ***** программа, которая вам лучше всего подходит". Рынком софта владеет мнение. Ну, и еще сговор производителей. Но если на последнее обычный человек повлиять никак не сможет, то мнением можно с некоторым успехом манипулировать. Скажем, я распишу в этом блоге, что некий текстовый редактор N занимает 2 Мб оперативной памяти, позволяет редактировать документы из 10000 страниц без тормозов, умеет работать с PDF и проигрывать фильмы. И все это бесплатно. Короче, всем рекомендую. Читатели тут же разделятся на две группы. Первые установят N, удалят из системы все остальные редакторы и счастливо проживут остаток своих дней, с презрением поглядывая на пользователей редакторов O и P ("ну как же, Бакулин ведь сказал, что это самый лучший редактор, а вы все ничего не понимаете"). Вторые в лучшем случае минут пять посмотрят на N, удалят, и вернутся к своему старому доброму редактору E (ведь в нем есть удобнейшая фича - встроенный ICQ-клиент!).

Конечно, есть и другие люди, которые, повторяя мой путь, скрупулезно изучат N, определят, насколько его использование может повысить их производительность, сколько времени уйдет на переобучение, взвесят все "за" и "против" и, если есть преимущество, полностью перейдут на N. Таких людей мало, и они обычно скучные зануды вроде меня.

К чему я это все говорю? А к тому, что не все йогурты одинаково полезны и не стоит принимать на веру все, что я тут понапишу. Возможно, где-то я бываю необъективным, что-то упускаю, а вы потом придете ко мне в комменты и скажете, что я во всем виноват и что "эта программа - отстой". И если со вторым утверждением я еще смогу согласиться (потому что если программа не отстой, то это редкая случайность), то вину свою уж точно не признаю. ССЗБ.