|
2.2, Anonim (??), 23:32, 24/04/2018 [^] [^^] [^^^] [ответить]
| +8 +/– |
Кто молодцы, кого уважаем и причем тут высокая производительность?
| |
|
3.3, Аноним (-), 23:42, 24/04/2018 [^] [^^] [^^^] [ответить]
| +3 +/– |
Тут как в действенных* шампунях против перхоти.
* по сравнению со своей предыдущей разработкой.
| |
|
|
1.4, KroTozeR (ok), 23:51, 24/04/2018 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Когда-то, году в 2006-ом, я друзьям и коллегам рассказывал о концепции "распределённой среды исполнения". Не без оснований - участвовал в одном интересном проекте.
Предполагалось, что на серверной и клиентской сторонах применяется единая виртуальная машина, исполняющая байт-код приложений, которым совершенно без разницы где исполняться. При запуске приложения, на клиентской стороне выполняется процесс репликации кода. Сами приложения поделены на объекты, которые могут частично располагаться на сервере, а частично на клиенте, при этом свободно взаимодействовать друг с другом в едином адресном пространстве. Приложение может исполняться на сервере, но его оконный интерфейс отображается на клиенте, и это — только один из возможных вариантов.
Тогда эту концепцию просто не поняли...
Сейчас же наблюдается следующее: V8 становится единым ядром ВМ JS для обеих сторон. API расширяется и всё теснее сопрягается с функциями ОС. WebAssembly на подходе. Электрон и иже прочие с ним. Как говорится, "те же яйца, только в профиль". Сам бы не вспомнил, если б не программист из Сан-Франциско, который тогда эту концепцию слышал, но так же не воспринял всерьёз. Говорит, сейчас всё к этому идёт семимильными шагами. Очередной пример "созревания" идеи. До сих пор продолжается.
Если что, проект назывался "Deeptown.Org", и эта штука реально работала, демонстрируя все упомянутые качества и не только. Что с ним стало сейчас, я не в курсе, но такой объём рабочего кода бесследно пропасть не может.
| |
|
2.5, Аноним (-), 23:56, 24/04/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Только Особенно в этом преуспели майнеры. Остальным нафиг не упало.
| |
|
3.7, KroTozeR (ok), 00:05, 25/04/2018 [^] [^^] [^^^] [ответить]
| –2 +/– |
Там главная пользовательская killer-фича была в таких моментах: приложение не нужно было устанавливать, отслеживать зависимости, да и вопрос сопряжения решался сам собой: они работали в единой среде. Нужно было лишь разрешение пользователя на доступ. Нынче что-то подобное имеется в Андроиде и ВЕБ-тулкитах типа Google Docs.
Один фиг всё идёт к подобному. Вся репликация, JIT-компиляция и прочие процессы оптимизации запуска могут происходить на фоне уже запущенного по сети ПО. Пользователь даже не будет знать, что что-то устанавливается к нему в браузер. Просто следующий раз запустится быстрее.
| |
|
4.25, Anonymoustus (ok), 08:45, 25/04/2018 [^] [^^] [^^^] [ответить]
| +5 +/– |
> Пользователь даже не будет знать, что что-то устанавливается к нему в
> браузер. Просто следующий раз запустится быстрее.
Спасибо, не надо. А то программистов начнут калечить и убивать прямо на улицах.
| |
|
5.33, KroTozeR (ok), 09:14, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
>> Пользователь даже не будет знать, что что-то устанавливается к нему в
>> браузер. Просто следующий раз запустится быстрее.
> Спасибо, не надо. А то программистов начнут калечить и убивать прямо на
> улицах.
Тогда это не выглядело настолько критичным. Достаточно вспомнить, что тогда и Java-апплеты ещё не запрещали. К тому же, вся "каша" внутри клиента не имела доступа к файлам хостовой ОС. Только по прямым запросам через диалоговое окно или в специальный каталог локальной ФС.
Напомню: это всё — дело прошлого. Сейчас я всего лишь предаюсь воспоминаниям. Что стало с этим кодом — без понятия.
| |
|
6.46, _hide_ (ok), 10:53, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вам бы перед этим посмотреть хотя бы на концепцию OpenOffice (подозреваю, что тогда ещё StarOffice). UNO делает всё, что Вам нужно.
| |
|
|
|
|
2.6, Аноним (6), 00:02, 25/04/2018 [^] [^^] [^^^] [ответить]
| +3 +/– |
Ради таких коментариев в том числе и хожу на данный ресурс :)
| |
|
3.8, KroTozeR (ok), 00:11, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Ради таких коментариев в том числе и хожу на данный ресурс :)
Дык, сейчас это — дело прошлого. Оно ни на что не влияет, если только двое авторов этого дела из Новосиба не договорились с какой-то конторой. Тогда систему хотела скупить одна весьма влиятельная организация, но они не договорились. А может это только внешне так выглядело.
Ничто не ново под Луной.
| |
|
|
3.11, KroTozeR (ok), 00:47, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Клиентская сторона не может полностью доверенной.
Так она и не была полностью доверенной для локальной ОС. Там даже взаимодействие объектов определялось по их UID через политику прав доступа. Нечто, сильно похожее на дерево ФС Linux, только действующее в адресном пространстве распределённой системы, где адрес — хеш. Локально же поддерживалась своя файловая система, где для каждого UID был свой слой абстракции. Файлы не пересекались, если только сам пользователь не даст на это добро.
Вообще, эта штука изначально рассчитывалась как исполнительная среда виртуальной реальности. Авторы подошли к вопросу с этой стороны, отправив все вопросы со "средствами погружения" в долгий ящик, да и вообще не заморачиваясь на этот счёт.
Если уж на то пошло, то там вообще не было понятия запуска приложения. Висящие в пространстве объекты реагировали на события запросов, генеря инстанции интерфейса и профили для каждого пользователя. Можно было лишь запустить локально бинарник на исполнение с единственной целью — создать в среде необходимые для функционирования ПО объекты.
Вот этим и предлагалось пользоваться. Пример: есть строка поиска, в ней вводится слово "калькулятор", а среди результатов - ссылка на приложение. По клику на ней открывалось окно калькулятора. Примерно то же, на что сейчас похожи ВЕБ-приложения, только в 2006 году.
| |
|
|
5.34, KroTozeR (ok), 09:16, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Хорошо бы инноваторам перед изобретением всего нового знакомиться с уже созданными вещами.
> :)
Ну, что ж теперь-то судить? Сейчас проекта в открытом виде не существует.
> А вообще это называют incremental search и оно древнее, как сами компьютеры.
> Реализации и цели использования могут разниться.
За ссылки спасибо!
| |
|
|
|
2.21, Аноним (-), 08:09, 25/04/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
не льсти себе, там и виртуальная машина не очень единая, и разница для стороны, на которой запущен код, очень даже есть, и репликацией ты называешь простое скачивание по хттп, да ещё и с левого cdn, сами приложения так прекрасно поделены на объекты, что яндекс крадёт у тебя движения мышью и введённые данные со страницы банка, где ты там усмотрел ЕДИНОЕ адресное пространство у клиента и сервера — вообще непонятно. В общем, намешал бреда и назвал себя прозорливым алтфаком. Фу.
| |
|
|
4.30, KroTozeR (ok), 09:07, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Вероятно, парни работали над повторным изобретением идеи мейнфрейма. :)
Кстати, на мейнфрейм оглядка была, да. Но цели были слегка иные. Вряд ли у мейнфрейма в программном стеке ПО предполагался т.н. "сервер доступа", отвечающий за маршрутизацию трафика и уж тем более амплитуд звуковых волн. Да-да, там была такая штука, она смешивала амплитуды, исходя из позиции "аватара" в 3D-пространстве. Отрабатывался даже "эффект Доплера".
Я ещё раз повторю — эта штука позиционировалась как механизм виртуальной реальности. Задачи ВЕБ-а брать на себя даже не собирались. По ВЕБ-у предполагалась трансляция вывода от браузерного движка в 3D-сцену.
| |
|
5.42, Anonymoustus (ok), 10:12, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
В мейнфрейме может быть, условно говоря, «всё» (что угодно). Мейнфрейм, концептуально и архитектурно, это уже и есть, по сути, «виртуализатор» — этакая абстрактная компьютерная среда, посредством которой реализована «виртуальная реальность», внутри которой в «виртуальных компьютерах» одновременно могут жить разные ОС, программы в которых даже знать не будут, что это всё вокруг них «ненастоящее».
| |
|
|
3.29, KroTozeR (ok), 09:03, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> не льсти себе, там и виртуальная машина не очень единая, и разница
> для стороны, на которой запущен код, очень даже есть, и репликацией
> ты называешь простое скачивание по хттп, да ещё и с левого
> cdn, сами приложения так прекрасно поделены на объекты, что яндекс крадёт
> у тебя движения мышью и введённые данные со страницы банка, где
> ты там усмотрел ЕДИНОЕ адресное пространство у клиента и сервера —
> вообще непонятно. В общем, намешал бреда и назвал себя прозорливым алтфаком.
> Фу.
Эх, любителей выдавать своё мнение за истину на Опене и Лоре развелось тучами. Даже не знаю, откуда вы все такие берётесь?
1) Хоть где-то сказано, что идея моя? Я даже проект назвал. Авторы идеи — два программиста из Новосибирска. Я лишь принимал участие в нём. Но рассказывать — рассказывал. Так при чём тут "прозорливость"?
2) Что было там, мне, наверное, лучше известно, чем тебе. Я с этой штукой имел непосредственное знакомство на уровне кода и тех.доков;
3) Не было никакого CDN. Протокол HTTP не применялся вообще. Вместо него использовался собственный протокол DTTP (DeepTown Transport Protocol), способный работать как поверх стека TCP/IP, так и без него, выполняя даже функции Ethernet;
4) Единое адресное пространство было у проекта Deeptown.Org, а не у современных ВЕБ-приложений. Ты чем вообще читаешь??? Было лишь косвенное сравнение одного с другим.
| |
|
2.24, Anonymoustus (ok), 08:44, 25/04/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Предполагалось, что на серверной и клиентской сторонах применяется единая виртуальная машина, исполняющая байт-код приложений, которым совершенно без разницы где исполняться.
Это вам в IBM с такими идеями надо было. Правда они уже давно их реализовали.
| |
|
3.31, KroTozeR (ok), 09:11, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
>> Предполагалось, что на серверной и клиентской сторонах применяется единая виртуальная машина, исполняющая байт-код приложений, которым совершенно без разницы где исполняться.
> Это вам в IBM с такими идеями надо было. Правда они уже
> давно их реализовали.
Идея не моя, а двух программеров из Новосибирска. Вполне возможно, что что-то реализовали. Только цели там другие ставились.
Гугл хотел скупить, но автор проекта не захотел продавать, хотя встречался с ними. Тогда Гугл ещё располагался в Москве в т.н. "розовом здании" с небольшим садом в ограде. Позже куда-то съехали.
| |
|
4.47, Аноним (-), 12:11, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
>Гугл хотел скупить, но автор проекта не захотел продавать, хотя встречался с ними. Тогда Гугл ещё располагался в Москве в т.н. "розовом здании" с небольшим садом в ограде. Позже куда-то съехали.
Сестра, два клозапина этому наполеону.
| |
|
5.48, KroTozeR (ok), 12:27, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Сестра, два клозапина этому наполеону.
Не хочешь, не верь. Тебя кто заставляет, что ли? И клозапин свой забери обратно.
Я рассказываю, что видел, а кто как на это отреагирует — ни горячо, ни холодно.
| |
|
4.54, anonymous (??), 13:18, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
>Тогда Гугл ещё располагался в Москве в т.н. "розовом здании" с небольшим садом в ограде.
Ору)))
| |
|
|
2.35, КО (?), 09:19, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Судя по датам, как раз совпадает с первой версией GWT. Там как раз этот подход и реализован. Хочешь код на клиенте выполняешь, хочешь на сервере. :)
| |
|
3.37, KroTozeR (ok), 09:32, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Судя по датам, как раз совпадает с первой версией GWT. Там как
> раз этот подход и реализован. Хочешь код на клиенте выполняешь, хочешь
> на сервере. :)
Наблюдение интересное, но чтобы разработать подобное, нужен был хотя бы год на разработку архитектуры и написание кода. Думаю, оно было независимо друг от друга.
У Deeptown.Org была своя ВМ "GIDE", свой язык программирования K++, рассчитанный на неё. Кстати, там лямда-функции представлялись как объекты данных. Хотя точнее было бы сказать объекты моделей данных, содержавших в себе исполняемый код. Можно было передать эту функция как значение между объектами из состава разного ПО.
Кстати, нечто местами похожее проглядывается в концепции среды исполнения Phantom OS. Там вообще ФС в привычном понимании нет. Файл — есть объект, в свойстве которого хранится содержимое обычного файла. В этом проекты схожи.
| |
|
2.36, Аноним (-), 09:23, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
>[оверквотинг удален]
> среды исполнения". Не без оснований - участвовал в одном интересном проекте.
> Предполагалось, что на серверной и клиентской сторонах применяется единая виртуальная
> машина, исполняющая байт-код приложений, которым совершенно без разницы где исполняться.
> При запуске приложения, на клиентской стороне выполняется процесс репликации кода. Сами
> приложения поделены на объекты, которые могут частично располагаться на сервере, а
> частично на клиенте, при этом свободно взаимодействовать друг с другом в
> едином адресном пространстве. Приложение может исполняться на сервере, но его оконный
> интерфейс отображается на клиенте, и это — только один из возможных
> вариантов.
> Тогда эту концепцию просто не поняли...
Так эта JEE ;)
| |
|
3.38, KroTozeR (ok), 09:36, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Так эта JEE ;)
Тоже много общего. Но там был свой сетевой протокол, аудиоподсистема, механика 3D-пространства с тремя представлениями объектов: 1) Графическое; 2) Физическое; 3) Механическое.
В общем, цели стояли разные. Для вывода графики оно использовало на тот момент движок Ogre3D.
| |
|
2.39, YetAnotherOnanym (ok), 09:42, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> виртуальная машина, исполняющая байт-код приложений, которым совершенно без разницы где исполняться
Емнип, Джо Андерсон сотоварищи из Эрикссон уже написали такое, только оно не в браузере крутится.
| |
|
3.41, KroTozeR (ok), 09:52, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Емнип, Джо Андерсон сотоварищи из Эрикссон уже написали такое, только оно не
> в браузере крутится.
Конкретно то решение было написано на C и C++, представляло собой связку ядра и модулей, определяющих функционал ноды (сервер, клиент, клиент+сервер, транслятор и т.д.). Браузер там и близко не применялся.
| |
|
2.57, Аноним (-), 17:46, 25/04/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
>Приложение может исполняться на сервере, но его оконный интерфейс отображается на клиенте
Вау, они изобрели X11
| |
|
3.60, KroTozeR (ok), 07:58, 26/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
>>Приложение может исполняться на сервере, но его оконный интерфейс отображается на клиенте
> Вау, они изобрели X11
Влом уже морально распинаться... Особенно перед такими "яслями", выдёргивающими фразу из контекста.
В кратце объясню, но скорее для других:
В среде "висит" набор объектов, содержащих как данные, так и исполняемый байт-код. Все под одним UID, а потому имеют друг к другу доступ. Это — и есть ПО. Запрос извне к публичной фабричной функции генерит объед под UID пользователя, который обратился. Этот объект уже тянет на исполнение всё остальное необходимое. У клиента в конфигурации есть доступ к графическому серверу, а на сервере нет. Тем более под этим UID. Потому создаётся реплика всех объектов-участников графической оболочки ПО. Т.е., на стороне клиента работает "графическая" часть приложения, а на стороне сервера — общая для всех пользователей.
И никакого X11 там и в помине не было! Там не передавылись вызовы отрисовки примитивов. Само ПО, образно говоря, "проростало" в пространство клиента своей графической частью.
| |
|
|
1.12, Аноним (-), 02:06, 25/04/2018 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
Когда уже сделают node как зависимость для приложений.. чтоб они не тащили браузер с собой, а только подтягивали
| |
|
2.13, th3m3 (ok), 02:17, 25/04/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Если я правильно тебя понял, то ты путаешь Electron с Node.js. В Ноде нет никакого браузера, там только движок V8.
| |
2.14, Аноним (-), 02:30, 25/04/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
Нода - фактически просто скриптовый язык, который можно использовать в разных случаях жизни, хоть сисадминство, хоть сервера (в принципе, как и остальные подобные языки).
| |
|
1.20, Илья (??), 07:49, 25/04/2018 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
В ноде мне не нравится, что npm-пакеты при установке с опцией "-g" по умолчанию требуют прав суперпользователя.
Учитывая, что база npm - это та еще помойка, хотелось бы, чтобы пакеты ставились в папку пользователя.
Да, это можно настроить, но почему так сделано - непонятно.
| |
|
2.22, Аноним (-), 08:12, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> В ноде мне не нравится, что npm-пакеты при установке с опцией "-g"
> по умолчанию требуют прав суперпользователя.
> Учитывая, что база npm - это та еще помойка, хотелось бы, чтобы
> пакеты ставились в папку пользователя.
> Да, это можно настроить, но почему так сделано - непонятно.
предложи получше способ установки пакета в систему, не используя специальных привелегий?
| |
|
3.40, YetAnotherOnanym (ok), 09:49, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> предложи получше способ установки пакета в систему, не используя специальных привелегий?
"--prefix dirname" ?
| |
|
4.58, Аноним (-), 17:50, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
Это у вас теперь называется "в систему"? Лучше бы ты про докер сказал.
| |
|
3.65, Вы забыли заполнить поле Name (?), 22:26, 26/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> предложи получше способ установки пакета в систему, не используя специальных привелегий?
echo 'prefix = ~/.node' >> ~/.npmrc
После этого npm i -g будет ставить в ~/.node
| |
|
|
3.50, Аноним (-), 12:43, 25/04/2018 [^] [^^] [^^^] [ответить] | +/– | Нет, вы не поняли В вашем случае пакет с зависимостями установится в node_mod... большой текст свёрнут, показать | |
|
2.32, Аноним (-), 09:11, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
После включения в современные версии npm команды npx, надобность в глобальных пакетах вообще отпала. Не могу представить себе ни одной причины, по которой еще нужно использовать глобальные пакеты.
| |
|
3.43, ВебЗоопарк (?), 10:24, 25/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
> После включения в современные версии npm команды npx, надобность в глобальных пакетах
> вообще отпала. Не могу представить себе ни одной причины, по
> которой еще нужно использовать глобальные пакеты.
Ну да, ну да. В документации черным по еблому
INSTALL
npm install -g npx
| |
|
2.44, Аноним (-), 10:43, 25/04/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Так надо Node ставить из NVM, а не репозитория, тогда и global пакеты будет храниться в юзерспейсе, как и сама Node.
| |
|
1.49, Аноним (-), 12:35, 25/04/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
В июне выйдет обновление с V8 6.7 (насчет 6.8 команда не уверена, что имеет смысл тратить время на починку ABI V8 к версии 6.6).
| |
1.52, anonymous (??), 13:04, 25/04/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
эта та байда с псевдо асинхронным callback hell про которую ее создатель сказал что ее нужно похоронить и писать на golang?
| |
|
2.61, Аноним (-), 10:08, 26/04/2018 [^] [^^] [^^^] [ответить]
| +/– |
Да, целых полгода на полировку и стабилизацию. А что в этом плохого?
| |
|
3.62, Вы забыли заполнить поле Name (?), 22:19, 26/04/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Рискну предположить, что аноним выше говорит, что это не релиз, а бета (или альфа) раз он еще не готов. Но видимо, в мире js заведено по-другому, чтобы веб-(животные, любящие бананы и лазить по деревьям) не боялись "полировать" и стабилизировать.
| |
|
|
|