Заметки

В Новый Год с... Linux!

Предыдущая запись была озаглавлена "В Новый Год с новым Windows". Однако, я вспомнил о своем публичном заявлении после выхода Висты, что "Windows XP будет последней версией виндов для дома". Странно даже, что мне никто не напомнил... Посему, воспользовавшись паузой (активировать Windows 7 пока не могу, т.к. все админы с работы на отдыхе), решил исправиться и воплотить данное обещание в жизнь.

Домашний ПК-сервер используется для двух основных задач: файловое хранилище и обработка фото и видео, т.е. как медиа-центр. Потратив полчаса на обзор состояния дистрибутивов линукса я нашел то, что требовалось: Ubuntu Studio 9.10 (ссылка).

Еще полчаса потребовалось чтобы вытянуть торрентом (это раза в 2-3 быстрее, чем качать с веба) дистрибутив в 1,5 гигабайта и записать его на болванку. Вставляем DVD в дсиковод и начинается установка... Сразу скажу, что все мои ожидания были превзойдены не то что в разы, а на порядок. Спустя час я пишу эти строки уже из линукса. Посему для всех интересующихся - подробности...

О пользе RAID

Прошел год с небольшим после покупки Seagate Barracuda на 1 терабайт. И ранним субботним утром один из дисков полетел. Хрюкает и не заводится. Гарантия же на них - ровно год. И что-то мне расхотелось покупать Seagate. Например, 250 Гбайтный системный диск Western Digital у меня стоит уже четвертый год. Поэтому место Seagate-ов в массиве заняла парочка WD Caviar Black той же вместимости. Гарантия на них - 5 лет. Посмотрим. 1,5-терабайтный "медленный" WD Caviar Green, купленный более полугода назад для кино, пока работает нормально.

Моща(и)

До чего дошел прогресс в плане наращивания быстродействия. После полугода пользования профессиональным (!) ноутбуком не иначе как вчера ночью я сделал "страшное" открытие. Кеширование записи на диск было отключено...

Обнаружилось при видеомонтаже, когда видео, аудио идут из разных источников, одновременно перекодируются и пишутся на диск. Звук стал заикаться каждые секунд десять, а курсор мышки подтормаживать.

Почему это было незаметно раньше? СУБД имеют свой кеш записи, поэтому настройка диска не имела большого влияния на использование в монопольном режиме. А среды Delphi и Visual Studio корректно кешировали данные в 6-гигабайтной памяти. Виртуальные машины - то же.

Шаблоны

Сидели мы недавно с хорошим знакомым П. и, потягивая из железных трубочек чай-матэ, обсуждали, ни много, ни мало, но смену парадигмы мышления. Долгий опыт университетского преподавателя П. ныне обогатился добавлением в курс информатики такой эклектики, как Enterprise Java. Впрочем, чтобы понять эклектичность Java EE или того же UML (UML c'est poubelle), надо обладать системным образованием и таким же мышлением. Поэтому проблемы подобные курсы вызывают не у студентов, а у преподавателя, которому надо каким-то образом суметь связать несвязуемое и выстроить логику там, где ее и не было.

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

Начав недавно практиковать обучение сиквелу я столкнулся ровно с тем же явлением.

Группа стажеров примерно моего возраста и старше всю неделю честно старалась вникнуть в детали, написанные мелким шрифтом после каждого слайда, уместить знания в некую систему, желательно, не диссонирующую с уже имеющейся.

Группа же возраста примерно 20-25 лет оказалась совершенно равнодушна к пояснительному тексту. Если картинка слайда была удачной, то она более-менее откладывалась в памяти. Вдобавок, шло конспектирование некторых случаев из моей практики с короткими кусками кода. Иное дело - лабораторные работы, когда решение находилось увлекательным методом "научного тыка". Если же метод не срабатывал, то обращались ко мне с просьбой "дать код доступа для прохождения на следующий уровень".

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

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

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

Уважаю преподов за их тяжкий труд

Докатился. Пришлось всю неделю преподавать курс по администрированию 2008 сиквела. А что поделать, некому было.

Изгибы судьбы при смене работодателя

Минувшей весной я озаботился сменой работодателя. Ну, а фигли, на дворе кризис, все "троешники" сидят по норам, самое время поискать веселую компанию "отличников" или, на худой конец, "хорошистов". Правда, время поиска вырастает раза в 2, но в течение месяцев так 3-4 найти место вполне реально даже при финзапросах "заметно выше среднего".

Сказка - ложь, да в ней намек

Есть такая сказка «Умная дочка». Не могу сказать, что была она особо распространена во времена моего советского детства, но помню, что находил ее в каком-то сборнике. Попала эта сказка и в поле видимости создателей серии «Гора самоцветов», благодаря чему случилась экранизация в мультфильме и иллюстрированная публикация.

Это была присказка. Теперь о сюжете. Два брата – богатый и бедный – едут продавать товар в город. Телега - богатого, лошадь - бедного. Ночью кобыла рожает, утром находят жеребенка под телегой. Богатый брат, естественно, говорит: «Моё!». Потому что под моей телегой. Дальше - суд. Брат, как водится, дает взятку, жеребенка присуждают ему. Бедняк начинает публично призывать к справедливости и, заодно, ругать суд, государство и самого царя. Под эту лавочку обоих братьев задерживают и доставляют к царю с боярами. Царь дает задание, с которым оба справляются, но бедняку помогает его маленькая умная дочь. Тогда царь дает повторное задание и велит дочери самой к нему явиться, что она и проделывает. Наконец царь признает «От горшка – два вершка, а самого царя обошла». Отдает жеребенка. Счастливый конец.

Вроде ничего особенного. Но приглядимся чуть внимательнее. Умная дочка живет в бедной семье. Кто-нибудь вспомнит умного богача из сказки? Я, навскидку, не могу. Видимо, все умные богачи заранее уехали в Америку или же умело маскируются, возможно даже в местах не столь отдаленных, чтобы в наши сказки не попадать. На виду совсем другие богатые (привет куршевельской компании). Взятка суду, то есть низовая коррупция – обычное явление. Как с ним бороться? Сказка учит: искать правды. В данном варианте, бедняк пошел по пути «несогласных» и выбрал маргинальное поношение государства и власти. Разумеется, народ его не поддержал, зато таким диссидентским способом удалось пробиться «пред светлы очи самого». Заметьте, не апелляция в суд более высокой инстанции, ни попытка найти других пострадавших, и, объединившись, отстаивать свои права уже группой. Кто же может решить вопрос о жеребенке, если не сам царь? Царь, вместо занятий более важными делами, дважды находит время для организации развлекательного конкурса. Увидев умную дочку, которая «не одета и не раздета» первая мысль – сейчас он её поцелует в живот.

Позабавило, что каждая сказка в сборнике предваряется несколькими абзацами о том, что «Россия – самая большая страна на свете» и прочие «самости». И, несмотря на весьма неплохой художественный уровень как экранизации (Назаров), так и книги, возникло сомнение в необходимости читать подобное своим детям.

Коза кричала или Ревизия кода

Когда провожу ревизию программного кода, всякий раз вспоминаю эпизод из "Осеннего марафона". Бузыкин сидит у Варвары, помогая ей с переводом. Время - половина первого ночи. Происходит примерно такой диалог.
- Скажи, Бузыкин, может я бездарная?
- Неее...
- Но ты же всё повычеркивал!
- Не всё... Но вот это, например, я не мог оставить: "Коза кричала нечеловеческим голосом"

И еще пару вестей из полей...

Вести с софтостроительных площадок

Давненько я не брал в руки шашек, посему пришла пора написать немного текста на тему практического софтостроения, немного затронув «любимую» тему наживульки (agile).

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

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

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

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

ASP.NET

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

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

Сценарий, требующий десяток-другой строк кода для обычного оконного клиента, оборачивается сотнями строк спагетти из HTML, Javascript и Code behind. Событийная модель на порядок беднее не то чтобы VCL/WinForms, а даже FoxPro 2.0 для DOS образца 1992 года. 5 клиентских событий у PageRequestManager, из которых 4 отрабатывают только при асинхронном вызове, оказываются пределом мечтаний.

Существующая подсистема пользовательского интерфейса у клиента из трех-четырех десятков экранных форм реализована примерно сотней тысяч строк, при том, что создатели четко отделили слой представлений от бизнес-логики, а общие элементы выделены в controls разного уровня: от custom до композитных user...

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

RSS-материал