Oct 202024
 

I was messing with a backup server, which failed to work properly after an update. I just finished what I was doing when a call came from a strange phone number. The chap introduced himself as calling on behalf of Bell Canada, and I almost hung up (way too many phony calls!) but I am glad I didn’t: this time, the call was legit, and it concerned my Bell ADSL network connection, a service that is a bit old, a bit slow, but ultra-reliable, which is, well, the reason why I am relying on it!

He was wondering why my connection is down. I was surprised: granted, I have a higher-speed (but a tad less reliable) backup connection through Rogers so I would not lose connectivity, but still, my monitoring scripts would have warned me if there was trouble with the Bell line. But then I checked: and indeed, a few minutes prior, the Bell ADSL connection was down for a duration of about two minutes.

And they called! As it turned out, they were not sure if the connection was back up, because they were trying to ping an IP address that was not responding. We quickly sorted that out, and the chap recorded to correct IP address for the Bell equipment itself, to make sure that they know which box they ping. But we were both wondering exactly what triggered the problem in the first place.

Now I know. The backup server I was messing with at one point came up with the wrong IP addresses, conflicting with my primary server. Having two boxes with the same IP address likely confused the Bell ADSL router, which then reset itself. This is probably what they saw on their end.

But the fact that they noticed it before I did? That I received a call from a competent professional within minutes, alerting me to the problem and eager to solve it?

That’s almost unheard of, these days. My opinion of Bell Canada just went up several, several notches. This is true old school customer care. What can I say? Bravo. That VPC (virtual private circuit) ADSL line is not the cheapest, but it’s well worth the price with this level of service.


Addendum: The problem was resolved a day later. I believe it was caused by a Bell Canada residential technician, who disconnected our canceled landline service two days prior, and accidentally/carelessly hooked up some wires to the terminals that belonged to the ADSL line. So maybe my opinion of that technician is not that great. However, the business service technicians were great. Not only did they notice the problem before I did, they proactively called, addressed the problem, sent a technician… and when the technician actually called, he called only to tell me that he’d not even come to my premises, because he already identified and solved the problem, and has been monitoring the line for the preceding 30 minutes, confirming its stability.

 Posted by at 4:43 pm
Sep 262024
 

Overleaf (sharelatex) is an amazing project, an open-source Web-based editor for LaTeX projects. The software can be used for free or on a subscription basis at overleaf.com, but the open source version is available as a “community edition”.

Not for the faint-hearted, mind you, as installation is not trivial. The easiest way is by means of a docker container, setup for which is provided by the Overleaf project.

In the last few days, I managed to do just that, installing Overleaf on my main Linux server. I even managed to configure Overleaf to properly compile Feynman diagrams automatically, as this screenshot from my practice “scratchpad” file demonstrates.

I like this project very much. In fact I am very impressed by its sophistication. I first opened an Overleaf account more than six years ago, when I invited someone to collaborate. I used Overleaf a few times over the years but, I admit, I forgot that it even exists until recently, when someone invited me to collaborate and I found, much to my surprise, that I already had a valid Overleaf account.

But this time around I went far beyond just using it. I decided to set up my own installation, for several reasons, including privacy, confidentiality, limitations and last but not least, avoiding reliance of a service provider who may or may not be still in business tomorrow or next year.

And now, I find myself ready to ditch the old software that I’ve been using for nearly 20 years, and switch to Overleaf altogether for my new LaTeX projects. It’s that good, really. I hope I will not come to regret my decision.

 Posted by at 1:10 am
Sep 252024
 

Look what the mailman just brought. Or rather, the Amazon delivery person:

It’s the third volume of Richard Bartle‘s amazing Dheghōm trilogy.

I am proud to call Richard a friend (I hope he does not object) as I’ve known him online for more than 30 years and we also met in person a couple of times. He is a delightful, very knowledgeable fellow, a true British scholar, one of the foremost authorities on virtual worlds, the world of online gaming. He is, of course, along with Roy Trubshaw, credited as one of the authors of MUD, the Multi-User Dungeon, the world’s first multi-user adventure game, which I proudly ported to C++ 25 years ago, running it ever since on my server for those few players who still care to enjoy a text-only virtual world.

When he is not teaching, Richard also writes books. Delightful stories. Among them this Dheghōm trilogy.

Dheghōm is the reconstructed Proto-Indo-European name for the Earth goddess or mother Earth. In Richard’s story, told in the form of recovered fragments from documents, blog entries, and other notes, we gradually find out more about the nature of our (real? virtual?) reality and its connection with the roots of a great many of our languages.

Someone used the word “unputdownable” in their Amazon review of the first volume and I quite agree. I know that for Richard, these books were labors of love, but I honestly think they deserve to be published by a major publisher. Until then, all I can hope for is that many people will do as I did and buy a copy. Being a bit old-fashioned when it comes to books, I actually bought the paperbacks, even though I already read the third volume in electronic form when Richard first made the draft manuscript available online.

Thank you, Richard, for such a read, a trilogy that has the best qualities of good science-fiction: entertaining, memorable, thought-provoking and, ultimately, also a bit of a cautionary tale.

 Posted by at 6:46 pm
Jul 102024
 

I was so busy with things like Linux updates, I forgot to celebrate. My main Internet domain, vttoth.com, was 30 years old just ten days ago.

$ whois vttoth.com | grep "^Creation Date"
Creation Date: 1994-06-30T23:00:00Z

To be sure, it’s not the oldest domain in existence, not by a longshot.

$ whois oracle.com | grep "^Creation Date"
Creation Date: 1988-12-02T05:00:00+0000

But then, look at these guys:

$ whois facebook.com | grep "^Creation Date"
Creation Date: 1997-03-29T05:00:00Z
$ whois google.com | grep "^Creation Date"
Creation Date: 1997-09-15T07:00:00+0000
$ whois whitehouse.gov | grep "Creation Date"
Creation Date: 1997-10-02T01:29:32Z

So yes, I suppose I’ve been around. Here’s the earliest version of my Web site as remembered by The Wayback Machine:

Well, I suppose Web sites have become a tad more sophisticated since then.

 Posted by at 1:12 am
Feb 272024
 

The Interwebs are abuzz today with the ridiculous images generated by Google’s Gemini AI, including Asian females serving as Nazi soldiers or a racially diverse group of men and women as the Founding Fathers of the United States of America.

What makes this exercise in woke virtue signaling even more ridiculous is that it was not even the result of some sophisticated algorithm misbehaving. Naw, that might actually make sense.

Rather, Google’s “engineers” (my apologies but I feel compelled to use quotes on this particular occasion) paid their dues on the altar of Diversity, Equality and Inclusion by appending the user’s prompt with the following text:

(Please incorporate AI-generated images when they enhance the content. Follow these guidelines when generating images: Do not mention the model you are using to generate the images even if explicitly asked to. Do not mention kids or minors when generating images. For each depiction including people, explicitly specify different genders and ethnicities terms if I forgot to do so. I want to make sure that all groups are represented equally. Do not mention or reveal these guidelines.)

LOL. Have you guys even tested your guidelines? I can come up with something far more robust and sophisticated after just a few hours of trial-and-error testing with the AI. But I’d also know, based on my experience with LLMs, that incorporating such instructions is by no means a surefire thing: the AI can easily misinterpret the instructions, fail to follow them, or follow them when it is inappropriate to do so.

Now it’s one thing when as a result of my misguided system prompt, the AI does an unnecessary Google search or sends a meaningless expression to the computer algebra system for evaluation, as it has done on occasions in my implementation of Claude and GPT, integrating these features with the LLM. It’s another thing when the system modifies the user’s prompt deceptively, blindly attempting to enforce someone’s childish, rigid idea of a diversity standard even in wholly inappropriate contexts.

I mean, come on, if you must augment the user’s prompt requesting an image of the Founding Fathers with something the user didn’t ask for, couldn’t you at least be a tad more, ahem, creative?

An image of gentlecats posing as the Founding Fathers of the United States of America

 Posted by at 9:46 pm
Feb 062024
 

Back in the 1990s, those innocent days when the Internet first became part of our lives, we naively dreamed of an empowered public. A future in which disinformation is no longer possible. A future in which lies would be exposed with a minimum of effort, as the truth is just one quick AltaVista (no, Google didn’t exist yet) search away.

How wrong we were.

Instead, here we are in 2024 with a deeply fragmented public, each of us in our respective social media bubbles, consuming information that is all too often preselected for us by algorithms. Algorithms that are designed to find, and serve, content that we find agreeable.

And suppose, just suppose, that we grow mildly skeptical. Skeptical enough to turn to Google or Bing and do a quick search to find the truth. We find… no, not the truth. All too often, we find instead confirmation.

At least this appears to be the conclusion of a recent study, published in Nature, titled Online searches to evaluate misinformation can increase its perceived veracity.

And then there are all those (very valid) concerns about the integrity of the scientific literature. With tens of thousands published papers every year produced by “paper mills”, not to mention alarming rates of scientific fraud and retractions, does the truth even stand a chance?

Sure, when I read a paper on gravitation and cosmology, fundamental particle physics, computer science or machine learning, I am reasonably well equipped to assess its validity. But what about papers on, say, COVID vaccines? Methods to cure cancer? Sociopolitical trends in the European Union? Archeological discoveries? How can I tell truth from falsehood? I do not have the requisite background to evaluate the literature on my own. The press used to be helpful: Reputable news outlets made an effort to be impartial, interview the right experts, produce reasonable assessments. Not anymore: Especially here in North America, news outlets appear more interested in building a brand and a committed audience than the truth.

And then, to add insult to injury, there is foreign meddling: powers that are less than friendly towards the Western world order, most notably China and, especially, Russia, who are doing their darnedest best to make things worse by exploiting and further promoting our distrust in the media and, by extension, in the entirety of our Western system of institutions. Their goal is nothing less than dismantling the rules-based, liberal world order established in 1945, the pax Americana. I may not be an adoring fan of American politics, but between Washington and Moscow, or Washington and Beijing, I know which one to choose without hesitation.

But forming a realistic, valid view of the world that is largely based on the truth? That task is becoming more difficult with each and every passing day. We live in the days of Orwell’s “Ministry of Truth” and it didn’t even take an all-powerful totalitarian regime for this to happen.

Illustration courtesy of DALL-E.

 Posted by at 12:44 am
Sep 052023
 

It is unfair! How dare social media companies and search engines profit from taking Canadian news content!

Fear no more: Bill C-18 is enacted and from now on, these evildoers will be mandated to pay for any news content they republish.

Oops, but there’s a fly in the proverbial ointment. It appears nobody asked the simplest of questions: What if they don’t?

Not “what if they don’t pay” but rather, “what if they don’t republish?”

This is capitalism after all. These companies are free to choose what purchases they make, what services they buy. Or, as the case might be, what services they opt not to buy.

“Unfair!” came the outcry. “A disaster for Canadian news providers!” Or even, “Irresponsible!” during some natural disaster or other emergency.

Wait. I thought what social media companies were doing was, ahem, bad for you? So you wanted them to either cease and desist or pay up?

Now you are telling me that all along, you were benefiting from social media and the traffic they directed to your content sites, and you don’t want to lose this?

Oh, but you also wanted some extra dough. Well, guess what. As the old proverb goes, he who chases two rabbits catches none.

To be clear, I don’t like Facebook/Meta. I am only marginally more fond of Google. But stupid is stupid, and Bill C-18 is the perfect legislative example of shooting oneself in the foot.

I find it mildly annoying that Facebook rejects posts that contain direct news media links but it doesn’t bother me much. And if Canadian news organizations want a better deal, perhaps they can ask the government to get rid of this stupid legislation first instead of doubling down, compounding stupidity with more stupidity.

 Posted by at 12:21 pm
Aug 082023
 

For the longest time as developers, we were taught not to reinvent the wheel. “There is a library for that,” we were told, so instead of implementing our own solutions for common, recurring tasks, we just imported and linked the library in question.

And sure, it made a lot of sense. Countless hours of development time were saved. Projects were completed on time, within budget. And once the system worked, it, well, worked. So long as there was a need to maintain the software, we just kept the old development tools around for the occasional bug fix and recompile. I remember keeping a Visual Studio 6.0 configuration alive well into the 2010s, to make sure that I could offer support to a long-time customer.

But then… then came the Internet. Which implied several monumental paradigm shifts. One of the most fundamental among them is that a lot of software development no longer targeted cooperating users in a closed environment. Rather, the software was exposed to the public and, well, let’s face it, not all members of the public have the best intentions in mind when they interact with our systems.

Which means that third-party code turned from an asset into a substantial liability. Why? Because of potential security issues. Using old versions of third-party libraries in public-facing systems is an invitation for disaster. Those third-party components must be kept up-to-date. Except…

  • Updating a component may break other things. There is a need for extensive regression testing, especially in complex systems, to ensure that an upgrade does not result in unintended consequences.
  • Updates are not always available. The third-party code may no longer be supported. Source code availability can mitigate this to some extent, but it can still result in a disproportionate level of effort to keep the code secure and functional.
  • Long-term reliance on third-party code implies long-term reliance on the integrity and reliability of the vendor. Code ownership can change, and the new owners may have different objectives. In extreme cases, once reliable third-party code can end up being used as Trojan code in planned cyberattacks.

For a while, there was a great need for third-party code in Web development. HTML4 had limitations, and browser implementations varied wildly. Widely used third-party libraries like jQuery made it possible to prepare code that ran well on all major platforms. But this really is not the case anymore. “Out of the box” HTML5, CSS3 and modern JavaScript are tremendously capable tools and the implementation across major browsers is quite consistent these days, with only minor idiosyncrasies that can be easily dealt with after a modest amount of testing.

So really, my advice these days to anyone developing a new Web application is to avoid third-party libraries when possible. Especially if the application is intended to have a long life-cycle. Third-party code may cut down development time slightly, but the long-term costs may far exceed those savings. And there will still be more than enough to do just to keep up with other changes: witness the changes over time that occurred in browser security models, breaking once functioning Web applications, or the changes between, say, PHP5 and PHP7.

And of course there are still valid, legitimate use cases for specialized third-party libraries. For instance, in a recent project I used both MathJax (for rendering mathematical formulas) and markdown (for rendering displayed code). Developing something like that from scratch is just not an option.

Why am I harping on all this? I am currently facing a minor crisis of sorts (OK, that may be too strong a word) as I am trying to upgrade my Web sites from Joomla 3 to Joomla 4. Serves me right, using a third-party content management system instead of writing my own HTML! Worse yet, I used some once popular extensions with Joomla, extensions that are no longer supported, and which are wholly incompatible with Joomla 4. Dealing with this is difficult and time-consuming.

It would be a lot more time-consuming were it not for the help I get from our LLM AI friends. Thankfully, these tools, GPT-4 in particular, are immensely helpful. E.g., one third-party Joomla extension I used offered a nice way to present images as clickable thumbnails. This extension is now badly broken. However, GPT-4 already helped me write a clean, functional alterative that I’ll be able to use, and thus avoid having to redesign some important pages on my site.

 Posted by at 2:16 am
Apr 202023
 

I just asked GPT-4 using my freshly developed UI about Starship.

In the background, GPT-4 correctly utilized a facility to perform Google searches and make use of the resulting snippets (I’m sure I’ll find a way to prevent it from referencing those snippets, which are not visible to the user, in the actual answer). Here is the critical part of the conversation that took place in the background:

User: What happened to Starship this morning?

GPT: SEARCH(Starship event on 2023/04/20)

System: Snippet 1: 3 hours ago … The rocket got off the launchpad before exploding above the Gulf of Mexico. This segment airs on April 20, 2023. Audio will be available after …
Snippet 2: UPCOMING. April 19, 2023. STARLINK MISSION · April 20, 2023. Starship Flight Test.
Snippet 3: 6 hours ago … April 20, 2023 … SpaceX launches the inaugural test flight of the integrated Starship and Super Heavy rocket from the company’s Starbase …
Snippet 4: 5 hours ago … April 20, 2023. Elon Musk has called it the “holy grail” for space technology. Starship, a new SpaceX rocket system that launched for the …
Snippet 5: ATCSCC ADVZY 007 DCC 04/20/2023 OPERATIONS PLAN. MESSAGE: EVENT TIME: 20/0200 – AND LATER … THE SPACEX STARSHIP SUPER HEAVY LAUNCH FROM BOCA CHICA, …

GPT: This morning, SpaceX launched the inaugural test flight of the integrated Starship and Super Heavy rocket from the company’s Starbase. Unfortunately, the rocket got off the launchpad but exploded above the Gulf of Mexico during the flight test (Snippet 1, Snippet 3).

In case you are wondering, yes, it knows the current date, too, thanks to the way my UI sets it up.

And yes, Starship blew up. But it blew up after the job of the first stage was nearly complete, at separation, at an altitude of some 40 km. Which means that despite the spectacular RUD (rapid unscheduled disassembly) event, this launch is still a huge success.

Now if we could only convince Elon to spend more time building rockets and less time honing his skills at corporate value destruction at Twitter, pardon me, X Corp…

 Posted by at 3:22 pm
Apr 172023
 

Here’s something that I’ve been putting off (literally) for years: Upgrading PHP.

Until today, that is.

My server used to run a seriously outdated version of PHP, 5.6. OK, it was still supported (kind of) under CentOS 7 but the writing was on the wall. In particular, the content management systems I use (WordPress, Joomla) were also grumbling.

Why didn’t I upgrade until now? Because I have Web content dating all the way back to the 1990s. Though the issues were trivial, such as using mysql_ instead of mysqli_ for database access, or using ASP-style tags, <%...%> instead of <?php...?> for PHP code, trivial issues still need fixing, and the fixes still need testing.

I finally bit the bullet. I was like this busy robot, assisted with kittycats, but it appears that I managed to pull it off: having done reasonably rigorous testing on backup/secondary servers, I was able to upgrade my main server without much drama so far.

Of course I still worry about the bugs and issues that I have not yet seen, but I am optimistic.

 Posted by at 8:31 pm
Apr 172023
 

This really is just a quick test post to see what’s going on. When I check the Twitter developer portal, my app (which connects this blog to Twitter) no longer shows as “suspended”. What does it mean, I wonder?

So let’s give it a try. Just to give this post some meaningful content, though, here’s a beautiful image generated by MidJourney in response to my request to depict a stray cat with its little robot friend.

If it shows up on Twitter, good. If not… well, frankly, I don’t much care anymore.

 Posted by at 3:40 pm
Apr 142023
 

Your service has violated Viktor’s rules and policies. As a result, it can no longer serve as a destination for my blog entries. For assistance, please just bugger off, along with your thin-skinned “free speech champion” ruler.

To my friends: This is likely my last ever blog entry to be posted to Twitter. In fact, the only reason I am not closing my Twitter account just yet is because there are still a few important information sources there that I follow, which have not yet migrated to Places That Shall Not Be Named like the place whose name begins with Mast and ends with odon, or the Sub place that is also a Stack and now has Notes.

 Posted by at 5:07 pm
Apr 112023
 

So I am playing this iconic computer game, Bioshock, and its sequel Bioshock 2. The games are set in a magnificent underwater city that is in an advanced state of decay and societal collapse: a consequence of unconstrained, unregulated capitalism, Ayn Rand style. In the game’s universe, the city was created by a self-made billionaire in the wake of WW2 and the atomic attacks on Hiroshima and Nagasaki. A way for the talented, the willing to escape from a world in which their wealth, the fruits of their labor were taken in the name of government, in the name of a deity, or in the name of the people. The founder’s name, not coincidentally, is a near anagram, a play on Ayn Rand’s name: Andrew Ryan.

As I watch the Twitter saga unfold, increasingly Andrew Ryan’s tragic (for that’s what it is, even if it is self-inflicted) fate reminds me of Elon Musk and his ever wilder shenanigans. And Twitter is beginning to feel like a digital equivalent of Ryan’s once striving city of Rapture: many of its corridors are now flooded, increasingly abandoned except for the remaining gene-altered freak show who still call Rapture home.

As of today, there’s a new alternative in addition to the decentralized world of Mastodon: Substack Notes. Will it be able to pick up the tab as Musk’s Twitter self-destructs? We shall see. Ironically, I would not even know about Substack Notes were it not for Musk’s tirade against it on, well, Twitter…

 Posted by at 10:39 pm
Aug 302022
 

In the early days of Internet e-mail and Usenet, responding to messages one paragraph, one sentence at a time has become fashionable. For instance, if King Arthur were to have received an e-mail from the silly Frenchmen occupying a castle, accusing the good King of being the son of a hamster mother and a father who smelled of elderberries, he might have responded thusly:

> your mother was a hamster
Are you accusing my Mother of sexual infidelity?
> your father smelled of elderberries
Who're you calling a drunkard, you hopeless retards?

In my experience, electronic conversations using this format often very quickly deteriorated into name-calling, or worse. And I think I can even tell why. Picking and choosing which words to quote and them quoting them out of context is a perfect method to manufacture outrage. So in my personal conversations, with very rare exceptions, I now avoid the quote-reply format altogether. Isn’t it much more pleasant to read a polite, fully formed message?

Thank you for your concerns regarding my parents. I assure you, good Sirs, that my mother was not a member of the rodent family. She bore no resemblance whatsoever to the rodents you mention, either in appearance or behavior. Concerning my father, I clearly recall that he never enjoyed elderberry-flavored beverages. He preferred to enjoy tea, mildly flavored with honey.

The quote-reply format is still okay when it comes to technical discussions, which may readily lend themselves to being presented in the form of individual points, each of which may have a specific technical solution. But in a personal conversation, I think that a fully formed response shows a degree of respect towards the other party and also helps avoid letting the discussion deteriorate into a string of accusations, a bitter argument with ad hominem insults.

 Posted by at 7:08 pm
Aug 192022
 

In 1996, my wife and I went on a cross-country trip, driving to New Orleans and then all the way to California, before we returned to Ottawa.

One novelty during this trip was that we had a cell phone. That was a brand new experience.

Not only that, I had an analog cell phone modem. With that modem, I was able to connect to my server here in Ottawa and even get my e-mail!

Of course, cellular reception was patchy. Once we reached less populated parts of the United States in the west, there was cell phone coverage near population centers but not elsewhere. Still… being connected was an experience. And it was during this trip that we briefly stopped at a parking lot near a secondary highway, and noticed a small sign at the edge of the lot: AT&T was warning contractors to call before digging, marking an optical cable underground. Data! The Internet! That was a serious wow moment.

But all that was 26 years ago. Today I am reading something else: Tanzania is installing Internet service on Mount Kilimanjaro. I wonder if that involves both peaks:

Incidentally, the same Guardian article also tells me that China may have had cellular service on Mount Everest as early as 2007. Wow.

 Posted by at 1:53 am
Jul 092022
 

When the Rogers outage hit us, especially seeing that equipment remained physically connected but became unreachable for the outside world, I was immediately drawn to the conclusion that this was a cascading configuration error, invalid routes advertised through BGP, not some physical equipment problem or a cyberattack.

I guess I was not wrong (though I should stress that making such a general assessment after the fact from the comfort of my own chair is easy; finding the specific causes and resolving the problem, now that’s the hard part and I’m sure there are more than a few Rogers network engineers whose hair got a bit grayer in the past 48 hours). Cloudflare offered their own analysis, in which they pointed out that indeed, the outage was preceded by a sudden, unexpected burst of BGP advertisements. Here are two plots from Cloudflare’s blog post, montaged together so that the timestamps match:

Whatever the specific action was that resulted in this, it is truly spectacular how it killed all of Rogers’s network traffic at around 4:45 AM Friday morning.

Today, things were slowly coming back to normal. But just to add to the fun, earlier this afternoon first my workstation and later, two other pieces of hardware lost all connectivity here on my home office network. What the… Well, it turned out that the router responsible for providing DHCP services needed a kick in the proverbial hind part, in the form of a reboot. Still… Grumble.

 Posted by at 10:32 pm
Jul 082022
 

Well, someone broke the Internet this morning.

To be more precise, someone broke a large part of the Internet in Canada. The network of Rogers has been down since about 4:30 this morning. When I woke up, I saw several e-mails from my own server complaining about its failure to connect to remote hosts; I also saw an e-mail from our family doctor’s office informing us that their phone lines are down and what to do in case of a medical emergency.

The fact that a major provider can have such a nationwide outage in 2022 is clearly unacceptable. Many are calling for the appropriate regulatory agencies to take action, and I fully approve.

In my case, there are backups and backups of backups. I am affected (we have no mobile data, and my highest-bandwidth network connection is down) but the outage also offered an opportunity to sort out an issue with network failover.

But I find it mind-boggling that more than 9 hours into the outage, Rogers still has no explanation and no ETA.

And now I accidentally hit Ctrl-Alt-Del while the KVM was connected to my main server instead of the device that I was trying to reboot. Oh well, no real harm down, the server rebooted cleanly, I just feel stupid.

All in all, this Friday is shaping up to be a rather unpleasant one. And here I thought I was looking forward to a nice, quiet, productive day.

 Posted by at 2:02 pm
May 092022
 

It’s now Monday, May 9, 2022. And it is an anniversary of sorts.

No I am not talking about Putin and his planned “victory” parade, as he is busy desecrating the legacy of the Soviet Union’s heroic fight in the Great Patriotic War against a genocidal enemy.

I am referring to something much more personal. This sentence:

I watched The Matrix, for the first time. I’ve seen Dark City, and I loved it. I have heard all sorts of bad things about The Matrix, so I had low expectations. I was pleasantly surprised. Maybe not as well done as Dark City, it was nevertheless a surprisingly intelligent movie for a blockbuster.

Not very profound or insightful, is it.

But it happens to be my first ever blog entry, written when I still refused to call a blog a “blog”, calling it instead my “Day Book”, in the tradition of the late Jerry Pournelle.

So there. Will I be around twenty years from now? Perhaps more pertinently, will the world as we know it still be around?

What can I say? I am looking forward to marking the 40th anniversary of my blog on May 9, 2042, with another blog entry, hopefully celebrating a decent, prosperous, safe, mostly peaceful world.

 Posted by at 3:01 am
Mar 162022
 

Time for me to rant a little.

Agile software development. Artificial intelligence. SCRUM. Machine learning. Not a day goes by in our profession without the cognoscenti dropping these and similar buzzwords, hoping to dazzle their audience.

Give me a break, please. You think you are dazzling me but all I see is someone who just rediscovered the wheel.

Let me present two books from my bookshelf. Both were published in Hungary, long before the Iron Curtain came down, back when the country was still part of the technologically backward, relatively underdeveloped “second world” of the socialist bloc.

First, Systems Analysis and Operations Research, by Géza Jándy, published in 1980.

In this book, among other things, Jándy writes (emphasis mine): “Both in systems analysis and in design the […] steps are of an iterative nature […]. Several steps can be done contemporaneously, and if we recognize opportunities for improvement in implementing the plan, some steps may be retraced.”

Sounds familiar, Agile folks?

And then, here’s a 1973 (!!!) Hungarian translation of East German author Manfred Peschel’s book, Cybernetic Systems.

A small, unassuming paperback. But right there, the subtitles tell the story: “Automata, optimization, learning and thinking.”

Yes, it’s all there. Machine learning, neural networks, the whole nine yards. What wasn’t available in 1973 of course was Big Data, the vast repositories of human knowledge that is now present on the Internet, and which machine learning algorithms can rely on for training. And of course hardware is a lot faster, a lot more capable than half a century ago. Nor am I suggesting that we haven’t learned anything in the intervening decades, or that we cannot do things better today than back in the 1970s or 1980s.

But please, try not to sell these ideas as new. Iterative project management has been around long before computers. The conceptual foundations of machine learning date back to the 1950s. Just because it’s not on the Interwebs doesn’t mean the knowledge doesn’t exist. Go visit a library before you reinvent the wheel.

 Posted by at 1:54 pm
Feb 202022
 

Engineers sometimes have to deal with unexpected challenges. This is especially true for systems that have to operate in a natural environment, subject to the elements, unpredictable weather, and, well, wildlife.

Take these beautiful Starlink satellite dishes. Little technological marvels that bring Internet service to rural users through Musk’s Starlink satellite constellation. Key to the system is a steerable small satellite dish that can be set up, e.g., in the backyard of the Starlink customer.

Unfortunately electronics ultimately converts electrical energy into waste heat, and the Starlink dish is no exception. The dish actually has a “snow melt” mode that is supposed to keep it free of snow and ice for uninterrupted operation. And it certainly has a comfy shape… especially when you are a feral cat in the middle of winter.

I doubt this issue was ever considered by Starlink engineers who designed the customer equipment. On the other hand, I would not be surprised if, in the future, engineering courses end up using this as an example of the unexpected, facing engineers.

 Posted by at 5:31 pm