Про офисные пакеты
Jun. 9th, 2022 07:56 amТут вот наткнулся в ЖЖ на сравнение программ московского и провинциального института готовящего "программистов". У провинциального в программе был предусмотрен курс по "Word и Excel". И кто-то в комментариях задал вопрос "а зачем собственно такой курс программистам.
ЖЖ нынче не место для дискуссий и ответить на этот вопрос там у меня не получилось. А вопрос, конечно, интересный.
У меня сразу возникло несколько тем, которые можно было бы преподать студентам, будущим программистам, используя в качестве наглядного пособия офисный пакет.
- Основы ведения документации, технической и деловой (ну и как эти стандартные, выработанные человечеством за века, приемы поддержана в этом софте). Как правило, люди после школы этого не знают. Современные школы - далеко не классические гимназии XIX века, да и в тех чистописанию уделяли куда больше времени, чем стандартам делового документооборота.
- Вычисления в электронных таблицах. Там очень много интересного и нужного есть, начиная от простейшей статистики и what-if анализа и кончая численной оптимизацией. Ну и вообще дать понятие разницы между кучей данных и базой данных на примере Excel очень легко, благо тот где-то как-то умеет работать и с тем и с другим.
- Основы полиграфического дизайна. Пригодится потом при дизайне интерфейсов.
- Макросы в документах и проблемы компьютерной безопасности, которые из-за них проистекают.
- Презентации (впрочем это я бы, как раз, пожалуй преподать не смог. Сам не умею)
- Физическая vs логическая разметка текста (это не сводится к темам основы ведения документации и полиграфический дизайн, это чуточку глубже лежит)
- Работа с шаблонами документов
Это всё - изучение, пусть и несколько углубленное с учетом того, что у нас будущие специалисты в области компьютеров, но на уровне пользователя.
А ведь можно изучать микрософт-офис как программисты, будущие архитекторы ПО. Пусть он closed source. Ну и что - наблюдая его снаружи тоже можно многое увидеть.
- Принципы дизайна большого и успешного программного продукта.
- Соотношение дизайна и исторических напластований
- Creeping featurism, история как фичи продают продукт новым пользователям, а опытным только мешают
- Революции в интерфейсе пользователя. У ворда я их две помню как минимум - между 5 и 5.5 и в 2010, как пользователи плохо переносят смену привычного на хорошее.
- Форматы данных - от просто бинарных к OLE filesystem и zip-архиву c XML. Как на протяжении четверти века менялось отношение к хранению данных на диске, борьба за скорость записи и объем файла - что важнее.
Upd упустил третью тему - взаимодействие с чужим проприетарным софтом. Хотя уж казалось бы - чтение офисных форматов опенсурсным софтом - это то в чем я собаку съел и кошкой закусил. Но там кроме этого и генерация офисных документов сторонним софтом и ole automation и odbc.
no subject
Date: 2022-06-09 05:55 am (UTC)Может я ошибаюсь, но вести документацию в современных проектах (не там, где поддержка старого кода, а именно создание нового) принято или напрямую в репозитории, или в wiki-подобных сервисах. А уже из них можно экспортировать в офисный формат, если кому сильно надо.
no subject
Date: 2022-06-09 06:01 am (UTC)Для того, чтобы вести документацию напрямую в репозитории, нужно иметь в штате техписателей, способных справиться с docbook xml, latex или, на худой конец, markdown.
no subject
Date: 2022-06-09 06:09 am (UTC)no subject
Date: 2022-06-09 06:25 am (UTC)Помнится
filin в свое время в Криптокоме довольно легко нарисовал в латехе пакет для подготовки докуменатции по ЕСПД. То есть при налаженном взаимодействии техписателей и программистов - вопрос решаемый.
no subject
Date: 2022-06-09 06:33 am (UTC)no subject
Date: 2022-06-09 04:14 pm (UTC)Потому что рано или поздно возникает задача 'слить исправления в документации от версии изделия X в документацию на версии Y, Z. А если системы контроля версий нет или она merge изменений сделать не может - то придется все это делать руками т.е. долго и печально. Что автоматически делает бинарные вордовские документы весьма проблемными.
И это если не хотеть писать эту документацию в несколько рук. Там без слияния правок и предложений - совсем плохо.
no subject
Date: 2022-06-09 06:33 am (UTC)Эксель и аналоги - самый простой способ несложных расчетов "на нонешний случай", да и иные сложные расчеты в нем вполне сподручно вести. А что до ворда - заявления во всякие органы и всякие официальные бумажки писать придется в этой жизни всем, и большинству помногу.
no subject
Date: 2022-06-09 06:35 am (UTC)no subject
Date: 2022-06-09 06:50 am (UTC)Если тебе нужно писать кучу писем по одному и тому же шаблону, имеет смысл юзать какой-нибудь ТеХ, а вот для писания кучи разнородных писем тупо эффективнее заюзать ворд, чем допиливать ТеХовский шаблон под каждую новую задачу.
no subject
Date: 2022-06-09 09:43 am (UTC)no subject
Date: 2022-06-09 10:21 am (UTC)Да, конечно. Концептуально они все одинаковы. Вот правда внешнее API у всех разное.
no subject
Date: 2022-06-09 08:26 am (UTC)В школьном курсе математики нет такого раздела, куда органичто бы вписался эксель как инструмент.
Лично мне электронные таблицы РЕАЛЬНО ПОНАДОБИЛИСЬ уже при обработке данных собственных исследований, то есть курсе на третьем (другое дело что получил я возможность исопльзовать Lotus 1-2-3 на пятом).
У нас был на втором курс матстатистики, но на тамошних практикумах от таблицы толку было бы ноль целых хрен десятых.
Я уж скорее подумаю про школьные курсы химии и физики. В университете на первом курсе у нас рассчеты такого рода были пожалуй только в курсе геодезии и топографии. Но и то, при тех протяженностях теодолитных ходов, которые реально сделать студентам за неделю практики электронная таблица - избыточной мощности инструмент.
Она хороша, когда строк в таблие гд-то от полусотни до двух тысяч.
no subject
Date: 2022-06-09 09:10 am (UTC)Для бизнеса на всех местах где есть какой-то документооборот,
для студентов многих технических специальностей, да и не только.
Не понятно зачем это нужно программистам.
Там все же несколько другие технологии, которые гораздо более необходимы для работы по специальности.
Не то, чтоб офис им совсем не нужен -- для них это просто потеря времени.
Как уже было сказано, документооборот для разработчиков это latex, markdown, xml-технологии,
doxygen, javadoc и прочие doc-as-code тулзы.
Этого тоже по большей части нет в университетских программах.
На западе вместо этого тратят время на стандартные алгоритмы,
которые кроме как на интервью никому не нужны -- тоже перегиб, но в другую сторону кмк.
no subject
Date: 2022-06-09 10:26 am (UTC)Во-первых, в посте перечилены как раз те причины по которым офис следует изучать программистам.
Во-вторых, latex штука хорошая. Но он прост, понятен и хорошо документирован в книжках. А вот офис, как и большинство современных программных продуктов осваивать приходится методом тыка, пытаясь по расположению кнопок на экране понять те концепции, которые имели в виду его авторы.
Офис в качестве учебного примера хорош еще и тем, что все его видели, все с ним работали и то, что на самом деле там возможностей на порядок больше, чем думает большинство пользователей, особенно если уложить в голове некоторые концепции, может послужить хорошим уроком.
no subject
Date: 2022-06-09 11:13 am (UTC)Тут можно сильно спорить, что лучше документировано и более понятно, латех или офис.
Учить по документации офис в разы проще чем учить латех, кмк.
И даже продвинутые концепты офиса несравнимо проще продвинутых концептов латеха.
Опять же офис осваивается методом тыка (хотя и криво). Латех -- нет, его нужно учить.
> Во-первых, в посте перечислены как раз те причины по которым офис следует изучать программистам.
Не вижу ни одной причины для программистов. Есть причины для продукт-менеджеров, для UI-дизайнеров.
В софтостроении есть же много профессий, кроме программистов.
Разве что форматы данных -- но это довольно абстрактная тема и тут офис далеко не самый показательный пример.
Кроме того с точки зрения архитектуры/концептов офис это скорее пример анти-дизайна.
Мне например приходится по работе терять сравнительно много времени,
чтоб объяснять менеджерам, что идея видеть мир сквозь spreadsheet-концепт
(потому как они могут в excel и только) слишком примитивна для большинства проблем,
которые им приходится решать. И есть гораздо лучшие методы.
Но им вместо этих методов во время учебы дали курс офиса, они же не програмисты :(
Программиста же владеющего офисом, а не латехом/докбуком итп придется еще раз переучивать
перед тем как подпускать к работе, что тоже не дешево.
no subject
Date: 2022-06-09 12:51 pm (UTC)Вот как раз для того, чтобы объяснять менеджерам ограничения spreadsheet-концепта и нужно этот концепт хорошо знать. Иначе просто не увидишь что они через вот это окошко на мир смотрят и будешь недоумевать, откуда что берется.
Ррограммиста надо учить офису так, чтобы потом переучивать не приходилось. Чтобы и офис, и латех, и докбук и старый добрый HTML в его представлении были частными случаями общей концепции структурированного документа.
Что касается примера анти-дизайна, то такие примеры в обучении тоже нужны. И нужно показать почему и как на рынке побеждают обычно именно такие примеры, будь то хоть процессоры intel, хоть офис, хоть смартфон.
no subject
Date: 2022-06-09 04:19 pm (UTC)Если программист действительно владеет офисом, чтобы сделать все что ему надо (а надо, вообще говоря, сильно много) - то с латехом и докбуком вроде бы никаких проблем не будет.
no subject
Date: 2022-06-09 04:54 pm (UTC)Владение латехом (на уровне "умею оформить статью в журнал") -- это квалификация.
У таких людей есть понимание основ типографии и знаниe что такое "style" и "logical markup" --
у них никогда не будет проблем с офисом
(кроме возможного отвращения от "features broken by design", но оставим это за кадром)
Владение же офисом на уровне "написал master thesis" ни говорит еще не о чем.
Конечно, если это потенциально хороший программист, то освоить латех при желании не проблема, но требует времени.
Если же нет, то нет.
Таким образом при приеме на работу разработчика владение офисом роли большой не играет,
а вот владение хотя бы латехом уже большой плюс.
Тоже самое с макросами excel.
В бухгалтерии эти макросы нужны, а в разработке нужно к примеру умение работать со связкой DB/sql/python.
Ну или с R/octave -- в зависимости от поля деятельности.
no subject
Date: 2022-06-09 05:15 pm (UTC)Я имел в виду что-то близкое к "может сделать в ворде приблизительно все, что ему захочется/может захотеться/дадут задание сделать с текстом в процессе работы". Правда, я сильно подозреваю, что можно считать, что таких людей не существует.
Т.е. если человек может сделать все что вам от него хочется, в Ворде - то и в latex его обучить никакой дорогостоящей проблемой не будет.
no subject
Date: 2022-06-09 11:24 am (UTC)С екселем-то потрахаться, с его программированием, с взаимодействием ексель-мояпрограмма. Много занятного. Имеет смысл.
А ворд - это, мне кажется, старорежимное что-то.
no subject
Date: 2022-06-09 04:25 pm (UTC)Это, между прочим, не computer science, а самая настоящая гуманитарная дисциплина, вплоть до того, что презентациям надо учить на уроках литературы: как за разумное время донести нужные вам сведения до людей, которым не особо интересно, которые в вашей теме не бумбум и на мнение которых, тем не менее, вам по какой-то причине не наплевать.
no subject
Date: 2022-06-10 05:45 pm (UTC)Программистов в принципе надо с первого курса по последний (сколько там сейчас лет обучение в ВУЗе идет?) каждый семестр долбить одной и той же дисциплиной -- умением коммуницировать с простыми людьми. И каждый раз брать железный прут и выбивать всю спесь, пока не вросла еще намертво в личность.
no subject
Date: 2022-06-11 06:09 am (UTC)А все, что сейчас мусолится по теме "что же хотел сказать автор" - это должно проходить в качестве антипримера "не надо так делать, не поймут".
no subject
Date: 2022-06-11 12:12 pm (UTC)Если в школе начинать класса с пятого учить толково излагать свои мысли чтобы поняли и правильно искать информацию в литературе и в интернете. то высшую школу совсем разогнать можно будет. Не нужна она будет. Техникум, а дальше профессионально расти сам. Ну или в рамках каких-то научных/инженерных школ под руководством научного руководителя.
Сейчас единственное что отличает человека с высшим образованием от человека без оного - это какая-никакая натасканность на самостоятельное изучение всего подряд в сессию и изложение изученного.
no subject
Date: 2022-06-11 01:50 pm (UTC)Да и не с потолка ведь взялась фраза, что если бы архитекторы строили здания так, как программисты пишут программы, то первый же залётный дятел разрушил бы всю цивилизацию.
no subject
Date: 2022-11-07 04:56 pm (UTC)Смотря на свежее массовое жильё в России (и не только жильё), возникает мысль, что дятел бы не помешал.