Category: it

ёжик

Верхний ПСТО (о бессмертии :)

Все новые заметки появляются под этой записью (она всегда верхняя). А здесь я оставляю ссылки на самые принципиальные и/или сводные тексты во всем моем ЖЖ.
***

Смысл общества – разум. Неравенство и религия – необходимы. Верс. 2

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

Но если разум несёт в себе «антиэнтропийные» принципы (религия – один из вариантов таких принципов), то они в состоянии быть лучше инстинктов в плане защиты от разложения. Это первый принцип защиты жизни – необходимость антиэнтропийных принципов – которые в приоритете для человека всего остального – включая счастье. 

И ничего нельзя пускать на «случай», когда есть возможность планировать действия – иначе хаос и разложение «зайдут» через упование на случай. Это – второй принцип защиты жизни (случай как система – разлагает и убивает общество).

Периоды техноскачка и освоение трудных территорий человеческой цивилизацией

Collapse )
ёжик

4. «Физика» используемой модели работы алгоритмов. Сравнение с машиной Тьюринга

. К оглавлению . Показать весь текст .

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

Во-первых, не одна «лента», а множество «полулент» Тьюринга, которые все своим началом сходятся в одной точке к «процессору». Это – строки (и числа, которые представлены в виде строк). Каждой переменной соответствует своя «полулента» Тьюринга, начало которой соответствует 1-му символу данной строки (если строка не пустая).

Во-вторых, в данной модели нет «тележки», которая может как угодно долго «блуждать» вдали от начальной точки. 

Чтобы получить информацию из нужного места строки – надо каждый раз «дойти» до нужного места строки, забрать нужную информацию и доставить её обратно к «процессору». 

Чтобы сохранить (записать) информацию в нужном месте строки – надо забрать её у «процессора» (полагаем, что она уже доставлена и есть в «нулевой» точке), доставить в нужное место строки и записать там вместо имеющейся там информации. 

Чем дальше от начала строки находятся нужные нам символы – тем дольше (прямо пропорционально дольше) до них добираться. Добираемся мы с целью чтения этих данных или замены этих данных на нужные данные.

Collapse )
ёжик

2. Условности языков программирования высокого уровня и факты «низкого» уровня

. К оглавлению . Показать весь текст .

Тут можно углубляться в нюансы – например, арифметические действия нужно всё же определить как подпрограммы через строковые операции, а не считать, что они готовые функции для строк типа «1678». И можно построить предыдущую программу, не обращаясь к арифметическим операциям, а используя: 

i = Comp(«Мама мыла раму», x);

Для получения меток так:

mark = «[next_1_» ⋅ i ⋅ «]»;

И метки [next_1_1], [next_1_2] ставить рядом в программе – чтоб они приводили к одному и тому же переходу. А для случая:

i = Comp(«Папа строил баню», x);

генерировать уже метки [next_2_0], [next_2_1], [next_2_2].

Перепишем программу уже без использования арифметических операций:

Collapse )
ёжик

JavaScript и Ajax локально (без веб сервера, на локальном компьютере)

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

Чтоб меньше редактировать, надо, чтоб странички сами "догадывались" где какие изменения возникли и обращались к свежим версиям ссылок (у меня "интернетовские" странички оглавления тоже хранятся в хронологическом порядке). А вот для этого надо, чтоб они могли "читать подсказки" из других страниц. И возникает необходимость не просто программировать при помощи JavaScript, но и читать другие документы - а тут есть проблемы, если это все не в интернете, а на локальном компьютере:

А проблема состоит в том, что стандартный метод чтения файлов в JavaScript - это использование объекта XMLHttpRequest, который работает только с веб сервером. Запускать на локальном компе веб сервер для обращения к своим локальным страничкам - как то не хочется.

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

Collapse )

ёжик

Очередность Дт и Кт в бухучете - алгоритмы

1. Ранее было:

1. Базы данных - многомерные индексы, мгновенные суммы по отрезкам, кубам и т.п. ( http://dmitgu.livejournal.com/39518.html )
2. История изменения текста и история бух. баланса - алгоритмы. ( http://dmitgu.livejournal.com/44770.html )


2. Влияние очередности оборотов по Дт и по Кт на бухучет

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

Однако помимо балансов (то есть результатов бух. учета в заданный момент времени) нам необходимо еще платить налоги и составлять документы, зависящие от оборотов. Например, в бухучете принято учитывать авансовые выплаты за товары/услуги на одном счете, а учет получения товаров/услуг вести на другом. Так, если поставщик выполнит некоторую работу для нашей основной деятельности на 100 рублей, то мы сделаем проводку Кт 100= сч. 60.1 и Дт 100= сч. 20.  А когда расплатимся с ним, то сделаем проводки Дт 100= сч. 60.1 и Кт 100= сч. 51.

Collapse )

ёжик

Базы данных - многомерные индексы, мгновенные суммы по отрезкам, кубам и т.п.

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

Итак, в бухгалтерии (да и в электронных таблицах, логистике, науке и везде) часто надо вычислить суммы (прихода, расхода и т.п.) по некоторым объектам учета от момента А до момента Б. Запускаем прогу и она бухтит и считает итог. Фактически она это делает перебором - получив нужную выборку данных и перебирая их запись за записью прибавляет очередное число к вычисляемому итогу.

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

Collapse )