Category: it

Category was added automatically. Read all entries about "it".

idle

Программистское

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

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

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

PS Умудренный жизнью коллега во время недавней философской беседы: "Раньше я думал, что программирование - это на 70% разработка хорошего интерфейса, а на 30% - написание алгоритма для начинки. Сейчас все больше убеждаюсь, что интерфейс - это как минимум 90%".
idle

Глядя трансляцию

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

Даже на ЧМ не могут не запороть раздаточный вопрос :( По крайней мере, сильно подозреваю, что за то время, пока Поташеву искали раздатку, все остальные команды уже успели свои порвать :(

Глупо читать ответ до комментария. Он становится уже примерно никому не нужен :( Что характерно, просил читать так, как комментарии были подготовлены - до ответа - но нет :(

Зато услышал интервью некой девушки, которое в очередной раз навело меня на мысли о том, что расширение географии ЧМ-а просто ради отчетности о числе стран - не вполне уместно.

Upd:
С утра вот подумал, что с шансами мою мысль насчет "про Шеннона - предполагалось, что будет гробом" кто-то наверняка понял неправильно - а именно, что Шеннон - это эзотерическое знание, и вопрос сложен из-за свояка.

На самом деле имелось в виду совсем не это. Шеннон за пределами мирка ЧГК-ответов очень известен (куда более, чем тот же Мандельброт, скажем). Любой студент, проучившийся на мехмате хотя бы пару курсов (вроде у нас было на первом) - а тем более на любом IT-факультете - как минимум про коды Шеннона-Фано должен знать.
Проблема в том, что я сомневался, насколько все нужные логические шаги можно сделать за минуту. В частности, понять, что у ведущего есть полный текст, но вы его не слышите; восстановить этот текст; и тогда уже построить аналогию, что это был процесс восстановления искаженного сигнала. В общем, логическая часть тут весит процентов 70-80, на мой взгляд.

Ну то есть да, понятно, что в каких-то командах просто не будет этого знания в принципе; более того, сами концепции, которые тут обыгрываются, могут быть вне поля интересов. Но вообще мне кажется, что на ЧМ-е уместно задавать вопросы, для которых нужное знание есть, скажем, у 15-20 команд, а смогут взять его 1-2. См. "Исчезание", например.
idle

Потрындеть про разное

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

Так вот, тут вот я подумал, что хотя воинствующий языковой пуризм мне вроде бы несвойственен, две вещи меня повергают в некоторое недоумение. Во-первых, когда заимствованное слово пытаются читать "как в оригинале", хотя для него есть устоявшийся русский перевод. Это, например, язык программирования "джава". Есть остров Ява, есть сорт кофе с острова Ява, называемый ява, и есть язык программирования, названный в честь сорта кофе, названного в честь острова Ява. Желание вдруг начать его произносить по-английски мне кажется какими-то дешевыми и глупыми понтами типа "вот какой я весь модный и погруженный". Но еще большее недоумение у меня возникает, когда не только используют транскрипцию вместо перевода, но еще и делают это с ошибкой. Скажем, почему-то материалы сайта (ну или его наполнение, говоря иначе) в определенных кругах называют словом "контент" с ударением на последний слог - как в глаголе to content, а не существительном content. "Ненавижу две вещи - расизм и негров", да.

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

Во-первых, автоматизация каких-то сфер деятельности, позволяющая заменить "тупой и неквалифицированный" человеческий труд, порождает потребность в почти таком же неинтересном труде где-то в другом месте, где нужно обслужить эту самую автоматизацию или исправить что-то, что оной не было предусмотрено. Скажем, если мы заменяем обычный станок на крутейшего робота, то вместо рабочего, который стоял за станком, нам становятся нужны программист роботов и специалист по ремонту роботов. Да, вполне вероятно, что рабочих нам нужно было десять, а программистов и ремонтников - по одному. Но тут наступает второй момент. Иногда мне кажется, что авторы таких материалов пишут нам прямо из параллельного мира, где уже второе поколение советских людей живет при коммунизме и все бесплатно. Пока нам были нужны десять рабочих, нет особых проблем их найти: в общей сложности рынку труда нужны дофига рабочих, обучить их можно относительно быстро, и потому они плюс-минус есть. Как только общая потребность в 10N рабочих заменяется потребностью в N программистах роботов, из которых N/10 умеют программировать именно нужных вам роботов, внезапно оказывается, что программисту роботов нужно платить как-то ощутимо больше, чем рабочему, стайку которых он заменил. А робот - тот и вовсе стоит на порядок дороже станка, а делает что-то все равно те же 24 часа в сутки. В итоге получается, что стартовые вложения в гипотетический завод возрастают очень даже ощутимо. А государство при этом все равно должно дать покушать вашим несостоявшимся рабочим - и каких-то принципиально иных источников дохода для этого, кроме налогов с предприятий, на которых эти рабочие не работают, у него все равно нет.

И да, понятно, что идея в том, чтобы постепенно заменить всю цепочку: программу для робота у нас пишет конструкторский софт, который уже начертил деталь вместо конструктора - но, кажется, необходимость автоматизации этого всего только отодвигает подальше в будущее тот момент, когда сделать все это будет дешевле, чем нанять десяток рабочих. Ну то есть прямо сейчас кажется, что в российской действительности это горизонт нескольких десятков лет как минимум.
  • Current Music
    Handel - Sonata in E minor, HWV 375 - Allegro
  • Tags
WYWH

Программистское

Забавный пост на SQL.RU про программистов на мамсе. Что характерно, почти все правда. Так как я не совсем заматерелый М-программист, то про меня правда несколько больше половины :)
Collapse )
  • Current Music
    Darkseed - Flying Together
  • Tags
    ,
idle

Вчера

Сегодня должно начаться улучшение. Потому как ухудшать дальше вроде бы некуда.
Collapse )
  • Current Music
    Apocalyptica - Romance