English, Nederlands
Doneer met PayPal

Bijdragen

Nocterra is vrije software. Bijdragen zijn welkom wanneer ze het algemene Nocterra-project helpen en passen bij de technische richting van het CMS: snelle pagina's, open standaarden, privacy, toegankelijkheid, verplaatsbaarheid en onderhoudbaarheid op lange termijn.

Bijdragen betekent niet alleen code insturen. Een nuttige bijdrage kan een bugrapport zijn, een geteste reproductie, documentatie, voorbeelden, testen op echte websites, financiering voor ontwikkeling, een nieuwe extensie, een add-on of deelname aan het ontwikkelteam.

Nocterra wordt onderhouden via één upstreamontwikkellijn. Werk dat in het publieke project thuishoort, wordt via die lijn beoordeeld, getest en uitgebracht, of het nu begon als vrijwilligerswerk, gefinancierd werk, werk in opdracht of ontwikkeling door het vaste projectteam.

Wat bijdragen betekent

Een bijdrage hoort Nocterra te versterken als algemeen vrijesoftware-CMS. Een bijdrage mag een probleem oplossen dat op één website is gevonden, maar het resultaat moet bruikbaar, begrijpelijk en onderhoudbaar zijn als onderdeel van het bredere project.

Dat betekent niet dat elke bijdrage in de CMS-core thuishoort. Sommige werkzaamheden passen beter als extensie, add-on, documentatie, voorbeeld, testcase of aangevraagde functie voor een latere release. Het belangrijkste is dat het werk kan worden beoordeeld en onderhouden zonder de vrijheid, verplaatsbaarheid of helderheid van het project te verzwakken.

Manieren om bij te dragen

Problemen melden

Goede bugrapporten zijn zeer nuttig. Beschrijf wat er gebeurde, wat je verwachtte en hoe het probleem kan worden gereproduceerd. Vermeld waar mogelijk de Nocterra-versie, PHP-versie, relevante configuratie, servercontext, pagina- of artikelbron, logmeldingen en een kleine reproductie.

Meldingen over meertalige sites, blog-URL's, metadata, gegenereerde links, navigatie, cache-invalidation, redirects, formulieren, extensies en add-ons zijn vooral behulpzaam wanneer ze genoeg informatie bevatten om het gedrag te reproduceren.

Functies aanvragen

Nocterra-ontwikkeling is deels vraaggestuurd. Een bruikbaar functieverzoek legt het probleem of de gebruikssituatie uit, waarom bestaande functionaliteit dit niet dekt, en welk gedrag het probleem zou oplossen.

Bij grotere verzoeken helpt het ook om te beschrijven of de functie in de CMS-core, een extensie of een aparte add-on thuishoort, en of je kunt helpen met testen, specificeren of financieren.

Pre-release builds testen

Testen op echte websites is belangrijk. Sommige problemen worden pas zichtbaar door echte sitestructuren, echte inhoud, oudere PHP-versies, meertalige domeinen, redirects, gegenereerde metadata, cachegedrag of extensiegebruik.

Wanneer je een pre-release build test, meld dan zowel problemen als succesvolle resultaten. Weten dat een wijziging op een echte website werkt, kan net zo nuttig zijn als het vinden van een bug.

Documentatie verbeteren

Bijdragen aan documentatie kunnen bestaan uit correcties, duidelijkere uitleg, installatienotities, configuratievoorbeelden, API-notities, migratienotities, add-ondocumentatie en praktische voorbeelden.

Nocterra-documentatie moet mensen helpen het systeem te begrijpen, niet alleen commando's of instellingen te kopiëren. Heldere uitleg waarom iets op een bepaalde manier werkt, is waardevol.

Ontwikkeling financieren of sponsoren

Donaties helpen bij het onderhouden van Nocterra en gerelateerd vrijesoftwarewerk. Voor een algemene bijdrage kun je de donatieknop op deze website gebruiken.

Wanneer je een specifieke functie, add-on, oplossing of documentatie-inspanning wilt financieren, neem dan eerst per e-mail contact met ons op. Dan kunnen we de scope, planning en plaats van het werk binnen het upstreamproject bespreken.

Code, extensies of add-ons bijdragen

Code bijdragen kan een kleine patch betekenen, een grotere wijziging, een nieuwe extensie, een aparte add-on of doorlopende deelname aan de ontwikkeling. Grotere wijzigingen moeten vóór implementatie worden besproken, zodat het werk past bij de projectstructuur, codestijl, compatibiliteitsdoelen en releaseprocedure.

Extensies worden met Nocterra meegeleverd, maar kunnen wel of niet worden geïnstalleerd. Add-ons kunnen grotere of meer gespecialiseerde functionaliteit bieden. Beide horen dezelfde basisprincipes te volgen als het kernproject: vrije software, inspecteerbare code, onderhoudbaarheid en respect voor de gebruiker.

Deelnemen aan het ontwikkelteam

Code bijdragen kan ook betekenen dat je deelneemt aan het ontwikkelteam. Dat is iets anders dan een losse patch insturen. Het betekent deelnemen aan het doorlopende werk: ontwerpkeuzes bespreken, code onderhouden, wijzigingen testen, gedrag op echte websites beoordelen en helpen bij het voorbereiden van publieke releases.

Wanneer je geïnteresseerd bent in dat soort bijdrage, neem dan per e-mail contact met ons op en beschrijf je achtergrond, het soort werk dat je wilt doen en de onderdelen van Nocterra waarin je geïnteresseerd bent.

Beveiligingsproblemen melden

Meld vermoedelijke beveiligingsproblemen per e-mail. Geef genoeg informatie om het probleem te begrijpen en te reproduceren, maar publiceer geen exploitdetails voordat er tijd is geweest om het probleem te onderzoeken en een oplossing voor te bereiden.

Hoe je begint

Wanneer je wilt bijdragen, stuur ons dan eerst een e-mail: info@nocterra.org. Beschrijf wat je wilt melden, verbeteren, testen, financieren of bouwen.

Vermeld bij technisch werk de Nocterra-versie, relevante configuratie, PHP-versie, servercontext en waar mogelijk een kleine reproductie. Neem bij grotere wijzigingen, nieuwe extensies, add-ons of deelname aan het ontwikkelteam contact met ons op voordat je veel implementatiewerk doet.

Dat helpt ons te bepalen waar de bijdrage thuishoort, hoe deze beoordeeld kan worden, en hoe het werk getest en uitgebracht kan worden via de upstreamontwikkellijn.

Wat bij Nocterra past

Nocterra wordt uitgebracht onder de GNU Affero General Public License versie 3. Voor dit project is een vrije-softwarelicentie niet alleen een licentie die gecombineerd kan worden met de AGPLv3. De licentie moet ook de praktische vrijheden van de gebruiker bewaren: de vrijheid om de software voor elk doel te gebruiken, te bestuderen hoe deze werkt, deze aan te passen, kopieën te delen en gewijzigde versies te delen.

Bijdragen moeten passen bij de richting van Nocterra als vrijheidsrespecterend CMS. In de praktijk betekent dit:

  • vrije software, als in libre;
  • open standaarden en schone gegenereerde uitvoer;
  • privacy zonder ingebouwde bezoekerstracking, telemetrie of advertentiescripts;
  • toegankelijkheid en compatibiliteit met verschillende browsers, apparaten en gebruikersinstellingen;
  • verplaatsbare websites die kunnen worden geïnspecteerd, geback-upt, verplaatst en gerepareerd;
  • lage overhead en snelle paginaweergave;
  • code en documentatie die op lange termijn onderhoudbaar zijn.

Wat niet past

We accepteren geen bijdragen die die vrijheden verminderen, of die de vrijheden in normaal gebruik praktisch onbruikbaar maken. Dat geldt voor code, licenties of technische ontwerpen die afhankelijk zijn van propriëtaire onderdelen, verplichte registratie, telemetrie, gehoste controleplatforms, tivoisatie, platform-lock-in of andere mechanismen waarbij iemand wel broncode ontvangt, maar aangepaste versies niet daadwerkelijk onder eigen controle kan gebruiken.

Optionele integraties mogen communiceren met gesloten of halfgesloten externe diensten, zoals betaaldiensten, accountsystemen of publicatieplatforms, wanneer dat nuttig is voor een specifieke website. De integratiecode zelf moet vrije software blijven en mag niet vereisen dat niet-vrije code wordt meegeleverd met Nocterra, een extensie of een add-on.

We accepteren geen bijdragen die binaire blobs, propriëtaire libraries, verborgen onderdelen of mechanismen introduceren die na installatie niet-vrije code downloaden en aan de Nocterra-codebase toevoegen. Een vrije add-on mag met een externe dienst praten; hij mag Nocterra niet afhankelijk maken van niet-vrije software als onderdeel van de verspreide of geïnstalleerde code.

Bijdragen die bezoekerstracking, advertentiehooks, verplichte externe diensten of afhankelijkheden toevoegen waardoor gewone websites minder verplaatsbaar worden, passen normaal gesproken niet bij het project.

Hoe bijdragen worden verwerkt

Nocterra-ontwikkeling wordt gecoördineerd via de eigen planning, issue-tracking en versiebeheersystemen van het project. Publieke releases worden voorbereid vanuit één upstreamontwikkellijn.

Voor publieke release worden wijzigingen getest en beoordeeld in pre-release builds en op echte Nocterra-gebaseerde websites. Dit geldt ook voor wijzigingen die begonnen als bugrapporten, gefinancierde ontwikkeling, documentatiewerk, patches, extensies of add-ons.

Niet elk idee kan worden geaccepteerd, en niet elk geaccepteerd idee wordt direct geïmplementeerd. Sommige werkzaamheden hebben financiering, testen, verdere uitwerking of een betere plaats in de projectstructuur nodig. Wanneer een bijdrage past, is het doel om deze op een manier te verwerken die Nocterra versterkt voor iedereen die het gebruikt.