Excel, будь ты проклят: “1/2”+1=45660

Пишу этот текст совершенно без намерения оскорбить авторов Excel. Это фантастически успешный софт, который по праву считается золотым стандартом среди табличных редакторов. Тем не менее, в этом году Excel уже стукнуло 40. В таком почтенном возрасте его семантика всерьёз страдает из-за костылей, которые накапливались не один десяток лет, обеспечивая обратную совместимость.

Одно из самых интересных дел, которыми мне приходится заниматься на работе — это обратная разработка Excel. Я выискиваю причуды в его поведении и решаю, как поступать с ними в нашем фирменном табличном редакторе. Благодаря моему повседневному труду, наши пользователи, возможно, и не подозревают, сколько недокументированных грехов совершила Microsoft ради совместимости. Приглашаю вас одним глазком взглянуть на те ужасы, с которыми мне приходится тягаться — и тогда вы тоже станете бояться Microsoft Excel — не потому, что чего-то не знаете, а наоборот, так как знаете слишком много.

Читать

Успех в планировании

Старый знакомый прислал ссылку на забавный пост: https://medium.com/@ivlad/, и это было бы очень смешно, если б не было так грустно.

Вот я себе не представляю, инженера который пытается лог скажем в пару гигабайт длинной (а учитывая, что там все в csv, он примерно такой у них и получался) запихать в Excel с целью сделать выборку для отчета, даже Билл Гейтс не на столько верит в свой продукт, как тот индивид.

Во первых, excel честно предупредит, что «ему столько не влезет, извините». Во вторых, есть такое понятие «инженерный подход». Т.е. прежде чем чтото куда то пихать, кто-то должен был посчитать, какое количество строк генерируется в минуту, сколько их получится за неделю и что целесообразно придумать для посчета статистики в данной ситуации.  А потом уже, можно сажать сотрудника, которому вменять в обязанности выполнение определенных действий.

Скорость разработки

«Объясни мне, что это за фигня!»

Алиса, новый сотрудник, бросила пачку документов Джимми на клавиатуру, и нависла над ним, скрестив руки.

Он нажал «отмену» и взглянул на документы. Это было полное описание ERP-системы с грифом «высокой важности» — новая инициатива менеджеров, за которую они были щедро вознаграждены, требующая от программистов «инвестировать» в собственный труд.

«Для первого проекта весьма амбициозно» — сказал он. «Может, стоит начать с задачи попроще, чтобы вначале узнать наш код?»

«Я работала с компьютером не меньше, чем кто-то с вашими «знаниями»» — отрезала Алиса, «Не стоит недооценивать меня, как это делали козлы на прошлой работе».

«Мои извинения», ответил Джимми, которому совсем не хотелось стать тем козлом, который отказывается помогать новичкам. «Так с чем у тебя проблемы?»

«С этим» — произнесла она, раскладывая документы на его столе. «Всё написано каким-то дурацки шифром. Как я могу его набивать, если в нём начисто отсутствует смысл?»

Он озадаченно заморгал. Она показывала распечатки актуального кода системы. Может раньше она не пользовалась VB? «Каким языком ты пользовалась на прошлой работе?»

Читать