On Sat, May 07, 2016 at 11:12:56AM +0000, David Lou wrote: > I wasn't able to find such a thing but perhaps I just missed it. I > am wondering if anyone in the community knows whether such manuals > exist for OpenBSD. Manpages are nice but they're not what I'm looking > for. Trying to learn OpenBSD by looking up individual manpages is like > trying to learn C programming by looking up individual functions. Sure > you get a description of the functions but you will NOT get all the > background information like C syntax, semantics, memory model, > pointers, the whole shebang that every beginner *should* know, but > don't have the background knowledge to know that they should be > looking these up in manpages or elsewhere. > > I'd like to acquire confident working knowledge in OpenBSD. If no > such manuals exist, then I'm wondering how did you or other expert > users learn how to use and administrate the system, what the best > programming practices are, etc. and have confidence that what they're > doing is what they think they're doing? Surely it's not just by > trial and error and seeing what appears to work because their > ignorance will be a frustrating source of bugs and security flaws?
I'm willing to share my experience with you. First off I'm a mediocre programmer at best. Writing C code wasn't so much a challenge, it was reading and understanding others code. I started programming C at around 1996, for which I had some "teach yourself C in 2 weeks" book. I have since forgotten about it, but the only thing that stuck with me was how a singly linked list was made in it, nowadays people don't do that and use the queue(3) macros found in libc. Around 1997 I then bought the infamous K&R book (2nd edition). I remember being stuck on pointers and reading the same pages over and over in the back of a bus while going to work. Also around 1996 a person who I got to know through MUD games was nice enough to answer some questions. He sent me some skeleton server code which was nice enough to give me some idea how sockets worked, but later I bought UNIX Network Programming by W.R.Stevens, that was the first edition where only a single book and not a series existed (I got the 2nd editions too, a bit later). So may it be told that books are the #1 source of information on this, the rest is a nice to have but not really that important. With a budget of $200 dollars you can get 3 or 4 rocking books to help with your C education. 200 is a lot but not if you work somewhere you can save up for it. In terms of security flaws it's being alert and questioning something IMO, don't take a "pro's" advice on that "it's just unimportant" but stick with it, and try to scientifically find the fix. You know science where you have a thesis, do some work to proof your answer and then produce a conclusion, and this conclusion often has a fix for your work. It's the application of method when I say scientifically finding proof. When dealing with computer science you'll need to read code when you want something improved, and you'll need experience with your method in order to find those "hard to do" parts and understand how "they" did that, in order to apply your fix. I personally also see people run statistics to show that something improved that they did. OK long ramble. Maybe it's an answer you can use. Having failed it however one may just say "you need a university education" which doesn't apply to me in any case although I have a few college credits in computer engineering. -peter