:: Re: [Dng] Would like to help with D…
Top Page
Delete this message
Reply to this message
Author: Nate Bargmann
Date:  
To: dng
Subject: Re: [Dng] Would like to help with Devuan
Hi Jeremy.

Welcome to the wide, wide, world of Linux and in large measure POSIX.

While I am not a distribution packager such as a Debian Developer, I do
help maintain an upstream project that is in Debian so my perspective is
a bit more broad than a single distribution. You wrote that you're
working through a Python tutorial which is fine. I did the same some
years ago and it will teach some useful concepts. That said, if you
really want to work with the nuts and bolts of a Linux distribution,
there is no getting around the fact that you'll want to be familiar with
C.

Getting familiar with C these days encompasses more than just being
familiar with the C language as it extends to knowledge of the ISO
standard C library, the GNU, BSD, and POSIX extensions to the standard
library (glibc). Then there are ancillary tools such as GNU Autotools
used to distribute upstream packages, Git for distributed source code
version control, GNU utilities such as the linker and friends, and the
GNU debugger (GDB). While detailed knowledge isn't required of each of
these, a good working knowledge is beneficial.

Then you'll want to be familiar with shell scripting as you'll find it
everywhere throughout the system. One should also understand there is a
difference between writing a Bash script and a POSIX shell script (GNU
has added many useful extensions to Bash that may not be necessarily
portable to other shells).

That is a broad range of familiarity that will serve you well no matter
what distribution or *nix variant you choose to work with. Finally will
be tools specific to a distribution. Perl falls in this category as in
Debian and derivatives Perl is used in various places. Python will fall
into this category as well.

You'll also want to be familiar with Vi(m) and Emacs as editors. Vim
works well with many file types such as Git commit messages. Emacs
works very well with GDB in X as an integrated debugger. Each editor
has its strength and while you may prefer a GUI editor, knowing how to
use both of these editors at a console will serve you well.

That's a lot! Most of it is my opinion on the range of tools a
developer and/or packager should know. The good thing is that you can
build on the knowledge of each aspect step-by-step, and not necessarily
in the order I listed them. ;-)

Have fun!

- Nate

--

"The optimist proclaims that we live in the best of all
possible worlds. The pessimist fears this is true."

Ham radio, Linux, bikes, and more: http://www.n0nb.us