Pinguino Forum

Full Version: What new features do you want to see in 11.0 ?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Yeison and I are thinking about a new major release of the Pinguino IDE.

Here are some of our ideas:

- Easier third-party library integration (based on a new host interface (SourceForge, GitHub or Bitbucket) and GIT version manager)

- Pinguino-Kit (the Experimental Pinguino Graphical Language) integration (with Graphical to Text mode and Text to Graphical mode abilities)

- Pinguino IDE on a Virtual Private Server (VPS) : you can program your Pinguino straight from your internet browser. No more OS issues or long and complex installation.

If you think about something else, feel free to add your ideas in this thread or on the Roadmap page of the Wiki.

Thank you.
Proper packages - MSI installer for windows containing everything & RPM's etc for linux. Get it added to distro repositories too.. apt-get pinguino..

If I may ask, how much thought have you given to the virtual IDE plan? If you're letting people edit, save & compile on the same machine then you are just swapping OS issues for security & liability issues.

Personally, I would have an IDE that links to dropbox, skydrive etc for the file storage and then just passes any source onto a Compiler-As-A-Service.

I have written similar systems before (database-backed IDE last time). Would love to work on this!
(02-11-2013, 02:43 PM)niki_m Wrote: [ -> ]MSI installer for windows
Do you know a free open source tool for that ?
Quote:RPM's etc for linux
I've got Debian packages ready. We just have to modify pathes in the IDE.
Quote:Get it added to distro repositories too.. apt-get pinguino..
Don't know how to do it but google is my friend.
Quote:how much thought have you given to the virtual IDE plan?
Ok, I must admit I didn't spend a lot of time on it. Shame on me. It could have been the perfect solution.
Quote:Personally, I would have an IDE that links to dropbox, skydrive etc for the file storage and then just passes any source onto a Compiler-As-A-Service.
I have written similar systems before (database-backed IDE last time). Would love to work on this!
It would be definitely great ! You could maybe contact Yeison about that ?
(02-11-2013, 10:13 PM)regis Wrote: [ -> ]
(02-11-2013, 02:43 PM)niki_m Wrote: [ -> ]MSI installer for windows
Do you know a free open source tool for that ?

WiX is free & open-source! Looks perfect for your needs.

I'm not sure how to actually add packages either, but I think you can do it from inside the package manager.

Will contact Yeison about the virtual IDE! Smile
All seems fine, just make sure that a local version is still available.

Tools for me must be local, I can't trust a service that I need a Internet connection to use.
I have sent Yeison a message and spent the past few evenings making rough plans for the virtual IDE, including solutions for offline editing/compiling!

Other planned features are:

o Near-instant loading times (everything is static and cachable)

o Use any supported file hosting provider or even your own ftp server. Any file service that offers a RESTful interface and supports CRUD operations can be supported.

o Instant help searching

o Anonymous usage. No logins required!

o Should be usable on Android/iOS based web browsers.

o Highly secure. Limited attack footprint for hackers. Compiler service uses piped data, so does not even store any users source code to disk.

I have already written about 60% of the source needed for this in other projects.

Just waiting for him to reply now. Not sure when he will check his private messages next.
I sent him an email Wink.
Hi niki_m, Regis

i'm reading some proposal features,
i want to have something more that a simple compiler/ programmer, an a complete Pinguino IDE Cloud,
with projects (private and publics), collaborative, comments, comments, help...
and the security must be based in protect the data of users, not in not save data.

niki_m, how is building your system?

Hasta pronto.
Right, if you want a full cloud, then you WILL have to plan out the infrastructure properly to start with. A simple VPS running a LAMP setup will be useless after a very short time.

For this, I am assuming you'll have around 10,000 active projects with around 100,000 members and it'll be a commercial venture, or have commercial sponsorship (Amazon cloud or hardware in a cage at a datacenter - not cheap) and every part will be made from free and open source software.

Pinguino IDE Cloud

Assuming here that you have commercial sponsorship and an un-metered cage (like how source-forge started I believe).........

DNS - Any redundant DNS network will do. Point a wildcard entry to * No network has 100% uptime, so I generally use 2 redundant DNS networks for my projects.

File storage - RAID (obviously) fiberchannel drives with many terabytes of storage. Each project should be allocated a reasonable amount of space, say 250Mb. Don't forget backup solution!

Core web servers - Apache or NGINX with vhost re-writing to manage web front-end, wiki etc. Each web server should have a reasonably large cache (say 50Gb)

Database server - There's really only 1 free & open source database for something like this.. Postgres. MySQL & NoSQL servers WILL lose data at some point (InnoDB is slower than Postgres). At least one of the root zone DNS servers use Postgres, so that gives you some idea of what it can handle.

Authentication server - Must not be publicly accessible!! A small RADIUS server should do.

API servers - RESTful interface for the little jobs that web servers can't do very well. The last API server I wrote used an in-memory database to achieve around 3,000 requests per second (per cloud node).

Chat servers - For real-time chat. Generally using an in-memory database.

Content Delivery Network (CDN) - Optional for static content. Not cheap (especially for Asian zones) but take the load off your core servers.

For initial use, most of these can run as virtual machines inside a hypervisor on a decent spec dedicated server and then be spun out to their own dedicated servers as your usage grows.

For redundancy, you want at least 2 of everything.

Set-up costs: Around $5,000-10,000 for a budget system (Xeon hardware). $300-500 per month operating costs.

For collaborating, you could use something like Git on the file system to take care of source versioning and write a RESTful API for the front-end to connect to.

Then we would need a simple messaging server & to-do server. For the messaging server, I generally use a template + data system. This lets me keep private messages, requests etc all together. I could adapt my own system for this project quite easily.

A To-Do server would do as the name suggests Wink Link it into the messaging server so that people can be assigned to tasks etc. Would need to be written, but won't be hard to write.

Then you just need to write the systems & front-ends to glue everything together. It's not a hard job when split into small pieces like this. It is certainly achievable.
I have long awaited this initiative a major realease for Pinguino IDE , but rather than add new features , I would vote for greater stability and polish to existing features we have ... and also document what exists, everything is part of a major release .

The migration to git , is something that I think is urgent for the project as well as a way to accept third-party applications in a controlled and easy.

Now this might make Pinguino -kit is easily adopted by the official ide as well as other projects.

 The idea of ​​penguin in the cloud , that will be great and I think it's possible, since penguin is largely written in python and c , it could perhaps be complex is the compilation , but this much would enhance the project.

For my part shall begin to play around with python and nginx to see what happens ..

Although I think if you maintain a stable and updated versions for Windows and Linux installation this ide in the cloud is not a priority.

The roadmap of penguin is something that should stay and stick to it, do not keep adding functions and libraries to the parent branch that we simply had occurred or an idea ... to have a stable project, we set limits and scope serious version to version, and keep them in the best of states.