Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Jun 2020 00:58:59 +0200
From:      Polytropon <freebsd@edvax.de>
To:        Brandon Helsley <brandon.helsley@hotmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Mininal skills
Message-ID:  <20200604005859.ca438474.freebsd@edvax.de>
In-Reply-To: <CY4PR19MB0104A2C03F4D66A1DA251A23F9880@CY4PR19MB0104.namprd19.prod.outlook.com>
References:  <CY4PR19MB0104A2C03F4D66A1DA251A23F9880@CY4PR19MB0104.namprd19.prod.outlook.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 03 Jun 2020 15:54:28 -0600, Brandon Helsley wrote:
> I've searched around FreeBSD documentation and have found
> that most of the contributions require at least minimal
> programming skills. My question is whether or not there
> is anything I can contribute or maintain for freebsd
> without any skills.

What does "without any skills" imply for a human being?
If you cannot program, then there are other aspects of
FreeBSD you can contribute to, for example documentation.
You can read and write - those _are_ skills (even though
in our "modern world" there are often undervalued).



> What direction should I take my education if I wish to
> be able to maintain a port.

That primarily depends on the port. Just as an example,
the FreeBSD documentation is also a port. The toolset
to use it is already present. So if you wanted to become
a documentation contributor, you would have to learn how
to _use_ those tools, not how they work interally.



> Is c++ programming required?

Depends on the port. Knowing C++ is not useful when the
port uses C or assembly (like a device driver would), or
Python, or Lua. To become a port maintainer, you should
be able to use the programming language(s) the port uses.
So when a patch is needed, you will often have to use
the required programming language(s); sometimes upstream
will provide patches for FreeBSD, sometimes they won't,
so you have to find out for yourself what to do to make
the port work again, for example if a security fix is
needed, or if an enhancement in functionality requires
a specific action for FreeBSD.



> What else is required?

Primarily, learning by doing. :-)

You should first make yourself familiar with how the whole
ports thing works. The FreeBSD Porter's Handbook is a good
resource for that. Of course you should be able to use
FreeBSD as an operating system. Furthermore, you should
be able to use the required programming language(s) of
the port in question. Additionally you should probably be
able to deal with the FreeBSD bug tracking system and have
the required communication skills to talk to upstream, if
needed. If it hasn't become clear yet, you should of course
learn how to use the ports infrastructure, working copy
checkout, creation of patches, building and testing, and
so on. Yes, this sounds quite trivial, but it is often
neccessary to be able to do all this as a port maintainer.

While reading the porter's handbook, it will become clear
to you if this is a task you want to learn more about, and
acquire more skills while (!) you do so. You will recognize
which tools you are already familiar with, and which ones
you'll have to learn. Without any doubt, you will grow your
skillset already with those first steps.



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200604005859.ca438474.freebsd>