Category: it

Category was added automatically. Read all entries about "it".

Mikail

(no subject)

Выложил страницу с схемами предметной области Java.
https://sushilshik.github.io/java.html

И страницу с схемами Java SE API и Java SE Specification.
https://sushilshik.github.io/java-api.html

В схемах API и спецификации — в нодах ссылки на соответствующие страницы в документации.
Постоянно пользуюсь этими схемами (есть еще для Ruby и JS). Когда программирую — держу в отдельных вкладках, смотрю там, добавляю новые детали.
Когда только начинал разбираться в Java, смотрел на огромные каталоги документации, оглавления спецификаций, API и казалось, что это все невозможно выучить основательно, если не посвятить этому лет 5, и, скорее всего, больше.
И только построив понятийные карты, схемы для языка, которые можно охватить одним взглядом, появилось ощущение, что это все достижимо и с этим всем можно с удобством работать, методично разбираться, учиться без перегрузки, переключаться на другие темы, возвращаться обратно после долгих перерывов и сразу продолжать с того же места.

mm-vis-js_java

mm-vis-js_java-api
Mikail

(no subject)

В mm-vis-js сейчас уже 107 RSS и Atom каналов. Чтобы производительность была выше, сегодня разделил содержимое news.html пока на две страницы — https://sushilshik.github.com/news1.html и https://sushilshik.github.com/news2.html.

На первой странице — IT-каналы и архив подборок по дням с 19.01. На второй — все остальные каналы и их новые подборки новостей по дням с 11.02.

Новостей около 30 тысяч. Еще предстоит написать код для статистики.

Чтобы открыть список новостей канала, надо в его ноде «newsList» (она с черной рамкой) в меню по правой клавише выбрать «Restore node’s branches» или выделить ее левым кликом и нажать alt+y. Подборки новостей по дням — в схеме «News by Day». Черная обводка означает, что у ноды есть свернутые, скрытые ветви.

В общем, каждый день пользуюсь этим news...html для чтения новостей. Что называется, «читалка новостей». Или RSS-агрегатор, который одновременно и программный агрегатор, и веб-агрегатор:) И, получается, просто гибче, чем все, что сейчас существует (из того, что я слышал).

В целом все работает так — страница открывается локально, js-код на странице обращается к локальному серверу, сервер скачивает ленты новостей и возвращает js-коду данные лент, js-код на странице создает ноды новостей сразу в свернутом виде, страница сохраняется, и новости уже можно читать локально, дальше страницу можно загрузить на сайт на github.

mm-vis-js_news1

mm-vis-js_news2
Mikail

(no subject)

После подключения SymPy к mm-vis-js — получился аналог Mathematica или Mathcad, только с графовым, семантическим интерфейсом. Такого еще не видел. Теперь в mm-vis-js на одной странице концептуальное моделирование (понятийные карты), IDE и CAS. Давно уже не хватало графового интерфейса в CAS типа Mathematica. И удалось внести метод построения семантических сетей, как эффективный метод познания, в обучение компьютерной алгербе. Вот теперь точно можно начинать разбираться в высоких технологиях =)

Чтобы работать с SymPy, нужно открывать страницы mm-vis-js локально, лучше сразу из копии репозитория. Нужны python, nodejs и SymPy, и запустить node ./utils/mvj-serv.js. Нода с SymPy кодом должна начинаться с строки «sympy». Выделив такую ноду, нажимаете Alt+R, ее код выполнится и справа от нее на странице появится нода с результатом.

https://sushilshik.github.io/math.html?scale=0.6&x=104056&y=-9847

https://github.com/sushilshik/mm-vis-js

mm-vis-js_math_2

mm-vis-js_math_1

mm-vis-js_math_3
Mikail

(no subject)

https://sushilshik.github.io/javascript.html

Пример развития заметок по JavaScript в карту предметной области.

Из «Базы знаний», Гаврилова Т.А., Хорошевский В.Ф. (стр. 190-191): «Визуальные методы спецификации и проектирования баз знаний и разработка концептуальных структур являются достаточно эффективным гносеологическим инструментом познания.»
«...семантические сети или понятийные карты (concept maps) являются возможной формой представления (полей знаний). Это означает, что сам процесс построения семантических сетей помогает осознавать познавательные структуры.»

https://github.com/sushilshik/mm-vis-js

mm-vis-js_javascript
Mikail

(no subject)

Теперь код mm-vis-js лежит на холсте mm-vis-js. И собирает сам себя. В общем, IDE мечты. Визуальное метапрограммирование. А можно еще и статьи так писать, главы книг.

Чтобы работало локальное сохранение холста и сборка проектов кода на холсте — нужно поставить node.js и запустить «node mvj-serv.js» в директории mm-vis-js/utils. Описание в схеме «Как пользоваться mm-vis-js». Масса возможностей открывается, просто рук на все не хватает.

https://sushilshik.github.com

mm-vis-js_code
Mikail

(no subject)

mm-vis-js — редактор диаграмм связей, графов. Работает в браузере, как локально, так и в сети, без серверной части. Интерфейс сочетает визуальное редактирование и тектовый редактор кода схемы.

Теперь можно сохранять работу на страницах mm-vis-js. Список сохранений выводится прямо на холсте. Не нужно где-то логиниться или что-то скачивать. В браузере есть функция localStorage. Данные в localStorage хранятся и между перезагрузками браузера. В целом работает уже почти как десктопная программа.

Json-код схемы каждого сохранения можно посмотреть и скопировать. Основные его данные — список нод и связей между ними.

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

Чтобы сохранить, нужно кликнуть updateMenuFromScheme — json и в меню обновится, и сохранится в localStorage.
Чтобы выбрать, какое сохранение загрузить, нужно кликнуть по «Save/Load» в меню showData. Вид перейдет к списку сохранений на холсте. Клик на ноде с именем сохранения и клик на loadSavedProjectToMenu в меню слева.

mm-vis-js_save
Mikail

(no subject)

Новый интерфейс mm-vis-js. И примеры карт кода. Целиком код репозиториев (.c, .h, .cc, .py и т. п. файлы) Chromium, Firefox, ядра Линукс, Apache httpd, bash, Python, Emacs, gcc, texlive, vim, Visual Studio, Ruby, JDK, ghc, git, Hbase, Julia, mysql-server, neo4j, sbcl, Spark, spring-framework, Tomcat, vis-network, mm-vis-js. Список ссылок на карты в схеме «Карты программного кода».

Это, конечно, только вариант автоматической верстки кода. Масса возможностей открывается. Можно генерировать для каждого файла, каждого участка кода свои примечания, вспомогательную информацию. Например, историю изменений.

В современных IDE очень не хватает возможности редактировать блоки кода в таком виде на холсте.

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

https://sushilshik.github.io — уменьшите масштаб, чтобы увидеть другие разделы.

2019-11-01_mm-vis-js

Пример карты 500 файлов кода chromium:

mm-vis-js_chromium_1

mm-vis-js_chromium_2

mm-vis-js_chromium_3
Mikail

(no subject)

http://www.nkbtr.org/down/mm-vis-js/code_examples/vis-network/vis-network_2019-10-30_19-13-59/vis-network.index.html
Пример карты кода.
Файл большой, поэтому может загружаться секунд 20.
Теперь можно в ссылке задать координаты на холсте, чтобы сразу открыть нужную точку. Это параметры scale, x и y в конце ссылки. Чтобы сохранить ссылку на текущий вид на холст в браузере, нужно нажать «updateMenuFromScheme» в правом меню, промотать его вниз и скопировать соответствующие параметры в ссылку. Работает без серверной части.

vis-network_project_code_map
Mikail

(no subject)

16 числа Столлман подал в отставку с поста президента Фонда СПО. Из-за в самом деле плохих слов о 14 лет. Если вся эта новость не большой розыгрыш, конечно. Всякое бывает.

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

Я это интуитивно ощущал, и на уровне «так принято в культуре», и плюс к этому появилось объяснение.

Часто вспоминаю об этом объяснении и потому заметил, что уже, наверное, лет 5 я вообще не встречал его нигде вокруг. И раньше встречал очень редко.

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

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

Очень неприятно — если бы мне эти тексты по этой идее не встретились? (Тексты, в которых не только логика, но и «так принято» свое есть) Что бы я мог тогда сказать без знаний (а я и говорю постоянно... и вопросы задаю. А как иначе?)?

И опять никто никому ничего не стал объяснять. Никаких ссылок, статей, книг. Впечатление, что выгодно, чтобы в этическом плане не было развития. Вот это воспитание общества.

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

Tabs Outliner

Для тех, кто открывает десятки вкладок в Google Chrome, выстраивающихся неразличимым рядом зубчиков наверху в панели заголовков и дико тормозят компьютер — есть замечательный плагин Tabs Outliner. Это как управление закладками, только вместо закладок табы браузера. Табы синхронизированы с деревом Tabs Outliner. Можно деактивировать таб — он закроется в хроме, но останется в дереве плагина. Активируется двойным кликом. Перетаскивая пункты в дереве — перемещаете табы в хроме и наоборот.

Очень удобно, чтобы составлять себе рабочие места для определенной работы. Например, дерево «Работа в соц.сетях» или «Доки для программирования текущего проекта». Или сохранять ссылки по дням, если каждый день начинать работу в новой ветке дерева с датой.

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

UgwzDbh

sangkrit.net-how-to-easily-manage-lots-of-tabs-from-a-central-place-in-google-chrome1