Comments 40
Концовка скринкаста вызывает отторопь, но вообще мне понравилось. Думаю, попробую на досуге.
Как поклонник django — одобряю такой инструмент.
Как поклонник django — одобряю такой инструмент.
+2
А на чем крутится сайт? И такое жуткое оформление, что так и хочется помочь проекту.
0
Движок построен на базе Google V8, база данных Postgres (язык запросов компилируется в SQL) и фронтент на Django. Если есть идеи по оформлению, пишите мне на anton at akshell.com.
0
А фронтент можно было бы переписать на Javascript?
0
Сейчас нельзя, потому что приложения не могут создавать/удалять пользователей, создавать/удалять приложения, не имеют доступа к базам данных и файловым хранилищам других приложений, не могут модифицировать код приложений. В принципе, можно было бы все это добавить, создав некие «системные» приложения с такими правами, но не очевидно, чем это может быть полезно. Разве что увеличится некое теоретическое изящество.
+1
По поводу поддержки CommonJS — Возможно Вам стоило обратить внимание на nodeJS там есть и commonJS и поддержка Postgresql и куча модулей в том числе и быстрых, на С++
0
Akshell ориетирован прежде всего на простоту разработки, а nodejs — асинхронный фреймворк (это очень хорошо для перформанса, но простоты не добавляет). Вот какие-то модули с поддержкой CommonJS будет возможно использовать.
Akshell использует Postgres не напрямую: у приложений есть API к базе данных, в т.ч. специальный язык запросов, который удобно использовать из Javascript. Вызовы этого API и запросы трансформируются в SQL, скармливаются Postgres'у, его ответы преобразуются в соответствующие структуры и возвращаются приложению. Самим приложениям о Postgres'е ничего знать не нужно.
Akshell использует Postgres не напрямую: у приложений есть API к базе данных, в т.ч. специальный язык запросов, который удобно использовать из Javascript. Вызовы этого API и запросы трансформируются в SQL, скармливаются Postgres'у, его ответы преобразуются в соответствующие структуры и возвращаются приложению. Самим приложениям о Postgres'е ничего знать не нужно.
0
> Вызовы этого API и запросы трансформируются в SQL
какой модуль их трансформирует? вы его сами написали?
какой модуль их трансформирует? вы его сами написали?
0
Да, и язык запросов тоже я придумал. Он гораздо проще, чем SQL, избегает многих его острых углов, но при этом обладает такой же мощностью. Eго легко встраивать в Javascript: он использует те же типы и операторы. Вот описание интерфейса к базе данных, справочник по нему и справочник по языку запросов.
0
Ещё пара вопросов, Скажите сколько времени Вы потратили на проект (времени), и думали ли о mongoDB (его преимуществом было бы отсутствие необходимости создавать таблицы)
0
Ну я потратил изрядное количество времени :) Главным приоритетом для меня была простота разработки, поэтому я выбрал реляционную БД. По моему мнению, полноценные транзакции и запросы значительно облегчают создание приложений. По той же причине я сделал и язык запросов: я старался сделать использование реляционной БД максимально простым.
+1
прикольно, а мы уже давно такое делаем, прошу сравнить

Online IDE — писать можно на Java и Javascript
Документация — с примерами
а что у вас на стороне сервера крутится?

Online IDE — писать можно на Java и Javascript
Документация — с примерами
а что у вас на стороне сервера крутится?
+5
правильная ссылка на документацию
есть ряд вопросов:
1) каким образом обеспечивается безопасность данных?
2) как измеряете нагрузку?
3) на каком уровне идет виртуализация? на уровне железки, веб-сервера, или приложения?
кстати есть еще такая разработка bytefy.com/ по архитектуре еще ближе к вашей
хоть мы делаем похожие продукты, думаю мы можем поделится некоторыми соображениями, уверен в этом мире хватит места для двух-трех платформ :)
есть ряд вопросов:
1) каким образом обеспечивается безопасность данных?
2) как измеряете нагрузку?
3) на каком уровне идет виртуализация? на уровне железки, веб-сервера, или приложения?
кстати есть еще такая разработка bytefy.com/ по архитектуре еще ближе к вашей
хоть мы делаем похожие продукты, думаю мы можем поделится некоторыми соображениями, уверен в этом мире хватит места для двух-трех платформ :)
+1
Очень интересно, посмотрю ваш проект. На bytefly я запросил инвайт, но пока не получил :(
1) Базы данных и хранилища файлов отдельных приложений полностью независимы.
2) Пока никак :) Конечно, есть некоторая защита от примитивного DoS, но системы биллинга пока нет. Пока сервис с бете, можно писать только открытые приложения, а это бесплатно.
3) На уровне приложения.
Приложения исполняются движком на базе Google V8, он и обеспечивает виртуализацию. Базы данных обеспечивает PostgreSQL, запросы компилируются в SQL и скармливаются ему.
1) Базы данных и хранилища файлов отдельных приложений полностью независимы.
2) Пока никак :) Конечно, есть некоторая защита от примитивного DoS, но системы биллинга пока нет. Пока сервис с бете, можно писать только открытые приложения, а это бесплатно.
3) На уровне приложения.
Приложения исполняются движком на базе Google V8, он и обеспечивает виртуализацию. Базы данных обеспечивает PostgreSQL, запросы компилируются в SQL и скармливаются ему.
0
Почему в качестве server-side языка был выбран именно JS, а не Java или С#?
+1
Akshell ориентирован прежде всего на простоту и скорость разработки, поэтому я выбирал скриптовой язык. Javascript уже используется в броузерах, поэтому я предпочел его. К тому же Google V8 исполняет его очень быстро.
0
А почему такое зубодробительное название?
0
В Akshell приложения взаимодействуют по образу и подобию UNIX пайпов, поэтому shell. AK — мои инициалы.
0
Ну, сделали бы через дефис, или пробел.
Первая мысль — Аскскссккшелл. Нечитаемо.
И инициалы — дурной тон.
Первая мысль — Аскскссккшелл. Нечитаемо.
И инициалы — дурной тон.
-3
Через дефис длиннее, сложнее набирать. К тому же я у многих спрашивал перед тем как купить доменное имя — все говорили, что хорошо читается. Видимо, дело вкуса.
0
первая попытка прочитать — aks hell
вторая — ass hell
к шеллу пришел только по прочтении топика ))
вторая — ass hell
к шеллу пришел только по прочтении топика ))
0
Просто у скриптовых языков слабая поддержка в IDE. Обычно есть только подсветка синтаксиса и слабый code completion. В случае же Java или C# на помощь придут рефакторинги и инспекции с исправлением ошибок за один клик.
С другой стороны соглашусь, что JS покажется ближе чем Java большинству веб-разработчиков.
PS. Я специально не говорил про типизацию и производительность, чтоб не холиварить.
С другой стороны соглашусь, что JS покажется ближе чем Java большинству веб-разработчиков.
PS. Я специально не говорил про типизацию и производительность, чтоб не холиварить.
0
Любопытно… Немножко оффтопик, но… Вы пользуетесь Емаксом?
0
Да. Вы по интеграции утилиты с Емаксом, видимо, догадались?
0
UFO just landed and posted this here
спасибо за интересный пост. Какие у вас планы по монетизации платформы? Какие способы вы видите?
0
Самый очевидный способ — брать деньги с коммерческих приложений за использованные ресурсы при превышении определенных квот. Однако он страдает от проблемы курицы и яйца: сейчас Akshell позволяет писать приложения быстро и просто, но это единственное преимущество перед обычным хостингом с каким-нибудь веб-фреймворком. Наличие большого количества пользователей дало бы гораздо большее преимущество, позволило бы использовать социальные фичи «на полную». Пользователи же, в свою очередь, захотят регистрироваться при наличии хороших приложений.
Сейчас я делаю Akshell совместимым с CommonJS, чтобы использовать открытые Sever-Side Javascript библиотеки, а затем писать «хорошие приложения».
Сейчас я делаю Akshell совместимым с CommonJS, чтобы использовать открытые Sever-Side Javascript библиотеки, а затем писать «хорошие приложения».
0
Чертовски хорошее, своевременное и интересное начинание, пишите на хабр о том, как идут дела. Удачи!
0
Ну почти идеальная штука :)
Веб-интерфейс — это круто. Интеграция с Emacs — еще круче. Шаблоны Django — хорошо. Javascript — очень хорошо.
Очень жаль, что это не node.js — я уже не могу без этой асинхронности. И очень жаль, что там PostgreSQL… да вообще, что там SQL. Вот бы туда MongoDB…
Веб-интерфейс — это круто. Интеграция с Emacs — еще круче. Шаблоны Django — хорошо. Javascript — очень хорошо.
Очень жаль, что это не node.js — я уже не могу без этой асинхронности. И очень жаль, что там PostgreSQL… да вообще, что там SQL. Вот бы туда MongoDB…
0
Спасибо. Да, асинхронности нет, т.к. я делал ставку прежде всего на простоту использования. А доступ к базе данных происходит через API и язык запросов, который спроектирован именно для удобного встраивания в Javascript. Да, вызовы API и запросы транслируются в SQL и исполняются Postgres'ом, но это лишь деталь реализации, которая пользователю не видна. Эта связка обеспечивает полноценные запросы и транзакции, она тоже была выбрана ради простоты использования.
0
Only those users with full accounts are able to leave comments. Log in, please.
Akshell, платформа социальных приложений