Table of Contents
This is a tech-related blog providing text and video tutorials on Unix, GNU/Linux, programming, automation, systems administration/DevOps, Free Software/Open Source, privacy, security, and ethics.
The landscape of IT has become too wide for anyone to cover multiple areas authoritatively and stay up to date over time. The topics discussed here are fundamental — everyone dealing with computers should be familiar with them.
The key to understanding complex topics is in completely and thoroughly understanding the basics.
This site is provided to inspire you to seek truth, depth, fun, and personal mastery in IT or any other field of your choosing.
Site content is organized into articles. There is a main menu at the top, accessible from every page, allowing navigation and searching.
Menu “Articles ” displays all articles in a single page. This is the current homepage of the site.
Menu “Tags ” enables browsing the articles by tags (topics).
Menu “Series ” enables browsing groups of articles (larger, multi-part topics). All articles in a series are automatically interlinked at the bottom of their pages.
Menu “Search ” allows searching the articles by title, link, summary, description, and content.
Tags and Series
Content is grouped by tags and series.
Tags are used to index articles by subjects they describe in more detail than just as a passing reference.
Apart from tags named after the subject they describe (e.g. “git”), the following ones are used:
- #aaa - articles related to authentication, authorization, or auditing
- #crystallabs - site-wide information and announcements
- #custom - articles mentioning anything particularly custom-made or custom-configured
- #funny - articles containing a humorous detail, usually as part of a story or history
- #gnu - articles predominantly about, or highly related to, GNU and Free Software
- #history - articles providing insight into historical development of a subject
- #infrastructure - articles related to setting up Unix infrastructures
- #linux - articles describing concepts specific to Linux (those not present, or significantly redesigned, compared to Unix)
- #network - articles including explanation of networking concepts, or with subject predominantly about networking
- #privacy - articles related to user and data privacy
- #quizz - articles containing a quizz with questions and answers
- #security - articles containing information related to IT security
- #shell - articles containing information related or relevant to Unix shell
- #story - articles containing stories from personal experience
- #tools - articles describing at least one useful Unix tool, program, or utility
- #tutorial - long, tutorial-like articles, with more comprehensive treatment of individual subjects
- #unix - articles describing concepts originating in Unix and inherited by derivatives
The complete list of tags can be seen on page /tags.
Series are groups of related articles that should be read in the suggested order the first time, almost like a book. They provide organized guidance to becoming a qualified user in the subject matter.
The complete list of available series can be seen on page /series.
GNU/Linux is a Unix-like operating system. It is Unix’ most widespread variant in use today.
Unix, GNU, and Linux, are terms of increasing specificity:
Unix usually refers to concepts
GNU refers to free (as in liberated) implementations of Unix concepts and programs
Linux refers to the free, Unix-like kernel called Linux
GNU/Linux refers to the most popular combination in operating systems we know today, which is GNU userland combined with Linux kernel
BSD refers to operating systems derived from traditional BSD Unix
Articles on this site use terms with the broadest applicability. For example, if a concept originates in Unix, such as the command line, it will be called the “Unix command line” rather than “Linux command line”, unless the context is specific to Linux.
This site is located at https://crystallabs.io/.
RSS feed is available at https://crystallabs.io/index.xml.
All HTML links external to this site are marked with a “fa-external” icon, such as https://www.eff.org/.
Articles may contain links to other resources. For convenience, at the end of each article, all links appearing in it are listed again, in order of appearance.
After many games on the Commodore 64, Atari 1040 STe, PC 386, and PC 486SX, I started programming in Basic and Visual Basic 3.0, to be followed by C, Perl, Ruby, Python, and Crystal. For school or unavoidable work assignments, I have also used languages like Logo, Oberon, Java, and Node.js.
After getting a 14.400bps modem in ~1995 and seeing the magic of Unix via a dial-up connection, I was decided on it. I started using GNU/Linux a significant percentage of time in 1998 and exclusively as the only OS for desktops and servers in 2001.
Some of my earliest documented adventures with Unix included translating the famous John Kirch’s 1998 paper “Microsoft Windows NT Server 4.0 versus UNIX ” to another language, and co-authoring a custom GNU/Linux distribution called lt1 that fit in 1.44MB (the size of a diskette) for diskless PC terminals.
To date I have accumulated 25+ years of professional experience using, programming, managing, and documenting Unix and Unix-like systems on and off the Internet. I have worked on a number of software projects while holding volunteering, development, consulting, architecting, and/or management roles.
An unrelated, but interesting “About” section from an entirely different person on the internet, whose content I found succinct, can be found at https://decuser.github.io/about/.