LINUX.ORG.RU

Как вы считаете, надо ли все приложения тянуть в WWW?


0

2
  1. Пускай все остается как есть 383 (39%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. Нет, все приложения должны быть только десктопными. Web 1.0 Rocks! 268 (27%)

    *******************************************************************************************************************************************************************************************************************************

  3. Да, все приложения должны быть доступны в www, со специфическим для web интерфейсом 229 (23%)

    ***********************************************************************************************************************************************************************************************

  4. Да, все приложения должны быть доступны в WWW, с таким же видом как и десктопные 113 (11%)

    **********************************************************************************************

Всего голосов: 993

★★★★★

Проверено: post-factum ()
Последнее исправление: post-factum (всего исправлений: 1)

Ответ на: комментарий от cvs-255

cvs-255

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

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

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

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

с чего вдруг? два экрана + opengl es разве так много требуют?

cvs-255 ★★★★★
()
Ответ на: комментарий от cvs-255

cvs-255

с чего вдруг? два экрана + opengl es разве так много требуют?

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

vurdalak ★★★★★
()
Ответ на: комментарий от cvs-255

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

farafonoff ★★
()
Ответ на: комментарий от vurdalak

> Так интерфейс же не плоский. Интерфейс трехмерный и реалистичный, и разрешение намного выше, чем у монитора, потому что объекты должны выглядеть детализированными, нахоядясь рядом с объектами реального мира.

Это чтобы как в фильмах про кулхакеров при неправильном вводе пароля можно было поездить на мотоцикле по виртуальному лабиринту, уклоняясь от выпускаемых администратором ракет?

cvs-255 ★★★★★
()
Ответ на: комментарий от grusha

Таки прикладное по все равно заворачивает весь стек ПО в свою обертку. Возвращаемся к тому с чего начали. Кто предоставляет Plan 9 - хостинги, что мне нужно поставить на компьютер чтобы запускать приложение распределенно, наконец что я смогу запустить кроме текстового редактора? В случае Web 2.0 весь стек уже более менее зрелый и пригодный к использованию.

farafonoff ★★
()
Ответ на: комментарий от grusha

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

farafonoff ★★
()
Ответ на: комментарий от farafonoff

lynx

А я не против. Открой мне тайну.. что мне с капчей делать?
Авторизация на некоторых недосайтах без js не проканывает. Посоветуешь юзать curl и мозгом парсить быдлокоды на js? А капчу через cacaview смотреть?

Tanger ★★★★★
()
Ответ на: комментарий от cvs-255

cvs-255

Это чтобы как в фильмах про кулхакеров при неправильном вводе пароля можно было поездить на мотоцикле по виртуальному лабиринту, уклоняясь от выпускаемых администратором ракет?

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

vurdalak ★★★★★
()
Ответ на: комментарий от farafonoff

Представьте себе толстого слона, а рядом толстого хомяка. Чем хомяк тоньше слона?

Tanger ★★★★★
()
Ответ на: комментарий от farafonoff

> Таки прикладное по все равно заворачивает весь стек ПО в свою обертку.

Вот это и есть мерзость, с которой надо бороться.

Кто предоставляет Plan 9 - хостинги

Не знаю. Сам гугли.

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

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

наконец что я смогу запустить кроме текстового редактора?

Ссылки на маны я тебе давал.

grusha
()
Ответ на: комментарий от farafonoff

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

Ой мамочки. Покажи мне 1С работающий на голом железе, без стека.

grusha
()
Ответ на: комментарий от grusha

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

farafonoff ★★
()
Ответ на: комментарий от grusha

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

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Coraid не приводить в пример - там она в роли прошивки для винчестера.

Ты читать умеешь? Coraid не выпускает винчестеры, и прошивки для них не пишет.

grusha
()
Ответ на: комментарий от farafonoff

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

Ты понял, о чем я тебя спрашиваю? Я хочу увидеть 1С, работающий без ОС, без бутлоадера и т.д.

Кстати, неплохая идея - заставить таких, как ты, писать такие приложения. Добро пожаловать в 50-е.

grusha
()

Веб приложения - самый простой способ нести в массы что либо отличное от микрософта. Почти все пользователи персонального компьютера, так или иначе, причастны к развитию Линукса. Без потребителей контента - а это, как ни попобольно некоторым, в последнее время именно веб приложения весь Линукс был бы сейчас на уровне Plan9, Haiku или Minix. Пусть веб програмисты «криворукие бла бла бла», пусть HTML «уродец бла бла бла», но «они» с помощью «этого» создают тот самый контент, который приносит бабло не только им, но и дает смысл развивать очень большую часть OSS.

foxen
()

Нет, все приложения должны быть только десктопными. Web 1.0 Rocks!

fedor
()

не знаю что имел в виду автор под фразой «Web 1.0 Rocks!», но в пользовтельском сегменте рынка наблюдатеся тенденция, когда проще написать приложение под 2 популярные платформы (ведроид и айос), чем писать его на жс\хтмл\ксс\жава и потом допиливать под пицот браузеров и разрешений

devnullopers
()
Ответ на: комментарий от grusha

А я говорю что это идеал, предельный случай. На практике в ОС урезается все лишнее, не зависимо линукс это или windows.

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Coraid - система хранения данных. Один такой большой винчестер. Полезной _прикладной_ нагрузки не несет.

Офигеть. Хранение данных не несет полезной прикладной нагрузки. Буду иметь ввиду.

grusha
()
Ответ на: комментарий от farafonoff

> А я говорю что это идеал, предельный случай. На практике в ОС урезается все лишнее, не зависимо линукс это или windows.

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

grusha
()
Ответ на: комментарий от grusha

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

farafonoff ★★
()
Ответ на: комментарий от grusha

Очевидно, вам не нужно решать задачи для которых нужены:

текстовый процессор,

веб сервер,

С++ IDE,

наверняка вообще любые IDE,

графический редактор

Каков же круг задач которые вы решаете с помощью компьютера?

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> текстовый процессор

вообще любые IDE

Не нужны ни для какой задачи. То, что они решают, - не задачи, а позывы к удовлетворению условных рефлексов.

веб сервер

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

С++ IDE

C++ - наиболее омерзительный из существующих ЯП. Нужно иметь совесть и какое-то чувство ответственности за человечество, а это несовместимо с использованием C++.

графический редактор

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

Каков же круг задач которые вы решаете с помощью компьютера?

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

grusha
()
Ответ на: комментарий от grusha

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

Вот это всегда самое интересное. Если твоя работа -

программирование, работа с почтой, браузинг, чтение книжек, поигрывание в досовские игрушки, мониторинг сети и железок, бэкап данных

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

Собственно IDE - это и есть автоматизатор рутинного труда программиста. Рефакторинг, работа с конфигурациями сборки и вообще с процессом сборки, навигация по программе, контекстная справка по языку программирования. Ты видимо противник автоматизации. Тогда что же автоматизируют твои тысячи задач по автоматизации?

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Собственно IDE - это и есть автоматизатор рутинного труда программиста. Рефакторинг, работа с конфигурациями сборки и вообще с процессом сборки, навигация по программе, контекстная справка по языку программирования.

Что еще раз подтверждает, что IDE - инструмент макак. Автоматизировать рефакторинг? WTF. Сборка? Make для кого придумали? Навигация по программе? С головой достаточно ctags и cscope. Контекстная справка по языку? Ну это блин ваще, ладно еще по API, но если ты не знаешь свой повседневный инструмент, у тебя явно что-то не так.

Ты видимо противник автоматизации.

Нет. Я противник громоздких неконтролируемых решений. А вот ты - враг прогресса.

а то кажется что ты автоматизируешь чтение книжек и поигрывание в дос-игрушки.

А почему бы и нет, собственно? Не сам процесс, конечно, а возможные сопутствующие рутинные действия?

Тогда что же автоматизируют твои тысячи задач по автоматизации?

Да что угодно рутинное. Элементарно - когда сеть дома отваливается, быстро проверить что именно отвалилось: домашний роутер, шлюз провайдера, DNS провайдера и т.д. Или проверить, что видео корректно отображается во всех режимах, путем захвата фреймов и нечеткого сопоставления их с эталонами (это уже задача поинтеллектуальнее, но всё интеллектуальное делает ImageMagick).

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

grusha
()
Ответ на: комментарий от grusha

Рефакторинг - это например если надо закрыть поле класса и обернуть его в геттер, или тупо найти все места использования какого-то кода, потому что ты его хочешь удалить/сломать, и надо его везде проверить. По языку я имел в виду именно API и стандартную библиотеку. Make надо править руками, IDE упрощает и автоматизирует процесс. ctags и cscope предлагаешь вызывать руками? Мне вот лень долбить в консоли кучи команд, мне удобнее видеть все в одном интерфейсе.

Нет. Я противник громоздких неконтролируемых решений. А вот ты - враг прогресса.

Прогресс - это cscope, который тянется еще со времен PDP-11?

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

У меня быстро проверяет что отвалилось именно домашний роутер :) А dns провайдера я и не использую - есть 8888. На самом деле задачи по автоматизации вне работы у меня возникают довольно редко, как ни странно. Не знаю как у остальных.

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Рефакторинг - это например если надо закрыть поле класса и обернуть его в геттер, или тупо найти все места использования какого-то кода, потому что ты его хочешь удалить/сломать, и надо его везде проверить.

Хм, а я рефакторингом называл архитектурную перестройку кода, которая делается прежде всего мозгом. А такие вот рутинные вещи прекрасно делаются полуавтоматически с помощью грепа, седа, средств редактора и т.п. И ты тогда понимаешь, что именно ты автоматизируешь, что гарантирует каждый отдельно взятый инструмент.

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

Код должен быть простым и прозрачным. Keep it simple, stupid.

Make надо править руками, IDE упрощает и автоматизирует процесс.

Да, руками, и что? Код тоже надо править руками. И кликать по менюшкам в IDE - тоже руками. Если makefile нормально написан и прост, никакой проблемы нет. IDE только затуманивает то, что на самом деле происходит.

ctags и cscope предлагаешь вызывать руками?

Нет. Предлагаю вызывать автоматически. Как и «контекстную справку» и т.д.

Прогресс - это cscope, который тянется еще со времен PDP-11?

Не вижу противоречия прогрессу. Компьютеры, которые тянутся еще с 1940-х?

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

Это по работе. У нас делают мультимедийные девайсы и софт под них. Видео и звук должны правильно работать на всех выходах, кодеках, разрешениях, соотношениях сторон и т.д. Это не полноценный QC, а spot testing перед тем, как отдать кому-то текущий софт (внутри компании). Гораздо быстрее и приятнее, когда это делает машина.

У меня быстро проверяет что отвалилось именно домашний роутер :)

А как он тебе об этом сообщает?

grusha
()
Ответ на: комментарий от grusha

Как раз в прозрачном коде IDE легко находит все места использования. Да, если писать на языке с типами, а не на Си. Греп и сед для редактирования чего угодно - полный кошмар. одно написание регулярок учитывающих все тонкие случаи чего стоит. В процессе переделки архитектуры приходится делать великое множество таких рутинных операций. Да что я рассказываю слепому про цвета, посмотри как netbeans работает с явой или resharper c C#.

Если я добавляю новый объект через IDE, то я нажимаю один раз, и ввожу его название один раз. Руками мне придется создать файл(или даже два) и исправить make-файл.

Посмотри на гну проекты с их автоконфом-автомейком это там понятно написано и просто?

Если вхреначить в текстовый редактор поддержку ctags, cscope и тысячу скриптов для рефакторинга, то получится кривенькая убогонькая тормозная IDE.

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

farafonoff ★★
()
Ответ на: комментарий от grusha

Роутер сообщает очень просто - я захожу на веб-интерфейс и там написано все. Если веб-интерфейс не открывается то надо просто перезагрузить его :)

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Как раз в прозрачном коде IDE легко находит все места использования.

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

Греп и сед для редактирования чего угодно - полный кошмар. одно написание регулярок учитывающих все тонкие случаи чего стоит.

Какие тонкие случаи? Речь о разовых задачах.

Если я добавляю новый объект через IDE, то я нажимаю один раз, и ввожу его название один раз. Руками мне придется создать файл(или даже два) и исправить make-файл.

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

Посмотри на гну проекты с их автоконфом-автомейком это там понятно написано и просто?

Нет. Там ужасно.

Если вхреначить в текстовый редактор поддержку ctags, cscope и тысячу скриптов для рефакторинга, то получится кривенькая убогонькая тормозная IDE.

Вот именно. Все IDE - именно результат того, что ты только что описал. Ты просто другого и не мыслишь, ты стремишься только вхреначить, модульность и компонентность для тебя - ничто.

grusha
()
Ответ на: комментарий от grusha

Какая разница есть модульность и компонентность или нет, если мне в итоге надо при взгляде на переменную узнать где она объявлена? Для этого надо объединить текстовый редактор с ctags и cscope, да. Как бы ни объединяли, получится IDE.

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

Архитектура бывает расширяемой. Это когда добавление нового например формата файла или пакета в протокол не означает фундаментальное изменение в архитектуре, а требует лишь добавления в проект пары файлов и сотни строк кода. У меня количество таких классов не редко превосходит объем самого «ядра».

farafonoff ★★
()
Ответ на: комментарий от grusha

> Адрес функции (ну или ссылка на объект говнокласса, содержащего говнометод) может быть в рантайме присвоен чему угодно, следовательно, код может быть вызван откуда угодно

man статическая типизация. Если у тебя везде все передается как void*, или ты сраный (питонист, лиспер, сишник, пхпшник), твой путь в ад. Я люблю писать сложные вещи на статических языках, потому что в каждом месте кода понятно что чему я присваиваю. Собственно если ты при написании кода не можешь предсказать что хранится в переменной (и явно указать ее тип), то какое ты имеешь право в рантайме закладываться на то что там функция (объект, число, whatever)

farafonoff ★★
()
Ответ на: комментарий от farafonoff

> Какая разница есть модульность и компонентность или нет, если мне в итоге надо при взгляде на переменную узнать где она объявлена? Для этого надо объединить текстовый редактор с ctags и cscope, да.

Не надо. Текстовый редактор надо лишь научить пайпам или другим системным средствам интеграции приложений. А твоя IDE может лишь то, что в нее зашито (или в ее плагины), а не то, что хочет пользователь.

И вообще, ты не туда смотришь. Допустим, ctags и cscope недостаточно, нужен какой-то интеллектуальный анализатор кода. Допустим. Так вот, нафига впихивать его функционал в редактор? Почему бы просто не передавать ему из редактора слово под курсором?

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

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

Архитектура бывает расширяемой. Это когда добавление нового например формата файла или пакета в протокол не означает фундаментальное изменение в архитектуре, а требует лишь добавления в проект пары файлов и сотни строк кода.

А вот и нет. Увеличение числа _внутренних_ сущностей ведет к увеличению архитектурной нагрузки, даже если структурных изменений вроде как нет. Если у тебя этих дополнительных сущностей так много, почему бы не изобрести общий интерфейс для них, вынести работу с ними на более высокий уровень, чтоб вообще не трогать ядро. В частности, позволить пользователям самим легко расширять систему. Ты ж в юзерспейсе работаешь, ё-моё, пользуйся этим!

Это все говорит о том, что все разговоры нынешних кодеров о высокоуровневости и абстракциях - пустой звук. Абстракция - это не просто затуманивание деталей работы, это создание качественно нового уровня работы. Java и C# - высокоуровневые языки? Ха. Там в 50 строчек делается то, что я в шелле делаю в одну.

grusha
()
Ответ на: комментарий от farafonoff

> > Адрес функции (ну или ссылка на объект говнокласса, содержащего говнометод) может быть в рантайме присвоен чему угодно, следовательно, код может быть вызван откуда угодно

man статическая типизация. Если у тебя везде все передается как void*, или ты сраный (питонист, лиспер, сишник, пхпшник), твой путь в ад. Я люблю писать сложные вещи на статических языках, потому что в каждом месте кода понятно что чему я присваиваю. Собственно если ты при написании кода не можешь предсказать что хранится в переменной (и явно указать ее тип), то какое ты имеешь право в рантайме закладываться на то что там функция (объект, число, whatever)

Типы тут ваще ни при чем, представь себе. Я прекрасно могу предсказать, что хранится в переменной, но не могу предсказать, когда оно там хранится. Точнее, я-то могу, а вот IDE не может, ибо ничего не знает об алгоритме, реализуемом моим кодом. Это общее свойство тьюринг-полных языков. Ты вообще в школе учился? С основами теории вычислимости хоть немного знаком?

grusha
()
Ответ на: комментарий от farafonoff

> Человек не понимает зачем вообще нужны компьютеры, вот печаль :))

Ты, кстати, так и не сказал, зачем.

grusha
()
Ответ на: комментарий от grusha

> Я прекрасно могу предсказать, что хранится в переменной, но не могу предсказать, когда оно там хранится.

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

grusha
()
Ответ на: комментарий от grusha

Греп и сед _не_умеют_ считать скобки - они умеют регулярки. Я привел это как пример того чего нельзя сделать на имеющихся утилитах.

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

А что если интеллектуальному анализатору нужно дерево разбора программы, а на выходе у него визуальные пометки ошибок в коде программы? Редактор в любом случае должен уметь получать информацию обратно от анализатора, а значит поддерживать какие-то форматы. Совсем универсальный разработать не возможно, так что механизм плагинов все равно нужен.

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

Java и C# - высокоуровневые языки? Ха. Там в 50 строчек делается то, что я в шелле делаю в одну.

Значит ты не умеешь программировать на этих языках и используешь их не по назначению. Попробуй решить на шелле систему линейных уравнений хотя бы :).

farafonoff ★★
()
Ответ на: комментарий от grusha

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

farafonoff ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.