Snake_Byte[3]: Getting Strung Out

There is geometry in the humming of the strings, there is music in the spacing of the spheres.

Pythagoras
How to Change Those Guitar Strings. | Superprof
We are not talking Guitar Strings

First, i  trust everyone is safe.

Second, this is the SB[3].  We are going to be covering some basics in Python of what constitutes a string, modifying a string, and explaining several string manipulation methods.

I also realized in the last Snake_Byte that i didn’t reference the book that i randomly open and choose the subject for the Snake_Byte.  I will be adding that as a reference at the end of the blog.

Strings can be used to represent just about anything.

They can be binary values of bytes, internet addresses, names, and Unicode for international localization.

They are part of a larger class of objects called sequences.  In fact, python strings are immutable sequences.  Immutability means you cannot change the sequence or the sequence does not change over time.

The most simplistic string is an empty string:

a = “ “ # with either singe or double quotes

There are numerous expression operations, modules, and methods for string manipulations.  

Python also supports much more advanced operations for those familiar with regular expressions (regex) it supports them via reEven more advanced operations are available such as XML parsing and the like.

Python is really into strings.

So let us get literal, shall we?

For String Literals there are countless ways to create and manipulate strings in your code:

Single Quotes:

a = `i w”ish you water’

Double Quotes;

A = “i w’ish you water”

Even triple quotes (made me think of the “tres commas” episode from Silicon Valley)

A = ```... i wish you water ```

Single and double quotes are by far the most used.  I prefer double quotes probably due to the other languages i learned before Python.

Python also supports the liberal use of backslashes aka escape sequences.  I’m sure everyone is familiar with said character `\`.  

Escape sequences let us embed bytecodes into strings that are otherwise difficult to type.

So let’s see here:

s = 't\nc\nt\njr'
print (s)
t
c
t
jr

So here i used ‘\n’ to represent the byte containing the binary value for newline character which is ASCII code 10.  There are several accessible representations:

‘\a\’ # bell

‘\b\’ #backspace

‘\f’ # formfeed for all the dot matrix printers we use 

‘\r’ #carriage return

You can even do different Unicode hex values:

‘\Uhhhhhhhh’ #32 bit hex count the number of h’s

With respect to binary file representations of note in Python 3.0 binary file content is represented by an actual byte string with operations similar to normal strings. 

One big difference between Python and another language like C is that that the zero (null) byte doesn’t terminate and in fact, there are no character string terminations in Python.  Also, the strings length and text reside in memory. 

s = 'a\0b\0c'
print (s)
len (s)
abc
5

So what can we do with strings in Python?

Well, we can concatenate:

a = "i wish"
print(len (a))
b = " you water"
print (len(b))
c = a + b
print (len(c))
print (c)
6
10
16
i wish you water

So adding two strings creates a new string object and a new address in memory.  It is also a form of operator overloading in place.  The ‘ + ‘ sign does the job for strings and can add numerics.  You also don’t have to “pre-declare” and allocate memory which is one of the advantages of Python.  In Python, computational processes are described directly by the programmer. A declarative language abstracts away procedural details however Python isn’t purely declarative which is outside the scope of the blog.  

So what else?  Well, there is indexing and slicing:

Strings are ordered collections of characters ergo we can access the characters by the positions within the ordering.

You access the component by providing a numerical offset via square brackets this is indexing.  

S = "i wish you water"
print (S[0], S[4], S[-1])
i s r

Since we can index we can slice:

S = "i wish you water"
print (S[1:3], S[2:10], S[9:10])
w wish you u

Slicing is a particular form of indexing more akin to parsing where you analyze the structure.

Python once again creates a new object containing the contiguous section identified by the offset pair.  It is important to note the left offset is taken to be the inclusive lower bound and the right is the non-inclusive upper bound. The inclusive definition is important here:  Including the endpoints of an interval. For example, “the interval from 1 to 2, inclusive” means the closed interval written [1, 2].  This means Python fetches all items from the lower bound up to but not including the upper bound. 

What about changing a string?

Let’s try it:

S = "i wish you water"
S[0] = "x"
---------------------------------------------------------------------------
TypeError Traceback (most recent call last) <ipython-input-67-a6fd56571822> 
in <module> 1 S = "i wish you water" ----> 2 S[0] = "x"
TypeError: 'str' object does not support item assignment

Ok, what just happened?  Well, remember the word immutable? You cannot change it in place.

To change a string you need to create a new one through various methods.  In the current case we will use a combination of concatenation, indexing, and slicing to bring it all together:

S = "i wish you water"
S = 'x ' + S[2]  +  S[3:17]
print (S)
x wish you water

This brings us to methods.

Stings in Python provide a set of methods that implements much more complex text processing.  Just like in other languages a method or function takes parameters and returns a value. A “method” is a specific type of function: it must be part of a “class”, so has access to the class’ member variables. A function is usually discrete and all variables must be passed into the function.

Given the previous example there is a replace method:

S = "i wish you water"
S = S.replace ('i wish you water', 'x wish you water')
print (S)
x wish you water

Let’s try some other methods;

# captialize the first letter in a string:
S = "i wish you water"
S.capitalize()
'I wish you water'

# capitalize all the letters in a string:
S = "i wish you water"
S.upper()
'I WISH YOU WATER'

# check if the string is a digit:
S = "i wish you water"
S.isdigit()
False

# check it again:
S = "999"
S.isdigit()
TRUE

# strip trailing spaces in a string:
S = "i wish you water     "
x = S.rstrip()
print("of all fruits", x, "is my favorite") 
of all fruits i wish you water is my favorite

The list is seemingly endless.  

One more caveat emptor you should use stings methods, not the original string module that was deprecated in Python 3.0

We could in fact write multiple chapters on strings by themselves.  However, this is supposed to be a little nibble of what the Snake language can offer.  We have added the reference that we used to make this blog at the end.  I believe it is one of the best books out there for learning Python.

Until Then,

#iwishyouwater

Tctjr

References:

Learning Python by Mark Lutz

Muzak To Blog By:  Mr. Robot Vol1 Original Television Soundtrack

Snake_Byte[2]: Comparisons and Equality

Contrariwise, continued Tweedledee, if it was so, it might be, and if it were so, it would be; but as it isn’t, it ain’t. That’s logic!

TweedleDee
Algebra, trigonometry and mathematical logic lessons by Janetvr | Fiverr
It’s all rational isn’t it?

First, i trust everyone is safe.

Second, i am going to be pushing a blog out every Wednesday called Snake_Bytes.  This is the second one hot off the press.  Snake as in Python and Bytes as in well you get it. Yes, it is a bad pun but hey most are bad. 

i will pick one of the myriads of python based books i have in my library and randomly open it to a page.  No matter how basic or advanced i will start from there and i will create a short concise blog on said subject.  For some possibly many the content will be rather pedantic for others i hope you gain a little insight.  As a former professor told me “to know a subject in many ways is to know it well.”  Just like martial arts or music performing the basics hopefully makes everything else effortless at some point.

Ok so in today’s installment we have Comparison and Equality.

I suppose more philosophically what is the Truth?

All Python objects at some level respond to some form of comparisons such as a test for equality or a magnitude comparison or even binary TRUE and FALSE.

For all comparisons in Python, the language traverses all parts of compound objects until a result can be ascertained and this includes nested objects and data structures.  The traversal for data structures is applied recursively from left to right.  

So let us jump into some simple snippets there starting with lists objects.  

List objects compare all of their components automatically.

%system #command line majik in Jupyterlab
# same value with unique objects
A1 = [2, (‘b’, 3)] 
A2 = [2, (‘b’, 3)]

#Are they equivalent?  Same Objects?
A1 == A2, A1 is A2
(True, False)

 So what happened here?  A1 and A2 are assigned lists which in fact are equivalent but distinct objects.  

So for comparisons how does that work?

  •  The ==  tests value equivalence

Python recursively tests nested comparisons until a result is ascertained.

  • The is operator tests object identity

Python tests whether the two are really the same object and live at the same address in memory.

So let’s compare some strings, shall we?

StringThing1 = "water"
StringThing2 = "water"
StringThing1 == StringThing2, StringThing1 is StringThing2
(True, True)

Ok, what just happened?  We need to be very careful here and i have seen this cause some really ugly bugs when performing long-chained regex stuff with health data.  Python internally caches and reuses some strings as an optimization technique.  Here there is really just a single string ‘water’ in memory shared by S1, S2 thus the identity operator evaluates to True.

The workaround is thus:

StringThing1 = "i wish you water"
StringThing2 = "i wish you water"
StringThing1 == StringThing2,StringThing1 is StringThing2
(True, False)

Given the logic of this lets see how we have conditional logic comparisons.

I believe Python 2.5 introduced ternary operators.  Once again interesting word:

Ternary operators ternary means composed of three parts or three as a base.

The operators are the fabled if/else you see in almost all programming languages.

Whentrue if condition else whenfalse

The condition is evaluated first.  If condition is true the result is whentrue; otherwise the result is whenfalse.  Only one of the two subexpressions whentrue and whenfalse evaluates depending on the truth value of condition.

Stylistically you want to palace parentheses around the whole expression.

Example of operator this was taken directly out the Python docs with a slight change as i thought it was funny:

is_nice = True
state = "nice" if is_nice else "ain’t nice"
print(state)

Which also shows how Python treats True and False.

In most programming languages an integer 0 is FALSE and an integer 1 is TRUE.

However, Python looks at an empty data structure as False.  True and False as illustrated above are inherent properties of every object in Python.

So in general Python compares types as follows:

  • Numbers are compared by the relative magnitude
  • Non-numeric mixed types comparisons where ( 3 < ‘water’) doesn’t fly in Python 3.0  However they are allowed in Python 2.6 where they use a fixed arbitrary rule.  Same with sorts non-numeric mixed type collections cannot be sorted in Python 3.0
  • Strings are compared lexicographically (ok cool word what does it mean?). Iin mathematics, the lexicographic or lexicographical order is a generalization of the alphabetical order of the dictionaries to sequences of ordered symbols or, more generally, of elements of a totally ordered set. In other words like a dictionary. Character by character where (“abc” < “ac”)
  • Lists and tuples are compared component by component left to right
  • Dictionaries are compared as equal if their sorted (key, value) lists are equal.  However relative magnitude comparisons are not supported in Python 3.0

With structured objects as one would think the comparison happens as though you had written the objects as literal and compared all the components one at a time left to right.  

Further, you can chain the comparisons such as:

a < b <= c < d

Which functionally is the same thing as:

a < b and b <= c and c < d

The chain form is more compact and more readable and evaluates each subexpression once at the most.

Being that most reading this should be using Python 3.0 a couple of words on dictionaries per the last commentary.  In Python 2.6 dictionaries supported magnitude comparisons as though you were comparing (key,value) lists.

In Python 3.0 magnitude comparisons for dictionaries are removed because they incur too much overhead when performing equality computations.  Python 3.0 from what i can gather uses an in-optimized scheme for equality comparisons.  So you write loops or compare them manually.  Once again no free lunch. The documentation can be found here: Ordering Comparisons in Python 3.0.

One last thing.  There is a special object called None.  It’s a special data type in Python in fact i think the only special data type.  None is equivalent to a Null pointer in C.  

This comes in handy if your list size is not known:

MyList = [None] * 50
Print (MyList)
[None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None]

The output makes me think of a Monty Python skit. See what I did there? While the comparison to a NULL pointer is correct the way in which it allocates memory and doesn’t limit the size of the list it allocates presets an initial size to allow for future indexing assignments. In this way, it kind of reminds me of malloc in C.  Purist please don’t shoot the messenger. 

Well, i got a little long in the tooth as they say.  See what i did again?  Teeth, Snakes and Python.

See y’all next week.

Until Then,

#iwishyouwater

@tctjr

Muzak To Blog By: various tunes by : Pink Martini, Pixies, Steve Miller.

Book Review: How To Read A Book

Reading is a basic tool in the living of a good life.

Mortimer Adler
My copy of HTRAB

First, i hope everyone is safe.

Second, i decided to write this blog based on two unrelated events: (1) as of late during the pandemic i have been reading commentary “online” of varying degrees such as “I want to read more books” and “Can you recommend some books to read?”  (2) i was setting out to write a technical blog on a core machine learning subject and whilst putting together the bibliography i realized i wasn’t truly performing or rather obtaining “level four reading” as outlined in the book i am going to review and by definition recommend.

i also am an admitted bibliomaniac and even more so nowadays an autodidact. i contracted the reading bug from my mother at an early age. i read Webster’s Dictionary twice in grade school. Still to this day she sends me the first edition or rare books to read. Thanks, Mom.

This is the stack of references.

As part of this book review and hopefully subsequent blog on a technical subject within machine learning, i decided to read the book a third time.  Which for this blog and review is an important facet.

As i was thinking about the best way to approach this particular book review i was pondering reading and books in general.  Which i came yet again to the conclusion:

There is much magic and wonder in this world.  Reading to me is a magical process.

It’s a miracle a child learns to speak a language!  It’s a miracle we can read! It’s even more of a miracle given the two previous observations that Humans are such astounding language generators (and authors)! 

One section of many in my library office

What an astonishing thing a book is. It’s a flat object made from a tree with flexible parts on which are imprinted lots of funny dark squiggles. But one glance at it and you’re inside the mind of another person, maybe somebody dead for thousands of years. Across the millennia, an author is speaking clearly and silently inside your head, directly to you. Writing is perhaps the greatest of human inventions, binding together people who never knew each other, citizens of distant epochs. Books break the shackles of time. A book is proof that humans are capable of working magic.

Carl Sagan

i consider a  book a “dual-sided marketplace” for magical access.

“How To Read a Book” by Mortimer J. Adler was originally published in 1940 with a re-issue in 1972.  The 1970s were considered the decade of reading in the United States.

In the 70’s the average reading level in the United States for most content speeches, magazines, books, etc was the 6th grade.  It is now surmised the average reading level and reading content is hovering around the 4-5th grade.

This brings us to the matter at hand the book review. 

The book’s author ​​Mortimer Jerome Adler (December 28, 1902 – June 28, 2001) was an American philosopher, educator, encyclopedist, and popular author. As a philosopher, he worked within the Aristotelian and Thomistic traditions. He taught at Columbia University and the University of Chicago, served as chairman of the Encyclopædia Britannica Board of Editors, and founded his own Institute for Philosophical Research.  

There is no friend as loyal as a book.

Ernest Hemmingway

The book states upfront that there is great inequality in reading with respect to understanding and that understanding must be overcome.  Reading for understanding is not just gaining information.  There is being informed and there is being enlightened when reading a book.  How To Read A Book (HTRAB) is precisely concerned with the latter.  If you remember what you read you have been informed. If you are enlightened from a book you know what the author is attempting to say, know what he means by what they say, and can concisely explain the subject matter. Of course, being informed is a prerequisite to being enlightened.

Professor Adler mentions in the book via Montaingne where he speaks of “An abecedarian ignorance that precedes knowledge, and a doctoral ignorance that comes after it.” 

Let’s first deal with Abcederian:  It essentially means dealing with alphabetized, elementary, rudimentary, or novel levels.  Ergo the novice ignorance arrives first.  The second are those who misread books.  Reading a ton of books is not reading well.  Professor Adler calls them literate ignoramus.  The said another way there are those that have read too widely and not well. 

Widely read and well-read are two vastly different endeavors.

The Greek word for learning and folly is sophomore. From google translate sophomore in Greek: δευτεροετής φοιτητής

This book pulls no punches when it comes to helping you help yourself.

HTRAB is in fact just that how to gain the most out of a book.  The book explains the four levels of reading:

  1. Elementary reading, rudimentary reading, basic reading or initial reading.  This is where one goes from complete illiteracy to at the very least being able to read the words on the page.  
  2. Inspectional reading.  This is where one attempts to get the most out of a book in a prescribed about of time.  What is this book about?
  3. Analytical reading places heavy demands on the reader.  It is also called thorough reading, complete reading or good reading.  This is the best reading you can do.  The analytical reader must ask themselves several questions of inquiry, organizational and objective natures.  The reader grasps the book.  The book at this point becomes her own.  This level of reading is precisely for the sake of understanding.  Also you cannot bring your mind from understanding less to understanding more unless you have skill in the area of analytical reading. 
  4. Syntopical Reading is the highest level.  It is the most complex and systematic reading and it makes the most demands on the reader.  Another name for this level is comparative reading.  When reading syntopically the reader accesses and reads many books placing them in relation to one another where the reader is able to construct and an analysis of knowledge that previously did not exist.  Knowledge creation and synthesis is the key here.

This is what i realized i wasn’t doing with respect to the machine learning blog.  Yes, i ranked and compared the references against one another but did i truly synthesize a net new knowledge with respect to my reading?  

Tools of The Art of Reading

The HTRAB goes on to dissect the processes of each of these four steps and how to obtain them and then move on to the next level.  This reminds me of a knowledge dojo a kind of belt test for readership.

The book also goes on to discuss how to not have any predetermined biases about what the book is or is not.  This is very important i have fallen prey to such behaviors and cannot emphasize enough you must proceed into the book breach with a clear mind

Further, the author took their valuable time to write the book and you took the cash and time to obtain the book. 

Give the respect the book deserves.

Some books are to be tasted, others to be swallowed, and some few to be chewed and digested.

Francis Bacon

The book goes in-depth about how we move from one level of reading to eventually synoptical reading and the basis for this is reading over and over whilst at every read the book is anew and alive with fresh edible if you will information.

To read and to ruminate is derived from the cow.  From Wikipedia we have:

“Ruminants are large hoofed herbivorous grazing or browsing mammals that are able to acquire nutrients from plant-based food by fermenting it in a specialized stomach prior to digestion, principally through microbial actions.”

So to chew the cud or re-chew if you will over and over – ruminating upon the subject matter. The book states in most cases that it takes three reads to obtain synoptical reading levels.  Thus my comment previously about reading this a third time.  Amazingly it clicked.

The folks who need self-help books don’t read them and those that don’t need them do read them.

A.S.L.

The book further explains how to read everything from mathematics to theology.  With very precise steps.  

i recommend this book over and over to folks and i usually get online comments like “so meta’ or “LOL”.  In-person i get raise eyebrows or laughter.

This is not a laughing matter oh dear reader.

The two following lectures deal with HRTAB from the son of someone who worked directly with Professor Adler. His name is Shaykh Hamza Yusuf. Professor Yusuf is an American neo-traditionalist Islamic scholar and co-founder of Zaytuna College. He is a proponent of classical learning in Islam and has promoted Islamic sciences and classical teaching methodologies throughout the world. He is a huge proponent of HRTAB and recommends it in many of his lectures and uses it as a basis for his teachings in many forms. In no shape or form am I endorsing any religious or political stance with posting these videos. i am only posting for the information-rich and amazing lectures alone. He covers several areas of academics as well as several areas of religion and even pop-fad behaviors with respect to reading.

Here are both parts of the lecture:

Get the book to learn how to arrive at chewing and digesting your beloved books to the level of syntopical nirvana.  Your mind and others’ minds will thank you for it. Here is a link on Amazon:

Until then,

#iwishyou water.

Be safe.

@tctjr

Muzak To Blog by:  Cheap Trick Albums.  I had forgotten how good they were.  

Review: Zappa (The Official Documentary)

Art is making something out of nothing, and selling it.

Frank zappa
Frank Zappa

First i hope everyone is safe.

Second i’ll am writing about something off my usual beaten path and that is a movie review.  Yes once in a while i watch ye  ole “boob tube” as they used to call it back in the day.

This movie is a special movie to me as it is about the life of Frank Zappa the rock and roll guitar player, the composer, the artist, the movie maker, the recoding engineer, the American representative to Czechoslovakia, (or Czecho-Slovakia)  and most importantly a man who fervently fought for free speech.  Mainly at least for me it is a testament to someone who was constantly creating and recording that creation as well as documenting and saving those creations. While i’ve been into Zappa since a teenager i really started trying to understand the magnitude whilst in graduate school at the University of Miami where i was lucky enough to engineer and work with a group called the Zappa Ensemble. The musicianship and complexity blew my mind and it was hilarious all at the same time! It finally clicked!

Kerry Mcnabb and Frank Zappa getting physical in the mixing process (photo courtesy Magnolia Pictures)

Alex Winter was the main creative force behind Zappa with Frank Zappa’s oldest son Ahment Zappa producing. 

Zappa Trailer:

One of my greatest enjoyments is being part of making or being in deep active listening of this thing human’s call music and Frank Zappa to me is one of the greatest composers of the 20th century of which this movie showcases.  His ability to meld performance, musician ship and lyrical satire i believe will never be seen again in my time or possibly anyones time.

lf you’re going to deal with reality, you’re going to have to make one big discovery: Reality is something that belongs to you as an individual. If you wanna grow up, which most people don’t, the thing to do is take responsibility for your own reality and deal with it on your own terms. Don’t expect that because you pay some money to somebody else or take a pledge or join a club or run down the street or wear a special bunch of clothes or play a certain sport or even drink Perrier water, it’s going to take care of everything for you.

Frank Zappa

The movie deeply focuses on the extreme drive Zappa had to create and duplicate the sound that he heard in his head transferring it from paper to little dots of which we call musical notation then taking it to the studio and attempting to reproduce it as accurately as possible to the sound being heard inside his head.  The recording process to me is truly astounding.  It’s what i term “a perceptual to parameterization to physical transform”.  He was self taught in all aspects of his creative pursuits of which he was what i consider to be an ultimate autodidactic.

This movie starts off with Frank’s last guitar performance then cuts to him  in his Vault of recordings and VHS tapes identifying original master recordings.  I was awestruck.  

You’ve got to be digging it while it’s happening ’cause it just might be a one shot deal.

Frank Zappa

Through my research on the film i found out that alex Winter was Bill in the “Bill and Ted” films although i have no idea what those are as i haven’t seen them only heard about them.  Evidently he has been making documentaries for a decade. He approached Zappa’s widow Gail (the film is dedicated to her as she died in 2015)  for permission on the project.  The result is a a cacophony of a life lived loud with constant feeding the disease of composition and creativity.

Winter was given complete access to the Zappa family archives which as i mention above was called The Vault.  There are many shots of The Vault which is a treasure trove of both audio and video recordings all shapes sizes and formats.  

There is also a ton of footage of his family and how he grew up.  Initially his family completely opposed him getting involved with music and Zappa also notes that they were extremely poor. They also note Zappa was interested chemistry at an early age and tried to blow his school up.

The illusion of freedom will continue as long as it’s profitable to continue the illusion. At the point where the illusion becomes too expensive to maintain, they will just take down the scenery, they will pull back the curtains, they will move the tables and chairs out of the way and you will see the brick wall at the back of the theater.

Frank Zappa

There is a great section of Frank “On The Hill”  testifying before the senate during the PMRC hearings on album and music lyrics which he definitely as i do consider censorship.  The movie then details his pursuit of anything that looks or smells like censorship.  If it weren’t for him doing this at every turn i believe things would be very different even a much a it is now. Then i wonder, today in this environment, he probably couldn’t publish a lot of the music he wrote.

The salient point i was reminded of in this movie is  don’t waste your time go make a dent in this thing we call life and create at all costs even if no one – not one person – views, listens or uses the creation at least one person will and that will be the person of You.  

Never compromise and always choose quality over quantity and remember give “them” a good laugh.  They might not get the joke but at least you can laugh.  

Why do you necessarily have to be wrong just because a few million people think you are?

Frank Zappa

To give you an idea of the sheer output and dedication to the art while alive Zappa released 62 albums. Since 1994, the Zappa Family Trust has released 54 posthumous albums as of July 2020, making a total of 116 albums/album sets.

This dear reader should remind you of one aspect of your life:  Find your passion and dwell on it deeply, daily, hourly, minute by precious minute.  

Personally i hope The Vault is all mined, uncovered, reformatted and converted so that the world knows about the volume and creativity.

If you think that Zappa was all about raunchy lyrics, complex poly rhythms and symphonies most ensembles and orchestras couldn’t play i urge you to listen to this song that ends the documentary.  The documentary ends with amazing shots of his house  and uses a live version that is recorded in 1978 as the back drop. Below are several versions including the studio version from Joe’s Garage album because the comments by the “Central Scrutinizer” are hilarious and are juxtaposed against what i consider to be one of the most amazing pieces of guitar work ever recorded.  The sadness and lamenting of the piece is deafening.  However at the same time as someone who i have met in the land of suspicious coincidence said it is intoxicating.  

For completeness here is the live version in 1978

And here is a version in 2013 by his son dweezil zappa crying while he is playing.  

There is a four “disc” set on itunes of the documentary soundtrack here: Zappa Soundtrack.

Frank Zappa died on December 4, 1993 of prostate cancer.  He is survived by his four progeny: Moon, Dweezil, Ahment and Diva Zappa.  

Until then,

#iwishyouwater

@tctjr

Muzak To Blog By:  Zappa Soundtrack

Snake_Byte[1]_PyForest

The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code — not in reams of trivial code that bores the reader to death.

Guido van Rossum

Hi all first always i trust everyone is doing well and safe.

Second i had started writing another blog on some first principles design issues in machine learning but this morning while i was just browsing i came across a python library called Pyforest. Pyforest claims to have 99% of your import library woes solved.

At one of my previous companies, we created this flow from the time you walk in get your rig and sit down you have access to a superpack.tar.gz with all of the necessary python dependencies in fact even any bash scripts that you might need once you got your rig to start doing PRs the same day you started work.  This was pre-anaconda days so it worked well then most moved over to dependency management via anaconda.  However, this didn’t solve one of the main issues.  What when and how do you import?

i am sure if you are like me i keep the proverbial “untitled.ipynb” sitting around just for a notepad of sorts for the main imports (just don’t click and press X accidentally!).

Which is where pyforest comes into the reptilian purview.

The github is funny it says:

pyforest – feel the bliss of automated imports.”

Then it goes on to say:

“Writing the same imports over and over again is below your capacity. Let pyforest do the job for you.”

Being this isn’t supposed to be tl;dr blog (only a little nibble from a reptile) lets get started.

Installation:

You need to have python version 3.6 or above.  The github is once again funny (we like f-strings).  

So first make sure you are in your venv. 

 python3 --version
 pip install --upgrade pyforest
 python -m pyforest install_extensions 

Low and behold: 

Downloading pyforest-1.0.3.tar.gz

Needless to say i was skeptical.  

Questions – autocomplete? Stomping on variables?  Grinding to a halt because maybe import *?

Nope. Here is proof:

Ok nice parlor trick.

Lets try plotting something because i always space out and just type plt:

Ok now you have my attention.

i then tried a simple linear regression with sklearn

So this library definitely saves you time and the folks over at bamboolib have a great sense of humor which i really appreciate.

You can check to see a list of imported libraries dir(pyforest) kinda like a micro pip freeze.

Here is the github: pyforest github.

+1 for my recommendation.

until then,

#iwishyouwater

@tctjr

Muzak To Blog To: Cold Fact by Rodriguez 

Fwiw if you get a chance watch “Searching For Sugarman” which is a documentary about Rodriguez.  Astounding.

Freedom From The Flesh

The human body resonates at the same frequency as Mother Earth. So instead of only focusing on trying to save the earth, which operates in congruence to our vibrations, I think it is more important to be one with each other. If you really want to remedy the earth, we have to mend mankind. And to unite mankind, we heal the Earth. That is the only way. Mother Earth will exist with or without us. Yet if she is sick, it is because mankind is sick and separated. And if our vibrations are bad, she reacts to it, as do all living creatures.

Suzy Kassem, Rise Up and Salute the Sun: The Writings of Suzy Kassem

Image from: The Outer Limits (1963) S 2 E 15 “The Brain of Colonel Barham”

i have been considering writing a series of blogs on the coming age of Cybernetics. For those unaware Cybernetics was a term coined by one of my heroes Dr. Norbert Weiner. Dr. Weiner was a professor of mathematics at MIT who early on became interested in stochastic and noise processes and has an entire area dedicated to him in the areas of Weiner Estimation Theory. However, he also is credited as being one of the first to theorize that all intelligent behavior was the result of feedback mechanisms, that could possibly be simulated by machines thereby coining the phrase “Cybernetics”. He wrote two seminal books in this area: (1) “Cybernetics” (2) “The Human Use of Humans”. This brings us to the present issue at hand.

The catalyst for the blog came from a tweet:

More concerning Ted is how long before people start paying for upgrades. What effects will this have when you have achieved functional immortality?

@mitchparkercisco

This was in response to me RT’ing a tweet from @alisonBLowndes concerning the International Manifesto of the “2045” Strategic Social Initiative. An excerpt from said manifesto:

We believe that before 2045 an artificial body will be created that will not only surpass the existing body in terms of functionality but will achieve perfection of form and be no less attractive than the human body. 

2045 Manifesto

Now for more context. I am a proponent of using technology to allow for increased human performance as i am an early adopter if you will of the usage of titanium to repair the skeletal system. i have staples, pins, plates and complete joints of titanium from pushing “Ye Ole MeatBag” into areas where it did not fair so well.

There are some objectives of the movement of specific interest is Number Two:

To create an international research center for cybernetic immortality to advance practical implementations of the main technical project – the creation of the artificial body and the preparation for subsequent transfer of individual human consciousness to such a body.

2045 Manifesto

This is closely related to Transhumanism which is more of a philosophy than an execution. The way i frame it is Transhumanism sets the philosophical framework for cybernetics. The contemporary meaning of the term “transhumanism” was foreshadowed by one of the first professors of futurology, a man who changed his name to FM-2030. In the 1960s, he taught “new concepts of the human” at The New School when he began to identify people who adopt technologies, lifestyles and worldviews “transitional” to post-humanity as “transhuman“.

Coming from a software standpoint we could map the areas into pipelines and deploy as needed either material biological or conscious. We could map these areas into a CI/CD deployment pipeline. .

For a direct reference, i work with an amazing practicing nocturnist who is also a great coder as well as a medical 3D Printing expert! He prints body parts! It is pretty amazing to think that something your holding that was printed that morning is going to enable someone to use their respective limbs or walk again. So humbling. By the way, the good doctor is also a really nice person. Just truly a great human. Health practitioners are truly some of humanity’s rockstars.

He printed me a fully articulated purple octopus that doesn’t go in the body:

Building upon this edict and for those who have read William Gibson’s “Neuromancer,” or Rudy Ruckers The Ware Tetralogy: Software, Wetware, Realware, Freeware “it calls into question the very essence of the use for the human body? Of the flesh is the only aspect we truly do know and associate with this thing called life. We continually talk about the ‘Big C Word” – Consciousness. However, we only know the body. We have no idea of the mind. Carnality seems to rule the roost for the Humans.

In fact most of the acts that we perform on a daily basis trend toward physical pleasure. However what if we can upgrade the pleasure centers? What if the whole concept of dysphoria goes away and you can order you a net-new body? What *if* this allows us as the above ponders to upgrade ad nauseam and live forever? Would you? Would it get tiresome and boring?

i can unequivocally tell you i would if given the chance. Why? Because if there *is* intelligent life somewhere then they have a much longer evolutionary scale that we mere humans on earth do not and they have figured out some stuff let’s say that can possibly change the way we view life in longer time scales ( or time loops or even can we say Infinite_Human_Do_Loops? ).

i believe we are coming to an age where instead of the “50 is the new 30” we can choose our age – lets say at 100 i choose new core and legs and still run a 40-yard dash in under 5 seconds? i am all for it.

What if you choose a body that is younger than your progeny?

What if you choose a body that isnt a representation of a human as we know it?

All with immortality?

i would love to hear folks thoughts on the matter in the comments below.

For reference again here is the link -> 2045 Manifesto.

Until then,

Be Safe.

#iwishyouwater

@tctjr

Muzak To Blog By: Maddalena by Ennio Morricone

Rolling Ubuntu On An Old Macintosh Laptop

“What we’re doing here will send a giant ripple through the universe.”

Steve Jobs

I have an old mac laptop that was not doing anyone much use sitting around the house.  i had formatted the rig and due to it only being an i7 Pentium series mac you could only roll up to the Lion OS.  Also, i wanted a “pure” Linux rig and do not like other form factors (although i do dig the System 76 rigs).

So i got to thinking why dont i roll Ubuntu on it and let one cat turn into another cat?  See what i did there? Put a little shine on Ye Ole Rig? Here Kitty Kitty!

Anyways here are the steps that i found worked the most painless.

Caveat Emptor:  these steps completely wipe the partition and Linux does run natively wiping out any and all OSes. You WILL lose your OS X Recovery Partition, so returning to OS X or macOS can be a more long-winded process, but we have instructions here on how to cope with this: How to restore a Mac without a recovery partition.  You are going All-In!

On that note i also don’t recommend trying to “dual-boot” OS X and Linux, because they use different filesystems and it will be a pain.  Anyways this is about bringing new life to an old rig if you have a new rig with Big Sur roll Virtual Box and run whatever Linux distro you desire.

What you need:

  • A macintosh computer is the point of the whole exercise.  i do recommend having NO EXTERNAL DRIVES connected as you will see below.
  • A USB stick with at least 8 gig of storage.  This to will be formatted and all data lost.
  • Download your Linux distribution to the Mac. We recommend Ubuntu 16.04.4 LTS if this is your first Linux install. Save the file to your ~/Downloads folder.
  • Download and install an app called Etcher from Etcher.io. This will be used to copy the Linux install .ISO file to your USB drive.

Steps to Linux Freedom:

  • Insert your USB Thumb Drive. A reminder that the USB Flash drive will be erased during this installation process. Make sure you’ve got nothing you want on it.

  • Open Etcher Click Select “Image”. Choose ubuntu-16.04.1-desktop-amd64.iso (the image you downloaded in Step 1).  NOTE: i had some problems with 20.x latest release with wireless so i rolled back to 16.0x just to get it running. 
  • Click “Change” under Select Drive. 

  • Pick the drive that matches your USB Thumb Drive in size. It should be  /dev/disk1 if you only have a single hard drive in your Mac. Or /dev/disk2, /dev/disk3 and so on (if you have more drives attached). NOTE: Do not pick /dev/disk0. That’s your hard drive! Pick /dev/disk0 and you’ll wipe your macOS hard drive HEED THY WARNING YOU HAVE BEEN WARNED! This is why i said its easier if you have no external media.

  • Click “Flash!” Wait for the iso file to be copied to the USB Flash Drive. Go browse your favorite socnet as this will take some time or hop on your favorite learning network and catch up on those certificates/badges.

  • Once it is finished remove the USB Flash Drive from your Mac. This is imperative.
  • Now SHUTDOWN the mac and plug the Flashed USB drive into the mac.

  • Power up and hold the OPTION key while you boot.
  • Choose the EFI Boot option from the startup screen and press Return.
  • IMMEDIATELY press the “e” key.  i found you need to do this quickly otherwise the rig tries to boot.

  • Pressing the “e” key will enter you into “edit mode” you will see a black and white screen with options to try Ubuntu and Install Ubuntu. Don’t choose either yet, press “e” to edit the boot entry.
  • This step is critical and the font maybe really small so take your time.  Edit the line that begins with Linux and place the word "nomodeset" after "quiet splash". The whole line should read: "linux /casper/vmlinuz.efifile=/cdrom/preseed/ubuntu.seed boot=casper quiet splash nomodeset --

  • Now Press F10 on the mac.
  • Now its getting cool! Your mac and Ubuntu boots into trial mode!

(Note: at this point also go browse your favorite socnet as this will take some time or hop on your favorite learning network and catch up on those certificates/badges.)

  • Double-click the icon marked “Install Ubuntu”. (get ready! Here Kitty Kitty!)
  • Select your language of choice.
  • Select “Install this third-party software” option and click Continue. Once again important.
  • Select “Erase disk and install Ubuntu” and click Continue.
  • You will be prompted for geographic area and keyboard layout.
  • You will be prompted to enter the name and password you want to use (make it count!).
  • Click “Continue” and Linux will begin installing!
  • When the installation has finished, you can log in using the name and password you chose during installation!
  • At this point you are ready to go!  i recommend registering for an ubuntu “Live Update” account once it prompts you.
  • One side note:  on 20.x update there was an issue with the Broadcom wireless adapter crashing which then reboots you without wireless.  i am currently working through that and will get back you on the fix!

Executing the command less /proc/cpuinfo will detail the individual cores. It looks like as i said the i7 Pentium series!

Happy Penguin and Kitten Time!  Now you can customize your rig!

Screen shot of keybase running on my ubuntu mac rig!

And that is a wrap! As a matter of fact i ate my own dog food and wrote this blog on the “new” rig!

Until Then,

#iwishyouwater

@tctjr

Muzak to blog by: Dreamways Of The Mystic by Bobby Beausoliel

Vaspar 21 Minute Workout (Review)

The last three or four reps is what makes the muscle grow. This area of pain divides the champion from someone else who is not a champion.

Arnold Schwarzenegger

Due to my hobbies and extracurricular activities i sometimes get in situations that are disadvantageous to my physical well being. Let’s just say i have my number of sprains, broken bones, and metal parts in my body. Which in addition to being a fan of Dr. Norbert Wiener’s work i also believe in Cybernetics. That said over the past number of years i have had recurring issues with neck, back, shoulder, and hip chronic pain due to what i would term having too much fun whether it be martial arts, lifting weights, surfing, snowboarding etc. Through Lisa Maki (click her name for her story on her trials of pain) i was introduced to Marc Dubick, MD who is a Pain Medicine Specialist in Charleston, SC, and has over 46 years of experience in the medical field. He graduated from the University Of Kentucky medical school in 1975. He also happens to be a really amazing human being. Here is a picture of Dr. Marc Dubick and Your Author:

Me and The Doc

I started just as Lisa Maki did with injections of recombinant human growth hormone and testosterone to the painful and dysfunctional areas in my body that would otherwise have had to be operated on or replaced. Over the years while these injections are extremely painful they eventually help and heal the affected areas. i prefer the short term pain over the complexities of evasive surgery.

Dr Dubick has since retired and handed over the reins to a great doctor (and human) Dr. Todd Joye who is a partner at interveneMD. He is continuing the rGH therapy and it is proving as expected just as effective. This brings us to our current reason behind this blog. He has employed a rehabilitation – human performance machine called Vaspar.

Brochure of VASPAR

As it turns out professional sports teams and the military have started utilizing this machine with astounding results. To understand the physical benefits Vasper provides, they conducted research backed by supporting literature. In order to study its impact effectively, Vasper conducted a safety study, which verifies Vasper is safe and easy to use for most. Dr. Joye told me when he took delivery he had been working with the creator of Vaspar and Vasper users talk about increases in energy and strength. In a small study, they observed significant increases in testosterone as a result of Vasper use. Though there may be other factors at play, it is likely this testosterone boost explains the improvements in performance after Vasper use, which was discovered in a different study. Combined with its low impact physically and physiologically, the anabolic hormone increase with Vasper use is an unbeatable combination for anyone who wants to increase their physical performance. It is well known that testosterone is a key hormone that is involved in regulating muscle growth, bone density, fat metabolism, and mood in both men and women. The Vaspar folks explored this hormone with five professional baseball players in 8 Vasper sessions over 2 weeks. They data showed an 80% increase in free testosterone levels, with an average increase of 132% across all participants.

Purported levels of free testosterone level increase:

Given how much i pursue all things in human performance for mental and physical edges i was skeptical. However i am open to trying (almost) anything once if it shows the benefits of performant edge. Thus i went for my first 21 minute session.

Your author doing his best duck face:

In preparation, you get suited up in cuffs for your thighs, biceps, and neck. You train barefooted as the pedals are also supercooled. The thing that attracted me to the Vaspar workout was that it is low impact. The principles behind Vaspar are three areas: compression, cooling, and interval training.

Compression and cooling create the effect of high intensity (anaerobic) exercise without the major time soak or muscle damage. Compression also allows lactic acid to accumulate to your muscles which drives signals to your brain requesting higher amounts of human growth hormone and testosterone to accelerate repair and recovery. The cooling also increases oxygen to the muscles.

For interval training, it is obvious to anyone who has trained that is the way to go as far as i am concerned to generate high amounts of caloric burn in a shorter amount of time with higher amounts of lactic acid buildup which create a feedback effect.

The system can be customized for limb reach and throw as well as numerous analytics such as pulse oxygen, pulse rate, wattage burned etc.

So what happened?

The staff at interveneMD set the system to slightly higher than intermediate. Well dear reader it blew my mind in the first and second sessions. In 21 minutes it felt like i had been deadlifting substantial weight with sprints in between sets for at least an hour. Which i have done many times before with an extremely sore body afterward. The workout was very intense and exhilarating.

To my amazement, i had zero pain and in fact, greatly reduced pain probably to the endorphins released as well as the amount of HGH and testosterone.

My favorite part is after the interval workout you lie on a super cooling mat for 6 minutes. Nighty night bunny rabbit!

For anyone who is into human performance or needs rehabilitation of any means i highly recommended finding a facility that has one of these for use. As a note health insurance does pay some portion!

In full transparency i have no affiliation with interveneMD or the makers of VASPAR. This blog was written in order to amplify others and the fact i was totally amazed after so many years of searching for novel ways to workout.

Once again here are the links

interveneMD

Vaspar

Here is a great reference to Dr Marc Dubicks paper on rGH:

“Use of localized human growth hormone and testosterone injections in addition to manual therapy and exercise for lower back pain: a case series with 12-month follow-up.”

Hope everyone is safe!

Until then,

#iwishyouwater

tctjr

Muzak To Blog To: Johnny Smith – Kaleidoscope

FLAW: Not Thinking Big Enough or What Is Success?

I am an old man and have known a great many troubles, but most of them never happened.

Samuel Clements

This morning whilst trying to motivate myself at 5AM EST to work out and lift weights i had a thought:

We almost never think big enough in our endeavors and when we think we are thinking big enough we hear the word: “No” in some form or fashion.

After finally willing myself to workout I walked into my living room where i have some music stuff and this poster is one of my most prized possessions.  It was given to me when i was leaving apple.  

It was one of only three made during the famous “Here’s To The Crazy Ones” Campaign from Apple:

Here’s To The Crazy Ones Video

You might know the narrator of the video.  He was a college drop out and was fired from the company he founded.  Many miss him as I do miss him.  Why is this important?

Let us whittle this back some more. i was thinking when we picture ourselves doing something or in the process of doing something do we stop short of our truest desires?  Better yet if we have a passion why don’t we go after it will a full heart?  Or while we are executing on the said passion we stop short?  

Maybe it starts young.  Lets look at something that seems very innocuous at first.  The simple word NO.

It hath been said words have meanings so let’s search – shall we?

Taken from Online Etymology Dictionary | Origin, history and meaning of English word

NO (adv)

“not in any degree, not at all,” Middle English, from Old English na, from ne “not, no” + a “ever.” The first element is from Proto-Germanic *ne (source also of Old Norse, Old Frisian, Old High German ne, Gothic ni “not”), from PIE root *ne- “not.” Second element is from Proto-Germanic *aiwi-, extended form of PIE root *aiw- “vital force, life, long life, eternity.” Ultimately identical to nay, and the differences of use are accidental.”

Years ago a UCLA survey reported that the average one-year-old child hears the word, No! more than 400 times a day! You might think this is an exaggeration. However when we say  No! we usually say, No, no, no!. That’s three times in three seconds! If that child (or adult) is particularly active then i could see this being a valid statistic.  By the way for any parents out there don’t feel bad we have all done it.

(SIDE NOTE: i do realize there are lies, damn lies and statistics – yet i digress).

What do you do when you are constantly being told what not to do? Or being told NO!  You can’t do that! We then “grow up”.

The passion and wonder of childhood fade.  Yet it doesnt have to does it?

Now more than ever there are ways to monetize that passion unless your independently wealthy then you need not worry at all about such things.

One of my interview questions:

What is your true passion?

i truly want to know. What do YOU WANT?  Whatever it is or whatever the person says i usually tell them to go do IT instead of what they think they should be doing. Caveat Emptor: There are always consequences.

I’ve heard all kinds of answers and more to this question: grow mushrooms, paint, be a comedian, peace corps, build the next (insert Apple, Microsoft, Google, etc herewith), fireman, and yes even a porn star.  

Now why i am referencing the word ‘NO’ with respect to not thinking grandiose, audacious, stupendously – enough?

Because we are told you can’t by those that do not understand YOUR passion or those that cannot do what you do and to be more even more succinct they are probably scared at some level.  

Now did i ever say it was easy?  No in fact when it appears to be completely dire straits (not to be confused with the band) it is usually the most opportunistic situation. Storms never last they say and you will always most certainly feel like you are in some form of a storm. “Ordo Ab Chaos” as the old saying goes.

You will encounter criticism, countless setbacks, and ostracization in some cases, depending on how big your passions and executions are in certain areas.  Do not let these deter you.  The loudest negative voice you will have to deal with is the small voice inside your head at night – Nighty Night, but ya can’t do that….

Also to that point remember your passion is just a thought until you execute on it. Ideas are cheap.  Everyone has ideas every day that they never act on because of homeostasis or they create a reason not to act upon thier passion.

One of my all-time favorite guitarist is Steve Vai. He was 17 years old when he played with Frank Zappa.

In this video he talks about what it takes to be successful.

The only thing that is holding you back is the way YOU are thinking.  Again – What is it you truly want?

Whatever it is imagine yourself being there.

All of a sudden the reasons you can’t do it flood in and the word NO is echoed.

In the worst of times go to the larger big audacious outrageous picture of you executing your passion.

Hold it and make it precious.

Then move Ever Forward toward the next step closer to that vision as you become a NO Collector from all of the naysayers that say it cannot be done. For every NO you collect you are one step closer to your success.

Muzak To Blog To: Rome “Flight In Formation”.

Until then,

Be safe.

#iwishyouwater

@tctjr

Computing The Human Condition – Project Noumena (Part 2)

In the evolution of a society, continued investment in complexity as a problem-solving strategy yields a declining marginal return.

Joseph A. Tainter

Someone asked me if from now on my blog will only be about Project_Noumena – on the contrary.

I will be interspersing subject matter within Parts 1 to (N) of Project_Noumena. To be transparent at this juncture i am not sure where it will end or if there is even a logical MVP 1.0.  As with open-source systems and frameworks technically one never achieves V1.0 as the systems evolve. i tend to believe this will be the case with Project Noumena.  i  recently provided a book review on CaTB and have a blog on Recurrent Neural Networks with respect to Multiple Time Scale Prediction in the works so stuff is proceeding. 

To that end, i would love comments and suggestions as to anything you would like my opinion on or for me to write about in the comments section.  Also feel free to call me out on typos or anything else you see in error.

Further within Project Noumena there are snippets that could be shorter blogs as well.  Look at Project Noumena as a fractal-based system.

Now on to the matter at hand.

In the previous blog Computing The Human_Condition – Project Noumena (Part 1) i discussed the initial overview of the model from the book World Dynamics.  i will take a part of that model which is what i call, the main, Human_Do_Loop(); and the main attributes of the model: Birth and Death of Humans. One must ask if we didn’t have humans we would not have to be concerned with such matters as societal collapse?  i don’t believe animals are concerned with such existential crisis concerns so my answer is a resounding – NO. We will be discussing such existential issues in this blog although i will address such items in future writings. 

Over the years i have been asking myself is this a biological model by definition?  Meaning do we have cellular components involved only?  Is this biological modeling at the very essence?  If we took the cell-based organisms out of the equation what do we still have as far as models on Earth? 

While i told myself i wouldn’t get too extensional here and i do want to focus on the models and then codebases i continually check the initial conditions of these systems as they for most systems dictate the response for the rest of the future operations of said systems.  Thus for biological systems, are there physical parameters that govern the initial exponential growth rate?  Can we model with power laws and logistic curves for coarse-grained behavior?  Is Bayesian reasoning biologically plausible at a behavioral level or at a neuronal level? Given that what are the atomic units that govern these models?  

These are just a sampling of initial condition questions i ask myself as i evolve through this process. 

So with that long-winded introduction and i trust i didn’t lose you oh reader lets hope into some specifics. 

Birth and Death Rates

The picture from the book depicts basic birth and death loops in the population sector.  In the case of these loops, they are generating positive feedback which causes growth.  Thus an increase in population P causes an increase in birthrate BR.  This, in turn, causes population P to further increase.  The positive feedback loop would if left to its own devices would create an exponentially growing situation.  As i said in the first blog and will continue to say, we seem to have started using exponential growth as a net positive fashion over the years in the technology industry.  In the case of basic population dynamics with no constraints, exponential growth is not a net positive outcome. 

Once again why start with simple models?  The human mind is phenomenal at perceiving pressures, fears, greed, homeostasis, and other human aspects and characteristics and attempting at a structure that is given say the best fit to a situation and categorizing these as attributes thereof.  However, the human mind is rather poor at predicting dynamical systems behaviors which are where the models come into play especially with social interactions and what i attempting to define from a self-organizing theory standpoint.  

The next sets of loops that have the most effective behavior is a Pollution loop and a Crowding Loop.  If we note that pollution POL increases one can assume up to a point that one hopes that nature absorbs and fixes the pollution otherwise it is a completely positive feedback loop and this, in turn, creates over pollution which we are already seeing the effects of around the worlds. One can then couple this with the amount of crowding humans can tolerate. 

Population, Birth Rate, Pollution

We see this behavior in urban sprawl areas when we have extreme heat or extreme cold or let’s say extreme pandemics.  If the population rises crowding ratio increases the birth rate multiplier declines and birth rates reduce.  The increasing death rate and reducing the birth rate are power system dynamic stabilizers coupled with pollution. This in turn obviously has an effect on food supplies. One can easily deduce that these seemingly simple coefficients if you will within the relative feedback loops create oscillations, exponential growth, or exponential decay.  The systems while that seem large and rather stable are very sensitive to slight variations.  If you are familiar with NetLogo it is a great agent-based modeling language.  I picked a simple pollution model whereas we can select the number of people, birthrate, and tree planting rate. 

population dynamics with pollution

As you can see without delving into the specifics after 77 years it doesn’t look to promising.  i ‘ll either be using python or netlogo or a combination of both to extended these models as we add other references. 

Ok enough for now.

Until Then,

#iwishyouwater

@tctjr