pigrem

pigrem

На Пикабу
Дата рождения: 11 ноября 1960
поставил 45 плюсов и 0 минусов
Награды:
С Днем рождения, Пикабу!
145 рейтинг 3 подписчика 9 подписок 4 поста 2 в горячем

Заметки такие себе заметки

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

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

Хотелось бы иметь что-то, куда можно было бы поместить всё вышеперечисленное.
И текст, и картинку, иллюстрирующую этот текст, и ссылку на первоисточник.

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

Я же хочу обратить внимание уважаемых жителей пикабу на Mars Notebook.

Пользуюсь несколько лет.

Вместо тысячи слов:

- одна ссылка на коротенькое описание программы
http://htmleditors.ru/Rasnoe/organizer/list4/mars_notebook.h...

- одна картинка на внешний вид программы

Заметки такие себе заметки Программирование, Ссылка, Длиннопост

- одна картинка со скрином окна CHM-файла, в который при необходимости можно экспортировать базу данных с заметками

Заметки такие себе заметки Программирование, Ссылка, Длиннопост

- и одна картинка со скрином фрагмента окна Total Commander-а, где видны размер бы данных заметок, периодичность создания копии базы данных (настраивается)

Заметки такие себе заметки Программирование, Ссылка, Длиннопост

Моя база данных хранится на GoogleDisk и я могу обращаться к ней и работать с ней с любого компьютера под управлением Windows плюс резервная копия время от времени содается на домашнем компьютере.

Вот пожалуй и всё...

С уважением...

Показать полностью 3

Как дедушка решал задачку

Как я решал задачу из курса Python.

Предлагается следующая задача.

"Интересные числа"

На вход программе подаются два натуральных числа a и b. Напишите программу с использованием встроенной функции all() для обнаружения всех целых чисел в диапазоне [a;b], которые делятся на каждую содержащуюся в них цифру без остатка.

Как-то никак не хотели в старые мозги укладываться вот эти вот все filter(), lambda, all(), map().

Для начала, чтобы не вводить каждый раз границы диапазона, ввел две переменные - начальное и конечное значение диапазона 8 9 10 11 12 13 14 15 .

a = 8
b = 15

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

Примем, что:

- nn - это элемент в последовательности

- n - это цифра в элементе последовательности

Итак:

- для каждого числа nn в диапазоне от a до b:

-----если "0" нет в строковом представлении числа nn:

---------выводим nn

for nn in range(a, b+1):
if "0" not in str(nn) :
print(nn, end=' ')

---

8 9 11 12 13 14 15

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

Можно, конечно, создать вложенный цикл, в котором проверялась бы делимость числа nn на составляющие это число цифры. Но можно эту проверку на делимость обернуть в функцию all()

all(nn % int(n) == 0 for n in str(nn))

В итоге получаем такую версию решения задачи, которая удовлетворяет условию решения задачи:

a = 8
b = 15
for nn in range(a, b + 1):
if "0" not in str(nn) and all(nn % int(n) == 0 for n in str(nn)):
print(nn, end=' ')

---

8 9 11 12 15

А теперь с уже готовым решением попробуем взлететь...

Нам нужно отфильтровать последовательность range(a, b + 1) таким образом, чтобы ней не было чисел, содержащих "0" и чтобы число делилось на все составляющие это число цифры.

var = filter(func_nn, range(a, b+1)), или var = filter(lambda nn, range(a, b+1)),

Небольшое отступление.

Если в уже написанной программе мы проверяли вхождение "0" в каждое число исходной последовательности, то в новом варианте фильтрующей функции func_nn мы этого делать не будем. Мы ведь будем перебирать цифры каждого числа последовательности и, если в числе есть цифра 0, то число не должно попасть в итоговую последовательность.

Мы будем передавать в func_nn каждый элемент исходной последовательности.

Критерии фильтрации элементов последовательности:

- элемент не содержит нулей (n!=0);

- элемент делится без остатка на все цифры, из которых этот элемент состоит (nn % n == 0).

В итоговую последовательность попадут только те элементы, для которых func_nn вернет значение True. А собственно критерии фильтрации мы реализуем в еще одной функции func_n, то есть внутри функции func_nn у нас появится func_n(n != 0 and nn % n == 0).

Поскольку мы будем проверять каждый элемент nn последовательности, проверку (func_n) обернем в функцию map()_1.

map(lambda n: n != 0 and nn % n == 0, "последовательность"). Здесь "последовательность" - это цифры n в числе nn

Для формирования "последовательности" воспользуемся функцией map_2

map(int, str(nn)).

Функция, проверяющая числа на соблюдение критериев фильтрации, должна возвращать True при соблюдении всех критериев фильтрации. Для это обернем функцию проверки (func_n) в функцию all().

В итоге у нас получится следующая конструкция:

var = (*filter(
lambda nn: all(map(lambda n: n != 0 and nn % n == 0, map(int, str(nn)))),
range(a, b + 1)))

Заменим var= на print и получим решение задачи.

Поскольку функция all() возвращает значение True, если все критерии проверки внутри функции истинны (приводятся к значению True), отпадает необходимость в записи n!=0. Достаточно просто передать в all() значение n. Ведь если n=0, то all() вернет False и элемент последовательности не попадет итоговую последовательность.

Аналогично проверку nn % n == 0 можно заменить на not nn % n

Вот что получилось в итоге:

a = int(input())
b = int(input())

print(*filter(
lambda nn: all(map(lambda n: n and not nn % n, map(int, str(nn)))),
range(a, b + 1)))
Показать полностью

Галопом по Европам. Или история моей жизни с прологом и эпилогом

Пролог.

Есть поселки городского типа, а есть города поселкового (деревенского) типа. В одном из таких городков я и родился.

Деревянный дом с завалинкой. Три окна на улицу, два во двор. В доме русская печь, на подоконниках герань. Крылечко в три ступеньки из некрашеных досок.

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

В хозяйстве куры, тачка на деревянном колесе и велосипед минского велозавода. Электричество в доме появилось где-то году в 62-м. Помню это, потому что уроки я-первокласник делал при свете керосиновой лампы.

Семья - мама, папа, бабушка и я.

Завалинка, огород с картошкой, велосипед, печка… - о каждом из этих спутников моего счастливого детства можно рассказать свою историю.

1.

Год примерно 1966-67й.

Лето.

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

В одном из таких путешествий столкнулись с необычной и удивительной картиной.

На дорожной насыпи стояла парочка.

Он смотрел в какой-то прибор, установленный на треноге.

Она - девочка в коротком ситцевом платьишке стояла рядом и записывала цифры, которые ей диктовал Он.

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

- Здрассте а чтойто вы тут такое делаете а можно в вашу трубу посмотреть?!?!

- Посмотреть-то можно, только потом придется отработать.

- А как отработать?

- А заберешь у Тани рейку (разрисованную доску) и побегаешь по дороге. Таня будет говорить тебе, куда рейку ставить.

И я посмотрел в «трубу», и я пропал.

Я посмотрел в зрительную трубу теодолита (на треноге стоял именно он) и увидел Таню.

Нет, не так...

Я! Увидел! ТАНЮ!

В поле зрения теодолитов тех времен все было перевернуто вверх тормашками.

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

В коротеньком. Ситцевом. Платьишке.

И легкий ветерок колышет подол этого платья.

Я не знаю, сколько я не дышал.

Потом я отрабатывал...

Я бегал с рейкой, а Таня сидела неподалеку на раме моего велосипеда и командовала: рейку ставь туда, рейку ставь сюда, да держи ровно... и поправляла подол платьица.

Друзья давно уехали.

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

Потом мы сидели на каком-то бревне. Хозяин "трубы" курил, а мы с девочками лопали честно поделенный на части мой «бутерброд» с пронзительным запахом лета и подсолнечного масла.

- А где на Это учат?

- В дорожном техникуме...

- А где это?

- В Гомеле.

- А учиться долго?

-Четыре года.

- А можно я и завтра к вам приеду?

- Приезжай, конечно. Только мы будем чуть подальше на дороге.

Но завтра ни теодолита, ни Тани на дороге не было.

И послезавтра тоже.

И после-после-завтра.

А я заболел теодолитом, Таней и техникумом.

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

С теодолитом-нивелиром проходил почти двадцать лет.

Таню в "трубе" больше не видел.

Потом я содержал-ремонтировал-строил дороги.

Закончил институт.

Потом "командовал" производственным отделом в дорожной организации.

Потом был отдел подрядных работ в областной организации.

Потом что-то похожее в организации республиканского подчинения.

Потом пенсия.

2.

Мне нравилось считать. И все, что могло механизировать расчеты, вызывало у меня чувство легкого благоговения.

Четырёхзначные таблицы Брадиса в школе.

Логарифмическая линейка.

Арифмометр "Феликс".

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

Первые программируемые калькуляторы.

Первые персоналки. ЕС-1840, потом 286-е IBM.

Текстовый редактор Лексикон.

Табличный процессор Quattro Pro.

На смену им пришли Word и Excel.

О домашнем компьютере можно было только мечтать.

Интернет жил в модеме, который "или интернет, или телефон". Когда Роботикс на моем рабочем столе договаривался о соединении с Зикселом в вышестоящей организации, их диалог слушали затаив дыхание. Два с половиной килобайта (или килобита?) в секунду – это считалось высокой скоростью.

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

В подворотнях собаки.

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

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

Дома жена, которой я не помог что-то сделать.

Дома дети, у которых я украл часы, истраченные на эксели-компьютеры-дорогу.

Которыми не помог решить задачку, не отремонтировал велосипед...

Так... стоп! Это уже какая-то самоедская исповедь начинается. А я ведь хотел про житие мое.

Потом в моей жизни появилась Access.

Access — это примерно, как Таня вверх ногами. Разница между ними в отсутствии коротенького платьишка (у Access). Но воображение они обе будят одинаково неистово.

Снова книга и галочки на полях по вечерам дома и ликвидация этих галочек вечерами на работе.

В 2000-м году я из дорожной-строительной организации (которая за городом) перешел работать в вышестоящую организацию (Облдорстрой).

И где-то примерно в это же время у меня появился (собирали сами) компьютер.

Celeron 300 MHz, который можно было "разогнать" до 450 MHz (что и было сделано).

Оперативная память 8 (восемь) мегабайт.

На нормальный винчестер денег не хватило. Раздобыл где-то винт на 200 мегабайт. Windows 95 и Word-Excel-Access влезли с трудом (диск пришлось сжать). Потом, поднакопив денег, купил Квантум Файрбол на целый 1 гигабайт. Казалось, что это бесконечно много. Пятнадцатидюймовый монитор CTX. Это было круто!

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

В итоге всех этих сидений появилась база данных (БД), в которой поначалу учитывалась стоимость работ, выполненных подведомственными организациями в районах (21 район, 22 организации, несколько источников финансирования, несколько видов строительной деятельности и так далее).

Убедил генерального директора организации объединить все компьютеры в локальную сеть. Проявил инициативу - исполняй.

Нашел подрядчика, который составил проект. Проект утвердили и реализовали.

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

Попросил генерального и получил добро на то, чтобы организация оплатила моё обучение на великого программиста.

В 2001 году я уже показывал генеральному директору свой диплом с отличием, в котором было написано, что я являюсь системным программистом. Темой дипломного проекта была статистическая обработка данных о финансировании подведомственных организаций и данных об объемах выполненных этими организациями работ. Для каждой организации была определена зависимость объемов выполненных работ от периодичности и размеров финансирования за два года. Итоги анализа настолько понравились генеральному, что я получил неплохую премию. Эта премия – единственное денежное вознаграждение, которое получено мною за мою работу в качестве программиста за все время, в течении которого я себя таковым считаю.

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

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

Моя база данных пришлась на новом месте работ очень даже к месту. За несколько лет она (БД) обросла различными модулями для анализа выполненных работ.

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

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

А на последней работе девочки по-прежнему кошмарят подрядчиков козыряя анализом работ из БД.

- Послушайте, для того, чтобы выполнить все работы, которые вы предъявляете к приемке у вас должны были работать 50 дорожных рабочих 22 дня. А у вас в организации только 18 рабочих. Где-то вы что-то приписали.

Как-то вот так...

3.

К чему я все это написал.

Пикабу — это такое душевное место, где народ не только восторгается котиками и пёселями, и прочее вот это вот всё...

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

Может быть, и на мою просьбу-предложение кто-то откликнется.

Просьба моя незатейливая.

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

Я пытался что-то искать в интернете. Но там в основном или оператор колл-центра, или менеджер по продаже неведомой хрени, либо уборщик помещений или уборщик территории. Физически работать, наверное, не смогу. Участие в ликвидации последствий (на территории Белоруссии) аварии на Чернобыльской АЭС поездки на халтуры в Москву, когда выживали в девяностые. Все это понемногу откусывало от здоровья.

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

Прогулка (четыре тысячи шагов за 45 минут) - майка на груди и спине мокрая. После десяти-двенадцати тысяч шагов назавтра болят суставы (колени, тазобедренные).

Поездка не велосипеде на 20-30 км — это подвиг! Хотя время, когда еду на велосипеде — это единственное время, когда "ничего не болит".

В общем, уважаемые пикабушники, буду благодарен за совет, за подсказку, где копать, где искать эту самую подработку.

А может быть, кто-то давно ищет и не находит помощника, который может удаленно обработать большие (огромные) объемы информации.

Что я могу? А вот то и могу, что написал ранее: обрабатывать большие объемы информации (сортировать, фильтровать в зависимости от различных критериев).

А может быть кто-то из более чем трех миллионов посетителей сайта может предложить что-то вне рамок вот этой "обработки больших объемов информации".

Чем располагаю?

Свободнее время, нормальный компьютер, 100-мегабитный интернет.

Буду благодарен за любые отклики.

4.

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


Хоть тучкой прилечу в свой городок...

Кривые улочки.

Рябины за заборами...

Цветы на окнах.

Ставенки с узорами...

Крылечко в три ступеньки.

Дверь. Замок...


Как ржавый зверь, обняв дверной засов,

Висит замок.

Ключи давно утеряны.

Зачем я здесь?

И кто я здесь?

Растерянный,

Поверивший наивно в зов из снов.


Меня не ждут.

Мне это лишь приснилось,

Что в окнах свет.

Что из трубы дымок...

Что, может, хоть на день,

Хоть на часок,

Хоть на мгновенье детство возвратилось...


Надежда тщетна.

В окнах ночь.

С меня довольно...

Хочу уйти и не могу.

Игла в груди

Проткнула сердце.

Сердце, сердце! Погоди...


Не возвращайтесь в прошлое.

Там больно...

(Я. Две тысячи какой-то год)


На этом все.
С уважением...


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

Показать полностью

Шапитокарусел

Прицепилась песенка и никак от неё не отвязаться.

Может быть, уважаемое Пикабу-сообщество подскажет, что это за песенка.

Автор, название (на армянском или на русском... но на армянском лучше).

И девушка, которая её напевает (Elena Yerevan) не автор этой песни (ну это так... на всякий случай)

Шазам пожимает плечами, мол не знаю.

Алиса с Гуглом тоже в непонятках

SoundHound и Midomi тоже спасовали.

Отличная работа, все прочитано!