Tuesday, February 27, 2007

FreeBSD - The power to...

Some whimsical history

No doubt, I have had that somewhat weird period regarding operating system usage that most newcomers have to experience when entering the alternative operating system world. Yes, I've used almost every major Linux distribution, sometimes actively, other times it just lay on my hard drive, and I stepped back to Windows again. I even remember that once I felt like QNX will be my next desktop operating system. Well, you might have guessed - it didn't really provide the things I need for daily usage, and I couldn't find adequate documentation, thus I felt the need to change. Finally, my computer celebrated New Year with only Windows.. ouch, how alone could have felt my little chocolate bunny..
FreeBSD. I'm still reminiscent of the first time I tried to install this little beast. I was disappointed. It didn't work. It was my fault,even if back then I didn't recognize that, or even if I did in the deep dikes of my soul, I couldn't accept that, but I couldn't accept that such a renowned operating system doesn't boot on my little chocolate bunny. So far so bad. If my chocolate bunny doesn't like it, it isn't good. Further on, I found out that chocolate bunnies refuse eating operating systems (ever so illustrious it may be), unless they're served properly. Actually, a pal o'mine told me that my chocolate bunny might not like fats.. and ACPI is greasy like hell.. ;-)

How I happened upon FreeBSD again..

After months of struggling to find the OS I need I gave up. Switched back to Windows. I've been using Windows since I have a computer - I don't have any problems with it, except some security issues, which are rare like that when you use your system properly. I don't like anti-virus software, I never did, but that's another story. If you're still eager why, check what Jeff Atwood says - the best arguments which are somewhat akin to mine. It's not the system who makes itself secure or insecure, neither security software but the user. I had some kind of anti-virus software installed, can't remember which (amnesia, let me survive), but I turned real-time protection off, forgetting that I'm not the only user of Bunny. Damn it, didn't my sister click on a grinning smiley? No, no, no, noo, nooo, not again. I don't want to remember the first week I got my computer running Windows Me. Being cautious, I saved my little beloved chocolate bunny from another battle against horses, storms, buccaneers, etc. You know, the whole anti-rabbit shebang. That was the day FreeBSD 6.2 was released.

FreeBSD - what are we exactly talking about then?

FreeBSD is a Unix-like free operating system descended from AT&T UNIX via the Berkeley Software Distribution (BSD) branch through the 386BSD and 4.4BSD operating systems. It runs on Intel x86 family (IA-32) PC compatible systems (including the Microsoft Xbox[1]), and also DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC and NEC PC-98 architectures. Support for the ARM and MIPS architectures are under development, while support for DEC Alpha was dropped in the 7.x development process.

FreeBSD is known to be organized. It's the only system I know that has a strictly distinct separation between base system and userland. Gentoo, for example tries to separate these two levels, but the distinction is not as in FreeBSD's case, where not only that there's a theoretical disassociation between the two levels, but the base system is maintained by a distinct group, and there's absolute compatibility between software. To make it look like an equation:
FreeBSD = base + (a+b+...+x+y+z), where the part in parentheses represents the add-on software, and base is the base software package, distributed with the kernel.
Linux = a+b+...+x+y - you can see that everything is in a common tub. The kernel is in the same place as Mozilla Firefox, which, in turn is in the same place as OpenSSH, and so on. Note, that here I mean operating system structure - mainly package management, and not memory management. I don't mean directory structure either, since that differs from distribution to distribution, even though some standards exist regarding that.
FreeBSD is aimed towards the more advanced user. It gives absolute control to the user provided the user knows to use some basic (it doesn't need anything spectacular for simple customization and management) command-line tools, understands some simple logic, which, even if looks somewhat queer at first sight, is clear, well-thought and well-tested.
Even if some of the developers would probably cut off some member of mine for this, I have to say that the most important difference between (Free)BSD and Linux is the philosophy. The distinction between software levels, the way power given to users is organized. Recently I feel like Linux tries to be the clown of open source software market by trying to keep its geeky, older image and creating the new, user-friendly image at the same time. They would have to decide. Oh, and yes, I see the grin on your faces whispering that there's CRUX, and Arch, and, and, and. Look at them. They're polarized like hell. That's not fine.

What do I have to do with FreeBSD?

I always felt trying out new operating systems challenging, being it another Microsoft product or an unknown few-kilobytes-sized hobby OS. Operating system development is the peak of software development and something that I always dreamed to be able to participate in further on. Actually, I first spotted FreeBSD 'round 4 years ago trying to find alternative operating systems which would run faster on my computer, than my actual Windows 2000 did. I remember I had a misconception that Windows is derived from UNIX, just like Linux, and there's no "serious" operating system besides these. So I found FreeBSD. Seeing that the actual website design isn't too appealing, the news are months' old, I didn't think that it's something serious - I bought a handful of floppy disks and decided to download it the next day. Worths a mention, that I had an incredibly slow dial-up connection back then, and anything larger than, say, 50 MB took too much time, thus we had to pay too much. You'd have had to see how surprised my face could be when I started the download and saw that it's two full CDs. I couldn't believe that it's possible to create an operating system that doesn't fit on a CD.
So, as you can see, my adventures mixed up soon with FreeBSD, but I didn't really take the chance to try it out.
The day I finally installed it and started to customize it was January 16, one or two days after 6.2's release.
It wasn't a too delightful process, but I learnt and experienced much. I had to read a few chapters from the handbook too, and I've read some that I didn't even need.
For example, I recompiled my kernel, for nothing, I struggled four hours to make GDM work how I want, tried all the window managers I know again, and compiled KDE (which I don't use), just to see how much it takes on FreeBSD.

FreeBSD is not the system that can be "reviewed" in the usual manner (or the way I used to review in the past). I could speak for hours about how much I like the package management variants it uses, and how well-thought its inner logic is, however, I don't want to. As I told you, it's not the software, it's not the developers, it's not even the users - it's the philosophy what makes this operating system, and I've presented it from my point of view. I think that if you think your philosophy has more matching points with that of FreeBSD's than with your current operating system's, you should obviously give it a try. You can only win.

Thursday, February 22, 2007

New Season

It's not news to anyone if I say that my blog wasn't that high-quality in the last few months of posting - fact reflected by the current number of posts. I think I've become somewhat more mature by time. More mature, eh. I mean, hopefully I'll be able to reach a higher grammar level and use a larger vocabulary as well. Also, I hope that my ability to form opinions about things has increased as well, since I've spent dozens of hours reading - studying programming, operating systems, and so on.. I've also learnt how much ketchup is to be put on fried potato in order to match everybody's needs, not just mine. More mature. There's another slice in my maturity-cake, filled with two creams: genuineness and reliability. I don't want to lie to my readers again. My readers, who can make my day by just typing three short words, and submitting this array of characters as a comment to a post o' mine.
In the future I expect to provide posts higher on quality and accuracy. Fortunately I understood that blogging is not about lying to my readers on a daily manner just in order to get some clicks on your ads. It's about writing your thoughts down if they start to shake and tickle your brain.
If only I could change the past.. but obviously I can't, and that's fine, if I think better. I've learnt many things by posting fraud articles - learnt what it takes to be honest, to be genuine. I don't know if anybody reads this now, but it makes me feel better. These few sentences have been tickling my brain for months..
I wish everybody happy blogging, without money-making propaganda articles, like mine were in the past!
Have fun, and please wish me some power to be able to keep my promise!