Saturday, June 26, 2021

First Jab and a Dose of C++

I mentioned previously about having locked in my vaccination slot some time this week. It's the end of Saturday now, and is thus at the end of the week.

Needless to say, I have taken my first dose of Comirnaty, more better known as the Pfizer-BioNTech COVID-19 vaccine, which is also known as ``tozinameran''. It's sort of like the mess that is N-acetyl-para-aminophenol, also known as ``Paracetamol'', also known as ``Acetaminophen'', also known as ``APAP'', also known as ``Panadol'', and also known as ``Tylenol''. Bloody hell of a mess. I'll just stick with ``Comirnaty'' from here-on, because that's the exact trade-name vaccine that I took.

The slot I had was an afternoon slot nearby, and it progressed smoothly. Registration was quick, information regarding potential side effects dispensed professionally in both a verbal manner and in a booklet published by ye olde MOH. The injection itself was straightforward, a quick intra-muscular jab to the left deltoid muscle, just like any other vaccination injections that I have taken (diphtheria, tetanus, Hepatitis B, just to name the ones taken in the recent decade). A short observation period of 30 min was practised, where I just sat on a chair in the specially cordoned off area reading Digital Filters (3rd Edition) by R. W. Hamming, a dead-tree book, chosen over Eirian-IV deliberately in case I needed to be swooped off to the hospital in an ambulance in case of anaphylaxis---it's easier to stow away a dead-tree book over an e-reader, with less chances of it actually being ``accidentally misplaced'' along the way.

Eh, there was some slight soreness in the muscles more distal than the deltoid muscle (but not the injection site itself), and my resting body temperature was a little raised compared to normal. However, the elevated body temperature was well within the variation I often experienced when the ambient temperature/humidity was worse than normal, so all in all, everything was still within acceptable levels of normal.

The vaccination centre's out-processing station gave an A5 paper print-out indicating the next appointment slot for the second and final dose of Comirnaty, which is a nice redundancy in addition to the SMS confirmation on initial booking and the appearance of both slots in the Health Hub web site. While I'm not usually a fan of being unwillingly co-opted into digital systems, I am quite pleased with this slightly more transparent recording of such vaccination information. It reduces the leverage that some power-hungry citizen-facing civil servants use to bully the less-able citizen just because of the information asymmetry.

Now, if the information that is stored in such governmental databases have a strong protection scheme to keep it only to government matters, and making any retrieval attempts by care-givers be one that is based on explicit consent of the patient per defined set of treatment transactions, that would be peachy. As it stands, I'm not sure if there are strong enough patient protection schemes of data in place (think the HIPAA of the United States), and frankly, am unwilling to do the legal legwork to discover what the current situation is.

Anyway, apart from the print-out, there were also some other freebies that were provided: a box of disposable face masks and more hand sanitisers. Eh, I appreciate the thought, but really, am leery about the hand sanitisers, not because of potential quality issues, but that for most of us, good handwashing habits with old-fashioned soap can work wonders for way less cost and damage to the skin. Antiseptic levels of hand sanitisation are probably much more useful if one is going to potentially work with open wounds, or in related contexts where one is likely to be mixing up with body fluids. Mechanical removal of whatever is mounted on the surface is usually easier and less harsh than trying to chemically kill stuff.

I mean, I should know. I have been battling bullshit staphylococcus aureus bacterial loads on my skin for a long long time. Antiseptics and antibiotics are really not easy to keep applying---plain old washing with a simple soap was good enough to reduce the infection (and associated inflammation) by a stupidly large degree for a fraction of the cost.

Digression aside, it's way past the 48-hour base line check point that I am worried about, and seeing that things are well, I think things are fine. I will not start on some crazy physical activities though, just to lower the exposure from the risk of some other low-likelihood side effects involving the heart. This is probably less important now as compared to the second dose of Comirnaty, since the body's reaction to that booster shot is supposed to be much quicker and more intense relative to the first.

And that's about it. I didn't feel like doing all the ``bragging on Facebook'' stuff that other people have done---just feels weird to be doing so, seeing that it really isn't some kind of achievement of my own merit, since all I did was literally sit around until it was my turn to go get vaccinated from the freely provided once by the government. Doesn't even help with persuading people to go get vaccinated if they haven't done so since I had been bombarded with such ``bragging'' posts for the past months.

Last I checked, still human though, so I thought it would be nice to make a note of it here on my blog, where I paradoxically quietly shout into the public void.

------

Speaking of the public void, I started on a mini-project today, working on a faster-than-Python solver for grid-based tiling problems in C++. The last time I used it for any period was back in 2002--2003 for course work, where the main standard for C++ was C++98 and pre-C++03. Times were different then... using namespace std; was the norm (it shouldn't!); the parse was broken when it tried to make sense of std::vector<std::vector<int>> t; (one had to write it as std::vector<std::vector<int> > t; instead); auto didn't exist (which made iterators a bloody pain in the ass to use); it was still mostly C with classes as opposed to being truly object-oriented; and the STL was clunky to use as it tried to preserve a certain C-ness despite being more object-oriented than C ever could be.

I'm not sure which C++ standard I'm working with now, probably just C++11 at the minimum. g++ --version tells me that it is version 10.2.0, which suggests that some parts of C++20 are implemented. Using some google-fu, I ran
 g++ -dM -E -x c++ /dev/null | grep -F __cplusplus
and it told me that it was #define __cplusplus 201402L. So I suppose we are on C++14 or so by default.

Eh, any version of C++ above C++03 is better.

``But MT, why are you suddenly going back to C++?'' It's not a case of ``suddenly'' going back to C++, it's more of ``better review C++ despite having been programming in Java professionally for the past decade''. One reason is because Java and C++ are the two largest object-oriented languages in existence (while I can still C even in my sleep, it is getting to be rather niched/dated in general for modern computing platforms), and the other is that ever since Sun Microsystems got bought over by Oracle, governance over the Java programming language and its tools have been all over the place, making its future very awkward.

The principles of Java's ``write once, run anywhere'' are excellent in this era of massive computational power and virtualisation, but its different enterprise programming frameworks and associated certification (now mostly only Oracle) combined with a movement towards web-technologies has made it run a strange race against the interpreted language gang led by Javascript/Typescript. C++ is still an important language for infrastructure, not necessarily enterprise, and is still a good language to learn when there is a need to get closer to the metal compared to the other languages like even my favourite Python. C++ also ties to cool hardware more readily than Java, like GPUs, and can thus be more interesting to work with.

So it is still important to keep my toes wet with working with C++ despite not really having done much with it professionally over the past decade.

Well, that's about it for now. Sorry for sneaking in some technical mumbo-jumbo. Till the next update.

No comments: