Есть еще Koding, правда он пока в бете, но выглядит неплохо. А вообще облачные IDE неплохи, хотя я по привычке юзаю офлайн-IDE, а проекты храню на гитхабе, чтоб отовсюду доступ иметь.
Cloud9 лагает как бета. Частая ситуация — файл правят два человека, но они друг друга не видят. Или опять же с файлом работают 2 человека, но неправильно мержится их вклад — тот, кто пришел позже, может случайно сохранением удалить уже сохраненных вклад первого.
Ну у него же может быть гуй, а как етот гуй показывать? р-декстоп?
Ну и ето ж апасна, давать запускать шото у себя на сервере чужому кодеру, наверна прийдется делать какие-то виртуалки.
Какая-то получается сложная инфраструктура с сомнительным профитом.
Сложно. С одной стороны, коду на сервере нужно организовать окружение, в котором он не сможет навредить серверу, т.е. окружение должно быть изолированным аж до сингулярности. Во-вторых, коду ж нужны какие-то библиотеки? Соответственно их придется грузить туда же. Но библиотекам тоже нужно свое окружение (особенно если они бинарники). А если не бинарники, то их придется там пересобирать.
Кроме того, в том окружении не будет того, с чем, возможно приложению нужно работать у вас: драйвера, оборудование, сервисы и т.д.
Ну и даже сам ввод-вывод неконсольного приложения через web реализуется весьма нетривиальным и достаточно дорогим способом.
Ресурсов сервера не напасешься — виртуалку на каждого пользователя запускать. Конечно, если пользователи будут платить 100 долларов за рабочее место в месяц, то можно и железа накупить, и софта соответствующего. А если подешевле, то дЕбет с крЕдитом не сходится.
Погодите, а в чем, собственно, проблема? Разве сейчас многие компании не так работают с вебом?
У нас под проекты часто выделяются отдельные виртуальные сервера.
<<пользователи будут платить 100 долларов за рабочее место в месяц
Откуда такое дикое число? И почему нельзя для фирмы один сервер использовать?
Посмотрите, сколько всего всякого разного требуется для работы средненького бизнес-приложения. И все это нужно будет запихнуть «туда», добиться его устойчивой, предсказуемой работы, идентичной работе на реальном железе. Каковы будут аппаратные потребности этого приложения? А черт его знает.
Одно дело вебсерверочки, которые все под копирку и окно памяти им для работы требуется 16м.
А совсем другое дело, какой-нибудь настольный монстр, который хочет 512М памяти (и окружение неизвестно сколько хочет).
Число 100 взято с потолка.
Для фирмы нельзя использовать один сервер, т.к. нагрузку нельзя предсказать. Если будет пробный запуск одного экземпляра продукта — нужно 512мб. Если 10 тестеров будут тестрировать — 5Г.
Я видел «онлайн-демонстрацию» одного бухгалтерского продукта. Выглядело это так:
Ты запускаешь браузер.
В браузере запускается JAVA-апплет клиента службы терминалов.
У них там Citrix'ом запускается под тебя новый сеанс, из дефаулт юзера. Создается «чистенькая» копия демонстрируемого продукта. И вот так вот работаешь.
Но там продукт был такой, что одна его продажа озолотит дистрибьюторов и окупит все затраты на ПО и софт для всего этого техночуда.
Невозможность работы в оффлайне я бы пережил, как бы там ни было, количество вайфай хот-спотов растет и доступность интернета на некоторую единицу площади постепенно повышается. А вот удобство работы в веб-интерфейсе и общую функциональность облачных IDE еще есть куда улучшать.
Но учитывая что большинство этих IDE рассчитано на веб разработку, наличия интернета мне кажется само собой разумеющимся. Даже я, занимаюсь, совсем не веб-разработкой с самым, что ни на есть оффлайновом редактором и компилятором, практически не представляю себе работы без интернета, так как документацию я обычно читаю онлайн, а гугль, StackOverflow, профессиональные форумы, рассылки и тому подобные ресурсы — неотъемлемая часть рабочего процесса (я даже не говорю про рабочую переписку и документацию в Google Docs).
Ну я согласен, что отсутствие сети — это крайний случай. Но зачастую в командировках нужно куда-то лететь (до НЮ, например, 8 часов). Тут без оффлайновой иде вообще никак — и к таким поездкам нужные доки качаются для оффлайна.
оффлайн режим в cloud IDE — одно из направлений, в котором ожидается развитие. Cloud9 вроде даже поддерживают оффлайн режим, но насколько он полноценный в плане юзабельности и полезности — вопрос.
Согласен, бывает нужно иногда. Но согласитесь, что работа в самолете — это относительно редкий сценарий, и не повод считать любой инструмент, который этого не умеет, «игрушкой».
Я предпочту настроить раз и навсегда оффлайновую IDE и пользоваться ей всегда, чем настроить две разных, заточенных под онлайн и оффлайн и мучиться с миграцией, когда прижмет.
> А вот идея иметь все средства разработки, а также сервисы для запуска, тестирования и развертывания приложений в облаке, весьма и весьма прельщает.
И много фирм согласятся отдать свой код посторонним? Хотя пусть это будет риторическим вопросом, а вот ответ на «какую ответственность несут данные IDE при потере данных?» хотелось бы услышать.
А по-моему, много — в Киеве, по крайней мере. Проект на Гитхабе, Багтреккер — в облаке, почта в Гугле, сервера в Амазоне, платежи в Пейпал, в качестве инструментов общения — скайп. Не вижу, чем такой сетап как-то принципиально отличается от того, чтобы иметь свои сервера. Да, дороже, но если бюджет позволяет, то почему нет?
Это я к тому, что потерянные данные это проблема самого пользователя. Наверняка не каждый будет хранить в облаке что-то важное, не имея при этом копии. К тому же, вышеперечисленные сервисы, как минимум git, поддерживают.
Мне кажется, это нормально писать код в таком редакторе, но не забывать периодически пушить\пулить на другой бэкап хостинг (опять же, если это какой-то важный проект).
ЯП Node.js, Java Script — WTF? Сам присматриваю себе cloudIDE под проект на Node.js, но это же не ЯП, это платформа. Автор, проведите себе ликбез по теме javascript. (И это явно вариант автора, на выше означенных сайтах написано всё корректно)
Кто есть кто на рынке облачных IDE?