A Question About Method Relating To Mastering FreeBSD!

Hi everyone,

What systematic practice can lead a newcomer to FreeBSD to become a master of it. What a newcomer should learn to do so that what's under the hood of that amazing OS is no longer a mystery for him, what should he know? Is it that for every program installed to read to corresponding man pages? or should he learn a specific language? I do like to have a no bullshit opinion on this topic, an honest and crude one from those who know about what skill and method is expected to successfully become an autonomous admin under FreeBSD.

How much time for someone who is willing to do his homework is it approximately supposed to take. or is it impossible to master without prior computer science knowledge for example among other, regarding to specific structure of FreeBSD etc.

For who FreeBSD is really intended to be for.

Thanks for sharing your insight.
 
What systematic practice can lead a newcomer to FreeBSD to become a master of it.
Actually using it, reading books is one thing, applying that knowledge to solve issues is another. Like woodworking, you can read about it, but there's nothing like actually putting a chisel to a piece of wood to learn how. Practice makes perfect, some people manage to get better at it but will never master the art. Others have a natural ability to master the craft. But it still requires a lot of practice. You do not gain experience from the sideline.
 
Source-fork a full release and make it able to build and reinstall itself to another computer without manual intervention.
It starts with a 10-command script that does the standard installworld and port builds. I'm on 20K lines bash script now. It's called MBSD but nobody ever heard of it. ?
 
Like you did for a start. Suuuuuure..
It took me some years. I started at 4.9. The first good working system was at v7 or so. It was a heavily modified Xfce4 system of which is almost nothing left now.
I had the clear goal all the time. Still want to change a lot... Now I want to understand the full openbox wm source, remove the menu, add a better pager and improve the keyboard shortcuts implementation. Also want instant self-virtualisation with bhyve. Qemu does the job already but it's slow.
 
i do like to read handbook, freebsd journals from freebsd foundation ... sometimes i check developers handbook, porters handbook. Wiki.Papers. basically i open Documentation tab on freebsd.org and read bit by bit. also i do read forum. even if i dont have an issue i still taking a look :)
 
Hi!

For me, it comes down to doing projects. So make it easy on yourself to do them. You won't learn everything from projects, but that's not the point. To become autonomous, you don't need to know everything, you need to know where to look. You need to develop a feeling. And projects are the best way to do that. So find things that seem interesting to you, make it fun. To make it easy and practical for yourself to find and do projects, go install FreeBSD on a laptop, but don't install a big desktop environment, install a window manager. I promise, you'll learn a bunch about the high level systems that way. Secondly, having a homeserver to play with helps a lot too. You can run things on it that benefit your daily life, like a DNS blocker, calendar, jukebox and a million other things (see here for inspiration: https://github.com/awesome-selfhosted/awesome-selfhosted).

You want to learn how to do. So do. Anything else is suboptimal :p Supplement with learning material to boost yourself while or after going through the pains of doing something. That's when you're receptive to books.
 
I'd reply the same as on a previous thread, and I'm a newcomer with less a year of practice : install it on multiple computers, but start with a LAPTOP, if possible NOT really compatible with FreeBSD (random working sound card, FN keys, poorly supported wifi and you can even try Bluetooth...), if possible with Optimus to maximize difficulty.
Pretty silly, but if you can master such a painful setup your next FreeBSD computer will be easy to install, configure, and you'll learn new things from different hardware that you'll replicate on your first setup. On a working out of the box setup, you won't dig anything because it just works, but if someday it doesn't, you just feel alone in front of the screen. Starting from scratch, you're forced to do things, to understand how this and this works, do trials... And you learn a lot. MUCH longer and time consumer, but you know how it works ?
 
My advice is: don't dive into it too deep with out some guidance. The best guidance in the beginning it is "need". So my advice to you is: use FBSD (or any other OS) in every setup that you can, and learn the tools of it as you need them. With time you are going to notice that you learned without realizing it, and you spend most of the time using the system instead of tweaking/breaking it, so actually producing something.
In opposition to this approach you can start to read every documentation and man page available in the system, but you are going to get lost very quickly with the infinite amount of information you already have in your system (if you don't have a guidance).
The later approach is the most sure way to a OS-hopping end. When one get lost and confused with the amount information and the lack of direct propose, one tends to lose interest and want to jump the ship.
 
Last edited:
willing to do his homework
is already the best attidude.

Don't try to 'master' it.
Just use it, as mostly as possible.
Chose your homework, and try to do it yourself as far as can you get.

You'll find almost anything already answered on the internet, mostly in this forums.
Search by duckduckgo.com will get you better results than using the forum's search.

If you don't find no help after searching really hard, there are lots of people here - real masters (not me) - who will help you on any new problem.
So don't expect a brown or black belt will help on some white or yellow belt's homework.

My advice is:
Skim every man page you need to look at at least once.
Don't read it all.
It's too much stuff.
But don't only pick the one thing you're looking for. Thumb through it just roughly completely at least once. Good things are often mentioned at the bottom of a manpage, such as links to other manpages.

Also /usr/local/share/doc/ is a goldmine.

As SirDice said, using it is the best practise.
So use it as most as possible.
Try to make it your daily, maybe only driver.

As cracauer@ said, learn scripting, and adapt the system for your needs by write your own scripts, is not only a very valuable skill, but teaches you a lot, too.

Everything I read here are good advices - at least ways to become good.
Find your own.

Bottom line:
Practise is what you need.
Simply do it is the best, and only practise you can get.

Avoid to do something unless you're perfect means not doing it at all. So never become even good.

'Master' is a goal you may reach while simply keep continously practizing, and not recognize passing the line, but never reach it, if you set for it.
 
the way i learnt was to install Freebsd on my main machine
and learn as i go

as SirDice put it

Actually using it, reading books is one thing, applying that knowledge to solve issues is another. Like woodworking, you can read about it, but there's nothing like actually putting a chisel to a piece of wood to learn how.
 
no dont write it on your laptop

use permanent marker and write on your forehead
you will remember it better because people will keep asking why you have " think before you type" on your head
The answer would be : - it's a subliminal message to say think before you act! not bad eh!
and the other : - Yeah but Marx said philosopher had done their time interpreting the world, and that now it's time to act transforming it!
and to reply: - there must be some equilibrium to have between the two vision...

which make me think that there is a bunch of activist on that forum telling me to do things to learn!
 
What systematic practice can lead a newcomer to FreeBSD to become a master of it. What a newcomer should learn to do so that what's under the hood of that amazing OS is no longer a mystery for him, what should he know? Is it that for every program installed to read to corresponding man pages? or should he learn a specific language? I do like to have a no bullshit opinion on this topic, an honest and crude one from those who know about what skill and method is expected to successfully become an autonomous admin under FreeBSD.
It seems that mostly everything has already been said in this thread. Just my few cents -
  • It all depends on your background. If you have previous experience with Unix-like systems, then you probably start learning what is different in FreeBSD.
  • Practice is the only way to learn. Install FreeBSD on some system and read the handbook and manuals (need not read the full handbook, but about installing before installing and so on). https://docs.freebsd.org/en/books/handbook/
  • Familiarize with the concepts of ports and packages. Have a look in the https://www.freshports.org/ and see what is available.
  • Decide if you want to use ports or pre-built packages and install something you need for your work / hobby. Avoid mixing ports and packages in the same system.
  • As in most *nix systems, good old man is your first line of help and knowledge. man()
  • And last, but not least - read and use this forum.
 
Having been through the same situation, learning the vagueries of eight different operating systems on very disparate machines over the years, I echo the responses above heartily ... The best, and really the only, way to learn is practice a lot, make mistakes, analyze failed attempts, and celebrate successes. Then there is the Prime Directive of "Gain Experience!". And never be disappointed because ... experience is what you get when you expected something else.

Welcome to the fold, and enjoy the learning.

QuesoGrande
 
… start with a LAPTOP, if possible NOT really compatible with FreeBSD … maximize difficulty.
Pretty silly, but if you can master such a painful setup your next FreeBSD computer will be easy to install, configure, and …

I'm the opposite. I want usability, not obstacles and other distractions – especially when learning.

For me, PC-BSD was the way in.

I'll never master FreeBSD, it's not a goal.
 
What a newcomer should learn to do so that what's under the hood of that amazing OS is no longer a mystery for him, what should he know?
Take notes!

That way you can see what you've done, go over it occasionally, and if you learn a different way to go about something, you can refer to the notes, update them, and continue doing it to eventually become a master (or at least have a lot of knowledge)!

I self-host a wiki and take all the notes I want, and started with FreeBSD 14.1 a few days ago: https://wiki.realmofespionage.xyz/bsd;freebsd_14.1_xfce

My notes will help immensely with future FreeBSD updates, and I'll have notes for when I install it on my server also easy for updates or re-deploying it, and I can share what I do and prove it works :p
 
Take notes!

That way you can see what you've done, go over it occasionally, and if you learn a different way to go about something, you can refer to the notes, update them, and continue doing it to eventually become a master (or at least have a lot of knowledge)!

I self-host a wiki and take all the notes I want, and started with FreeBSD 14.1 a few days ago: https://wiki.realmofespionage.xyz/bsd;freebsd_14.1_xfce
One good tool for personal structured notes is deskutils/freeplane. Really like it. It is for mind-mapping, but it also works great for structuring personal notes and links. One can add icons to nodes to make the notes mode visual.

An example
Screenshot at 2024-09-07 20-28-31.png
 
Taking notes is always a very good advice when you learn something.

Those mindmapping tools are very good to get structure, and overview in your thoughts, when catchwords are enough for one to access the memory, to eleborate complex tasks with others, or to get an overviewing presentation on something complex to show others.
I know people using them very successfully not only for their own learning processes, but as a kind of documentation, for taking notes, and within meetings not losing the overview - very productive.

But you need to be careful not to put too much stuff into it.
It's tempting to elaborate them detailed by using different colors, backgrounds, shapes, pictures, icons, etc.
But then you may risk the threat as with putting too much stuff into a PowerPoint presentation:
You kill the overview by having too much redundant information in it.
Mindmaps live by catchwords in structure.
If you underline the structure with colors, backgrounds, and add pictures to every word, any mindmap only a bit larger as the example shown will become uncomprehendable.
Less is more.

But of course, if you do it for your own use only, it's completely up to you how you comprehend things best.

Personally I like to write things down: with a real pen on real paper.
My experience on myself:
If I've written it down, most papers I could throw away directly afterwards, because I remember it the moment I wrote it down. But if I don't write it down, it's unlike harder to remember it again.
It's crazy, but I prefer to write it down and memorize it directly instead of look it up several times again, just to save some paper.
I have a couple of exercise books (you can get those for some cent on sale in every supermarket when school starts) While most things are simple I mostly use the backside of used sheets I throw away a couple of days later (looking at them again one time again.)
Only important, or more complicated things I write into exercise books.

At the moment I am transferring my personal FreeBSD help file (I'm talking paper within a physical lever arch file made of cardboard) via LaTeX as an PDF.
That's also a very good excersise to reconsider everything again.


But I wanted to give some short, summarized advice to the OP's question:

Don't set a goal.
See it as some kind of open world adventure.
You have to solve quests and fight monsters - fulfill tasks - gaining experience.
Decide yourself which cave, castle or dungeon you enter - some are needed to fulfil another quest, some are completely voluntary, some are harder, some are easy.
Just get yourself on an undefined journey.
Be open which unexpected spots you may visit one day.
 
Back
Top