Minimal skills

David Christensen dpchrist at holgerdanske.com
Fri Jun 5 22:27:21 UTC 2020


On 2020-06-04 19:59, Kurt Hackenberg wrote:

> Yes, [K&R2e] is over 30 years old. C itself, and Unix, were invented
>  together about 1970. (FreeBSD is a version of Unix; Linux is a 
> different version of Unix.)
> 
> That is a classic book about C, and still valuable, but no longer 
> complete. There were some additions to the language in 1999, and a 
> couple smaller changes since.
> 
> C is useful to know around Unix systems, and there's a lot of 
> existing software in the world written in C, but it's not used all 
> that much for new projects. I say this even though I've used C and 
> Unix for a long time.


On 2020-06-04 21:07, Brandon helsley wrote:

> Then you are recommending new learning material for C? Is it C or C+ 
> or C++ that I'm to be benefited to learn when working with freebsd?


On 2020-06-05 09:12, Brandon helsley wrote:
> Ruby, C, and python are my best bet for learning programming? Do C 
> and Ruby have a GUI like python does?

I view C as the lowest-common-denominator, de facto standard computer 
programming language for imperative and structured programming.  I 
believe it is a credible choice for a first programming language, 
especially in the context of contributing to FreeBSD.


As the saying goes, "you have to walk before you run".  Save C++, Ruby, 
Python, etc., for later.


(If you want to "crawl before you walk", then consider boolean algebra, 
digital logic, hardware definition languages, computer architecture, 
microcode, machine code, and assembly language.)


The ANSI X3.159-1989 version of C is a relatively small language, yet 
adequate for real work (as proven by Unix).  K&R2e is only 1/2" thick, 
very well written, and has many available resources.  So, the learning 
curve is reasonable.  If you read K&R 2e cover to cover and pay 
attention to the concepts, your mind will be opened.  If you enter and 
run the examples, and especially if you do the exercises, you will 
reinforce your knowledge and gain practical skills.  Whatever level of 
effort you put in, the return on investment will be manifold.


David


More information about the freebsd-questions mailing list