Difference between revisions of "How to become a BlueSpice hacker"

[unchecked revision][quality revision]
m (1 revision: Migration)
 

This article is written to help novice developers learn the skills needed to contribute to BlueSpice development.

Why should you contribute?
When you are actively involved in a project you get the opportunity to shape its future. Changes are caused by actions. You will certainly receive a big "thank you" and you will be publicly credited related to your work. Even more, you are helping a lot of users who will thank you quietly or loudly.

Join in[edit | edit source]

Like in every other project there are lots of possibilities to participate. Here a few examples of what you could do in the BlueSpice project.

Improving the code quality[edit | edit source]

  • Doc blocs: Write with us documenting blocs in the source code. This helps us to complete the code and check for discrepancies. More about the MediaWiki DocBlocks at wikimedia.
  • Coding conventions: Help to enforce coding conventions. We use the Coding Conventions of MediaWiki.
  • Security: has high priority. Please help to improve it. Therefore you should have a look at Security for developers.

Bugfixes[edit | edit source]

Look for minor and major bugs. And if you already programmed the solution, well, all the better!
Here you can find some help on debugging in MediaWiki

Code Review[edit | edit source]

Help us to review code contributions. Therefore you have to be familiar with gerrit. Find more information at "setting up a development environment" und "committing changes".

Small addition[edit | edit source]

A lot of the existing extensions want to be developed and provide opportunities to extend the functionality. What we have in mind:
Dashboard Widgets, Statics, Sidebar, Widgets, etc.

Own extensions[edit | edit source]

Of course you can develop your own BlueSpice extensions. Please follow the MediaWiki workflow. You will find a good tutorial on MediaWiki pages like this one MediaWiki developing extensions MediaWiki. These notes should also be consulted for developing BlueSpice. Please create a separate repository in gerrit that is named like this:

mediawiki/skins/BlueSpiceYourExtension

Translations[edit | edit source]

Translations are needed all the time. Please contact the community of translatewiki.net.

This is how it works[edit | edit source]

Commit changes[edit | edit source]

There are two possibilities to supply patches.

1. Mail to Hallo Welt!

Send an e-mail with your patch in (git format-patch) to support@hallowelt.biz. We will commit the change for you in git where it has to go through a standardized process.

2. Actively participating via Git

We follow the procedure that is also common in the MediaWiki developer community:

  • Get a developer account for MediaWiki
  • Install git-review
  • check out the BlueSpice code
  • Commit your changes
  • Changes are verified in gerrit
  • When everything is ok, your changes will be accepted

On MediaWiki.org you will find a short and a extended tutorial.

The BlueSpice code can be found in these repositories:

mediawiki/extensions/BlueSpiceFoundation.git
mediawiki/extensions/BlueSpiceExtensions.git
mediawiki/skins/BlueSpiceSkin.git

and this is how you check out:

                git clone ssh://@gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceFoundation.git 

            

In the repositories of BlueSpice it is necessary to have the "+2" or "Merge" permission before you can commit code to the product by yourself. Please ask Markus Glaser if you feel you need this kind of access (glaser@hallowelt.biz).

If you want to write own extensions for BlueSpice please ask for an own repository here. Please follow the naming convention.


mediawiki/extensions/BlueSpiceMyWidget.git

See also[edit | edit source]


            This article is written to help novice developers learn the skills needed to contribute to BlueSpice development.
        

        '''Why should you contribute?'''<br />
        
        When you are actively involved in a project you get the opportunity to shape its future. Changes are caused by actions. You will certainly receive a big "thank you" and you will be publicly credited related to your work. Even more, you are helping a lot of users who will thank you quietly or loudly. 
        
            ==Join in==
        
        Like in every other project there are lots of possibilities to participate. Here a few examples of what you could do in the BlueSpice project. 
        
            ===Improving the code quality===
        
        * Doc blocs: Write with us documenting blocs in the source code. This helps us to complete the code and check for discrepancies. More about the [http://meta.wikimedia.org/wiki/PhpDoc MediaWiki DocBlocks] at wikimedia. 
            * Coding conventions: Help to enforce coding conventions. We use the [http://www.mediawiki.org/wiki/Manual:Coding_conventions Coding Conventions of MediaWiki].
        
        * Security: has high priority. Please help to improve it. Therefore you should have a look at  [http://www.mediawiki.org/wiki/Security_for_developers Security for developers].
        

        ===Bugfixes===
        
        Look for minor and major bugs. And if you already programmed the solution, well, all the better!<br />
        
        Here you can find some help on [http://www.mediawiki.org/wiki/Manual:How_to_debug debugging in MediaWiki]
        
            ===Code Review===
        
        Help us to review code contributions. Therefore you have to be familiar with gerrit. Find more information at  "setting up a development environment" und  "committing changes".
        
            * [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceExtensions,n,z BlueSpice Extensions]
        
        * [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceFoundation,n,z BlueSpice Fundation]
        
        * [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/skins/BlueSpiceSkins,n,z BlueSpice Skin]
        

        ===Small addition===
        
        A lot of the existing extensions want to be developed and provide opportunities to extend the functionality. What we have in mind:<br />
        
        Dashboard Widgets, Statics, Sidebar, Widgets, etc.
        

        ===Own extensions===
        
        Of course you can develop your own BlueSpice extensions. Please follow the MediaWiki workflow. You will find a good tutorial on MediaWiki pages like this one [http://www.mediawiki.org/wiki/Manual:Developing_extensions MediaWiki developing extensions MediaWiki]. These notes should also be consulted for developing BlueSpice.
        
        Please create a separate repository in gerrit that is named like this:
        
            <pre>mediawiki/skins/BlueSpiceYourExtension</pre>
        

        ===Translations===
        
        Translations are needed all the time. Please contact the community of [https://translatewiki.net translatewiki.net].
        

        ==This is how it works==
        
        ===Commit changes===
        
        There are two possibilities to supply patches.
        

        '''1. Mail to Hallo Welt'''!
        

        Send an e-mail with your patch in ([https://www.kernel.org/pub/software/scm/git/docs/git-format-patch.html git format-patch]) to support@hallowelt.biz. We will commit the change for you in git where it has to go through a standardized process.
        

        '''2. Actively participating via Git'''
        

        We follow the procedure that is also common in the MediaWiki developer community:
        

        * Get a developer account for MediaWiki
        
        * Install git-review
        
        * check out the BlueSpice code
        
        * Commit your changes
        
        * Changes are verified in gerrit
        
        * When everything is ok, your changes will be accepted
        

        On MediaWiki.org you will find a [http://www.mediawiki.org/wiki/Gerrit/Getting_started short] and a [http://www.mediawiki.org/wiki/Gerrit/Tutorial extended] tutorial.
        

        The BlueSpice code can be found in these repositories:
        

         mediawiki/extensions/BlueSpiceFoundation.git
        
         mediawiki/extensions/BlueSpiceExtensions.git
        
         mediawiki/skins/BlueSpiceSkin.git
        

        and this is how you check out:
        

         git clone ssh://@gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceFoundation.git 
        

        In the repositories of BlueSpice it is necessary to have the "+2" or "Merge" permission before you can commit code to the product by yourself. Please ask Markus Glaser if you feel you need this kind of access (glaser@hallowelt.biz).
        

        If you want to write own extensions for BlueSpice please ask for an own repository [https://www.mediawiki.org/wiki/Gerrit/New_repositories#Step_3:_Request_space_for_your_extension here]. Please follow the naming convention.
        
 mediawiki/extensions/BlueSpiceMyWidget.git
        

        == See also ==
        
        * https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker
            
            [[en:{{FULLPAGENAME}}]][[de:Wie Werde Ich ein BlueSpice Hacker]]
Line 1: Line 1:
 
 
This article is written to help novice developers learn the skills needed to contribute to BlueSpice development.
 
This article is written to help novice developers learn the skills needed to contribute to BlueSpice development.
  
 
'''Why should you contribute?'''<br />
 
'''Why should you contribute?'''<br />
When you are actively involved in a project you get the opportunity to shape its future. Changes are caused by actions. You will certainly receive a big "thank you" and you will be publicly credited related to your work. Even more, you are helping a lot of users who will thank you quietly or loudly.  
+
When you are actively involved in a project you get the opportunity to shape its future. Changes are caused by actions. You will certainly receive a big "thank you" and you will be publicly credited related to your work. Even more, you are helping a lot of users who will thank you quietly or loudly.
  
 
==Join in==
 
==Join in==
Like in every other project there are lots of possibilities to participate. Here a few examples of what you could do in the BlueSpice project.  
+
Like in every other project there are lots of possibilities to participate. Here a few examples of what you could do in the BlueSpice project.
  
 
===Improving the code quality===
 
===Improving the code quality===
* Doc blocs: Write with us documenting blocs in the source code. This helps us to complete the code and check for discrepancies. More about the [http://meta.wikimedia.org/wiki/PhpDoc MediaWiki DocBlocks] at wikimedia.  
+
* Doc blocs: Write with us documenting blocs in the source code. This helps us to complete the code and check for discrepancies. More about the [http://meta.wikimedia.org/wiki/PhpDoc MediaWiki DocBlocks] at wikimedia.
 
* Coding conventions: Help to enforce coding conventions. We use the [http://www.mediawiki.org/wiki/Manual:Coding_conventions Coding Conventions of MediaWiki].
 
* Coding conventions: Help to enforce coding conventions. We use the [http://www.mediawiki.org/wiki/Manual:Coding_conventions Coding Conventions of MediaWiki].
* Security: has high priority. Please help to improve it. Therefore you should have a look at [http://www.mediawiki.org/wiki/Security_for_developers Security for developers].
+
* Security: has high priority. Please help to improve it. Therefore you should have a look at [http://www.mediawiki.org/wiki/Security_for_developers Security for developers].
  
 
===Bugfixes===
 
===Bugfixes===
 
Look for minor and major bugs. And if you already programmed the solution, well, all the better!<br />
 
Look for minor and major bugs. And if you already programmed the solution, well, all the better!<br />
 
Here you can find some help on [http://www.mediawiki.org/wiki/Manual:How_to_debug debugging in MediaWiki]
 
Here you can find some help on [http://www.mediawiki.org/wiki/Manual:How_to_debug debugging in MediaWiki]
 +
 
===Code Review===
 
===Code Review===
Help us to review code contributions. Therefore you have to be familiar with gerrit. Find more information at "setting up a development environment" und "committing changes".
+
Help us to review code contributions. Therefore you have to be familiar with gerrit. Find more information at "setting up a development environment" und "committing changes".
 +
 
 
* [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceExtensions,n,z BlueSpice Extensions]
 
* [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceExtensions,n,z BlueSpice Extensions]
 
* [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceFoundation,n,z BlueSpice Fundation]
 
* [http://gerrit.wikimedia.org/r/#/q/status:open+project:mediawiki/extensions/BlueSpiceFoundation,n,z BlueSpice Fundation]
Line 29: Line 30:
 
Of course you can develop your own BlueSpice extensions. Please follow the MediaWiki workflow. You will find a good tutorial on MediaWiki pages like this one [http://www.mediawiki.org/wiki/Manual:Developing_extensions MediaWiki developing extensions MediaWiki]. These notes should also be consulted for developing BlueSpice.
 
Of course you can develop your own BlueSpice extensions. Please follow the MediaWiki workflow. You will find a good tutorial on MediaWiki pages like this one [http://www.mediawiki.org/wiki/Manual:Developing_extensions MediaWiki developing extensions MediaWiki]. These notes should also be consulted for developing BlueSpice.
 
Please create a separate repository in gerrit that is named like this:
 
Please create a separate repository in gerrit that is named like this:
 +
 
<pre>mediawiki/skins/BlueSpiceYourExtension</pre>
 
<pre>mediawiki/skins/BlueSpiceYourExtension</pre>
  
Line 68: Line 70:
  
 
If you want to write own extensions for BlueSpice please ask for an own repository [https://www.mediawiki.org/wiki/Gerrit/New_repositories#Step_3:_Request_space_for_your_extension here]. Please follow the naming convention.
 
If you want to write own extensions for BlueSpice please ask for an own repository [https://www.mediawiki.org/wiki/Gerrit/New_repositories#Step_3:_Request_space_for_your_extension here]. Please follow the naming convention.
 
  
 
  mediawiki/extensions/BlueSpiceMyWidget.git
 
  mediawiki/extensions/BlueSpiceMyWidget.git
  
== See also ==
+
==See also==
 
* https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker
 
* https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker
 +
[[en:{{FULLPAGENAME}}]][[de:Wie Werde Ich ein BlueSpice Hacker]]

Attachments

Discussions