Блог:Стас Фомин
Блог Стаса Фомина связанный с ITшными активностями:
- разработка
- тестирование
- документирование
- управление разработкой
- лайфхаки
Source(s): Blog:Стас Фомин
Open-source проекты (то, что не попадает в тематические блоги на этом сайте), выступления на конференциях, отзывы, рецензии и все-такое.
Source(s): Blog:Стас Фомин
Подписаться:
2008-09-25 РИТ:Высокие нагрузки-2008 (2)
2 День первый2.1 Что такое нагрузка
Хороший доклад, «еще раз о компьютерной архитектуре от практика-железячника».
Диски, память, сеть. Кэш, кэш, кэш.
Прочувствуйте «физику» процесса, подивитесь огромному GAPу эффективности диска на последовательном и рандомном доступе.
Мимоходом «похоронены» SAS/SCSI диски — их удел только в «кеширующих» машинах с высоковероятным рандом-доступом, а в основном нечего выделываться, берите обычные SATA и используйте правильные алгоритмы, (сортировки дисковых массивов — только слиянием и т. п.).
RAIDы вроде тоже заругали (или в другом докладе, не помню) — смысл, что надежность должна обеспечиваться уровнем выше, типа вместо 3 живучих «Тигров» пусть будет 30 Т-34.
По памяти и CPU был тезис, что хотя многопроцессность была отстой, современная многотредовость рулит (тредов должно быть не меньше, чем дисков плюс процессоров, а еще лучше заложить запас).
AMD с привязкой памяти к процессорам must die.2.2 О проектах, отягощенных производительностью
Очень ценный доклад, наиболее профильный для нашей компании. Докладчик сразу отметил, что сейчас есть два самых распространенных полюса систем:
общедоступная вебсистема, дофига пользователей, большие объемы, куча транзакций, никакой сложной логики, пофиг на отказы (нажмите Refresh, если что не нравится и т. п.)
корпоративные системы — сложная логика, то есть одна транзакция дает движение в куче таблиц-счетов и т. п., и вообще объем кода в строчках и человеко-годах огромен. Ошибаться нельзя, падать нельзя, но нагрузка плевая.Но есть и редкий третий тип. Речь зашла о редких высоконагруженных «бизнес-логичных» системах (такие имеет смысл ловить наверно только в ЖКХ — офигически сложные расчеты всяких там льгот, куча транзакций и т. п.), или какой другой массовый биллинг (телекоммуникационный). Банки думаю не — кроме яндекс.денег, любой интернет-банк по нагрузке отдыхает.
Ну а дальше, докладчик прошелся по всем аспектам разработки таких систем, разрушая мифы, раздавая эпитеты и приговоры различным технологиям:
СУБД кроме Oracle, DB2, MySQL и PostgreSQL — ересь,
Oracle DBA зажрались и в массе лохи,
Java есть современный надежный Cobol, и это есть хорошо.
С# сам по себе ничего, но развертывание дороговато, (в основном за виндовс-сервер-лицензии).
Python прет (Django?), возможно будущее за Java+Python.
Всех (обоих) творцов на Erlangе гнать-избегать,
RoR — тормозит,
двухзвенка масштабируется отстойно (привет «Oracle и PL/SQL» подходу), по сравнению с трехзвенкой,
потому что кэш СУБД слишком тупой-низкоуровневый.
нефиг выделываться с XML-сериализацией — CPU на ветер.
Другие мысли:
на инфраструктуру — 10 % прибыли.
автоматизация тестирования форм — обязательно (видимо имелись в виду веб-формы).
В общем, наверно самый полезный для нас доклад, надо дождаться видео (я даже запросил DVD-диски, может пришлют), и смотреть всем.2.3 Как писать высокопроизводительные сервера
Жаркий дискуссионный вопрос. Давным-давно, во времена первого апача, порождавшего при обслуживании пул с трудом переключаемых процессов, все уяснили, что переключение контекста процесса есть штука чудовищно дорогая, и ее надо минимизировать. На помощь пришли методы телекоммуникационщиков из систем реального времени — никакой многозадачности с планировщиком («кузнец нам не нужен»), должна быть однопроцессная система с конечным автоматом (FSM), обрабатывающем события. На таких принципах реалован очень популярный вебсервер статики nginx. Но много минусов — кроме статики он ничего не умеет, стандартные вебфреймворки к нему не прикрутишь.
Автор же доклада принес благую весть — треды в apache2 уже достаточно эффективны и хороши, можно держать их тысячами и пользоваться всеми благами апача (или они пока только в BSD хороши, а в линуксе тормозят — уже не помню, но это не принципиально).
А если применить собственный механизм переключения облегченных тредов (которых обозвали «зелеными тредами», «ко-рутинами»), то вообще никакого проигрыша конечному автомату не будет. Да, у этих корутин есть некоторые болезни (для переключения используется тот же механизм, что для обработки C++ исключений, поэтому от исключений придется отказаться), но в целом, это прогресс и возможно гвоздь в гроб идеи FSM.
Ну еще известна шизофреничная сложность отладки программы с тредами, на что докладчик искренне удивлялся — «зачем отлаживать? не проще ли писать без ошибок?».
Вроде как проверено на крупных яндекс-проектах, типа краулера и верхнего уровня поиска.
Была жесткая дискуссия, требовали доказательств, цифр, корректного эксперимента.
Я лично склонен поверить докладчику.
Причем с корутинами думаю не столкнусь, а то что апач2 с тредами хорош (пусть даже чуть хуже FSM) — это хорошо, возможно альтернативы ему отомрут сами со временем.2.4 HCS — система хранения данных в Рамблере
Расшифровку аббревиатры забыл — некая библиотека для реализации некоторой алгебры операций (слияния, фильтрация, агрегация,…) над сверхбольшими плоскими файлами. (1011 строк, 10Tb/ 200Gb обновлений в день).
Работает быстро (сравнивали правда с неоптимизированными движками MySQL), но, насколько я понял, это не параллелиться (а ведь есть Hadoop, который вроде как можно было бы применить для этих задач).
Вроде готовится к публикации в опен-сорс.2.5 Сервис хранения данных на базе SQL Server Data Services
Маркетинговый доклад. Верный признак «чисто маркетинга», когда всякие «архитектурные» картинки рисуются блоками с градиентной заливкой, всякий гламур и анимация на слайдах. По сути некая компиляция whitepaperов разных технологий (SaaS, DaaS, PaaS,… все модные buzzwords, все в кучу).
Интерес (судя по заполненности зала) был слабоват.2.6 Проблемы работы с большими объемами реляционно слабосвязанных данных в высоконагруженных веб-проектах
Очень невнятное название, не шибко внятное содержимое. Типа у нас тут реляционная база и большая нагрузка — давайте выкинем нормальную форму нафиг, но при этом, вместо использования стандартных механизмов хранения часто требуемых данных во всяких кешах, завести опять таки в реляционной БД, специально денормализованные таблицы.
В общем и новизны нет, и не похоже, что решение оптимально и вообще адекватно задаче.2.7 Масштабирование системы баннерной рекламы с централизованной базой данных
Примитивная и кривоватая реализация баннероторговли и баннеропубликации на Oracle.
Зачем там Oracle — совершенно непонятно, скорее всего унаследованный код финансовых модулей на PL/SQL, которых лень переписывать, вокруг чего начали воротить все остальное. Ибо надежность там не нужна, транзакционность и немедленность реакции — тоже (грузят апельсины бочками данные SQLLoaderом), вообще как-то все ---. Похоже еще есть момент экономии на лицензиях (другой логики для централизованности СУБД я не вижу).
Бизнес примитивный и надеюсь скоро вымрет, когда баннерорезки будут у всех, кроме полных даунов (и накручивающих трафик роботов), а реклама станет контекстной и уйдет в поисковики.
2008-09-25 РИТ:Высокие нагрузки-2008 (1)
С учетом того, что материалы, то есть презентации и даже видео в приличном качестве организаторы обещают опубликовать в ближайшее время, ограничусь очень краткими впечатлениями-соображениями о конференции вообще и о докладах по отдельности.
Сразу замечу, хотя явно вроде не указано (в списке спонсоров-соорганизаторов десятки значков участников, даже «udaff.com»), что эту конференцию (highload.info, не путать с highload.ru) было бы правильней именовать «Яндекс:Нагрузки», ибо практически «контрольный пакет» всех докладов был от «Я», также было немало Я-участников в узнаваемой униформе креативных футболках. Похоже Яндекс тут был ключевым организатором, и ничего плохого в этом факте нет. Может стоило тогда так и назвать конференцию и провести ее на самой территории Яндекса, с экскурсиями по машинному залу и т. п. Когда-то (1999) я был в серверной Яндекса, но сейчас думаю там все сильно круче.1 Общие соображения1.1 Понравилось
Огромные плазменные телевизоры в залах. Лучше, чем проекторы, особенно лучше, чем «проекторы с тыльной стороны экрана» (были такие на РИТ, убивали все цвета в ноль).
Специально выделенное время (порядка 15 минут на доклад) на вопросы. Зачастую интересуют именно вопросы (даже не всегда ответы), то есть чтобы уловить, что интересует сообщество.
Добираться метропешеходу вполне терпимо (по сравнению с дырой типа Крокус-сити). Претензии автовладельцев имеет смысл посылать лесом, ибо в Москве автомобиль уже давно ни роскошь, ни средство передвижения.1.2 Проблемы и предложения
Наверно все отметят, что один мужской половой унитаз на всю конференцию и веселая очередь встречающая входящих игривым восклицанием — «Высокие нагрузки!» — не есть гуд.
Были заявлены бесплатные места для студентов, и у нас была красивая студентка, которую мы намеревались взять с собой. Однако, организаторы слишком поздно прислали ей приглашение (только в понедельник его получила), у нее уже сложились планы и переигрывать было поздно. В результате не попала, а жаль — это была большая потеря, таких был явный дефицит.
Возможно организаторы до последнего пытались заполнить вакансии платными участниками, однако не стоило тянуть до последней секунды. Надеюсь, в следующий раз известят хотя бы за пару дней.
Возможно был бы полезен формат 5-минутных блиц-докладов. Некоторые доклады вполне ужимались до такого формата. Стоит попробовать — то есть либо большой доклад с вопросами-обсуждениями, либо 5 минут позора (или успеха), — и следующий.
Хотелось бы публикации докладов (хотя бы презентаций), немедленно после их показа на конференции. Вот сейчас я, пока еще все не забыл, пытаюсь написать отчет о конференции, пока у меня клубятся впечатления и пара-тройка порожденных мыслей — но уже не помню точно, кто и что утверждал (могу путать тезисы разных докладов). Оно конечно эти презентации потом опубликуют — но тогда у меня потухнут собственные впечатления, и смысла писать что-то не будет. В общем, никаких технических проблем к немедленной публикации презентаций после их показа я не вижу, и проблем авторам это не создает — в отличие от обязательного предоставления презентации на флешке перед конференцией, авторы могут править презентацию до самого момента выступления, а потом она должна попадать в руки организаторов и немедленно публиковаться.
2008-09-09 INTUIT: Операционная система UNIX
Правильный пользователь — мертвый пользователь (гикнутый сисадмин), понимает как все работает, всегда читает мануалы заранее, механизирует любую рутину. Решение — фигня, инструменты — наше все. Правильная документация прочитанная правильным пользователем гарантирует успех с первого раза. «UNИX» (это не опечатка) — звучит круто. human readable/human writeable В редакторе, как и в любом инструменте разработки, конечно, есть функция отмены последнего действия: человеку свойственно ошибаться. Однако человеку свойственно и обдумывать решения, поэтому достаточно предусмотреть отмену только последнего действия. Правило "захотел - получил" здорово дисциплинирует, хотя на первых порах выглядит жестоко. Короткие блоки лекций, простые мысли последовательно. Добротная история UNIX. «shell написаны все системные сценарии, поскольку он представляет собой еще и удобный высокоуровневый язык программирования» философский курс. апология сисадмина Организация подобного рода интерфейса требует, как правило, значительных ресурсов для имитации пользовательского инструмента, и многие требования, предъявляемые компьютеру, оказываются требованиями интерфейса, а не самой пользовательской задачи. В первую очередь это относится к системам с непременным графическим интерфейсом, в которых даже для отправки текстового сообщения требуются устройства графического ввода и вывода: мышь, видеоадаптер, графический дисплей. Причем последние должны обладать определенными техническими характеристиками. DOS/Windows/atorin Некоторые когнитивные ограничения очевидны: например, нельзя ожидать от обычного пользователя способности перемножать в уме 30-значные числа за 5 секунд, поэтому нет смысла разрабатывать интерфейс, который требовал бы от пользователя такой способности. Однако мы часто не учитываем другие ментальные ограничения, которые оказывают неблагоприятное влияние на нашу продуктивность при работе с интерфейсами «человек-машина», хотя эти ограничения присущи каждому человеку. Интересно отметить, что все известные компьютерные интерфейсы, а также многие некомпьютерные интерфейсы «человек-машина» разработаны с расчетом на некие когнитивные способности, которыми, как показывают эксперименты, мы на самом деле не обладаем. (Джеф Раскин, Интерфейс) http://raskin-interface.narod.ru/interface/ вопросы в тестах ужасны.
2008-06-22 Meet the Experts
Был на вендорской миниконференции «Meet the Experts» — однодневный митинг в Редиссон-SAS-Славянской, бесплатный и с кормежкой.
Вендорами были IBM (толкал железо) и Sybase (толкали Sybase IQ).
В качестве свадебного генерала выписали Билла Инмона, наверное самого известного (наряду с Кимбаллом), идеологом хранилищ данных.
Билл, конечно, не сказал ничего нового, ибо в области хранилищ данных, на уровне концепций (MOLAP/ROLAP/HOLAP, факты/измерения, «витрины», «ETL», …) ничего нового за последние десять лет не появилось. Но так, понагнетал пафос, рассказал как DW (Datawarehousing) рулил при нефтеосвоении Мексиканского Залива, что объемы серьезных хранилищ меряются петабайтами и петабаксами, и что у всех телекоммуникационным провайдеров и финансовых банков, DW должно быть, ибо иначе некруто. Местами он продолжал полемику с Кимбаллом (у меня в блокноте пометка «агрегация только в витринах» — это явно оттуда), а вообще смешной дядька, напоминал комика времени немого кино (типа Чаплина — застенчиво улыбающийся человек в фраке с усиками, и вроде даже в котелке).
Кстати, о смешных персонажах — из начальства Sybase выступала-модерировала интересная девушка. Мало того, что у нее была IT-шная фамилия Еникеева (Anykey ), так она еще выглядела точь-в-точь, как Alice — персонаж IT-шного суперкомикса Dilbert. Нарытая пара фоток недостаточно передает сходство, но живьем оно было почти стопроцентным (особенно по прическе):Ну, пересказывать технические поинты рекламируемых продуктов (Sybase IQ, Sybase Industry Warehouse Studio) — наверное неинтересно.
Выступали железячники, и согласованным образом наезжали на Netezza, был PR IBM (за пределами добра и нравственности — но с сейлами IBM я сталкивался — бесстыдные манипуляции это для них скорее норма, не удивляет).
Из интересного — было несколько выступающих от российских пользователей Sybase (торговые сети, финансы). Что в целом интересно, из приводимых ими данных — то, что объемы, пока, достаточно копеечны — считанные терабайты, и несколько гигов ежедневного инкремента. В общем, далеко еще до петабаксового клуба. Ибо потом выступали западные пользователи — Vodafone, налоговики, и т.п. — у них объемы уже да, соответствовали мировым стандартам.
2008-06-20 мой монитор
С выбором монитора было с одной стороны проще, с другой тяжелей. Нужен был добротный широкоформатник на PVA матрице — оказалось, теперь более-менее приличные матрицы живут, за редким исключением, на размере 24" минимум. Монитор на самом деле мне был нужен в основном для чтения и просмотра видео (в том числе и с расстояния-кровати и под разными углами), так что «лаги» и «гхостинг» меня не волновали совершенно, а вот яркость поменьше, минимальная нагрузка для глаз, неискажение под углами востребовано было. И чтобы не шумел.
Судя по некоторым обзорами тому же ixbt, среди 24"-х лучший был NEC 2407. S-IPSная матрица, качество NEC, все дела. Мешала только одна небольшая проблема — в России его не продавали. Сделал стойку на Samsung 245T — но всплыли кучи жалоб владельцев, среди которых были нетривиальные, не терпимые для меня — такие как свист. Альтернатива — сначала 2407, затем 2408 Dell. Дождаться исправленной ревизии A01 Dell 2408 не удалось (тянуть до июля, ну нафиг), взял самую первую «бета» версию A00. В коробке даже не было сетевого шнура. Взял в слепую, без всяких проверок на битые пиксели субпиксели, но не потому, что повелся на маркетинговую акцию Dell по бесплатной замене мониторов с битыми субпикселями, а потому, что ждать и выбирать уже надоело. А насчет бесплатной замены, то я поразился хитрозамаскированному цинизму Dell — на самом деле, заявлено следующее:
Приверженность высокому качеству и внимание к запросам заказчиков позволяют корпорации Dell предлагать гарантию на панель категории Premium, которая предусматривает замену мониторов серии UltraSharp с появившимися на них яркими пикселами на мониторы без таковых. При появлении даже одного яркого пиксела в течение ограниченного гарантийного периода выполняется бесплатная замена всей панели, что обеспечивает спокойствие и защиту капиталовложений.
Обеспечивается замена не для битых субпикселей или даже целых пикселей, а только для мертвых светящихся пикселей.
Это очень мудро, ибо мертвых светящихся пикселей на PVA матрицах почти никогда не бывает (по крайней мере, так писал Олег Артамонов, эксперт по мониторам и не только ) — мертвые пиксели на PVA-матрицах черные, а светящимися они бывают на TN матрицах.
Дополнительно, думаю русским покупателям на гарантию Dell вовсе не стоит обращать внимания, по крайней мере до того момента, когда у Dell появится в России свой гарантийный центр. Его нет, есть только представительство, которое, если вы окончательно достанете своим нудением, может заставить поменять монитор продавшего вам дистрибьютера — это информация по результам личного общения с продавцом.
Сейчас экспериментирую с монитором, в основном, на тему, какую яркость на мониторе выставить (на видеокарте конечно яркость выкручена в ноль) — выше 40% уже ощутим поток тепла (сидишь, как у камина), ниже — виден веер в «веерном тесте» на мерцание. Пока поставил 32%.
Из неприятного — какие-то плюшевые скрипящие кнопки, как раз если ночью уменьшать яркость, можно всех в комнате перебудить — быстрых запрограммированных настроек вызываемых одним нажатием нет, нужно нудно бродить по меню.
2008-06-20 мой компьютер
Теперь слегка опишу текущую рабочую (домашнюю) машинку. Вопрос смены компьютера назрел давно, ибо современная разработка и софтовые эксперименты на машине 2002 года, с Athlon XP 1800, уже стали невозможны. Но я так привязан к старым, добротным и отлаженным вещам, что запланированная смена откладывалась в течении пары лет. Но все же процесс пошел.
Выбор деталей я начал с корпуса. Прошерстив весь рунет, особенно жуткую тусовку перфекционистов — forum.ixbt.com, понял, что при всем богатстве выбора, альтернативы Antec P182 нет. К тому же, этот корпус идеально влезал в нишу в тумбочке моего рабочего стола, сделанного по авторскому проекту за два года до. Тогда я заложил размеры под системный блок на глаз, а потом обнаружил, что более-менее крутой корпус, который как правило, miditower (типа Coolermaster Stacker), туда и не лезет. В общем, то что Антек чудом (в упор, после снятия некоторых декоративных элементов) подошел к этой нише, я воспринял как знак свыше. Проблемой правда оставалось то, что в РФ его не продавали — и я рискнул тащить его из немецкого интернет-магазина, вместе с блоком питания (Antec Fanless Fantom 500) по почте. К сожалению, дурацкий интернет-магазин высылал только UPSом, и в результате я попал под таможню, пришлось геморроиться с оформлением и тратить дополнительные деньги на таможенных брокеров (с обычной почтой покупка на такую сумму прошла бы без растаможки). Ездить на таможню правда не пришлось, переписка, заполнение форм и т.п. — по email.
Остальные детали купил в 128.ру, собрал и тестировал в офисе. Да, это очень похоже на серию из Dilberta в которой Дилберт покупает в онлайн магазине COMP-U-COMP (похоже на мой computeruniverse.net ), компьютер, и тащит его в офис для произведения вящего впечатления на коллег.
Да, сборщик я совсем никакой, вместо того, чтобы по уму, посадить процессор на кулер, потом их на мать, потом погрузить все это в корпус — сначала привинтил мать, поставил процессор, а потом приколачивал кулер (мать трещала, прогибалась,', но вроде выжила'— смотреть я на это не мог, даже позвал коллегу на помощь) . Да, к такому подходу я привык лет десять назад, когда кулеры были со спичечный коробок, сейчас так делать нельзя.
Состав с краткими, обосновывающими выбор, комментариями:
- мат. плата s.775 ASUS P5E WS PRO (iX38 4DDR2 SATA2 RAID 2xPCI-E 2xGbitLAN 1394 USB2.0) — брал самый навороченный АСУС для ДДР2 памяти, что без WiFi, но побольше USB разьемов.
- процессор INTEL Core 2 Duo E8400 (3GHz 6Mb 1.3GHz EM64T) — Рад, что дождался «45 нанометровых» процессоров, еще более холодные и мощные чем шеститысячная серия, причем за те же деньги
- кулер Scythe Mugen SCINF-1000 — судя по форум.иксбт.ру — стыдно быть не должно. Хотя еле удалось посадить на процессор, и похоже, фиг его снимешь теперь с матплаты, если ее не разбирать и не вытаскивать.
- память 2Gb x2 DDR2 SDRAM Corsair XMS2 TWIN2X4096-6400C4DHX G (PC6400 800MHz CL4) — Да, я знаю, что под домашним WinXP больше 3Gb памяти не бывает, но не жалко. Зато есть и запас по памяти, и запас по разьемам, если таки буду дома переходить на Линукс или что-то 64 битное (может через пару-тройку лет).
- видеокарта PCI-E 256Mb ASUS EN8600GTS Silent/HTDP (GeForce 8600 GTS. DDR3. 2xDVI. TV) — самое навороченное от АСУС с пассивным охлаждением.
- HDD 150Gb SATA Western Digital Raptor WD1500ADFD 10000rpm. — единственный мирный (SATA, а не SCSI/SAS), десятитысячник. Очень боялся шума, который порушит мою идиллию с тихим компьютером в спальне — но ничего, практически не слышно, иногда легкий, не разражающий стрекот. Зато из гибернации система выходит мигом, слизывая в раз три гига памяти с диска.
- HDD 500Gb SATA2 Seagate Barracuda 7200.11 ST3500320AS 7200rpm — размер 500 давал в тот момент самый дешевый гигабайт, а сама модель вроде самая тихая среди пятисотников.
- DVDRW ASUS DRW-2014L1T SATA — взял первый попавшийся
- Logitech Internet 1500 Laser Cordless Desktop беспроводная черная + лаз. мышь беспров.USB — раскладка такая же, как у моей офисной логитеховской клавиатуры, только беспроводное. Сильно заморачиваться по поводу абсолютной тишины — подвеска винчестеров на леску, урезания питания вентиляторам до 500-700 оборотов и т.п., перенос их в нештатные места — не стал. Спать вроде можно, жену не напрягает (разве что мое печатание).
2008-06-19 ASUS WL-500g Premium
Решил зафиксировать краткий обзор своего домашнего компьютерного зоопарка.
Итак, мой выбор роутера — ASUS WL-500g Premium. Когда выбирал, ожидал множество проблем — от юридических (по договору с провайдером роутеры на безлимитных тарифах запрещены), до технических — в домашней сети PPPoE, и сможет ли он договорится с центральным железом, или будут какие траблы — было неизвестно.
Юридическую проблему вроде закрыли личной санкцией от администрации сети, ибо я уже был готов сменить провайдера — когда у жены появился ноутбук, я сначала прикупил на несколько месяцев Golden-WiFi, но таки начал стыдить-жалобить администрацию на тему странных ограничений — в Москве такого жлобства (не разрешать роутеры для безлимитных тарифов) — не встретить днем с огнем.
В локальных форумах шло мутное обсуждение на молодежном языке, из которого не было понятно, вообще, какие роутеры с этим PPPoE нормально работают, ибо форум, как больница — здоровых людей нет, все с жалобами. Но сходились к тому, что ежели сей девайс взять, и перепрошить магической прошивкой «от Олега», то так и быть, заработает.
Оказалось все прекрасно и так. Маленькая коробочка, висит на стене, слегка греется и мерцает красным — эдакий микрокамин, заработала без перепрошивок сходу, поддерживает и несколько кабельных розеток, и WiFi для ноута, также подключил к нему свой старый струйный HP Deskjet 5150, так что можно считать, что у меня сетевой принтер.
Работает все это уже больше полугода, полет нормальный — пару-тройку раз возникали странные проблемы с инетом, диагноз которым я даже не в силах был поставить — типа портился роутинг на стороне провайдера, а лечилось это почему-то перезагрузками моего роутера — ну очевидно, он просто как-то более удачно подключался, «без единого разрыва» жить нельзя не только в Стриме. Скорость скачивания вроде не упала, если и упала, то незаметно. В общем, доволен и рекомендую.
2008-05-06 Ответ Николаю об Activity Streams
Ну мое мнение о ценностях в Интернете скорее всего массовой аудиторией не разделяется.
Но вкратце, мысли у меня сумбурные, но следующие. Основная ценность (для разумного человека в моем понимании) «N»-нольных интернет сервисов заключается не в предоставлении сюеминутного удовольствия от некоторого информационного потока («заценил креатифф», «посмеялся/ROTF», «спасибо, подрочил») — это все телевизор чистой воды. Тот же заппинг, хоть и с сильно большим числом каналов, и Activity Streams струят в туже струю.
Это не может быть оправданием временным затратам — т.е. это совершенно равносильно любым другим тратам времени на короткое допаминовое замыкание центров удовольствий — что наркотики, что видеоигры, что телевизор.
Альтернатива — это обмен потраченного в Сети времени на реальные достижения — получение товаров, ценностей, услуг, людей получение новых отношений. Условно говоря — дешевые и качественные товары из интернет-магазина, красивая и умная жена/любовница из социальной сети/службы знакомств, выгодная работа, правильный выбор в некоторой жизненной ситуации и т.п..
Но тут возникает проблема объемов — без всяких дополнительных активити-стримс, объем информации, который нужно перелопатить человеку при решении этих задач чрезмерно велик, особенно учитывая то, что у человека очень небольшая кратковременная/оперативная память, и очень глючная и ненадежная долговременная. Условно говоря, за один «поисковый» заход непосильно правильно выбрать сложный гаджет, работу, друзей/подруг. А этих объектов выбора становится все больше и больше! Т.е. река становится настолько широкой, что другого берега уже не видно (вероятность выиграть мала), и многие махают рукой и остаются на берегу (отдают себя на волю примитивным локальным/жадным алгоритмам — «выборам потребителя», «популярным товарам/писателям/…», «женится на однокласснице/соседке/случайной знакомой в баре» …).
Да, Activity Stream в текущем состоянии (фейсбук, миртесен) — совершенно такой же тупой поток информации, рулящий пользователем, т.е. пользователь опять становится «субъектом номер два по Пелевину» («Generation P»). Это конечно выгодно и удобно в коммерческом плане — пользователь, подстегиваемый социализирующими игрищами («оценки фотографий», «мой рейтинг», «мои гости»…) становится тупым и манипулируемым, и конечно более пригодным для «монетизации» любого рода.
А хорошо бы наоборот, дать шанс пользователю, что бы компьютеры сыграли на его стороне и сервисы нового поколения пришли бы на помощь, закрыв проблему с долговременной памятью. Т.е. аксиомой должно быть то, что пользователь, проводя время в Сети (любое, сколь угодно малое), имел возможность улучшить некий свой «информационный потенциал» — понимание своих целей и их соотнесение с объектами окружающего мира (в частности, товарами и социумом). Тогда он может переплыть «широкую» реку data mining'а, рано или поздно, затратив столько времени, сколько посчитает нужным для требуемого качества решения. Ну можно это еще сравнить с «сохранением» в компьютерных играх — игр, с кучей уровней сложности и без возможности сохранения состояния уже давно не осталось.
Некоторые частные случаи таких сервисов уже начали реализовываться — продвинутые интернет-магазины завели «wish-list'ы» товаров, после чего продвинутые поисковые системы завели собственные классификации товаров и магазинов (целостные отображение реальных объектов и центров услуг в сетевые) и привязали виш-листы и системы рейтингов и отзывов к ним (Яндекс.Маркет). Есть привязки отзывов и рейтингов к URL'ам (эксперименты Google). Есть заходы со стороны нишевых сервисов (imhonet и т.п.).
Понятно, что в идельный текстовый сетевой контент («семантический веб»), мыслится как огромная википедия, где все упоминания любого объекта не просто текстовая строка, но некая ссылка на информационную сущность, по отношению к которой можно по месту зафиксировать свое отношение (набором цифр, меток, текстом и т.п.), после чего забыть об этом (освободив свою голову) и вспомнив об этом по необходимости, когда оный объект снова всплывет в поиске. Да, в идеале поиск в Сети также персонализируется в соответствии с зафиксированным отношением («нет, меня не интересуют эти предметы и я не доверяют этим сайтам как источникам — не показывайте связные с этим результаты поиска пока есть что-либо другое», «эти людям и их мнениям я доверяю, подними их поближе к первым результатам»).
Ладно, до этого не факт, что можно дожить, перейдем к упомянутой конкретике — к социальным сетям. В миртесен есть всего два типа объектов — люди и места (адреса, здания, организации). Эти объекты являются атрибутами информационных потоков. У участника есть всего одна возможность обозначить связь с обьектом каждого типа («друзья» и «мои места»), причем только публично (sic!), после чего на него тут же падает поток всего, что как-то связано с «друзьями» или посчастливилось быть в несколько километровой «зоне поражения» от моих мест. Это действительно попс и телевизор, он заставляет меня лично полностью игнорировать этот поток.
Какие решения (околонаучная фантастика тоже, конечно) я был бы рад видеть:
- Разрыв шаблона «места где я был≈интересующие меня места». Интересующие меня места я готов указывать напрямую, геометрическим выбором (меня интересует «ровно этот дом», «этот лесопарк», судьба этого стадиона и этого гаражного кооператива). Или «весь район, кроме этого дома алкоголиков». И т.п. Никакого отношения, жил я там или нет, быть не должно (ну может максимум информация по дому из последнего указанного места жительства, да и то, чтобы было отключаемо).
- Разрыв шаблонов «публично объявленные друзья≈интересующие меня источники информации» и «публично объявленные друзья≈доверенные получатели моей информации». Т.е. я был бы рад иметь возможность подписки на определенные события от совершенно произвольного участника, а также предоставлять доступ к некоторым уровням своей информации участникам, которых я не желаю подставлять/публично обьявлять как-то с собой связанными.
- Возможность подписки на избранный контент пользователя — возможно только на крупные события (женился, сменил место жительства, сменил пол), возможно только тексты с определенной меткой (или все тексты кроме определенных категорий — типа хорошо девушка про жизнь пишет, но регулярно ее пробивает публиковать художественную порнографию и т.п).
- Ведение личных (не публичных) рейтингов/заметок по пользователям (и возможно другим источниками информации, если таковые в соцсети появятся). Пользователей-источников в уже стало нереально много, пытаться запоминать ники-урлы-аватары-юзерпики и соответственно свое отношение к качеству предоставляемой ими информации уже стало нереально, а ведь это при активном дата-текст-майнинге необходимо. Тут бы мог помочь на худой конец простой одномерный рейтинг («+/-» баллов) — тогда поставив десятый минус за два года, неспешно можно придти к выводу, что лучше этот источник информации игнорировать всегда и применить twit-функцию (которую я уже выпрашивал у вас тут). Или наоборот, поставив в очередной раз плюс, обнаружить, что делаешь это уже раз десятый, и собственно к этому автору нужно присмотрется, и возможно подписаться на определенный какой-либо информационный поток от оного. В идеале, рейтинги можно сделать N-мерными, измеряя отдельно художественную ценность текстов, отдельно их доистоверность, отдельно личные симпатии, плюс возможность собственных текстовых заметок-напоминаний («никогда больше не давать ей пить на свидании»). Напомню еще раз — это исключительно личные, «не видимые снаружи» оценки, только тогда их можно зафиксировать адекватно, и собственно они будут представлять ценность как «искусственная память».В целом, подобных фантазий много, но идея, думаю, в целом ясна.
После такой «личной персонализации» и «кеш-памяти» уже можно переходить при желании и следующему уровню — сети с репутациями, от них можно перейти к экономике основанной на доверии, далее вообще к полнофункциональным и альтернативным государству методам социальной организации, но это уже в глубокой перспективе.
Пока закругляюсь, ибо сейчас 3 ночи, возможно получается не ясная идея, а сонный бред,но надежду на понимание пока питаю.
2008-04-16 РИТ-2008: общие замечания
Был на РИТ-2008. Оба дня, просто участником. Попробую по свежему следу зафиксировать основные впечатления.
Сначала, общие хозяйственно-организационные вопросы — чтобы потом к ним не возвращаться. Потом планирую обзор посещенных докладов, потом отдельно лирику и риторику.
1. Выбор места (Крокус-экспо) наверно не очень удачен. Добираться таки тяжко. От нас был только один коллега на машине, и он опоздал. И если для участников это в общем еще терпимо — ну типа сам виноват, надо было думать, ведь вполне можно было надежно добраться с использованием долгой новострогинской ветки метро, плюс автобус/маршрутка до пешеходного перехода через МКАД, плюс минут десять пешком, то приглашенных зарубежных гуру так не погоняешь, а с автобусом до непосредственно Крокуса от м. Тушинская опоздание практически гарантировано, что и произошло, например, с выступавшим первым Алексом Москалюком (меня поправили) с многими во второй день.
Боюсь, я не предложу, где найти большую экспоплощадку такого размера по сходной цене и с шаговой доступностью скажем от метро, поэтому самое дешевое решение, как это запатчить — пустить первыми небрендовых докладчиков (и пусть как добраться голова болит у них), либо, что более гуманно, поставить первыми большие «разогревочные» блоки пятиминутных блиц-докладов. Сим убивается пачка зайцев — живые и «негрузящие» блиц-доклады прекрасно «разогреют» непроснувшуюся аудиторию, плюс маловероятно, что опоздают все авторы блицев, поэтому при опоздании первых, можно изменить порядок блиц-докладов и не потерять время (не допустить сдвигов и т.п.).
2. Косяки с «массовым обслуживанием». То, что они будут, я понял почти сразу как приехал в первый день — в гардеробе кончались вешалки, а ведь известно, что театр начинается именно с них. Был опасный стрем с кормежкой в первый день — кроме очередей, и микропорций, добил агрессивный персонал состоящий из южных гастрарбайтеров — у одного знакомого они аж вырвали и унесли недопитый стакан сока, после обвинений, в том что он взял два стакана, вместо нормы (а-а-а! они нападают на людей!! 11111!!!). Справедливости ради, скажу, что во второй день с этим вроде стало нормально, похоже выводы были сделаны.
3. «Видео-канал». В залах где были проекторы, экраны были дублированы и достаточные по размеру (что хорошо), но толи это свойство технологии проекции с обратной стороны экрана, толи проблемы конкретных проекторов/кабелей или техники, или софта осуществляющего морфинг — но все цвета убивались в абсолютный ноль (желтый-оранжевый на белом — неразличим абсолютно), плюс траблы с четкостью — разобрать детали даже достаточно крупных скриншотов было абсолютно невозможно. Т.е. ощущение что эффективное разрешение не дотягивало до 800x600. Поэтому в залах с проекторами, те, кто старался сделать добротную презентацию с иллюстрациями-скришотами-диаграммами проиграли тем, кто делал презентацию «по методу Такахаси» — т.е. ограничился банальными ключевыми фразами крупным черным сансерифом по белому. Хорошо, что один зал был оборудован альтернативно — четыремя большими широкоформатными телевизорами, и хорошо, что моему товарищу-коллеге, делавшему доклад, попался именно этот зал.
4. Сборник тезисов не получился, даром, что верстали в TeX/LaTeX (судя по шрифтам Computer Modern Roman). Ни вменяемого оглавления или указателя по докладам, по части докладов нет вообще ни слова (кроме заголовка), по части — многостраничная водянистая статья. От нас например высылалась полная статья, а вошел от нее урезанный и неполный абстракт — т.е. были бы нормальные требования по обьему в знаках/словах или еще чем — не вопрос, мы бы сделали. А когда произвольно отрывают начальный кусок — такое это уже недостойно даже автореферирующих поисковых роботов.
5. Раздаточные материалы — неплохо было бы кроме бумажного спама, чтобы раздавали полноценные IT-журналы (ну как на SECRе раздавали линейку журналов от Открытых Систем и др.). Вроде бы это не очень дорого.
Сразу правда отмечу, что Микрософт, видимо, несколько замучали муки совести после прошлого «жесткого» года, когда демонстративно «съели» Поносова, а после взмыленное бизнес-сообщество усиленно легализовывалось, доставая последние деньги и выстраиваясь в очередь к дилерам Microsoft за случайными числами ключами к продуктам, так что на РИТе была раздача официальных (вроде не трайл и без ограничений) коробок с 2005 студией плюс новой линейкой дизайнерского софта (атака на позиции Adobe). Сам правда постараюсь не оскоромится и не пользоваться сим (впрочем не зарекаюсь), но сейчас каждая честная студия в корпоративном хозяйстве наперечет, думаю, обязательно кому-нибудь пригодится.
6. Нужны тестировать минимальных требований к докладчику и его материалам. Конечно, нельзя гарантировать, раскроет ли докладчик тему или не осилит, зажжет ли или запуганно будет бубнить написанное на слайдах — но элементарные вещи быть должны. Например, слайды. Должны быть. В любом формате: PPT/OpenOffice/PDF, да хоть XUL-JS. Но именно слайды, т.е. дискретный набор кадров в портретном (landscape) формате. А когда скроллируют обычный (portret-A4) документ PDF сделанный из Worda, да еще набитый полным мусором — это уже издевательство над здравым смыслом и зрителями.
7. В догонку об уважении к зрителям — обнаружил странную моду — докладчики в рубашках (а не простых IT-футболках), но супержеванных. Даже не представляю, как такого эффекта добились, чем свои рубашки жевали — наверно это специальная мнуще/жующая машина, а я просто не в теме. Но мне это как-то не.
8. Надо тьюнить план/schedule — с выбранным форматом, как-то получалось, что либо темы скучные, либо не раскрывались. А решение есть — нужно с одной стороны увеличить количество пятиминутных блиц-докладов — тогда автор будет вынужден без жевания соплей кратко изложить задачу и свои достижения — и либо он это осилит и сорвет овации, либо недопрыгнет — ну как бывает на прыжках в высоту — прыгун разбегается, бежит, но что-то срывается и не прыгает — и тоже сорвет апплодисмент за то, что убил об стену себя, а не мучал долго сотню зрителей. А блиц-доклады оптимизировать — чтобы смена докладчиков происходила секунд за 10 (аки эстафета), а не полторы минуты как было — жалко «накладных расходов на переключение контекста» — а решение есть — по одному ноуту докладывают, другой ноут готовят к. Переключение свитчем или просто руками — все равно быстрей, чем лазить-искать файлы («извините за торможения, у нас тут виста»).
С другой стороны, для оставшихся докладов нужно добавить времени на вопросы — ситуация, когда докладчиков подгоняли, и не давали задать ни одного вопроса под туманным лозунгом «пообщаться вы можете в кулуарах» — совершенно бестолковая, идею личного присутствия убивает вообще (ну и сидели бы все по домам, смотрели слайды, слушали аудиозапись, было бы только лучше). В программе было что-то невнятно заявленное как «круглый стол докладчиков», но что это — выяснить не удалось, в назначенное время никого не было.
9. Стоит ли конференция своих (я записывался по еще 7тыр, опоздавшие по 9тыр) денег? За свои я бы не стал, но думаю, тут все осваивали корпоративные маркетинговые или HR-ные бюджеты — а так оно конечно стоит. Обычно деньги из этих бюджетов тратят на сильно более бессмысленные вещи.
Теперь — отчет о докладах
2008-04-01 семинар «Эффективные процессы и средства»
22 Апр | семинар «Эффективные процессы и средства» г. Москва |
2008-03-25 INTUIT: Введение в информатику
Прошел курс «Введение в информатику».
Мне курс показался сильно неудачным, хотя «Введение в математику» того же автора мне понравился. Этот курс видимо действительно ориентирован на гуманитариев — т.е. это «Введение в информатику для философов и филологов» — более-менее понимающему IT-шнику читать курс, продираясь через многословные и путанные «философские» определения IT-шных понятий, физически трудно, и наверное, бесполезно. Насколько курс хорош для гуманитария — сказать трудно, не экспериментировал.
Тесты сильно неудачные, много неверных ответов (на март 2008), много запутывающих или раздражающих для тех, кто тему знает. Приходилось угадывать ответы.
Из конструктива — как можно относительно быстро несколько улучшить курс — выкинуть из него все привязки к софту, ибо это устаревает гораздо быстрее, чем все остальное, и сейчас упоминание AIDSTESTа Лозинского вызывает смех, а через год уже и в поисковиках ничего нельзя будет найти. Все «по софту» нужно отсаживать в отдельные курсы типа «ПК для пользователя».
В общем, наверно не рекомендую, хотя если вы философ — попробуйте…
2008-03-25 Идеальная коробка для винчестера
Вообще я давно интересовался технологиями переноса и мобильного хранения информации. А именно — винчестерами, с возможностью их переноса и быстрого подключения.
Ноутбуки меня никогда не привлекали — работу с компьютером я понимаю только как работу в подготовленных (мебель, обстановка) для этого местах, с нормальной клавиатурой и нормальным монитором. Таковые места всегда есть — офисы, институт, дом, и единственная проблема состояла в переносе артефактов.
Сейчас, при грамотном подходе и безлимитном интернете, системы контроля версий и сборок проекта вполне эту проблему решают, но все же перенос рабочей среды, набора настроенных портативных приложений, текущего (просматриваемого и прослушиваемого медиаконтента), жирных баз (или вовсе веб-серверов) желаемо часто. Никакой сетевой канал не сравнится по скорости передачи с террабайтным винчестером, которого везут в рюкзаке в метро.
Кроме мобильности, винчестеры удобны для коллекционирования любого контента — ибо в отличие от CD/DVD/…-дисков, с хранением которых неизбежно рано или поздно начнется бардак, винчестеры удобны для инкрементального добавления контента, а также его каталогизации. Это сейчас особенно актуально, с начавшейся компанией против контента в домашних сетях. Не говоря уже о бэкапах.
Надо заметить, что очень редко когда персональному пользователю, при всем множестве его интересов (пусть даже включающих видеомонтаж, работу с сверхбольшими БД и просмотр аниме-сериалов в HDTV) чтобы все эти объемы требовались одновременно.
Т.е. совершенно не нужно держать многотеррабайтную стойку винчестеров в бигтауэр корпусе компьютера, или даже целый выделенный файл-сервер. 90% времени 90% винчестеров будут зря жужжать, греть воздух, и расходовать свой ресурс. А вот иметь один рабочий винчестер, и возможность быстро и безболезненно подключать по очереди один-два винчестера из хранимых в ящике стопки — выглядит оптимальным вариантом. Осталось разобраться, какой девайс для этого проще всего использовать.
В свое время, лет десять назад, я возил просто винчестер и отвертку — с помощью которой в две-три секунды разбирал корпус и подключал винчестер к IDE-шлейфу (запасной IDE-шлейф с двойным разьемом возил с собой). Геморрой — выставление перемычек, возня с BIOSом, да и мода на полуразобранные корпуса, в которых на трехтомнике Кнута лежит привезенный винчестер — прошла.
Следующий заход — мобильные раки/салазки (mobile racks). С ними тоже наелся по уши — сжег пару винчестеров, изуродовал морды пары компьютеров, мерзкий шум лишних вентиляторов и вибрация, практически ни один не обеспечивал нормальный hot plug/unplug — требовалась перезагрузка. Это тоже все было не то.
Наконец началась эра мобильных коробок (внешних карманов для HDD) для винчестеров с USB-подключением. Это уже было почти правильно.
В частности, я считаю идеальным мобильным хранилищем для ноутбуков — экономичный (низкооборотистый — ≈4200 оборотов, или просто экономичный — нужно смотреть на тесты, особенно на потребление тока в момент старта) 2.5" винчестер в простом дешевом кармане, компактный и способный питаться и передавать данные используя только один USB-разъем (основной ресурс) ноутбука. Например мне весьма понравились дешевые Tsunami Artek Ultra 2500 (не путать с Tsunami Artek Speed — эти у меня глючили 100% — два из двух).
Для стационарных компьютеров, экономия розеток и USB-разъемов не так актуальна — важна дешевизна на единицу информации, достаточная скорости передачи, хот плаг/анплаг, нешумность, беспроблемность, надежность.
Соответственно я стал искать идеальный карман для 3.5" винчестера. С этим было хуже.
SATA-карманы проиграли USB-карманам невозможностью горячей замены (у меня требовалась перезагрузка, чтобы система «подхватила» винты). Так что послав их всех в баню, и я сконцентрировался на USB-подключении как максимально беспроблемном (в любом стандартном современном компьютере USB-разъемов — минимум десяток, а Fireware — не факт, что будет один. Да и то, если будет — пусть там будет вечно воткнут шнур для miniDV-камеры). Выбрать IDE или SATA-коробку — осталось нерешаемым вопросом — с одной стороны IDE уходит в историю, с другой — старые IDE-винты как раз разумно отправить на пенсию в карманы, где при нечастом использовании, они может еще переживут свежекупленные постоянно включенные SATA-винты. В общем неясно. Дальше — карманы с вентиляторами всех достали шумом, в моду вошли алюминиевые корпуса с пассивных охлаждением. Однако в эффективности оного, учитывая, что между винчестером и корпусом остается здоровая воздушная прослойка я сильно сомневаюсь, и уверен, что винчестерам там не очень хорошо, и жить они там будут не так долго, как могли бы.
Отдельная песня — дополнительное питание 3.5" карманов — то что оно занимает немало места, это еще туда-сюда, но то. что его приходится возить вместе с коробкой, увеличивая вес и габариты, так что вся конструкция карман+БП+винчестер будет больше винчестера раза в три, — это уже никуда не годится. И наконец я нашел идеальную коробку для мобильного винчестера-хранилища. Все гениальное просто. Идеальная коробка для винчестера должна быть без корпуса. AgeStar FUBCP — адаптер-переходник подключает через USB все типы IDE/EIDE/SATA девайсов, по габаритам — как блок питания от 3.5" карманов + USB-кабель, т.е. даже возить уже не жалко. Но проблема с мобильностью и решается еще более эффективно — в местах наиболее частого появления (дом, офис) в компутеры можно воткнуть эти девайсы (по пятьсот руб за штуку, не жалко), а возить только винчестеры, любых видов, типов (IDE, SATA) и размеров (2.5/3.5, стандартная или половинная ширина). Охлаждение оптимально — настоящая конвекция. Число винчестеров с контентом можно наращить не прикупая более этих коробок, и совершенно не задумываясь более надо согласованием типов коробок и дисков. Вообще я думаю, это устройство — киллер для HDD-карманов. Посмотрим. Первые впечатления более чем положительные — все работает, я освобождаю и раздариваю предыдущие HDD-карманы. Единственное чего не хватает — кожаных, или на худой конец нейлоновых чехлов-обложек для 3.5" винчестеров — если вы знаете, что такое есть, как оно называется или где купить — пожалуйста, сообщите мне.
2008-03-25 INTUIT: Введение в математику
Прошел курс « Введение в математику».
В аннотации курс позиционируется как «математика для гуманитариев», но это конечно не так. Гуманитариям, если у них не было математических курсов можно рекомендовать только популярную «Математику без формул».
Этот же курс — повторение для тех, у кого такое образование было (калкулюс, дифуры, дискран, теорвер) — и вроде как понятия в свое время вколочены были, но за давностью лет все поросло травой и забылось. Этот курс нужно читать-листать, как шпаргалку перед экзаменом, вспоминая забытые определения. Да, читать лучше на бумаге (соответствующий курсу учебник) — формулы в высоком разрешении читабельны гораздо лучше растровых картинок в HTML, причем пролистывать то, что помнится хорошо, задерживаясь только на незнакомых или забытых моментах. Т.е. сдавать тесты не читая — разумеется можно, но полезного толка от тогда от курса будет мало (кроме сертификата), ориентироваться, что тесты определят «белые пятна» — бессмысленно, нужно читать именно текст, концентрируясь на незнакомых или непонятных моментах. Тесты терпимые, мне встречались (март 2008) косяки и в тестах, но курс уже прошло много людей, явные ошибки уже более-менее отладили.
Текст читается достаточно легко, спорных моментов конечно много, наверно каждый хорошо знающий определенную область может сильно поспорить с соответствующей областью учебника (я бы поспорил с теорвером и исследованием операций), но как обзорный курс вполне хорош.
2008-03-11 INTUIT: Основы программирования
Прошел курс «Основы программирования».
Курс полезный, фундаментальный — покрывает процентов 70 того, что проверяется GRE (Graduate Record Examination) по Computer Science. Конечно, некоторым темам уделено совершенно несправедливо много места — индуктивным функциям или инвариантам в циклах. Это незаслуживающие внимания частности.
Понравилось использование PostScript (не стали откапывать Форт) для иллюстрации польской инверсной записи.
Конечно, сейчас можно считаться программистом («банковским программистом» или «программистом СУБД»), не имея ни малейшего понятия о хранении элементарных типов данных в памяти, и будучи не в состоянии прочесть даже элементарный миниблок на ASSEMBLERе, но гордиться такой ситуацией нечего.
Есть ощущение, что этот курс я читал еще году в 1995 в матричной распечатке (готовил мехматовку к экзамену), там вроде использовался какой-то чудовищный компилятор с Фортрана на VAXVMS, сделанный какой-то «героической группой Аттик» (о чем упоминалось в курсе), и впечатление от курса было ужасное — какие-то жуткие ASCII-картинки про «инварианты цикла», и прочая ересь. Сейчас же мне скорее понравилось.
2008-03-01 WinDV
Кстати, если кого интересует, мое представление о самой правильной софтине для захвата DV (capturing DV) реализует хоть и старинная (Latest version: 2003-05-29), но не потерявшая актуальности софтина WinDV.
Я обнаружил, что основные сценарии работы с видео у меня следующие:Техническое видео
Всякие сьемки семинаров-лекций и т.п. Нужна только оцифровка, после чего перегон с помощью Virtual Dub из DV в MPEG4/XVID. Корректируется размер видео (если снимал в 16:9 режиме), например 720x576 → 720x404, разрешение стараюсь держать максимальным (чтобы можно было читать текст с проекторного экрана и т.п.), уменьшается FPS (количество кадров в сек.) с 25 до 15, далее подбирается битрейт, чтобы влезло на одну дешевую однослойную DVD-болванку (для облегченного распространения)Нетленка
То, от чего не хотелось бы потерять и бита, и что хотелось бы пересматривать лет через 20 в максимальном качестве — съемки ребенка например. Это надо все перегонять (без упаковок и трансформаций) с кассет на DVD-диски, и так как ничего дешевле на единицу емкости обычных DVD сейчас нет — желательно сразу резать файлы на размер который полезет на диски без проблем, да и сохранять в именах файлов информацию о датах/времени съемки. Дальше конечно можно сверстать из отрывков фильм, для пересылки друзьям/родственникам, однако сие необязательно. Для такого контента достаточно и двух зрителей - нас с Наташей.
Так вот, в обоих случаях с задачей WinDV прекрасно справляется — оцифровывает без проблем, показывает число drop-фреймов, режет контент на части по размеру, или по смене времени съемки, разумно автоименует файлы, загоняя в имя информацию о дате и времени сьемки.
Софтина к тому же кошерная — бесплатная и opensource, можно использовать её (ну по крайней мере не опасней, чем другой свободный софт) в офисе.
Рекомендую использовать следующие настройки WinDV:AVI Typetype-2 AVI (vids+auds). Иначе не все плейеры играют получившийся AVIшник.Discontinuity treshhold3600. Будет разбрасывать по отдельным файлам отрывки снятые с интервалом в час. (например утро и вечер или разные дни съемки лягут в отдельные файлы).MAX AVI size31000. Чтобы каждый файл был не больше отдельного однослойного DVD-диска.
2008-03-01 INTUIT: Основы XML
Прошел курс «Основы XML».
Для прохождения целиком — не рекомендую, курс затянут и сильно завязан на устаревшие MS-технологии (Internet Explorer 5, MS ADO, и т.п.). Для своего времени они конечно были прорывом, ну а сейчас это уже никому не нужно. С другой стороны, куча вещей, которые нужно рассмотреть хотя бы «на пальцах» — схемы XSD, трансформации XSLT, модель плавающих объектов XSLT-FO - в пролете.
Разумно комбинировать изучение этого курса с курсом «Языки информационного обмена», хотя у того курса тоже есть свои проблемы.
2008-03-01 INTUIT:Языки информационного обмена
Прошел курс «Языки информационного обмена».
Плюсы: достаточно компактный курс (короткие лекции), т.е. стиль скорее «Ничего обо всем», и дает понятие о смысле десятков трех-пяти буквенных аббревиатур связанных с XML. За счет этого все лекции в принципе сохраняют на данный момент свою актуальность.
Вообще, по очевидным причинам, для дистанционных курсов типа интуитовских, более предпочтительно иметь несколько более коротких курсов, чем один длинный.
Минусы: неудачные вопросы. Буквоедские формулировки — сложно ответить или вообще понять о чем речь, не найдя текстовый блок, к которому сформулирован вопрос в тексте лекции. Злоупотребление тестами с множественным выбором вариантов (местами вариантов порядка десятка). Неотлаженность тестов — часто встречались (на февраль 2008) тесты с неправильными ответами.
2008-02-29 INTUIT: Спецификация языка HTML
Прошел курс «Спецификация языка HTML».
Полезность курсов, сделанных из переводов спецификаций, конечно не в прекрасном литературном стиле и оптимальной подборке и подаче материала, а в том, что это хоть какая-то мотивация для того, чтобы просмотреть очередную спецификацию от W3C не по диагонали, а более-менее последовательно, и не напрягаясь (при любом знании английского, на русском читается быстрее). Т.е. курс конечно не для начинающих, а для тех кто в теме, но желает заткнуть некоторые белые пятна.
Я был бы рад другим курсам-переводам спецификаций W3C, например спецификации XSLT. У автора курса этот перевод даже заявлен http://pyramidin.narod.ru/, но страничка с ним почему-то недоступна. Есть еще переводы стандартов здесь — http://w3.hotbox.ru/, может кто-то сделает курсы на основе этих переводов …
2008-02-23 Основы работы с XHTML и CSS
Прошел курс «Основы работы с XHTML и CSS».
Курс понравился, по-крайней мере он прекрасно бы заменил устаревшие курсы «Введение в HTML» и «Основы работы с HTML» в качестве пособия для совсем начинающих, причем изложенной информации для большинства (авторов/поставщиков HTML/XHTML контента), хватило, не пришлось прибегать к сухим курсам на основе спецификаций («Спецификация языка HTML» и «Спецификация CSS2»).
Что не понравилось — взята тема Стандартов и Переносимости, однако куча места (несколько лекций), потрачено на явную ересь, с уклоном в микрософтовский продукт плейсмент — лекция о фильтрах для изображений (нестандартные расширения CSS для IE), или лекция как засунуть MediaPlayer на страничку (с кучей тестов-вопросов по параметрам его вызова, хорошо хоть classid не спрашивали). Это лучше убрать из курса — курсу будет только лучше. Также можно выкинуть раздел про фреймы и DHTML — изложено все равно не очень, темы курсу достаточно перпендикулярные, да и на это есть отдельные курсы. Отдельный луч ненависти — вопросам про «веб-устойчивые цвета», понятие не только не определенное в этом курсе, так и вовсе неизвестное в рунете за исключением пары страничек. Т.е. такие небольшие и перпендикулярные куски мешают советовать курс основной целевой аудитории — авторам статей, техническим писателям, т.е. всем тем, кто должен поставлять для веба (или техдокументации), семантически корректно размеченный контент. А цветами и стилями должны заниматься специалисты по верстке и дизайну, это вполне отдельная тема.
Но в целом впечатление очень приятное, спасибо авторам курса, буду рекомендовать сотрудникам.