14 августа 2018 г.

Небольшой дом с мансардой

Заказчик прислал в для тренировки чертёж домика, который мне понравился.

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




11 июля 2018 г.

Автосохранение перед компиляцией

Раньше эта опция по умолчанию была включена, теперь надо ручками тыкнуть:

Tools - Options - Environment Options - Autosave options




P.S. Начались регулярные отключения электроэнергии, а ИБП - в ремонте...

28 июня 2018 г.

Веломобиль

Зачётный проект из Швеции: одноместный всепогодный вело-электромобиль.
Уважаю автора и его работу: придумал, сделал и продвигает в массы. Почёт и уважуха, Mikael Kjellman!

Венера и иже с ней

Хороший был дядька Жак Фреско. Мечтатель. Инженер. Мысли у него интересные. И заставляет других задумываться.



Город с круговой планировкой
https://www.thevenusproject.com/resource-based-economy/environment/circular-city/ 

Красиво, но не хватает детализации (технических спецификаций), отсюда впечатление, что это больше архитекторский проект, нежели инженерный.

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

И так со всем остальным: города в океанах - океаны явно никогда не штормят и не имеют течений; альтернативная энергетика идеально сочетается с экологией, но не увязана с экономикой; гига-роботы, которые сами строят сооружения, явно работают на святом духе, и, судя по их внешнему виду, заточены под определенный вид строений...

На всех дочерних ресурсах такая же песня: красивые картинки и здравые рассуждения, но ни одного рабочего чертежа, спецификации или расчёта...

25 июня 2018 г.

Версии и Фичи


У проектов добавлены две таблицы: версии и фичи (особенности). Надоело писать планы по развитию проекта в тетрадку - теперь план записывается в виде списка фич для определенной версии.


18 июня 2018 г.

Рассуждения о бизнесе

Из переписки:


В жизни я близко видел только две бизнес-модели:  1) энтузиазм + увлечённость идеей  (лидер/друзья-единомышленники)  2) стабильное финансирование и чётки правила  (руководитель-менеджер/подчиненные-специалисты).  
 
Первая – яхта с алыми парусами, которая легко и быстро несется по волнам. Каждый член экипажа может покрутить штурвал, но с такой же лёгкостью яхта может разбиться о рифы рыночной экономики.
 








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







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


29 мая 2018 г.

Платежи по контрактам

Добавлен переход из списка контрактов в платежи: при клике на сумме платежей по контракту открывается список платежей и фильтруется по контракту и клиенту.

При добавлении нового платежа подтягиваются данные из фильтра по контракту и клиенту; если указан контракт, то в поле "Сумма" заносится остаток суммы по контракту.

22 мая 2018 г.

Обратная сторона Земли


Эпизод: «В начале»
Режим: Скриптовая сцена.
Время: 1 день, 12:00
Место: Гринтаун, Лаборатория «Эдем»
Действующие лица: ГГ, Аэлита
Цель: погружение игрока в атмосферу игры.


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

ГГ: Я получил очень интересные результаты в последнем эксперименте, посмотри…
А: Да, количество вырабатываемого кислорода стало выше.
ГГ: Мне надо сделать ещё одну серию. Я хочу заменить ген ADR-543 на TRS-78, а затем испытать…
А: Извини, мне нужно сказать тебе что-то очень важное… Не знаю, как сказать тебе, но… я нарушила запрет Отца…
ГГ: Что? Ты открывала Запретный Контейнер? Как ты могла?!... Но… Что произошло?
А: Я узнала то, что может изменить нашу жизнь навсегда…
ГГ: И… что же в этом контейнере?

Аэлита протягивает руку. На ладони у неё блестит алмаз – 8-гранный искусственный кристалл, который используют для записи информации на атомарном уровне. ГГ берёт кристалл и устанавливает его в специальное гнездо на терминале. Затем он нажимает несколько кнопок на пульте управления. На экране пробегают какие-то надписи, геометрические фигуры, а затем начинается видеоряд.  В это время камера переводится на дисплей терминала, который расширяется на весь экран.



Эпизод: «Подавление бунта»
Режим: Скриптовая сцена.
Время: неизвестно
Место: Гринтаун, центральная площадь.
Действующие лица: несколько человек, логосы: Фобос, Деймос
Цель: Завязка, шок, конфликт.


Это запись, полученная с камеры видеонаблюдения, установленной на городской площади рядом со входом в лабораторию «Эдем». Слева видна толпа людей, они что-то кричат, размахивая руками, некоторые вооружены ручными бластерами. Справа – вход в лабораторию, возле закрытых дверей стоят два тяжеловооруженных логоса. Вокруг них светится защитное поле. Два человека пытаются приблизиться ко входу. Логос открывает огонь на поражение, яркая вспышка, и на месте человека остаётся только неясная тень, которая медленно растворяется в воздухе. Затем следует несколько выстрелов из бластеров, которые были отражены защитным полем логосов и опять серия вспышек… Весь экран становится белым.

Камера отъезжает от дисплея терминала и мы снова видим застывшие фигуры ГГ и Аэлиты.


Эпизод: «*»
Режим: Скриптовая сцена.
Время: 1 день, 12:10
Место: Гринтаун, Лаборатория «Эдем»
Действующие лица: ГГ, Аэлита
Цель:  переход к обучающему эпизоду «Белые одежды»


ГГ: В это невозможно поверить… Логосы никогда не применяли силы против людей... Что произошло? Почему?..
Аэлита: Я не знаю... Мне страшно…
ГГ: Мы можем использовать защитные костюмы… Я видел несколько на нашем складе, я сейчас принесу… Оставайся здесь…



Эпизод: «Белые одежды»
Режим: игровая сцена.
Время: 1 день, 12:11
Место: Гринтаун, Лаборатория «Эдем»
Действующие лица: ГГ
Цель:  обучение игрока перемещению в игровом мире и простому взаимодействию с предметами: воздействовать на предмет, подобрать предмет, использовать предмет.

Наш герой отправляется на поиски необходимого снаряжения. Для этого ему нужно пройти по мостику до первого яруса, немного пройтись по кругу и спуститься вниз. Если игрок внимательно смотрел эпизод «В начале», он сможет быстро сориентироваться, в каком месте лаборатории находится нужный ему шкаф с комбинезонами. Он имеет прозрачные дверцы. Внутри находятся 2 костюма, 2 пояса (интерфейс ношения предметов). При открывании шкафа ГГ оказывается полностью «укомплектованным»: костюм и пояс,  второй костюм – в левой руке, пояс – в правой. Эти предметы он должен отдать Аэлите, которая тут же  облачиться в новый костюмчик, что и послужит сигналом к переходу к следующей сцене. Ограничений по времени нет – теоретически ГГ может болтаться в лаборатории до бесконечности, наблюдая смену дня и ночи, наслаждаясь прекрасными видами сада. Ну, вполне может быть, что он не поддался на провокацию и хочет провести всю свою жизнь в этом прекрасном месте J.
Чтобы наш игрок не забывал о своем положении, музыкальный фон несколько меняется: шелест и плескание воды звучат тише, вместо жужжания пчел появляется тихий, но тревожный музыкальный фон, похожий временами на военный марш, временами на заупокойную песню.



Эпизод: «Изгнание»
Режим: Скриптовая сцена.
Время: 1 день
Место: Гринтаун, Лаборатория «Эдем»
Действующие лица: ГГ, Аэлита, логосы: Адонай, Фобос, Деймос
Цель:  развитие сюжета, дальнейшее погружение.

После того, как Аэлита облачается в комбинезон, камера переключается на главный вход в лабораторию. Массивные двери расходятся и в лабораторию входят два вооруженных логоса: Фобос и Деймос. За ними на небольшой платформе плывет по воздуху Адонай. Фобос и Деймос становятся справа и слева от входа, платформа проплывает над  поверхностью озера, поднимается  до уровня первого яруса и приближается к месту, где находятся ГГ и Аэлита.

Адонай: Рад видеть вас, друзья. Но что за странное облачение? Новые эсперименты?
ГГ: В нем мы чувствуем себя… безопасней.
Адонай: Я слышу страх и недоверие в твоем голосе. Неужели ты нарушил единственное условие, поставленное мной? Я дал тебе интересную работу, я оберегал тебя от любых неприятностей, создал лучшие условия для твоей жизни, а теперь… ты боишься меня? Ты не доверяешь мне, твоему Создателю?
ГГ: Я видел… Я не понимаю, почему логосы убивали людей, это… Ведь есть Закон – не убей, почему же логосы…
Адонай: Остановись, пока ты окончательно не разочаровал меня своими речами. Ты захотел узнать, что такое Добро и Зло. Что ж, ты вполне готов к этому и волен идти своей дорогой. Но знай, что с этой минуты дорога в лабораторию для тебя закрыта. Теперь ты сам будешь заботиться о себе и о своей…безопасности. Перед тем, как мы расстанемся, я хочу что бы ты знал – мои чувства к тебе не изменились. Я люблю тебя как сына и надеюсь, что ты найдешь правильные ответы на все свои вопросы. Я многому научил тебя, но многое тебе ещё предстоит узнать. Я уверен, тебе это пригодится…

С этими словами Адонай отдает ГГ тайм-кодер (через него реализуется механизм записи-восстановления игры). Он появляется в интерфейсе ГГ.

Адонай: Аэлита, я знал, что с твоим появлением в «Эдеме» возникнут неприятности. Произошло то, что рано или поздно должно было произойти. Для тебя у меня есть особый подарок, но получишь ты его не сейчас…  А теперь – уходите!

Аэлита со слезами на глазах (бедные программеры-аниматоры J) сбегает вниз, к выходу из лаборатории и выбегает наружу. Платформа Адоная поднимается ещё выше, почти к самому куполу.

Эпизод: «*»
Режим: игровая сцена.
Время: 1 день
Место: Гринтаун, Лаборатория «Эдем»
Действующие лица: ГГ, Аэлита, логосы: Адонай, Фобос, Деймос
Цель:  завершение вступления, переход к основному эпизоду


ГГ ничего не остаётся делать, как покинуть «Эдем». Играет трагическая музыка, шелеста листьев и журчания не слышно – отключены системы вентиляции и циркуляции воды. Роботы-дроиды замерли. Многие приборы и установки не работают. Общая картина трагичного расставания. У игрока  должно возникнуть желание как можно скорее покинуть это место, которое уже не кажется ему столь привлекательным. Как только ГГ входит в коридор, ведущий на городскую площадь, Фобос и Деймос следуют за ним, преграждая путь назад. Закрываются створки внутренних дверей. Аэлита стоит возле наружных створок. Слышися её неразборчивое всхлипывание и бормотание. Посреди коридора имеется четкая красная черта. Как только ГГ переходит за неё, сцена завершается.

Волшебное дерево

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


Пожалуй, оставлю для рассмотрения. Хотя не понятно, как это использовать для открытого игрового пространства. Например, можно изменять значения ключей (игровых переменных).

Отдельно стоит "Гиперкнига" - практически готовая система для создания и чтения гиперкниг. Однако, она требует улучшений: нужен нормальный формат хранения данных (html или xml), и со шрифтами что-то надо сделать - сейчас они выглядят безобразно, заползая за границы листа.

Сетевой сканер

Забавная штука, сделанная для администрации МАО "Седин". Фиксирует время включения/выключения компьютера, используя для этого команду PING


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

Попробовать сделать ремейк на платформе MyVisualDatabase (запускать с правами администратора, иначе пинг не работает). Кстати, давно хотел такую штуку, чтобы контролировать время, которое тратят дети на компьютерные игры. Правда, это будет работать до тех пор, пока они не догадаются отключить сетевой кабель :)

Пегас

Очередная засушенная живность. На это раз - база данных для хранения стихов с сайта стихиры. Уж не знаю, для чего это даже может быть нужно... Видимо, всё ещё ожидаю краха глобальной сети ))

Хотя, как инструмент для литературоведа или лингвиста - это вполне можно использовать: частотный анализ слов, звуков. Ритмический анализ (ударения). Так сказать, проверить искусство математикой.


Чуть раньше засушил анализатор текста: эта программа должна была понимать структуру текста, производить морфологический анализ слов, затем строить семантические деревья...


Oxigen. Art


Концепция юнита: модульность (движитель, корпус, вооружение, сенсоры и т.д) позволяет создавать юниты с различными характеристиками.




Варианты представления лабиринта. 

Впрочем, можно его сделать действительно многомерным. С другой стороны плоские карты никто не отменял. Очевидно, что человеку гораздо проще воспринимать плоские изображения, чем различные 3D визуализации.

Oxigen


Концепция

«Oxigen» - стратегия реального времени для PC, в которой игрок переносится в шахты марсианской энергетической системы, сталкивается с мощным интеллектом создателей этого комплекса, для покорения которого требуются не только сила, но и смекалка.
Описание игры. После нескольких лет колонизации Марса, недалеко от бурового комплекса обнаруживается развитая система шахт. Вначале она кажется заброшенной и пустынной, но вскоре выясняется, что это – энергетическая система, построенная неизвестной цивилизацией. Более того, она действует! В некоторых местах были обнаружены просторные пещеры правильной формы, внутри которых находится оборудование, назначение и принципы действия которого вполне очевидны: улавливание из окружающего пространства любых форм энергии и преобразование ее в электрическую! Бесценная находка – неистощимый источник энергии, мощность которого ограничена только размерами планеты. Управление генераторной станцией оказалось не сложным: нужно постепенно задействовать все 8 уловители рассеянной энергии, подключить дополнительные аккумуляторы электроэнергии. Для исследований сплетения тоннелей вы можете использовать нейтринный детектор, «просвечивающий» толщи базальта вокруг станции и генератор плазмы, который создает сгустки энегрии – шаровые молнии. Эти плазмоиды обладают способностью двигаться по лабиринтам тоннелей, а детектор анализирует их излучение, отображая всю полученную информацию на карте. Ваша цель – активировать другие станции и получить контроль над энергосистемой. Задача усложняется тем, что эта энергосистема оснащена мощным нейрокомпьютером, который, заметив ваши действия, начал активно сопротивляться, пытаясь вернуть контроль над системой себе.
Основные особенности игры. «Oxigen» отличается от других RTS тем, что это не военная стратегия, в игре не подразумевается никаких деструктивных действий. Топология игрового пространства представляет из себя граф, где каждый узел имеет 8 связей. Эти связи имеют различную длину, соединяя не только соседние, близко расположенные узлы, но могут вести в самые дальние точки карты. Таким образом, имитируется 4-х мерное «клеточное» поле со сложной геометрией, хотя сами связи отображены на плоскость. Юниты, которыми управляет игрок, неподвижны. Они изначально присутствуют на карте и новые не создаются, но в процессе игры необходимо получать над ними контроль и производить улучшение этих объектов по нескольким характеристикам. Визуально отображаются взаимодействия юнитов – перемещающиеся сгустки энергии, которые двигаются по лабиринтам между станциями. Таким образом, внимание игрока сосредотачивается в основном на принятии стратегических решений и планов развития. В игре присутствует и тактическая составляющая: для эффективного отражения «атак» противника используется возможность локального изменения топологии лабиринтов: некоторые выходы тоннелей внутри базы можно соединять временными переходами для «перенаправления» чужих зарядов. Интуитивно понятный, интерфейс позволяет быстро освоить управление игровым процессом. Игра обладает нелинейным сюжетом и несколькими финалами. Проигрыш эпизода не всегда означает окончание игры, иногда это приводит к дополнительному ветвлению сюжета. Факторами, определяющими победу в эпизоде, могут быть: захват всех юнитов, захват определённого юнита, ограничения времени, собранные ресурсы, получение информации о топологии игрового пространства. Поддерживается сетевая игра. Имеется возможность игры для 2-х игроков на одном компьютере.
Жанр игры: стратегия реального времени, космическая эра.
            Платформа реализации:  PC

Путешествие в кубе

Классический трёхмерный лабиринт, хотя не исключено и большее число
измерений...

Игра начинается с путешесвию по обычному дому, например, некой научной
лаборатории или институту. Комнаты, коридоры, лестницы, лифт...
Приключения начинаются с необычной лаборатории, где...

Увы, это всё осталось в прошлом, так и не став настоящим. Хотя, с точки зрения возможности реализации - это довольно просто. Прибавить сюда OpenGL и вполне сгодится. Да вот только замкнутые пространства сейчас не в моде. Сейчас круто, чтобы был простор и голубое небо. С другой стороны все начинали с подобных лабиринтов...

Мир представлен как двумерный массив, точнее, как шахматная доска:
8х8 клеточек. Каждая клеточка - тоочка наблюдения. Из каждой точки видно
4 стены, пол и потолок.

Размеры комнат:
1х1
2х1
1х2
2х2

Коридоры:
5х1
1х5

Если это коридор, и мы смотрим вдоль него, то видна перспектива, боковые повороты и двери.

На первом этаже (а действие будет ограничено пока только этим этажом)
находится 10 комнат, имеющих номер на двери:
1-7 лаборатории (закрыты на ключ)
8 библиотека
9 конференц-зал
10 столовая

Тип игры (игрушки): конструктор квестов. 

По внешнему виду напоминает Майнкрафт, дополнен удобными инструментами для создания новых игровых элементов, декорирования и создания квестовой составляющей.  

Игровой процесс. Перемещение по игровому пространству и взаимодействие с игровыми элементами.

Игровое пространство: лабиринт, наподобие того, который получается в майнкрафте. Состоит из кубиков-стен, которые можно декорировать различными текстурами и небольшими предметами (картины, полки, шкафы, окна и т.д.). Специальные блоки - двери. Они соединяют комнаты/коридоры. Могут запираться на ключи. 

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


Обязательно понадобятся карты  - хотя мир трехмерный, но с картами будет гораздо веселей :)









----------------
Велик соблазн написать мод или дополнение к стандартному Майнкрафту....

21 мая 2018 г.

АТС

Программа для просмотра содержимого памяти офисной АТС. Если не изменяет память, это был популярный в 2002 году Panasonic.

Цель - оперативный контроль звонков и расходов на междугороднюю связь. Заодно погонять менеджеров, чтобы не висели на телефоне по часу :)

3D склад


В 1998 году это казалось прикольным...

18 мая 2018 г.

Гусеница на дереве

Нашёл в своих архивах:


Представь себе дерево огромнейшей высоты. До неба. В самом низу сидит гусеница, которой очень хочется полакомиться листиками этого дерева. И она начинает ползти по этому дереву всё выше, выше, цепляясь лапками за веточки, сучёчки, кору… Зрение у гусеницы плохое, и всё приходится делать на ощупь: вытягиваться, переползать с ветки на ветку, искать подходящее местечко, чтобы закрепиться. И что обнаружила гусеница? Через каждый сантиметр на дереве растут 6 веток, на каждой ветке 9 листиков. Всего 54 листика, 6 из которых находятся на солнце, а остальные – в тени. Более того, все ветки, на которых растут листья – тоже в тени, да ещё переплетены самым причудливым образом … М-м-да… Конечно же гусенице хотелось понежиться на солнышке во время своего восхождения, но … совершенно было непонятно, как попасть на некоторые листья. Для этого нужно ползти по веткам, по другим листьям, то поднимаясь, то спускаясь. Да и к тому же хотелось попасть наверх как можно быстрее, т.е. нужно отыскать и запомнить самый быстрый путь наверх, к самым лакомым листочкам. Самые лакомые – это те, которые растут на солнце. Самое неприятное оказалось на высоте 150 метров: набежала тучка, и солнышко спряталось. Как же теперь отличить вкусные листья от невкусных? Все листья оказались в тени. Гусеница совсем опечалилась, но вдруг вспомнила, что пока она ползла наверх, она внимательно следила за тем, как растут ветки, и обнаружила весьма интересные факты, которые и помогли ей найти самую короткую дорогу наверх и более того! Она поняла, какие листья должны расти на солнце на каждом уровне.


       Ты скажешь: «Где же мы возьмём такую умную гусеницу?». А мы запустим на дерево десяток, сотню обычных. Пусть они там живут, едят листья и ползут наверх. Плодятся и размножаются, передавая потомкам информацию о дереве, на котором они живут. Выживать будут толь те, кто ползёт вверх: внизу-то все листья съедены. Ну, а те, которые доползут до самого верха будут умные-преумные. Главное, чтобы они не зазнались и рассказали нам с тобой, что же там на вершине дерева.


17 мая 2018 г.





Интересная планировка

Подсмотрел в каком-то видео про строительство домов в Германии. Планировка кажется очень удачной для такой площади дома.

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

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


15 мая 2018 г.

14 мая 2018 г.

Рефакторинг

Доработана технология отображения форм. Теперь одну и ту же форму можно отображать как в модальном, так и в "приклееном" режиме. Это пригодится при вызове справочника для выбора значения, например, чтобы использовать штатные системы фильтрации/поиска, недоступные при выборе из выпадающего списка.


3 мая 2018 г.

Связывание



  • Добавлен переход между проектами и контрактами.
  • В статусной строке отображается путь подключения к базе данных
  • Формы редактирования доработаны так, что ввод данных можно начинать из любого списка. Например, можно добавить контракт, в котором определить нового клиента и новый проект:

27 апреля 2018 г.

Без вкладок, без ограничений

Закончил переделку интерфейса: теперь каждый экран - это одна таблица, без многостраничных вкладок с подчиненными таблицами. Что это даёт:

  1. Визуально интерфейс стал легче
  2. Снята проблема с управлением ширины дополнительных вкладок (в MVD отсутствует компонент Splitter, нет вкладок - нет проблем)
  3. Решён вопрос с управления правами вкладок (опять же: нет вкладок - нет проблем)

Наличие дополнительных компонент на форме редактирования компенсируется тем, что при добавлении новой записи они заполняются данными из фильтра, что не создаёт дополнительной нагрузки при заполнении формы.

Переход к показу детализации осуществляется двойным кликом по колонке с аналитической информацией. Двойной клик по остальным колонкам как и раньше открывает запись на редактирование.

Исправлен визуальный недочет с меню навигации - артефакт накрыл сверху панелькой с данными о текущем пользователе.

Убедился в правильности разделения в базовой конфигурации трёх сущностей: клиентов, людей и организаций. Это позволило:

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


26 апреля 2018 г.

Рефакторинг


Разделил исходники на модули. Теперь отлаженные скрипты не мозолят глаза. Правда, пришлось повозиться с иерархией модулей, но всё заработало




25 апреля 2018 г.

Панель навигации



Добавил навигатор в верхней части основного экрана. Теперь для отображения детализации достаточно дважды кликнуть по ячейке, содержащей итоговый показатель. После этого открывается окно с детализацией, а в навигаторе отображается путь.

Через навигатор можно вернуться к исходному представления данных, а в дальнейшем - открывать на редактирование запись, к которой относится детализация.

Остался небольшой артефакт в виде кнопок вертикальных прокрутки - это дефект в компоненте, появляется после удаления колонок. Замаскирую позже.

24 апреля 2018 г.

My Visual CRM

Начал делать CRM. Для себя. Заодно отладить технологии визуализации приятного интерфейса и другие вкусности.

Появился "философский вопрос":  отображение данных по детализации. С одной стороны вполне логично, что есть закладки, в которых фильтруются нужные сведения, с другой стороны как правило нужны те же представления без фильтрации, поэтому хочется "срезать угол": в главной форме отображать только количество подчиненных записей, а при клике на ячейку открывать зависимую таблицу с префильтром. Для большего комфорта в навигации нужно добавить "хлебные крошки" сверху для возврата в окно, из которого был сделан вызов. И тогда получится очень даже эргономичный и в то же время простой в сопровождении и настройках прав интерфейс.

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

Третья проблема - разделение данных по признаку "Владелец записи". То есть в каждую запись надо добавлять сведения о пользователе-владельце, а так же управлять этими правами. Пока не буду заморачиваться, но вопрос открытый.

14 февраля 2018 г.

Weight-loss Level 3

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

В зале почти никого не было, люди подходят к половине девятого, 2-3 человека. Посмотрим, что будет после 15 числа...

12 февраля 2018 г.

Rolling Level 3

Предельно комфортный уровень для данного режима, который представляет собой бег с переменной скоростью 7.2 - 8.0 км/ч. Судя по ощущениям, работал в режиме кардиотренировки. По утрам зал по прежнему пустой, но после 15 ожидается наплыв клиентов - 7 лет "Аррибе" будет отмечаться фуршетом и распродажей годовых абонементов по символической цене. Есть, конечно, в этом и свой плюс: клуб сможет получить финансирование. Что-то подобное происходило пару лет назад, когда казалось, что "Арриба" пойдёт ко дну.

11 февраля 2018 г.

Interval Level 3

Услышал разговор двух парней на соседней беговой дорожке, из которого я понял, что "интервал" - довольно популярный режим тренировки: без с максимальным ускорением, потом отдых (шаг). Выбрал третий уровень, но оказалось, что в результате получается бег трусцой (7.2 км/ч), надо увеличивать уровень. Хотя в результате 30-минутной тренировки я пропотел, но по километражу и калориям получилась нагрузка ниже средней.

9 февраля 2018 г.

Hill Run Level 2

Начал бегать. Точнее, получается чередование бега и хождения. Если раньше я никак не ощущал нагрузку, то сейчас заметил, что у меня есть сухожилия и мышцы, которые сообщают о себе. Тренировка длится 30 минут, из них 3 минуты на разминку и столько же на заминку. Кстати, первый раз встретил такой термин - заминка (cool down). После бега осталось 5 минут - попробовал подёргать тренажёры, но, полагаю, лучше заняться этим на выходных, выделив на тренировку дополнительный час.

7 февраля 2018 г.

Тренировки

Третий день в клубе Arriba. Освоил программы на беговой дорожке AeroFit (скачал инструкцию). Оказалось, что "9 лунок" - это хождение со скоростью 3.2 км/ч с изменением угла. "HRC" (контроль частоты пульса) работает только с внешним беспроводным пульсометром. А вот остальные вполне пригодны для тренировок. Решил попробовать все. Сегодня прошёл Hill clumb на первом уровне. Нагрузка маленькая, обычно я себя больше нагружаю.

2 февраля 2018 г.

On-line компилятор

Чудо-ресурс, на котором можно запускать простые программы со стандартным вводом/выводом на десятках различных языков программирования:

https://www.ideone.com