Skip to content

[NOTES] Red Project Approach

Gregg Irwin edited this page Jul 25, 2018 · 1 revision

Project Approach

Developing any programming language is a large and complex project. Programming languages take years, not months, to complete. Successful languages evolve during their development process, they are not static. Developing languages, even open source ones, requires full-time dedicated developers.

Whilst Red is an exceptional language, when it comes to its development it is no exception.

Project Staffing and Funding

Nenad undertook the initial development of Red himself. He was basically self-funded during that time though he did receive a few donations during that period which really helped.

Once Red was past the concept stage and started to materialise, Nenad was able to secure venture capital funding and formed Fullstack Technologies (Fullstack). Fullstack are now funding the core Red development team. As with any venture capital funded business, in order to continue to receive funds, Fullstack needs to demonstrate progress towards its commercial goals.

Project Roadmap and Planning

Fullstack's commercial goals are understandably private but are clearly highly dependent on the success of the Red language. Whilst in the longer term, the commercial goals for Fullstack and the technical goals for Red are completely aligned, in the short term the commercial goals may need to take preference.

A roadmap for Red, free of any commercial constraints, would undoubtedly have been different from the roadmap being followed. The Red language would have been much more complete before work started on the GUI dialects.

Roadmaps cannot be cast in stone, they need to change to reflect changes in their environment. Red is in a fast-changing environment, its roadmap needs to be flexible.

Red's roadmap has been developed by identifying the major components of the Red programming language and ordering their development in a practical manner. The team then uses a "rolling-wave" approach to plan the components as their development becomes imminent. During detailed planning, the team takes into account the feedback and requests from the community, language evolution and, of course, the commercial environment.

View the latest Red plan.

Issues and Wishes

The Red team's response to issues and wishes is governed by the severity of issues and the alignment of wishes with the commercial goals. Many issues and wishes are dealt with immediately, some are handled during Red's pre-release process, and others are delayed for a more appropriate time.

Clone this wiki locally