<img class="frontispiece initial ui huge center image transition visible" src="frontispiece-alberta.jpg">

<pre><a name="create-a-gap"></a><div class="ui section divider"></div></pre>

<div id="title-page" class="title-page">

# Alberta

</div>

<pre><a name="create-a-gap"></a><div class="ui section divider"></div></pre>


<div id="journal-page" class="journal-page">

<div id="digital-journal" class="digital journal">Book and Journal of Mattanaw</div>

<div id="digital-volume" class="volume">Volume I, Book IV, §xiv.xi, Draft</div>

<div id="digital-titlepublisher" class="digital titlepublisher">Publisher: PlaynText, Tempe, Arizona</div>

</div>

<pre><a name="create-a-gap"></a><div class="ui section divider"></div></pre>


<div id="publisher-page" class="digital publisher">

## <a name=publisher">Publisher</a>

Copyright © 2024 by Mattanaw. All Rights Reserved.

Publisher: PlaynText
Location: Tempe, Arizona

PlaynText is dedicated to the publication of high quality journal publications issued in premium book format, as book/journal hybrids. Each publication is intended to be an illustration, potentially, of the maximum and least-inhibited use of free thought and free expression.

Copying, distributing, plagiarising, processing, storing, and serving the contents of this book is a violation of intellectual property, unless otherwise indicated by the copyright holder elsewhere, as it relates to this specific issue of the Book and Journal of Mattanaw. For permission to use any contents of this book, please contact the author at http://mattanaw.org/com.html.

Published by PlaynText, Inc, companies wholly owned by the author, Mattanaw, Mattanaw, (formerly "Christopher Matthew Cavanaugh").

Printed in Tempe, Arizona, in the United States of America.

Published and printed by PlaynText, an imprint of PlaynText, Inc.

The Publisher is not responsible for the content of others produced on websites, applications, social media platforms, or information related storage or AI systems. The processing of this Book and Journal by an AI System is prohibited.

Library of Congress Control Number (pending)

Library of Congress ISSNs: 2998-713X (Online), 2998-7121 (Print)

</div>

<pre><a name="create-a-gap"></a><div class="ui section divider"></div></pre>

## <a id="master-author-start" name="author">Author</a>

*Artist/Author: The Honorable Dr.<sup>[9](notes.html#9)</sup> [Mattanaw](open-health-mattanaw.html), Christopher Matthew Cavanaugh, Retired*

Interdisciplinarian with Immeasurable Intelligence. Lifetime Member of the High Intelligence Community.<sup>[6](notes.html#6)</sup>

- Masters Business & Economics, [Harvard University](christopher-matthew-cavanaugh-mattanaw-harvard-id-card.jpg) (In Progress)
- Attorney, Pro Se, Litigation, Trial, Depositions, Contracts (E.g. State of Alaska v. Pugh, et. al., Alaska Superior and Supreme Courts)<sup>[4](notes.html#4)</sup>
- B.S. Psychology, University of Maryland, 4.0, Summa Cum Laude<sup>[1](notes.html#1)</sup>
- B.S. Computer & Information Science, University of Maryland, 3.91, Magna Cum Laude<sup>[2](notes.html#2)</sup>
- B.A. Philosophy, University of Maryland.<sup>[3](notes.html#3)</sup>
- G.E.D., State of Maryland, Montgomery County, 1999.
- Lifetime Member of the High Intelligence Community, [Mensa Lifetime Member](open-health-mattanaw.html#mensa-lifetime-membership)

Former Chief Architect, Adobe Systems

Current President/Advisor, Social Architects and Economists International.

CEO PlaynText | CEO PlainText

Contact:

- [cmcavanaugh@g.harvard.edu](mailto:cmcavanaugh@g.harvard.edu)
- [christopher.matthew.cavanaugh@member.mensa.org](mailto:christopher.matthew.cavanaugh@member.mensa.org)
- [mattanaw@mattanaw.org](mailto:mattanaw@mattanaw.org)

Resumé

- [Professional Resumé](resume.pdf)

<div id="master-author-end"></div>

## <a name="edit-history">Edit History</a>

- *40 Wanattomians, Epoch 1725948630, Tuesday, September 10, 2024 14:10:30, Bali, Indonesia*
  - *Added the Alberta OS section*
- *22 Wanattomians, Epoch 1724495069, Saturday, August 24, 2024 03:24:29*
- *21 Wanattomians, Epoch 1724316755, Thursday, August 22, 2024 01:52:35*
- *Thursday, August 22<sup>nd</sup>, 2024, at 1:46 AM Tempe, Arizona Time*
- *Tuesday, June 20<sup>th</sup>, 2022, at 9:53 PM Alaska Time*

## <a name="contents">Contents</a>

- [Author](#author)
- [Edit History](#edit-history)
- [Introduction](#introduction)
- [Advantages](#advantages)
- [Architecture](#architecture)
- [Installation](#installation)
- [Dependencies](#dependencies)
- [Naming Conventions](#naming-conventions)
- [Operations](#operations)
- [Backlog](#backlog)
- [Alberta OS](#alberta-os)
- [Source Code](#source-code)

## <a name="introduction">Introduction</a>

*Draft*

## <a name="advantages">Advantages</a>

There are a very large number of advantages to using Alberta over other candidate types of software for procurement for large projects:

- Performance
  - Download performance on the client side is much faster because each book and page does not require any back-end processing.
  - Content that is downloaded is all cacheable, including all of the book and page data and not a portion.
  - Content that is requested that is not in an edge-caching system, that is requested from the server directly, requires no processing to be sent back to the user.
  - Lightweight servers can be utilized because there are no heavy systems or backend processing needs requiring compute.
  - Server request handling is light and is only request-response with little or no processing.
- Security
  - There are no background programming related systems, and because of this, possible attacks on the server are fewer.
  - No server patches related to back-end programming are necessary.
  - Very light server technology can be used, and since the servers are light, there are much fewer possible security flaws.
  - The lightest servers require the fewest potential security configurations.  
  - A system regeneration approach is preferred over a system protection approach. Instead of trying to protect the server to ensure there are no breaches or changes to data, and access, the system is regenerated and restored if there is a serious problem.
  - System issues are easily addressible in almost all circumstances without a system regeneration.
- Programming
  - Fewer programming skills and programming languages are required for the functioning of the software.
  - Programming used is closer to what is pre-installed on machines, and there is greater overlap of skills between developers coding in other languages because they are already required to have at least some of the skills that would enable programming on this system, if they are expected to have competency on the machines in which they work.
- Programming Automation, and AI
  - The system is well-automated and requires very little engineering.
  - If engineering is required, very little is needed, and can be performed by a large number of engineers in the candidate pool.
  - If engineering is required, AI can do it instead.
- Licensing
  - Once purchased, the customer fully owns the software.
  - The customer is free to update, improve, customize, or extensively change, the software for resale. This means that organizations simply working on their own solution may arrive at a candidate system other companies or internal divisions can utilize.
- Source Code
  - The system is entirely created by the author, former Chief Architect of global corporations, for the purpose of simplicty including understanding simplicity. The entire system is easily understood by humans, and has been created by humans. However, it is alterable, updatable, and fully transformable into a large amount of AI generated system equivalents, limited only by the imagination of those employing the AI for that purpose, and any limitations of the specific AI product.
  - As a human developed system, it is known that AI could make design improvements, reporting what it would believe to be system or programming inefficiencies. However, it is expected and anticipated, that AI systems making such changes, would remove efficiencies it is unaware of, for which the author would have ample experience. The system is and remains a human-centric and human optimized system. If a customer prefers to utilize a rewrite using AI,it is free to do so, but has the original system as a fall-back, in the likely even that it is discovered that the original system had design preferences that extend outside the knowledge of AI into organization and human knowledge.
  - The source code has been under development for nearly 10 years, and the advancement in the technology has favored simplicity and reduction over growth in unnecessary features or "value adds".
  - The source code can be understood in full by any member of the development team, and easily at a high level on business teams, so there is plenty of mutual corporate knowledge regarding the solution.
- Architecture
  - The solution architecture has a decade of planning, and more than 20 years of industry knowledge to support design decisions.
  - Deployment architecture is simple and flexible. The system can be deployed to larger computing systems using a large number of alternative arrangements that can conform to organizational policies.
  - At the simplest level, it can be deployed rapidly to a single server, and can be easily maintained without issue on that system without a development environment, stage environment, interstitial test or QA environment. It has been automated to be stable on production alone. However, any of these alternative arrangements are supported.
- Procurement
  - Costs to the customer are not based on concepts like number of transactions, number of end-users, or number of developers. Costs do not increase for any increase in usage, and can scale to whatever level is desired by the customer.
    - This greatly improves forecasting.
    - Fixed cost reduces risk and unforeseen cost inflation.
    - Total cost of ownership is reduced, because the fixed cost is competitive, and will not grow.
  - Team Costs
    - Teams can be light and lean.
  - Training costs are low on a technical level, but are somewhat higher on an intellectual level.
  - Trainings are one-time to cover all material for the technical team. There is no increased level of certification with different levels of training.
  - Business training is geared towards supporting the business and is also one time.
- Support
  - Minimal support without a tiered support system is all that is required.
  - Additional consultative support can be provided as desired in order to provide organizational guidance and specific guidance on areas of concern.
  - The training objective is self-sufficiency without any "leaching". It is desired that the company and its staff can fully own and maintain the software independently, being freed quickly from any support needs whatsoever. Training has the objective of ensuring that organizations are *not missing any required information* in order to fully own the software and self-maintain the systems.
- Artificial Intelligence
  - Artificial intelligence can be used to:
    - build and automate content production within reason,
    - perform development tasks,
    - perform architectural design changes,
    - program the system.
  - Customers can utilize AI to rewrite the system to create any number of systems as they find desirable and can resell any software they create this way.
- Automation
  - Alberta has been designed to make it possible to do no work but content updates.
  - It is possible to further automate the system such that improvements are made without any human intervention and deployed automatically. 


## <a name="architecture">Architecture</a>

The initial architectural approach to be shared regarding Alberta is the redundancy approach, which encompasses the storage, copying, transferring, provisioning, positioning, securing, of information. The primary objective of the approach is maximum availability and preservation of material. On first inspection, this does not appear to be a large subject, but on closer observation and in experience, it includes some unsolved and perhaps unresolvable problems of interest, including problems of philosophical and religious interest. The role of a software architect in a business or for a government is to provide a direction and design for a system that would have some minimal criteria regarding preservation and availability satisfied, so that there is a reasonable expectation that data will not be destoyed and that software that has been paid for would go unavailable. Interestingly though, businesses and governments have not invested so much as to solve the fundamental problems relating to the risks that still exist in retaining information despite efforts by the architects and others, and the fundamental understanding that there is no plan that can secure any inforamtion for a long period of time. Information degrades, corrupts, and otherwise has attrition from the moment it is created until it ceases to exist, and the time that it is expected to cease to exist varies, but for paper information it is unusual for documents to last centuries, and for digital documetns it may be unusual for anything to last a decade or more. Since there is a very high probability of loss as time goes on, there is a fairly high probability of loss even in the short term! Some software and content is lost immediately! A good strategy from a software architect would produce an approach that would make it's immediate loss unlikely, and short term loss reasonably unlikely. Typically there is inadequate experience to make long term preservation difficult, and typically it cannot even be included in the planning.

## <a name="installation">Installation</a>

Installation merely requires sourcing the source file within your bash_profile file. Alberta is intended for a unix or unix-like environment running BASH, but if one is using Windows, one can run alberta in a unix emulator with Cygwin. Like a Unix system that searches for the bash profile on the startup of the shell, Cygwin too simply needs to be configured to source the alberta file from within the .bash_profile, or .bashrc file, or other.

Insert this line to your alberta directory on your system. 

source ~<path-to-alberta-startup-file>/alberta/startup/alberta

This is how it is on my system:

source ~/Desktop/e/mattanaw/alberta/startup/alberta

In my bash profile I also like to include a line to be able to reload alberta as desired. For this I create an alias as follows:

alias r='source ~/.bash_profile'

I simply source the entire profile, but in your system, if you don't wish do do that, you can simply use the same path as above. Using this alias, I only have to type the letter r to reload the program.

## <a name="naming-conventions">Naming Conventions</a>

Web and Print Processed Media Naming Convention:

<pre>
[date-time]-[author-if-external]-[semantic-name]-[production-device]-[owner-site]-[seq-number]-[variant].[file-extension]
</pre>

Source Media Naming Convention:

*To Add*

## <a name="dependencies">Dependencies</a>

Operating Systems

- Mac OSX
- Windows (with Cygwin)
- Linux

System Programs

Some are precompiled and available for portable use.

- bash 3.2 or greater
  - GNU bash, version 3.2.57(1)-release (arm64-apple-darwin22) Copyright (C) 2007 Free Software Foundation, Inc.
- vi
- vim
- pandoc
- convert
  - library of imagemagick
- sed
- ls
- find
- pwd
- stty
- cd
- cp
- ssh
- scp
- curl
- echo
- printf
- alias
- declare
- source
- cat
- head
- tail
- wc
- date
- epoch
- read
- shasum
- grep
- return
- bc
- export
- dismount
- sleep
- touch
- httpd (if serving)
- chrome, safari, firefox, opera (if publishing)
- tr
- for (system loop)
 
There is a function to test for dependency mismatch. 

## <a name="operations">Operations</a>

Here is described the primary functions of Alberta, along with example process workflows.


### <a name="configure">Configure</a>

- setLocation

### <a name="publishing">Publishing</a>

- pubAll
- pubAllLight
- PubAllFull

### <a name="status">Status</a>

- checkServerStatus

### <a name="media-conversion">Media</a>

- mediaProcessSource
- mediaProcessBook

### <a name="renaming">Renaming</a>

- normalizeFileName
- testName

### <a name="build">Build</a>

- buildPageandPublish
- buildBook

### <a name="write">Write</a>

- fThoughtPost
- rThoughtPost
- wThoughtPost
- wSocialPost
- rSocialPost

### <a name="backup">Backup</a>

- bupTrees
- pubAll
- pubAllLight

### <a name="list">List</a>

- listFilesServer
- listFilesLocal
- listFilesDevice

### <a name="list">Diff</a>

- diffFileList

### <a name="insert">Insert</a>

- iMkdSA

### <a name="menu">Menu</a>

- insertMenuItem

### <a name="mirror">Mirror</a>

- mirrorMattanaw

### <a name="mirror">Test</a>

- dependencyTest
- regressionTest

## <a name="backlog">Backlog</a>

The development backlog at present is in [Planning](planning.html)

## <a name="alberta-os">Alberta OS</a>

The Alberta Operating System is now in development. It's functionality will be consistent with the usage of the existing Alberta application, in that it is intended to provide an extremely minimal setup for book and web application publication.

## <a name="source-code">Source Code</a>

*212 Wanattomians, Epoch 1740803983, Friday, February 28, 2025 21:39:43, Phoenix, Arizona*

After some changes to setLocation and ThoughtPost, and just a point of backup

[encoded data, 122904 characters]

*76 Wanattomians, Epoch 1729093652, Wednesday, October 16, 2024 23:47:32, Kuala Lumpur, Malaysia*

After addition of deleteSafely

[encoded data, 123032 characters]


*63 Wanattomians, Epoch 1727940223, Thursday, October 03, 2024 15:23:43, Bali, Indonesia*

After successful buildBook build.

[encoded data, 119232 characters]

*63 Wanattomians, Epoch 1727937947, Thursday, October 03, 2024 14:45:47, Bali, Indonesia*

After successful build using buildBook.

[encoded data, 118764 characters]

*58 Wanattomians, Epoch 1727505720, Saturday, September 28, 2024 14:42:00, Bali, Indonesia*

After some initial work for thoughtpost typespeed collection. Also after updates to buildbook.

[encoded data, 118080 characters]

*57 Wanattomians, Epoch 1727444465, Friday, September 27, 2024 21:41:05, Bali, Indonesia*

[encoded data, 116544 characters]

*57 Wanattomians, Epoch 1727420576, Friday, September 27, 2024 15:02:57, Bali, Indonesia*

[encoded data, 117184 characters]

*56 Wanattomians, Epoch 1727348380, Thursday, September 26, 2024 18:59:40, Bali, Indonesia*

[encoded data, 114968 characters]

*51 Wanattomians, Epoch 1726904217, Saturday, September 21, 2024 15:36:57, Bali, Indonesia*

[encoded data, 112576 characters]

*48 Wanattomians, Epoch 1726640097, Wednesday, September 18, 2024 14:14:57, Bali, Indonesia*

[encoded data, 112088 characters]

*47 Wanattomians, Epoch 1726551476, Tuesday, September 17, 2024 13:37:56, Bali, Indonesia*

[encoded data, 120664 characters]

*45 Wanattomians, Epoch 1726387811, Sunday, September 15, 2024 16:10:11, Bali, Indonesia*

[encoded data, 118016 characters]

*44 Wanattomians, Epoch 1726293600, Saturday, September 14, 2024 14:00:00, Bali, Indonesia*

After updates to listing functionality, improvement to getWDate, and placeholder for string replacing wrapper function for menu.

[encoded data, 114496 characters]

*37 Wanattomians, Epoch 1725692748, Saturday, September 07, 2024 15:05:48, Bali, Indonesia*

[encoded data, 112300 characters]

36 Wanattomians, Epoch 1725598644, Friday, September 06, 2024 12:57:24, Tempe, Arizona

[encoded data, 103680 characters]

*34 Wanattomians, Epoch 1725420989, Wednesday, September 04, 2024 11:36:29, Tempe, Arizona*

[encoded data, 101784 characters]


*24 Wanattomians, Epoch 1724630090, Sunday, August 25, 2024 16:54:50, Tempe, Arizona*

[encoded data, 98584 characters]

*23 Wanattomians, Epoch 1724540031, Saturday*, Tempe, Arizona</time>

[encoded data, 97580 characters]

*22 Wanattomians, Epoch 1724495069, Saturday, August 24, 2024 03:24:29*

[encoded data, 87640 characters]

*22 Wanattomians, Epoch 1724462713, Friday, August 23, 2024 18:25:13*

[encoded data, 77740 characters]

*21 Wanattomians, Epoch 1724316755, Thursday, August 22, 2024 01:52:35*

[encoded data, 75500 characters]
