The Perl and Raku Foundation

  • Home
  • About
    • News
    • The Board
    • Advisory Board
    • Committees
    • Get Involved
  • Donate
    • Our Donors
    • Payments
    • How Do Sponsors Benefit?
  • Grants
    • Running Grants
    • Grants Committee
    • Grant Benefits
    • Grant Ideas
    • How to Write a Proposal
    • Perl Core Development Fund
    • Raku Development Fund
  • Legal
    • Articles
    • Trademarks
    • License FAQ
    • Artistic License 2.0
    • Artistic Notes 2.0
    • Artistic License 1.0
    • CPAN Licensing Guidelines
    • Contributor License Agreement
    • Conflict of Interest Policy
    • IRS Filings
  • Charters
    • Marketing Committee
    • Grants Committee
    • Community Advocacy Committee
    • Bylaws
    • The Board
  • The Perl and Raku Conference
  • Project Support
  • Download
  • Perl Merchandise
  • Home
  • About
    • News
    • The Board
    • Advisory Board
    • Committees
    • Get Involved
  • Donate
    • Our Donors
    • Payments
    • How Do Sponsors Benefit?
  • Grants
    • Running Grants
    • Grants Committee
    • Grant Benefits
    • Grant Ideas
    • How to Write a Proposal
    • Perl Core Development Fund
    • Raku Development Fund
  • Legal
    • Articles
    • Trademarks
    • License FAQ
    • Artistic License 2.0
    • Artistic Notes 2.0
    • Artistic License 1.0
    • CPAN Licensing Guidelines
    • Contributor License Agreement
    • Conflict of Interest Policy
    • IRS Filings
  • Charters
    • Marketing Committee
    • Grants Committee
    • Community Advocacy Committee
    • Bylaws
    • The Board
  • The Perl and Raku Conference
  • Project Support
  • Download
  • Perl Merchandise

Grant Proposal: Perl-Based CloudForFree.org Platform

By Coke
February 13, 2018

The Grants Committee has received the following grant proposal for the January/February round. Before the Committee members vote, we would like to solicit feedback from the Perl community on the proposal.
Review the proposal below and please comment here by February 20th, 2018. The Committee members will start the voting process following that and the conclusion will be announced the last week of February.
Perl-Based CloudForFree.org Platform
  • Name:  John Napiorkowski
  • Amount Requested: USD $1,500
Synopsis
Complete development of the partially-operational http://www.cloudforfree.org platform.

Benefits to the Perl Community
Few people understand what The Cloud is, and fewer still have access.
The Perl community will benefit by having wide-spread free access to a Perl-based Cloud computing platform, which will showcase Perl as both modern and competitive against other Cloud technologies.

Deliverables
The CloudForFree.org platform itself will be updated with new features which will automatically become available to all users.

Project Details
The CloudForFree.org platform is a Perl-based Cloud computing software system created from scratch.
Numerous technologies are utilized in the current version of CloudForFree.org, including but not limited to:
  • Perl
  • Catalyst MVC
  • ShinyCMS
  • RPerl
  • GCC C++
  • Javascript
  • CGI::Ajax
  • Ace Editor
I have reviewed the CloudForFree.org source code and started initial planning discussions with the founder, Will Braswell.

Inch-stones
Phase 1, LAMP Installer Script Section 51 
  • Review & Comprehend LAMP_installer.sh Script 
  • Upgrade LAMP_installer.sh Section 51 "PERL CLOUDFORFREE" To Function Properly 
  • Demonstrate Section 51 Installing CloudForFree Software In Ubuntu 16.04 
  • Upgrade CFF Server To RPerl v3.2 
Phase 2, IDE Code Editor 
  • Create Linux User Account For Existing & New Users 
  • New Copies Of Learning RPerl Exercises 
  • Save All Files In Linux User Home Directories 
  • Button For "Save File" Function 
  • Save & Quit Functions For Ace Editor vi & emacs Keyboard Commands
    • :w :wq ZZ etc. 
    • Ctrl-x Ctrl-s Ctrl-x s Ctrl-x Ctrl-w etc. 
  • Multiple Open Files Via Tab Widget 
Phase 3, Open GitHub Issues 
  • Review & Comprehend All Open GitHub Issues github.com/wbraswell/cloudforfree.org... 
  • Collaborate With Client Personnel To Plan Solutions For Each Open Issue 
  • Implement Solutions For Each Open Issue 
Phase 4, Terminal Emulation 
  • Full xterm Terminal Emulation For Command-Line Job Execution 
  • Includes All VT100 & VT102 & VT220 Features 
  • Resize Number Of Rows & Columns By Window Resize 
  • Resize Font Size By User Configuration 
  • Backspace, Tab, Other Special Command Characters 
  • Arbitrary Placement Of Characters At Any Row & Column 
  • Color Characters & Background 
  • Curses & Other Menu Support 
  • Full Window (F10) & Full Screen (F11) 
Phase 5, Graphical Output & Mouse Input 
  • Full X-Windows Graphics Output Using Xpra HTML5 Client 
  • Generate Output Using SDL From Perl & C 
  • Mouse Left-Click, Right-Click, Drag, Scroll 
  • Resize Number Of Available X & Y Pixels By Window Resize 
  • Full Window (F10) & Full Screen (F11) 
Phase 6, GitHub Repositories Integration 
  • Import & Setup User's GitHub Keys Via Linux User Account (From Phase 2) 
  • List Of All GitHub Repos With User As Owner Or Collaborator 
  • Admin Mode, Display All Repos 
  • Allow User To Enter Any Other Readable GitHub Repo URL ex. github.com/wbraswell/physicsperl 
  • Buttons For Basic User Git Commands
    • clone 
    • add 
    • commit 
    • push 
    • pull 
    • checkout 
    • status 
  • Do Not Duplicate Any GitHub Web Functionality 
Phase 7, Job Queue 
  • Job Scheduler & Monitor Using OAR (1st Choice), Or HTCondor Or Slurm (2nd Choices) 
  • Manage User's Jobs Via Linux User Account (From Phase 2) 
  • List Of All Current Jobs With User As Owner 
  • Admin Mode, Display All Jobs 
  • FileManager For Selecting *.pl RPerl Programs To Run 
  • Buttons For Basic Job Control Commands
    • start
    • restart 
    • stop (SIGTERM) 
    • force stop (SIGKILL) 
    • pause (SIGSTOP) 
    • continue (SIGCONT) 
    • show/hide CLI (From Phase 4) 
    • show/hide GUI (From Phase 5) 
  • Display Resources: FLOPS, Cores, Memory, Storage; Total, Unused, Available To User

Project Schedule
I can start in about a week or so.
This is a very complex job, I expect it could take 3 to 5 months to complete.

Completeness Criteria
This grant is done when a new version of CloudForFree.org is made available with all the new features listed herein.

Bio
I am the maintainer of Catalyst MVC and I have 77 distributions on CPAN:
https://metacpan.org/author/JJNAPIORK
I am a member of the Austin Perl Mongers with Will Braswell, the creator of both RPerl and CloudForFree.org.
We have worked together for several years on various Perl projects, both open source and commercial.

Grants: Categories

Comments
Anonymous | February 21, 2018 12:42pm

RPerl would never compile for me. Is it possible to remove RPerl from dependencies?

Will Braswell | August 21, 2018 

One of the primary purposes of the CloudForFree.org platform is to provide an easy way for people to use RPerl without having to install it on their own local machine.
So no, there is no logical way to remove RPerl from the dependencies, that would make CloudForFree.org into something which it is not.
If you have problems compiling RPerl, you should ask for my help or open a GitHub issue.
https://github.com/wbraswell/rperl/issues

Yet Another Society
(DBA) The Perl And Raku Foundation

440 N Barranca Ave
#6055 Covina, CA
91723 UNITED STATES

email: [email protected]

Donations keep the Perl & Raku Foundation alive and we appreciate all of our donors, past, present, and future.

​You can donate online or send a check with your contribution.
​Click Donate to get started.
Donate