A new Global Masters Topic and a useful guide to Python
I have just created a new Global Master Topic, "IRIS Cheatsheets". IRIS has introduced a lot of new functionality, especially in scripting languages, FHIR R4 support, enhanced Interoperability Tools, and IRIS Analytics. Having spent 35 years working on Windows-based PC's and Laptops, I have surprisingly little knowledge of Linux, Docker and Git. Furthermore, I have written almost every application and Interface in ObjectScript with splatterings of SQL, .Net, and Java Gateways and the most basic knowledge of WinSCP, Putty, SSH. All that changed when I received my first Raspberry Pi. I first had to choose an operating system to write onto the Micro SD memory card. Raspberry Pi have their own Operating System but unless I wanted to be confined to running my instances of IRIS, IRIS for Health, Report Server, and Ensemble in Docker Containers I needed to choose an Operating System that is a supported platform for IRIS. Having researched my options through Google searches, it became clear that Windows on Raspberry Pi was an unpleasant experience, so I quickly crossed that off my list. It just so happened that the first of my Raspberry Pi's will be the controller in my first Adeept Robot Kit (PiCar Pro). I was introduced to STEM. STEM is an educational paradigm for introducing people from age 5 upwards to the world of Engineering and Programming. STEM stands for Science, Technology, Engineering and Mathematics and is the predominant paradigm used by Arduino, Adeept, Lego and other Robot Kit, manufacturers. The programming language used in all of these STEM implementations is Python. What a joy. Python has fascinated me from the moment I found out that it would be implemented as a Native Scripting Language in IRIS. When I was much younger, my favourite subject in the whole world was mathematics, and so the introduction of Python, R and Julia into the world of IRIS filled me with excitement.
I found out that all of these languages have a natural affinity for Ubuntu Linux, a popular platform for IRIS deployments. More to the point, it is the only platform supported on ARM64, which is the technology used in Raspberry Pi. So Ubuntu was clearly the route I had to take. The next decision I had to make was which implementation of Ubuntu I wanted to use. There are three choices, Desktop, Server and Core. Ubuntu Server is recommended as it comes with a 5-year support guarantee. You interact with Ubuntu Server issuing instructions and commands from a terminal. Ubuntu Core is a stepped-down version of Server and is ideal as the base for a docker container. Being a novice to Ubuntu, I went with Ubuntu Desktop, and when I fired up my Pi for the first time, I was presented with a very familiar Desktop GUI. Furthermore, I quickly discovered that all of the applications I use in my day to day life in Windows had Ubuntu equivalents. It wasn't long before I had Docker, Putty, Git and a host of other applications installed and, most satisfyingly of all, Visual Studio Code.
Given that I was suddenly faced with so many new technologies to work with and master, I started searching for documentation on all of these topics and of course, there Is a ton of material out there. The difficulty is knowing which book, FAQ, video or learning application to choose. As I trawled through page after page of Google searches, the documents I was most drawn to were the Cheatsheets. Read my challenge in Global Masters to find out more about Cheatsheets. There is one Cheatsheet that I particularly wanted to draw your attention to, one that particularly impressed me. It is a PDF called "Python-cheat-sheet-April-2021".
I also found that several DC members reached out to assist with questions I had about Raspberry Pi, Ubuntu, and Docker. I am looking forward to spending time with them to fast-track me on these topics.