nabbla (nabbla1) wrote,
nabbla
nabbla1

Categories:

25 лет

У работников Байконура в этот день траур - самая черная дата космонавтики, когда при подготовке к пуску ракеты Р-16 погибло более полусотни человек. У меня же - так уж вышло - день рождения. Круглая дата. Не такая, конечно, как 32 года (100000 лет в двоичной системе), но все же.

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

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

Даже название должности мне очень нравится - "Инженер-исследователь". Да, всегда хотел быть именно им! Каждый день заниматься чем-то новым, не погружаться в рутину однообразных действий, но в то же время видеть результат своей работы "в железе".

А вчера сбылась еще одна моя мечта, очень глупая и детская.


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

Читал злобную книжку, "паттерны проектирования", упорно на ней засыпал, а вчера решил наконец-то попробовать реализовать undo в своей graph2txt - и сделал все за полдня! Ну, не совсем все - пока отменить можно добавление точек на график, стирание всей кривой, изменение координат, переключение с линейной шкалы на логарифмическую и замену друг на друга осей X и Y. Но принцип уже ясен, и изменений понадобилось внести на удивление мало.

Такие разные команды - добавить точку и стереть вообще все данные, а механизм действия один и тот же. Только в одном случае запоминается лишь, куда была добавлена точка - и пока в списке последних действий эта команда есть, ее можно отменить - точка будет удалена. А во втором - как только стирание выполняется, в память команды (команда - это отдельный класс, производная от абстрактного класса, в котором определены только процедуры execute и undo) заносятся эти самые стертые данные, а при нажатии undo - возращаются на место.

Вот новая версия, можно поиграться :) Конечно, над этой программкой еще работать и работать.

Научиться бы еще делать undo в реальной жизни...
Tags: imagegraph2txt, программки, работа
Subscribe

  • А всё-таки есть польза от ковариаций

    Вчера опробовал "сценарий", когда варьируем дальность от 1 метра до 11 метров. Получилось, что грамотное усреднение - это взять с огромными весами…

  • Потёмкинская деревня - 2

    В ноябре 2020 года нужно было сделать скриншот несуществующей программы рабочего места под несуществующий прибор, чтобы добавить его в документацию.…

  • Очередная несуразность в единицах измерения

    Когда-то я написал программу PhysUnitCalc - калькулятор, умеющий работать с размерностями. Мне казалось, что я наступил уже на все грабли, которые…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your IP address will be recorded 

  • 29 comments

  • А всё-таки есть польза от ковариаций

    Вчера опробовал "сценарий", когда варьируем дальность от 1 метра до 11 метров. Получилось, что грамотное усреднение - это взять с огромными весами…

  • Потёмкинская деревня - 2

    В ноябре 2020 года нужно было сделать скриншот несуществующей программы рабочего места под несуществующий прибор, чтобы добавить его в документацию.…

  • Очередная несуразность в единицах измерения

    Когда-то я написал программу PhysUnitCalc - калькулятор, умеющий работать с размерностями. Мне казалось, что я наступил уже на все грабли, которые…