Well, it’s been a couple weeks since I’ve updated my blog. This was not really my intention, but is my reality. I have been researching which (modern) technology is best used for the project I have in mind, when I fell head first into a rabbit hole.
This rabbit hole I landed in, started off with looking into Modern websocket like technologies, when I ran into several that intrigued me. So of course I was scouring the internet for information on MQTT, RabbitMQ, and several other technologies I found interesting. When suddenly I ran into a technology that “stopped me dead in my tracks”.
This technology that got my complete undivided( for a minute) attention was gRPC. Which of course, led to multiple other rabbit holes, and suddenly I found my self looking for my personal “ultimate” programing language for backend services. I spent about 3 day in my spare time after work, playing with C# code, on Ubuntu, through the .NET 6.0 SDK. This of course was though a VM running on my Win10 desktop system, until I dedicated my older laptop to running Ubuntu 20.04 LTS. See Virtualbox, running Ubuntu 20.04 LTS is at least partially glitchy, mostly related to power management issues I believe. Hybrid sleep, screen saver, something along these lines.
Anyway, after spending 3, maybe 4 days toying with C# on a Linux system, I was revisited with the harsh reality as to why I ditched Microsoft related development technologies in the first place. I was following web guides, from Microsoft’s own web pages, that were not fully working properly. Most of the content was dead on simple, until trying to get SSL over http working, when everything came to a screeching halt. I followed their link to another page on their site that was meant specifically for the exact operating system, and version I was running. Followed the commands exactly, and still no joy. Anyway, https is a very important technology in the modern web, and if Microsoft can’t get it together in explaining to people how to use their technology, on other operating systems. Why should I even bother ?
Not to mention that much has changed with C# since I’ve last used it in earnest. I do see a lot of good in modern C#, however I often feel like I need a shower after writing C# code. Granted this is not a feeling I get exclusive to using C#. This feeling comes with most, or maybe all languages that are not C, or Javascript. Anyway, it is this programmers view that Microsoft is trying too hard, to have C# be like Javascript, and in this context. Not in a good way. So with this in mind, I came back full circle to C, while suddenly realizing there is no way I want to put myself through that kind of hell. I mean I would enjoy writing all this in C, but my project would be never ending. As I would have to write everything myself from scratch.
As stated above, I often feel like I need a shower after using a language that is not C, or Javascript. What I mean by this, is that for me, C is the only “clean” programing language. You can easily write code, that does not require comments, as the code, to any C developer can be, and should be self documenting. No, I’m not talking about you Linux Kernel developers whom seem to have no clue as to what this actually means. Aside from that, I have no personal use for the various name mangling conventions others like to place on developers. Such as hungarianNotation, CamelBackNotation. etc. Do not even get me started on “let” “var”, and countless other “key word” idioms. What’s wrong with “bool” “int” “string” or even char[] ? But I digress . . .
So . . . I landed back with Golang, which is seriously not my ideal / preferred language of choice. But Golang seems to be made perfectly, for creating web services, API’s, and /or endpoints, where honestly, the only real issue I have with the language is STL function name mangling, and the incoherent way in which many of the STL functions were named. Remember people, you do not need comments, if your code is self documenting . . . That is, in plain English. K.I.S.S . . . . Keep it simple, stupid.
</rant>