Coder Social home page Coder Social logo

gnu-project's Introduction

Copyright (C) 2019 Free Software Foundation, Inc.

This file is part of the Standard GNU project.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

-------------------------------------------------------------------------------

# The GNU Project Standard

The purpose of this repository is to serve as a template for how prospective
developers structure their projects prior to submission. There is an ongoing
movement to automate as much of the project approval as possible and this
standardization would go a long way towards establishing an expectation 
through which this can more easily be carried out.

Just as importantly, the standardization of the project structure places the
necessary emphasis on the legal requirements that naturally result from 
developing free software. Unfortunately, developers new to this environment 
tend to not give things like the software licenses -and crucially their 
presence- the attention they deserve, and this is precisely one of the things
we hope to mitigate with this project.

My vision for this project is for it to serve as a clear and simple template 
for formatting new projects, and in the process we can define how projects
should be structured and why. I think clearing up those two mysteries will
go a long way to dispelling the probitive, nebulous aura around starting to
invest in free software in earnest.

One of the ideas I had for the actual code base, since it wouldn't make much
sense to not have one even if it is a bit of an afterthought in this repo, is
to split the code into several smaller modules that get dynamically linked
seamlessly to form the single application. Each module could serve as a short
example of its features, and most importantly it would be a non-trivial
example of how to configure a project of a more realistic size. To top it all
off, the entire project should be internationalized as laid out by the GNU 
Coding Standards.

The goal of this project is to holistically and decisively remove the barriers
to entry into the fraternity of Free software, and as someone who couldn't
have made it without GCC, the GNU collection as a whole, and everyone who 
made it possible, I'm extremely excited to do whatever I can to pass it on.

# Task List

  * TODO: Process command line arguments.
  * TODO: Generate documentation.
  * TODO: Automatically generate the changes to output to the NEWS file.
  * TODO: Add build instructions.

gnu-project's People

Contributors

jflopezfernandez avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.