Крайний Север (far_far_north) wrote,
Крайний Север
far_far_north

Categories:

Я у мамки программист

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

В институте писал на Паскакале всё подряд, для развлечения больше. То Ассемблера куски вставлял, то имитировал логин в сетку института. Сейчас это называют "фишингом". Правда так и не применяли, за это могли и пинком под жопу. Помню, информатику на первом курсе можно было сдать либо в виде экзамена, либо написать программулину - интерфейс, менюшки, ввод данных, коррекция, построение графиков. Я на это дело подзабил, а вот товарищ мой сделал ну очень качественную штуку. Помню, одногруппники передирали у старшего курса относительно простую прогу того же типа. Мне передирать не хотелось, а написать такую качественную как мой товарищ, мне было уже не успеть, потому пошёл сдавать экзамен. Не скажу, что экзамен был простой, там и вопросы были и программу на бумажке надо было написать довольно большую, однако сдал я его легко. Влёт практически. До сих пор не понимаю, на кой хрен будущим экономистам надо было год взрывать мозг Паскалем и даже экзамен поставить. Лучшее, что я написал в институте - небольшая утилитка, которая сбрасывала пароль на базах данных Access. Я тогда работал админом, нам назначили тест по Word/Excel, причём не нормальный, на понимание, а дебильный - в каком меню/подменю находится команда "Выдави глаз"? То есть даже мы с товарищем, знавшие офисный пакет досконально, не могли вспомнить эту херню, не имея компа перед глазами. Для чего нужно было это зубрить? Без понятия. Я нашёл где лежала база с ответами, а она оказалась запароленной. За пару вечеров сломал. На моё счастье, тогда пароль к базе хранился по одному и тому же смещению и легко вычислялся. В Ворде все было сложнее, та же схема не прокатила. Да и в новых Access'ах, я уверен, всё серьёзнее. Алгоритм шифрования мне тогда расковырять не удалось, но забить пароль пустым получилось. Утилитку потом презентовал преподавательнице.

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

=ЕСЛИ(Q1377=1;ЕСЛИ(И(D1377>=$B$3;E1377<=$C$3);E1377-D1377;ЕСЛИ(И(D1377<$B$3;E1377<=$C$3);E1377-$B$3;ЕСЛИ(И(D1377>=$B$3;E1377>$C$3);$C$3-D1377+1;$C$3-$B$3+1)));0)

Особо сложного ничего, но эта строчка экономила нам уйму времени. Можно было задать период и легко отсортировать депозиты, которые в него попадали. Дальше было интереснее. Встал вопрос, как вычислить оптимальный остаток бабла в каждом банкомате. Мало загружать невыгодно, каждая инкассация стоит денег. Много загружать тоже не алё, деньги, которые лежат в банкомате бесплатно, могли бы лежать на счёте и приносить некоторый доход, в то время процентов 5-6 годовых, наверное. Задача была найти оптимум. Сделал интересно. Снял статистику по всем банкоматам за последний месяц, выцепил самые крупные разовые снятия. Дальше решил следующим образом - сымитировал ежедневные снятия по месячному скользящему среднему, инкассация когда остаётся денег меньше чем расход в самый ходовой день, с учётом выходных. Суммы инкассации в заданных рамках прогнал в цикле с определённым шагом, считая цену инкассации и фондирования для каждой итерации. Таким образом выбирал минимальную цену. Понятно, что статистика прошлых месяцев не гарантирует оптимальности в будущем, но если принять, что снятия в конкретном банкомате более-менее стабильны, то получалось вполне логично. Потом, когда из нашего филиала делали допофис, приезжали большие дядьки-тётки из Питера, распрашивали. Показал я им эту программку. Вроде заинтересовались. Мы, говорят, щас как распространим ваш передовой опыт на все филиалы! Уехали. Выслал я им это дело, инструкцию написал. Хер там, никто даже не притронулся. Сами с усами. Ну и ладно, всё равно наши обязанности поменялись кардинально и сколько денег куда загружать уже решали другие. И вопросы эффективности были на их совести. Хотя нет-нет, да и смотрели оптимум для нашей кассы. Ну а наша касса, в свою очередь, ела мозг питерской кассе, намекая как нам удобнее с учётом местной специфики.

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

Tags: АйТи
Subscribe

  • О кине

    Сегодня смотрел неплохой фильм "Майкл Клейтон" с Клуни. Юридическая драма/триллер. Одна из ролей - Тильда Суинтон. Необычная актриса, хорошо играет,…

  • Кино и прочее бытовое

    Как сделать человеку хорошо? Сначала пообещать что-то плохое, а потом немного улучшить. Обещали взять на ТО 22 тысячи, а взяли, почему-то, 18. Такое…

  • "Круэлла"

    Поскольку развлечений в дождь здесь не так чтобы много, мы сходили на полудетский фильм про детство и, так сказать, становление антагонистки "101…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 16 comments

  • О кине

    Сегодня смотрел неплохой фильм "Майкл Клейтон" с Клуни. Юридическая драма/триллер. Одна из ролей - Тильда Суинтон. Необычная актриса, хорошо играет,…

  • Кино и прочее бытовое

    Как сделать человеку хорошо? Сначала пообещать что-то плохое, а потом немного улучшить. Обещали взять на ТО 22 тысячи, а взяли, почему-то, 18. Такое…

  • "Круэлла"

    Поскольку развлечений в дождь здесь не так чтобы много, мы сходили на полудетский фильм про детство и, так сказать, становление антагонистки "101…