Captain’s Log Star Date 2024.04.05

Captain’s Log Star Date 2024.04.05

Study Progress This Week

  • A Cloud Guru – Chapter 7 of AWS-CLFC02 Exam Preparation “Development, Messaging, and Deployment and Technology Services.” I learned all about how micro-services work, solutions for CI/CD and what those are how they are handled in an organization, message queues, emailing services, and much more. This was an information packed chapter and covered a lot of topics I am interested in.
  • A Cloud Guru – I started the “Beginner’s Guide to Containers and Orchestration”. It’s a high level view of what these technologies are but I’m not looking to deep dive them yet. Evidently A Cloud Guru purchased Linux Academy and ported this over from that platform. So far it’s pretty informative, and just knowing how it’s used to achieve zero downtime is informative to me. I do remember upgrades requiring servers going down, usually overnight. These containers pretty much make that process obsolete, you just spin up new containers with the new code and point to those instead.
  • Udemy – 100 Days Of Python Code Boot camp – I worked on day three of the program. I mostly got hung up on trying to run snippets of Python in Visual Studio Code, which led me down a path involving Jupyter Notebooks and the Python plugin. Jupyter Notebooks might be on the learning list down the road. Safe to say that %## will be useful in the future for me, especially if I start leaning more on Python if I ever get back into the data analytics world. I am also super weak in Machine Learning but that’s another topic.
  • CodeWars – more on that below but I tackled my first one. I might look at Leetcode also as a tool to use. The real world problem stuff jump starts your learning. I’ll be writing more on Postgres in the future.

Findings/Notes

  • I’ve been following the XZ Utils backdoor exploit and trying to understand what and how something like that happened. It sounds like the perfect hack and shows some serious vulnerabilities in these open source libraries. I am sure the investigation into who orchestrated it will tell an interesting tale. It also opens up a lot of questions about what’s going to happen when these long time maintainers are retiring.
  • I took on a CodeWars challenge involving a SQL question. To accomplish it I downloaded Postgres to my desktop so I could play around with the solution. The problem involves a series of numerators and denominators that need to be reduced to their lowest common denominator. The solution requires a new type of function called a modulo that I’ve not worked before. This function gives you the remainder after dividing two numbers, so if the result is 0 it divides evenly. It’s used in clock arithmetic. The solution also requires a lot of CASE statements too. CASE is probably the most useful function I’ve learned in SQL besides COALESCE.
  • I learned some new terms this week, this first is “code artifact” which encompasses any by-product that’s not related to the source code itself. The second is “lambda” and I learned that term comes from lambda calculus, and from that is the founding principle behind functional programming. I look forward to learning more about lambda functions in the future.
  • I’ve been curious about Node.js. I was researching the differences between Java and .NET run times and ran across this term. I see it a lot in the sources that I read regularly but nothing in depth. I know now this is a run time environment that enables Javascript to be run on the server side. Now developers can use the same language on the back-end that they do on the front-end.
  • I did some research to understand Microsoft IIS, nginx, and Apache Tomcat. I see these terms a lot but I don’t think I’m going to deep dive them in the near future. This is a technology I don’t see much future for me in right now as most of my future server work is probably going to be in the cloud.