Ругать JS я больше не буду. Отвечу только на вопросы.
Первый. На Java я пишу только одну программу, ее размер постоянно растет, но так как это байт-код, да еще в зипе, то терпимо. Код распределен по классам, а классы по файлам, но сама программа - это один зип-файл. В нем кстати есть не только код, но и любые файлы, в том числе бинарные, которые можно читать по одному байту с любой позиции. Размер папки с исходным кодом более 5 Мб. Туда же привинчена библиотека классов для работы с pdf файлами. Она бесплатная только для java, для других языков бесплатных я не видел.
Сама программа является интерпретатором языка ACL и может делать все что лично мне надо. Чужими программами я не пользуюсь. Есть у меня там и аналог фотошопа, и аналог Математика (Маткад, Матлаб и еще как), а также аналог Ориджин, то есть программы научной графики. Есть автоматический генератор постскрипт файлов любой природы. Ну а самое главное - там все мои научные программы, все в одном флаконе.
Теперь про пароль. В укороченном виде программа стоит в сети как аплет - вот адрес.
http://vkacl.narod.ru/applets/00/vkACLa.htm
Без JRE естественно не работает, поставить ее не сложно, ссылка там указана. При запуске надо кликнуть в меню
Run / Special ACL pro
и выбрать иконку [my service]. Это мои личные данные. Они на пароле. Вот и попробуйте вскрыть пароль.
Как я ее пишу? А очень просто - в редакторе Notepad2. Затем кликаю батч файл на компиляцию и другой батч файл на запуск. После того, как все готово - копирую новые файлы в зип с помощью Тотал коммандер. Могу и свою программу сделать, но Тотал коммандер я не переписываю, нет нужды. Использую старую версию 5.50, она куплена.
В этом же аплете есть книга по Таблице Менделеева PToE посмотрите, очень интересно. Все делается через провайдера и на сервере Яндекса (народ).
Да, могут быть вопросы по отладке. Компилятор выдает ошибки в терминальное окно с указанием номеров строк. А дальше все тривиально. Но я уже давно почти не делаю ошибок. Иногда бывает, что код не работает, хотя ошибок нет. Стоит переставить местами кое что типа вместо a+b написать b+a и ошибка исправляется. Это уже баги компилятора.