Difference between revisions of "Center"

From BlackBox Framework Wiki
Jump to navigation Jump to search
 
(19 intermediate revisions by 6 users not shown)
Line 1: Line 1:
The "BlackBox Center" is the non-profit voluntary association dedicated to the mission, the vision and the values of BlackBox Center. Today, it is a ''de facto'' [http://forum.blackboxframework.org board] of self-organized BlackBox developers, users and potential project managers. In the future, it could be necessary to transform the Center to a single entity, in order to provide better legacy basis for framework support, accumulation of donations and limitation of potential legal exposure of single project members. The members spearhead projects that, through a collaborative and meritocratic development process deliver enterprise-grade freely available software products that are attractive to large communities of users. We operate under [http://opensource.org/licenses/BSD-2-Clause BSD 2-clause license] to deploy our product to make it accessible for commercial and individual usage.
The "BlackBox Center" is a non-profit voluntary organization dedicated to maintaining the vision and values of the BlackBox/Component Pascal software  developed by Oberon microsystems Inc. (Zurich Switzerland). Today the Center is the ''de facto'' standard for BlackBox developers, users, and project managers. The members spearhead projects that, through a collaborative and meritocratic development process, deliver enterprise-quality software attractive to large user communities. We operate under [http://opensource.org/licenses/BSD-2-Clause BSD 2-clause license] to deploy products for business and individuals.




==Mission==
==Mission==


The mission of the BlackBox Center is to provide software for the public good, based on the spirit, philosophy and technology put forth by Nicklaus Wirth and Jörg Gutknecht in the Project Oberon (the "Oberon Spirit"). We do this by keeping alive, adapting and developing Component Pascal, BlackBox Framework and BlackBox Component Builder starting with the [http://www.oberon.ch/blackbox.html last official release (v 1.6)] provided by Oberon microsystems AG (the "software") and growing and maintaining an international user community.
To provide software for the public good, based on the [[Oberon Spirit]]. We do this by keeping alive, adapting, and developing [[Component Pascal]] and [[BlackBox Component Builder]] starting with the [http://www.oberon.ch/blackbox.html last official release (v 1.6)] provided by [[Oberon microsystems AG]] (the "software") and growing and maintaining an international user community.


''The Blackbox Center provides and ensures guidelines and policies to keep the community centered around the mission described above. As such, we are not the sole developers of the software, nor the only providers of the software, but we provide a clearing house to centralize efforts.''
''The Blackbox Center provides and ensures guidelines and policies to keep the community centered around the mission described above. We are not the sole developers of the software, nor the only providers of the software, but we provide a clearing house to centralize efforts.''


==Values==
==Values==
Line 12: Line 12:
* cooperate for the common good;
* cooperate for the common good;
* make things as simple as possible but not simpler;
* make things as simple as possible but not simpler;
* use the idea of component building, that is to let everybody add what he is good at to form something more than the sum of the parts;
* use the idea of component building and let everybody add what they are good at to form something more than the sum of the parts;
* work democratically and meritocratically;
* work democratically and meritocratically;
* be good citizens.
* be good citizens.


==How are the BlackBox Center and its projects governed?==
==How is the BlackBox Center and its projects governed?==


Currently, the 10 members decide issues by vote, with 80% constituting a quorum. Every vote need the options "none of the above". Such a vote is counted for the quorum, but it does not take a side. For an option to be accepted, it needs 51% of the quorum.
Members decide issues by voting. Every voting has the option "Abstain".


Votes are called by the Chairman only (who is elected by vote on a yearly basis), whose responsibility it is:
Votes on issues and proposals are normally called by the [[Chair]]man (or Chairperson).


* to start a voting thread after sufficient prior discussion;
The vote will be called, at the Chairman's discretion, when a discussion appears to have reached a stable point, or when two members call for a vote. He shall also notify members of the upcoming vote (by using the provided automatic notification tools).
* to make sure that each member is informed about pending votes (at least about important questions);
* to make sure that each member voted (Robert: "But only 80% need to vote");
* to close the voting thread.


New members can be added by vote, if necessary.
Votes will normally be scheduled to run for five days, and members will be given the opportunity to change their votes during this period. Under appropriate circumstances the Chairman may choose a shorter or longer period.


Contributions to the software come from the wider community, and the Center members decide which additions are added, and when, in compliance with our mission, our vision and our values.
If significant new or changed information comes to light during the voting period the Chairman may extend or cancel the vote.
 
At the conclusion of the voting period, and provided the vote is quorate, the vote is decided by simple majority. In the event of a tie the Chairman has a casting vote.
 
The quorum is given by the formula: "(Number of active Center members) DIV 2 + 1". All votes, including "Abstain" votes, count towards the quorum.
 
The vote may be decided and terminated early if the result cannot be changed however those who have not yet voted decide to vote (on the assumption that existing votes do not change). This is called the "Short-circuit" rule.
 
 
The Chairman is elected by vote on a half yearly basis
 
New members can be added by vote.
 
Members can apply for leaving the Center and stay in touch in the special board group 'exCenter' with posting privileges and without voting rights.
 
Contributions to the software come from the wider community, and the Center members decide what to add, and when, in compliance with our mission, our vision and our values.


==Visions of development for the software==
==Visions of development for the software==


The following sections illustrate possible projects and priorities for the future for BlackBox. These visions will mature and evolve in the light of experience and input from the wider user community.
The following sections illustrate possible projects and priorities for the future of BlackBox. These visions will mature and evolve in the light of experience and input from the wider user community.


===Keeping alive===
===Keeping alive===
Line 44: Line 56:


=== Adapting===
=== Adapting===
BlackBox is now 10 years old, and the world has changed. We need to adapt.
BlackBox is now 20 years old, and the world has changed. We need to adapt.


* Providing a 64-bit version of the software
* Providing a 64-bit version of the software
Line 50: Line 62:
* Internationalization of user documentation and user interface
* Internationalization of user documentation and user interface
* Implementation of additional GUI elements provided by the OS as part of the standard distribution
* Implementation of additional GUI elements provided by the OS as part of the standard distribution


===Developing===
===Developing===
Line 63: Line 74:
==Looking beyond our noses==
==Looking beyond our noses==


* When Wirth designed Oberon System, he discouraged multi-tasking on single processor systems, because it only adds complexity (i.e. it is against the values). Over 20 years later, most of our systems are multi-processor systems. Is the current handling of “Actions” still the best practice, or should be implement – in the spirit of Oberon – multi-threading, and if so, how? For instance, we are faced with the problem that the Runtime System freezes when you keep a mouse key pressed. Is this really necessary, and how can we solve this in the Oberon Spirit?
* When Niklaus Wirth designed the Oberon System, he discouraged multi-tasking on single processor systems, because it only adds complexity (i.e. it is against the values). Over 20 years later, most of our systems are multi-processor systems. Is the current handling of “Actions” still the best practice, or should be implement – in the spirit of Oberon – multi-threading, and if so, how? For instance, we are faced with the problem that the run time system freezes when you keep a mouse key pressed. Is this really necessary, and how can we solve this in the Oberon Spirit?
 
* Are there new paradigms of user interaction in software development that we could (and probably should) integrate, like for instance MS IntelliSense? Is it inherently against the Oberon Spirit, or are there ways to provide similar functionality in keeping the Spirit?


* Are there new paradigms of user interaction in software development that we could (and probably should) integrate, such as MS IntelliSense? Is it inherently against the Oberon Spirit, or are there ways to provide similar functionality in keeping the Spirit?


==Center tasks==
==Center tasks==


* to make first version version with all known bugfixes
* to make first version with all known bug fixes
* to maintain stable versions of [[BlackBox Component Builder]]
* to maintain stable versions of [[BlackBox Component Builder]]
* provide it's distribution and promotion.
* provide it's distribution and promotion.
Line 78: Line 88:
* support the international BlackBox open-source community;
* support the international BlackBox open-source community;
* adapt the BlackBox Component Builder to modern challenges.
* adapt the BlackBox Component Builder to modern challenges.
== Links ==
* [https://blackboxframework.org/ Main website]
* [https://forum.blackboxframework.org Center Forum]
* [https://github.com/BlackBoxCenter Public repository and issues tracker]
* [https://redmine.blackboxframework.org/projects/blackbox Center project tracker]

Latest revision as of 09:59, 11 August 2017

The "BlackBox Center" is a non-profit voluntary organization dedicated to maintaining the vision and values of the BlackBox/Component Pascal software developed by Oberon microsystems Inc. (Zurich Switzerland). Today the Center is the de facto standard for BlackBox developers, users, and project managers. The members spearhead projects that, through a collaborative and meritocratic development process, deliver enterprise-quality software attractive to large user communities. We operate under BSD 2-clause license to deploy products for business and individuals.


Mission

To provide software for the public good, based on the Oberon Spirit. We do this by keeping alive, adapting, and developing Component Pascal and BlackBox Component Builder starting with the last official release (v 1.6) provided by Oberon microsystems AG (the "software") and growing and maintaining an international user community.

The Blackbox Center provides and ensures guidelines and policies to keep the community centered around the mission described above. We are not the sole developers of the software, nor the only providers of the software, but we provide a clearing house to centralize efforts.

Values

As a community we strive to:

  • cooperate for the common good;
  • make things as simple as possible but not simpler;
  • use the idea of component building and let everybody add what they are good at to form something more than the sum of the parts;
  • work democratically and meritocratically;
  • be good citizens.

How is the BlackBox Center and its projects governed?

Members decide issues by voting. Every voting has the option "Abstain".

Votes on issues and proposals are normally called by the Chairman (or Chairperson).

The vote will be called, at the Chairman's discretion, when a discussion appears to have reached a stable point, or when two members call for a vote. He shall also notify members of the upcoming vote (by using the provided automatic notification tools).

Votes will normally be scheduled to run for five days, and members will be given the opportunity to change their votes during this period. Under appropriate circumstances the Chairman may choose a shorter or longer period.

If significant new or changed information comes to light during the voting period the Chairman may extend or cancel the vote.

At the conclusion of the voting period, and provided the vote is quorate, the vote is decided by simple majority. In the event of a tie the Chairman has a casting vote.

The quorum is given by the formula: "(Number of active Center members) DIV 2 + 1". All votes, including "Abstain" votes, count towards the quorum.

The vote may be decided and terminated early if the result cannot be changed however those who have not yet voted decide to vote (on the assumption that existing votes do not change). This is called the "Short-circuit" rule.


The Chairman is elected by vote on a half yearly basis

New members can be added by vote.

Members can apply for leaving the Center and stay in touch in the special board group 'exCenter' with posting privileges and without voting rights.

Contributions to the software come from the wider community, and the Center members decide what to add, and when, in compliance with our mission, our vision and our values.

Visions of development for the software

The following sections illustrate possible projects and priorities for the future of BlackBox. These visions will mature and evolve in the light of experience and input from the wider user community.

Keeping alive

  • All parts of the software are documented both in source and in an overview document (no "this module is internal" documentations!)
  • All OS function calls are checked regularly and if necessary changed so that the software does not use deprecated functions.
  • Known bugs are fixed
  • There are regular "working releases" and once a year or so there are "major releases", to make sure that the user can rely on the stability of the software.


Adapting

BlackBox is now 20 years old, and the world has changed. We need to adapt.

  • Providing a 64-bit version of the software
  • Adapting to the changed native look and feel of the OS
  • Internationalization of user documentation and user interface
  • Implementation of additional GUI elements provided by the OS as part of the standard distribution

Developing

Source-Code compatible versions with local look-and-feel for

  • Mac OS
  • Linux
  • JVM
  • Dalvik VM
  • .NET
  • Raspbian…

Looking beyond our noses

  • When Niklaus Wirth designed the Oberon System, he discouraged multi-tasking on single processor systems, because it only adds complexity (i.e. it is against the values). Over 20 years later, most of our systems are multi-processor systems. Is the current handling of “Actions” still the best practice, or should be implement – in the spirit of Oberon – multi-threading, and if so, how? For instance, we are faced with the problem that the run time system freezes when you keep a mouse key pressed. Is this really necessary, and how can we solve this in the Oberon Spirit?
  • Are there new paradigms of user interaction in software development that we could (and probably should) integrate, such as MS IntelliSense? Is it inherently against the Oberon Spirit, or are there ways to provide similar functionality in keeping the Spirit?

Center tasks

  • to make first version with all known bug fixes
  • to maintain stable versions of BlackBox Component Builder
  • provide it's distribution and promotion.

To maintain means:

  • regularly (period?) publish new versions of the BlackBox Component Builder;
  • support the international BlackBox open-source community;
  • adapt the BlackBox Component Builder to modern challenges.

Links