YANG is a data modeling language for the definition of data sent over network management protocols such as the NETCONF. It is a modular language representing in an XML tree format. The language is protocol independent and can also be converted into JSON.
To get started, pyang was installed on Raspberry Pi
$ sudo apt install libxml2-dev libxslt1-dev
$ sudo pip3 install -U lxml pyang
$ cp ~/iot/lesson9/intrusiondetection.yang ~/demo
$ cd ~/demo
$ pyang -f yin -o intrusiondetection.yin intrusiondetection.yang
$ pyang -f uml -o intrusiondetection.uml intrusiondetection.yang --uml-no=stereotypes,annotation,typedef
Pyang is an extensible YANG validator, it provides a framework for plugins that can convert YANG modules to other formats.
PlantUML was then downloaded onto the Raspberry Pi. PlantUML is an open-source tool allowing users to create UML diagrams from a plain test language. PlantUML was run and a sequence diagram was created with a .png extension.
$ sudo pip3 install -U plantuml
$ python3 -m plantuml intrusiondetection.uml
Next GIMP and Pinta (software) were installed on the Raspberry Pi, both of which are open-source image editors. These are alternatives to VNC Viewer and must have SSH and X11 forwarding.
$ cd
$ sudo apt update
$ sudo apt install gimp pinta
$ cd ~/demo
$ pinta intrusiondetection.png
$ gimp -h
$ gimp -a intrusiondetection.png
Here is a demonstration of Pinta's image editor software. It is relatively easy to use and has a quicker startup time than VNC Viewer. I am able to see intrusiondetection.png in this window.
GIMP's image editor software comes loaded with a lot more features but it is also very slow. It took a while for the editor to load the png image and I could imagine editing photos would take astronomically long.
Qiskit is an open-source quantum computing software development framework founded by IBM Research to allow software development for the IBM Q Experience cloud quantum computing service.
A virtual Python environment was used to cleanly separate Qiskit from other applications running on my laptop. I created a minimal environment using the following Anaconda commands:
conda create -n name_of_my_env python=3
source activate name_of_my_env
pip install qiskit
In order to access IBM Quantum Systems, I had to create an IBM Quantum Experience Account, copy an API token from my Account and save it.
$ sudo pip3 install qiskit
$ sudo pip3 install qiskit-terra[visualization]
$ python3
>>> from qiskit import IBMQ
>>> IBMQ.save_account('MY_API_TOKEN')
>>> exit()
I experienced all sorts of problems setting up an entire new Python environment on my Windows machine that I decided to go with the alternative and create a new Qiskit notebook. It looks like it uses a Jupyter notebook in the background.