amuck-landowner

Brainstorming an idea

Status
Not open for further replies.

telephone

New Member
I'm one to use existing resources, unless I know I can create better. In saying that, most of the proposed ideas already have multiple projects doing a decent job.

Why create from scratch, when we could volunteer for existing projects:

DNS/Email/Nginx CP:

  - Vesta CP

  - Ajenti CP

DNS only:

  - AtomiaDNS

  - DNS-CP

SolusVM:

  - Feathur

I like the idea of a panel framework (with an API). Just ensure modules are/will be actively developed or not much will come out of it.

Personally, I'd love an idea that's not as common, or where the existing solutions are lacking. (Points for being cynical B)).

It's more motivating to improve solution, than simply churn another copy.
 

SrsX

Banned
I'd be interested in joining if you are up to this.

My experience:

HTML, Javascript, PHP, some perl, python, ruby (I do some CSS, but I hate designing)

C/C#/C++
 

BlueVM

New Member
Verified Provider
I'm one to use existing resources, unless I know I can create better. In saying that, most of the proposed ideas already have multiple projects doing a decent job.

SolusVM:

  - Feathur
Thank you, I didn't want to come out any say it... Feathur is AGPL licensed and it works pretty well (plus it's already been audited). I think people neglected to mention it based on the fact that they think BlueVM owns it when in reality it's free and open source right now. We offer licenses primarily for support and to help pay for the project, but they aren't mandatory by any means.

If anyone wants to volunteer to add code onto it or submit suggestions the door is open.

https://github.com/BlueVM/Feathur
 
Last edited by a moderator:

NodeBytes

Dedi Addict
Sorry I've been absent, my Uncle is passing away so I haven't had much time.

I like the idea to have a panel with plugins for servers!
Agreed, too many out there already, however most come with a lot bloatware. Modular would be cool because you could install the base panel and then add on servers from it and the panel would manage the install and the optimization, sort of like what you get with minstall. The reason I bring up Nginx specifically is because I haven't seen a good (open source) panel that is secure and works well. 

As for requirements, I would say hold off on even discussing those until we shape the idea for the project and have an outline/technical requirements for it so we can choose the right framework for it.
 

wlanboy

Content Contributer
Personally, I'd love an idea that's not as common, or where the existing solutions are lacking. (Points for being cynical B)).
It's more motivating to improve solution, than simply churn another copy.
Would any of the mentioned panels would run on a 64MB vps?

Nope.

Agreed, too many out there already, however most come with a lot bloatware.
Second that.

As far as I understood fisle and peterw it is all about low resources.

Installing Apache, PHP, MySQL to manage a DNS or mail server is overhead.

Why should the panel consume more resources than the service it is controlling. Yup I know what you want to say.

But I like the idea of a low resource panel API:

  • with no dependencies but python/ruby and some python/ruby libs (ok and sqlite)
  • whole panel (all sources + html) < 1 MB of diskspace
  • whole panel (running processes) < 64 BM of RAM
  • API - user can define what should be running
Last point is essential. Why should all the nginx and dns stuff run if I only want to manage my mail server?
 

telephone

New Member
Would any of the mentioned panels would run on a 64MB vps?

Nope.

Second that.

As far as I understood fisle and peterw it is all about low resources.

Installing Apache, PHP, MySQL to manage a DNS or mail server is overhead.

Why should the panel consume more resources than the service it is controlling. Yup I know what you want to say.

But I like the idea of a low resource panel API:

  • with no dependencies but python/ruby and some python/ruby libs (ok and sqlite)
  • whole panel (all sources + html) < 1 MB of diskspace
  • whole panel (running processes) < 64 BM of RAM
  • API - user can define what should be running
Last point is essential. Why should all the nginx and dns stuff run if I only want to manage my mail server?

Ruby and under 64 MB RAM  :lol:  :lol:  :lol:  :lol: (Ruby should be 512 MB+).

I would never aim a control panel for < 64 MB; 128 MB would be a more realistic target. Besides, if you own a 64 MB - 128 MB VPS, you should be adept with managing via CLI or scripts.

^ 64 MB for the panel itself without modules would be do-able.

My suggestion for languages:

  - Python 2

  - PHP 5.4+

Both Python and PHP have in-built servers that can be run in low resource environments. I don't have the statistics for Python, but the PHP 5.4+ in-built server uses 5 MB RAM when idle (KVM; 7 MB on OpenVZ).

With SQLite just beware of locking:

  - Have one DB for the overall system (panel/user details)

  - Each module will have it's own DB and can query the API to pull information from system DB

      - This way if a module has a long polling process, only said modules DB will be locked

^ Would be beneficial to have an API call to allow modules read-only access to other modules DB.
 
Last edited by a moderator:

NodeBytes

Dedi Addict
Ruby and under 64 MB RAM  :lol:  :lol:  :lol:  :lol: (Ruby should be 512 MB+).
Hahaha. Yeah, good luck with that. I would say at minimum requirements should be 128-256mb. 

With SQLite just beware of locking:

  - Have one DB for the overall system (panel/user details)

  - Each module will have it's own DB and can query the API to pull information from system DB

      - This way if a module has a long polling process, only said modules DB will be locked

^ Would be beneficial to have an API call to allow modules read-only access to other modules DB.
That would be cool. However, I would opt for separate databases using MySQL because they are easily manageable and have better user access controls and imho an overall better implementation system. Plus it would provide the opportunity for expansion of features in the future. MySQL is also more scaleable that sqlite.
 

wlanboy

Content Contributer
Ruby and under 64 MB RAM  :lol:  :lol:  :lol:  :lol: (Ruby should be 512 MB+).
I said Ruby not Rails.

Hahaha. Yeah, good luck with that. I would say at minimum requirements should be 128-256mb. 
So you never did anything with Ruby.

My own website:

ruby-ram.jpg

It is like telling someone that .Net sucks because WinWord is consuming more RAM than vi :rolleyes: .

PS:


I would stick with Python 3.
 

telephone

New Member
I said Ruby not Rails.


So you never did anything with Ruby.


My own website:

ruby-ram.jpg


It is like telling someone that .Net sucks because WinWord is consuming more RAM than vi :rolleyes: .


PS:


I would stick with Python 3.
I'm aware Ruby can run in low resource environments. My IRC bot/downloader is written in Ruby and sits at 75 - 100 MB.

In saying that, I don't think Ruby itself would be a wise choice for the project. Keeping modules "thin" would be a time consuming task. (Don't cage the beast B)).

PS:

You're right, Python 3 should be used for new projects.
 

wlanboy

Content Contributer
Yup - I don't want to cage the beast - but I don't want to feed it with donuts too.

Ok - so

  • who wants to be the lead developer for this phyton project?
  • who setups jira?
  • who setups git?
  • who setups jenkins/test environment?
 

NodeBytes

Dedi Addict
I'll host jira. I don't have enough experience in Python to be the lead developer. Can somebody work with me as project co-leads?
 

NodeBytes

Dedi Addict
I've been thinking about this a bit more. Maybe it would be beneficial to design it in PHP.

PHP would make sense for those of us who are working with it on a daily basis. It would also allow for modules to be developed efficiently and in a timely manner. PHP would provide a wider range of modules to be developed because some of the apps that will be managed have better libraries/classes to work with PHP than they do Python. Also, more people would be able to create "plug 'n play" modules for it.

This does of course introduce some inherent risks from PHP's insecure attributes.

In the end, I think it's better to design a product that more people understand how it functions as well as can audit the code and rewrite it where needed.

Thoughts?
 

Echelon

New Member
Verified Provider
Sounds feasible to me, since there's a vast majority of people out there that are well versed in it in one facet or another. Then again, I do quite a bit myself in PHP for clients, so my views may be skewed in one way or another ;)
 

NodeWest-Dan

New Member
For those of us who are newer to programming. How can we accommodate that?  Are some of you available to help and get us on the right track?  I am very interested in learning PHP or Ruby which I've started on my own so far with Ruby.
 

NodeBytes

Dedi Addict
So that we can start focusing on developing this group of developers I have decided to create a Google group to get some communication flowing. If you have input for this project you can sign up on https://groups.google.com/forum/?hl=en#!forum/vpsboarddev

I will accept anyone who signs up. Please keep any and all discussion on this forum related to the development of this group of coders. 

I am not separating this in to a separate forum because I want separation between VPSBoard and the project, I just think it's more appropriate to keep a forum where anyone can ask questions with no criticism from anyone as well as being able to open development specific questions.

All other project details will be further discussed on that group.

Thank you for your participation.
 
Status
Not open for further replies.
Top
amuck-landowner