How to read this book#

This book has been designed so that you can actively engage with the material. We have constructed an online environment that you can login to from your browser. Once you have logged in you can then start a “server” that you can then access in your browser. This server is identical to the server that was used to author the content of the book and has all the software required for the examples and more.

In general we recommend that you read the book at a computer with a mouse and keyboard so that you can follow along with the examples. Below we will walk you though a typical session of work with the book.

Browser compatibility#

The author recommends using the Google Chrome browser but most of the content should work with most browsers. If you run into issues please open an issue and the try switching browsers to see if this solves your problem.

Opening an issue#

Towards the top at the top right hand side of the page you will see a few icons. Putting your mouse over the git icon will reveal a dropdown. Select “open issue” and follow the instructions. Be sure to state what browser you were using and what the problem was. If possible include a screenshot.

Thanks!

WARNING – DANGER#

The files you create within your Linux server are NOT PERMANENT! In other words you cannot rely on the files to be there if the server crashes for some reason, it gets shutdown due to inactivity, or you purposefully shut it down. You must frequently save your work to an external service like https://github.com/ or https://gitlab.com/.

Step 0: Start your server#

If you are in a BU class that is using this book, follow this link:

BU Server startup#

Clicking on the above link should take you to the following page:

Clicking "Login with OpenShift". This will take you to the page displayed below.
Click "GoogleBU". This will take you to the following login page.
Enter your BU username and password and then click "Continue". This may then redirect you to BU's two factor authentication service as shown below
Select your choice of authentication mechanism. If you are not able to login try again using an "incognito" browser window". If you still cannot login and you are sure you are in a class that is using the book please contact the teaching staff and they will add your BU user to the service.

Booting your server#

After login you should be presented with the following panel. You will need to:

  1. Select the right “Notebook Image” (“UCSLS UNIX Environment” or “Under the Covers: The Secret Life of Software”),

  2. Select “Start server in current tab”, and then

  3. click on the “Start Server” button.

You then should observe the following sequence progress as your server starts up

At this point you may be presented again with the following login page on which you should again select “GoogleBU”.

UNIX Terminal Environment#

After the boot process you should be presented with the UNIX terminal environment that we will be using as illustrated below.

>

Creating Terminals#

Use the “File” menu to select “New” then “Terminal”. This should start a Terminal as shown below:

Using the “File->New->Terminal” menu option again lets you create more terminals. Each terminal will have its own tab as shown below.

You can create and organize as many terminals as you like. Dragging the “Terminal” tab title bar around will allow you to adjust the layout. For example, below we have started three terminals and organized them in two rows – two on the first row and one on the second.

Closing Terminals#

To close a terminal simply click the “x” in the terminal’s tab title bar.

UNIX Terminal Environment “Lifetime”#

Your UNIX terminal environment is temporary. It will automatically be destroyed. This will happen:

  1. After a period of inactivity

  2. 12 hours after you started it

Rather than letting the system destroy your environment arbitrarily it is best for you to shut it down yourself when you are done your work, see below.

WARNING#

Given the temporary nature of the environment you should be aware that ANY FILES YOU HAVE WITHIN IT WILL BE DESTROYED when it shuts down. When you start a new one it will reset to a fresh clean state.

To save your work you must push it to an external git service such as github.com or gitlab.com (for those of you taking CS210 see the course related howto on Piazza).

Shutting Down Your Server#

When you have finished your session of working it is important that you shutdown your server. To shutdown the server select the “Hub Control” feature from the “File” menu as illustrated below

Hub Control Panel#

This will open a new tab or window with following page:

This may present you with a confirmation panel. Click “Stop server” to confirm.

Shutdown#

At this point the browser tab or window that you used for your work session will no longer be valid, see below, and you can safely close it.