The JaxLUG Scribe No.1, Vol. 1 No Frills, Just Text Version

From JaxLUG
Jump to navigation Jump to search

A Hello from the Editor

Well, hello everyone. I guess this whole thing has been quite the learning experience for me and still so much to learn. We wanted to try to add something that would help enhance the club a bit and here is one of the ideas in action, which we hope to get more people involved with. The purpose of the JaxLug Scribe is to attempt to provide an additional form of communication to subscribers or those who care to click on the link, where in addition to attending meetings, we will have some reading content focused on the Linux operating system and everything to do with it. We hope that the newsletter will further bring all of our members together and offer to our members other ways to participate than just presenting. This was the concept behind many User Groups of the past and it worked. It still does, look at MeetUP, you may find articles from groups there or even when you are looking at LinkedIn, you will find people who will just write about a topic that they know about and hope that it will help some reader out there who is a part of their particular network/group. This being said, I have to admit that I really wanted to put this together since it harkens back to my own childhood, when home computing was still a new and exciting venture finally made available to the masses, not the classes (thanks Jack Tramiel).

When I was a young lad back in the 1980's, there were the famous Commodore User Groups, who not only met in person, but at the time, they also use to send either disks in the mail or during a meeting, one could pick up a newsletter disk that they would then pop into a disk drive and have various cool utilities and programs as well as articles talking about everything in the world of Commodore. Not all User Groups did this, but the best ones, that lasted for the longest time had these newsletters go in kind with their meetings. There was also the BBS where the interchange of ideas could happen, more or less, live (sorta like email at the time for those who weren't there, although there were services where one could chat about topics live as well) and of course the printed publications that I use to love to read (being an owner of a Commodore 64c as a kid, I use to beg my grandmother for money to buy a copy of Commodore Magazine, COMPUTE! and Run). This is my first attempt to fully utilizing the full features of MediaWiki and to publish a newsletter, which I hope will benefit the club and its members. For now, this is a bi-monthly publication, but it is possible that we may have articles that happen monthly, as time permits and as we receive more help from volunteer writers who wish to share their knowledge and experience of Linux with our fellow club members.

A little about the process for creating this newsletter. I used a combination of old technology and new. The articles are written and edited in VIM, then the final draft gets migrated to MediaWiki. Other than that, just mastering the syntax of MediaWiki so to get things looking just right, is the only other work I have to do to get these articles put together. We are actually planning, as presented in an earlier gathering, to have a graphical version of this newsletter made using GIMP, however, it seems for now quite fitting that we keep it simple and easily readable on a variety of devices.

In conclusion, I know it is not alot, but there will be more content here, that is a promise. If you happen to take the time to read this first Issue of our humble newsletter, thank you so much and please think about attending our next JaxLUG meeting.

Thank you,

your friendly JaxLUGGER,


Ralph

Command Line Command of the Month

timedatectl

A few meetings back, we learned from a member about the date command in Linux. There are a variety of ways to interact via command line with your Linux Operating System to make changes to environmental functions. timedatectl is used to query and modify the system clock and settings. There is even a way to enable or disable time sync services using this command. There is more infomation that can be found under www.freedesktop.org/software/systemd/man/timedatectl.html or just type man timedatectl in your terminal window to learn more.


BASH: A Simple History

by Ralph E. Figueroa

Linux has a long history with its shells. There is the KORN Shell (ksh), C Shell (csh) and quite a few others which are still used to this day, and yet none has had as much coverage in the mainstream of tech media as the BASH or Bourne Again SHell. In respects to the idea of the shell, it is supposed to be the interface between human and computer. If we were to go back to 1969, when Ken Thompson and Dennis Ritchie were first creating UNIX on a PDP 7, one would find mainframes using teletype systems to interface directly with the computer. Television/Video monitors on these machines were either used for early CAD/CAM design or were an added luxury of the times. Computers were mostly still too expensive for the general public to own. The vast majority of computers were either used by government entities, engineering firms, companies that were in the areas of finance or insurance, and a small group of Universities (with the exception of small companies and/or individual hobbyists who were able to gain access to these machines). Batch Processing and Time Sharing were the thing, yet by 1969, as the cost of having video terminals drastically decreased, these much friendlier peripherils started to be used more often as the primary interface, versus the teletype, swiftly bringing the end to the latter in favor of its less noisy and non-mechanical counterpart.

A video terminal would oftentimes be connected using a cable, such as an RS-232 serial cable and commands would be issued directly to the mainframe to perform various functions or execute programs, with real time feedback being provided on screen versus the delayed response from printed type. However, it would take 2 years for Ken Thompson to create the first Unix Shell, The Thompson Shell (1971). According to WIKIPEDIA1, the Thompson Shell was "a simple command interpreter, not designed for scripting..." yet, somehow developers discovered that they could create scripts with a little tweaking. Development on the Bourne shell started in 1976, later on being released in 1979, with Version 7 of Unix2, where it would replace the Thompson Shell oficially. Some of the new features that were added included:

  1. Allowing shell scripts to be used as filters
  2. Ability to program control flow and variables
  3. Providing an environment mechanism which allowed the establishment of startup context.3

Bash started it's development thanks due in part to Richard Stallman, of GNU fame, being dissatisfied with the former developer of a prior shell project, "For a year and a half, the GNU shell was 'just about done'. The author made repeated promises to deliver what he had done, and never kept them. Finally I could no longer believe he would ever deliver anything."4 Brian Fox would begin coding Bash on January 10, 1988 while Fox was an employee of th e Free Software Foundation (FSF)5. It was released as version 0.99 and has been offered by the FSF freely since its intial release. During the first half of 1989, Chet Ramey would start to contribute to the shell until 1995, where he would become its chief contributor and maintainer, as he started to develop version 2.0. Public release of 2.0 would occur on December 23, 1996. As of today's writing, Bash is still maintained by Chet Ramey and apparently he is also owned by cats and dogs (who isn't when they have pets)6.

In our recent past meetings at the JaxLUG, we have been attempting to inform and educate the public on the uses of this very powerful and versatile tool. Many of our attendees may be very familiar with the story I have written today, but it is my hope that maybe some interesting fact may have been gleamed from this brief article. Our next meeting will be on August 16, 2023, where we will take our next journey, scripting in BASH. Hope to see you all there!



Ralph is currently working for XFINITY/COMCAST as an Inside Sales Agent. Back in 2016, he graduated from the Florida Institute of Technology with a Masters in Information Technology (MBA) and prior to that, obtained his Bachelors in Philosophy from the University of North Florida in 2013 (BA). His hobbies include electronics, playing guitar and some occasional gaming on both Linux and non-Linux computers. He is currently the Vice-President of the Jacksonville Linux User Group.



Sources and footnotes

  1. https://en.wikipedia.org/wiki/Bourne_shell
  2. Ibid.
  3. https://en.wikipedia.org/wiki/Bash_(Unix_shell). Note that the original post can be found archived under https://groups.google.com/g/comp.unix.questions/c/iNjWwkyroR8/m/yedr9yDWSuQJ under the bullet/asterisk of "Shell disappointment" from an email dated Thursday, February 4th, 1988. This being said, it appears that this email is not the original, but rather a copy of the original message. The source however, is Chet Ramey and per the author a full copy of the original email can be requested by contacting gnu@prep.ai.mit.edu. REF
  4. Ibid. as we as a detailed history that can be found under Cameron Newham's, "Learning the Bash Shell, 3rd Edition", published by O'Relly Media, Chapter 1, 1.3.1. The Bourne Again Shell. REF.
  5. "Learning the Bash Shell, 3rd Edition" by Cameron Newham, published by O'Reilly Media, Chapter 1, 1.3.1 The Bourne Again Shell.
  6. http://tiswww.case.edu/php/chet/