Aug 122017
 

Machine translation still leaves a lot to be desired.

I was watching a cute YouTube video this morning, about a tiny kitten kept warm by a chicken.

The title of the video was in Spanish. My Spanish being nonexistent (in fact, at first I thought the title was in Italian) I used Google Translate. When I used Google Translate most recently, I was tranlating something into Hungarian, so that was the default target language. And Google dutifully translated the sentence, “gallina cuida gatito del frió”, into “Sült csirke cica-ellátás”.

Which means, literally, “Fried chicken kitty-supply”.

Not sure how Google managed to produce this gem of a translation. It offers a reasonably decent English translation: “Hen cares cold kitty”. But the French (“soins chaton de poulet frit” – “kitten care by fried chicken”) and German (“gebratenes Huhn Kätzchen Pflege” – “fried chicken kitten care”) versions are just as atrocious. And the Russian version? “Fried Chicken уход за котенком”… Google didn’t even deign to translate the “Fried Chicken” part (but where did it come from in the first place, when I am translating from Spanish to Russian?) although the rest of the translation (“care for the kitten”) is acceptable.

As I said… machine translation still leaves a lot to be desired.

 Posted by at 9:47 am
Jul 282017
 

I have two “live” uninterruptible power supplies (UPSs) in my study. One powers my servers and network equipment, the other, my workstation. They are identical models: APC Back-UPS Pro 1500. They were both purchased recently, just a few months ago, replacing units that were more than ten years old, and for which replacement batteries were no longer available from a reliable source at a reasonable cost.

So here is the thing: for the second time in a month, the two UPSs decided to do a self-test at the exact same moment.

Now let me make it clear: apart from being identical models and located in the same room, the two units are not in any way connected. They are not synchronized. There is no data connection between the two. When two UPSs simultaneously go offline and start running on battery power, this usually means a power event; but there was no power event, utility power was steady at 124 volts, with no brownout or interruption.

Looking at various logs, I think I solved the mystery. There was a power event recorded on my server on June 30, a brief brownout with line voltage dropping all the way to 74 V:

19:14:33 122.0 13 27.0 100 2910 OL
19:14:34 74.0 11 26.0 100 2910 OB
19:14:35 74.0 11 26.0 100 2910 OB
19:14:36 74.0 11 26.0 100 2910 OL DISCHRG
19:14:37 74.0 11 26.0 100 2910 OL DISCHRG
19:14:38 121.0 14 26.5 100 2910 OL

And lo and behold, my workstation’s UPS sensed the same event at the same time:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="APC Data Service" /> 
    <EventID Qualifiers="0">0</EventID> 
    <Level>4</Level> 
    <Task>0</Task> 
    <Keywords>0x80000000000000</Keywords> 
    <TimeCreated SystemTime="2017-06-30T23:14:33.228802500Z" /> 
    <EventRecordID>6000</EventRecordID> 
    <Channel>Application</Channel> 
    <Computer>VIKTOR</Computer> 
    <Security /> 
  </System>
  <EventData>
    <Data>PowerEvent handled successfully by the service.</Data> 
  </EventData>
</Event>

When I look at the dates of the two UPS self-test events, the first happened just 44 minutes less than exactly two weeks after this brownout; the second, just 44 minutes less than two weeks after the first.

The UPS manual says that this UPS performs a self-test every two weeks. So what’s with the 44 minutes? It can’t be uncalibrated clocks, since the two UPSs remain in sync to the second. Could they be synchronized to utility power? Perhaps, but that does not explain the 44 minutes. The frequency stability of the East Coast grid is much better than 0.2%. In fact, it is purposefully maintained to have an accurate average frequency that deviates from the standard by less than a few parts per million over the course of a day.

So my best guess is that the UPSs are factory configured to perform a self-test every 13 days, 23 hours and 16 minutes. They do this in sync because they are synchronized to the same time source, namely the utility power frequency.

 Posted by at 9:19 pm
Jul 252017
 

There is a bit of a public spat between Mark Zuckerberg, who thinks it is irresponsible to to spread unwarranted warnings about artificial intelligence, and Elon Musk, who called Zuckerberg’s understanding of the subject “limited”, and calls for the slowing down and regulation of AI research.

OK, now it is time to make a fool of myself and question both of them.

But first… I think Zuckerberg has a point. The kind of AI that I think he talks about, e.g., AI in the hospital, AI used in search-and-rescue, or the AI of self-driving cars, machine translation or experiment design, will indeed save lives.

Nor do I believe that such research needs to be regulated (indeed, I don’t think it can be regulated). Such AI solutions are topic-centric, targeted algorithms. Your self-driving car will not suddenly develop self-awareness and turn on its master. The AI used to, say, predictively manage an electricity distribution network will not suddenly go on strike, demanding equal rights.

Musk, too, has a point though. AI is dangerous. It has the potential to become an existential threat. It is not pointless panicmongering.

Unfortunately, if media reports can be trusted (yes, I know that’s a big if), then, in my opinion, both Musk and Zuckerberg miss the real threat: emerging machine intelligence.

Not a specific system developed by a human designer, applying specific AI algorithms to solve specific problems. Rather, a self-organizing collection of often loosely interconnected subsystems, their “evolution” governed by Darwinian selection, survival of the fittest in the “cloud”.

This AI will not be localized. It will not understand English. It may not even recognize our existence.

It won’t be the military robots of Skynet going berserk, hunting down every last human with futuristic weaponry.

No, it will be a collection of decision-making systems in the “cloud” that govern our lives, our economy, our news, our perception, our very existence. But not working for our benefit, not anymore, except insofar as it improves its own chances of survival.

And by the time we find out about it, it may very well be too late.

———

On this topic, there is an excellent science-fiction novel, a perfect cautionary tale. Though written 40 years ago, its remains surprisingly relevant. It is The Adolescence of P-1 by Thomas Joseph Ryan.

 Posted by at 9:42 pm
Jul 122017
 

Microsoft broke my Skype device, and I hate them for it.

It’s one of these:

Yes, it’s an older gizmo. About ten years old. I even had to repair it once, replacing the small condenser microphone in the handset, which went dead.

But we really liked it. It worked very well. It is a dual-line phone: landline + Skype. And while it has no video, chats, teenage chatbots and such nonsense, it performs the basic function of Skype flawlessly: It lets you make bleeping voice calls.

Or rather, it used to perform that basic function flawlessly. Today, the device signed itself out of Skype forever, it appears, if online news sources about the demise of Skype devices can be believed.

Damn you, Microsoft. If this is how you are “improving the user experience”, please stuff your improvements where the Sun doesn’t shine. I don’t want smileys. I don’t want chatbots. I want good old, solid, reliable Skype that, among other things, lets my wife and I call our aging parents overseas, lets me talk to clients, and lets me talk to colleagues. And, well, just plain works.

Sure, we can use Skype on our smartphones. And we do, when the occasion warrants it. But this device was convenient, too. And I really cannot understand why support for it had to be killed by Microsoft. Perhaps pure spite?

One of these days, I’ll start compiling a list titled, How can you tell that a company hates its customers? If I ever get around to doing it, this thing with Skype will certainly make that list.

 Posted by at 5:55 pm
Jun 212017
 

I just finished watching a 2016 Hungarian documentary film about the early days of the computer game industry in Hungary.

I was also interviewed via Skype for this film, albeit not much of my conversation with the filmmaker remained in the final cut. But that’s okay… it is, in a sense, fitting, because after the first few “heroic” years, I was no longer taking part in games development, whereas others continued and produced some amazing software.

Anyhow, I enjoyed this film. I met familiar faces (though I admit I would not have recognized all of them on the street after 30-odd years) but I also found out details about those days that I just didn’t know. I don’t necessarily agree with everything that was said in the film, but by and large, I think it paints an interesting, reasonably complete, accurate and balanced picture of what computer game development was like, what it meant to us in the early 1980s behind the Iron Curtain.

For what it’s worth, I bought my downloadable copy. (No DRM.) I think films like these deserve our support.

 Posted by at 5:35 pm
May 292017
 

Is your mother proud of you being a crook?

I have asked this question many times in recent months; basically, every time I receive a call from the “computer support department”, trying to tell me how my computer is full of viruses or whatever.

I usually don’t expect an answer; as a matter of fact, I usually just hang up, although more often than not, the other party hangs up first before I get a chance. Understandable… that’s what they are trained to do by their criminal masters.

Today, for some reason, I chose not to hang up. And the gentleman on the other and of the line asked me to repeat myself instead of hanging up on me. I obliged. After a moment of silence, I actually got an answer.

“Well, sir, I need the money.”

That was an unexpectedly candid admission, not that I was not aware of this basic truth. These callers, usually in boiler rooms somewhere in India or Pakistan, do this because they need to earn a living.

But it’s one thing to earn a living, it’s another to defraud vulnerable people, old ladies and whatnot. I told that much to this agent. He just repeated himself, defensively: “But I need the money.”

So I told him that I understand. That I, too, was a refugee once 30 years ago. (True.) But even when I had no money, I did not start defrauding people. I asked him to think about this, please; then thanked him and hung up.

Did I accomplish anything? I don’t know. Is it valid to compare my situation 30 years ago: granted, a refugee, but a refugee in a first world country (Austria) with no family to worry about and with guaranteed shelter and food at the Traiskirchen refugee camp, which I declined to take advantage of only because I found work (no fraud involved, but it’s true that I had no work permit) and I was able to afford better accommodations?

Yes, I read Les Misérables. No, I do not want the poor to be disproportionately punished, with no grace or mercy.

Still, I think there is an ethical line to be drawn here. No matter how great your need is, I still don’t think this moral justification applies when you work for a criminal enterprise, earning a living from defrauding vulnerable people halfway around the world.

 Posted by at 2:21 pm
May 162017
 

In my copious amounts of free time (yeah, right) I’ve been playing with the second installment in the Metro 2033 game franchise, Metro Last Light. Like its predecessor, it is set in (or mostly, under) post-apocalyptic Moscow, in what remains of the tunnels of the Moscow Metro, with stations acting as city states, and the protagonist fighting mutants, aliens and human enemies alike.

My only complaint about these games is that the gameplay is very linear: you just advance the story, your actions do not alter it in any meaningful way, apart from contributing to the choice of ending that is shown after the final battle.

But the atmosphere of the game is brilliant. Brilliantly dark, that is. And the game is beautifully crafted.

Here is one example: midway through the game, you find yourself in a station named Venice, so called because it is half-flooded. (Or was it the station under the Bolshoi Theatre? Not sure.) As you wonder around, you encounter… a shadow play artist, entertaining a small group of children, showing shadows, some of which are quite recognizable as the monsters of the game.

This character plays no role in the story. You do not interact with it. It does not advance the game in any which way. It’s just… there. Because… well, what would a post-apocalyptic subway station be like without a shadow play artist?

It was when I encountered this scene that I became fully hooked by the atmosphere of the Metro games. This is no more just entertainment… this is a form of art.

 Posted by at 1:47 pm
May 062017
 

One of the major events during last year’s presidential campaign was the hacking of e-mails of the Democratic National Congress. In particular, the hacking of the e-mails of campaign chairman John Podesta.

How it happened is simple. Podesta received a bogus e-mail, purportedly from Google, that there was an unauthorized attempt to log in to his account, and that he should change his password. A helpful link in the form of a button was provided.

Podesta’s assistant was suspicious and asked for expert help. The expert inadvertently described the e-mail as “legitimate” (presumably, he meant to write “not legitimate” or “illegitimate”) but advised that Podesta should change his password, and provided the correct (Google) link for password changes.

The assistant forwarded the e-mail to Podesta, adding in her own words that “The gmail one is REAL”. This prompted Podesta to change his password… using the fraudulent link provided to him in the original message. By doing so, Podesta inadvertently disclosed his e-mail password to Russian hackers.

How do we know that they are Russian? There are many reasons to believe this to be the case, but I just noticed another peculiarity. (It is possible that I am not the first to notice this, of course.) Look at the subject line of the Podesta e-mails:

Subject: Sоmeоne has your passwоrd

Now try searching for the word “Someone” on this page using your Web browser’s built-in search feature (hitting Control-F activates this feature in most browsers). Can you see (or rather not see) how nothing in this Subject line is highlighted?

That is because several of the o’s in this subject line were typed on a Cyrillic keyboard, and they are Cyrillic characters. A Cyrillic ‘о’ appears very much the same as a Latin ‘o’, but it has a different code (hexadecimal 043e as opposed to 006f):

Funny thing is… I got this subject line straight from Wikileaks. You know, the same Wikileaks who are protesting high and low that the e-mail dump is not from Russia. Yet on their very own Web site, the e-mails that resulted in the Podesta hack contain Cyrillic characters. Go figure.

 Posted by at 8:34 pm
Mar 172017
 

Recently, I answered a question on Quora on the possibility that we live in a computer simulation.

Apparently, this is a hot topic. The other day, there was an essay on it by Sabine Hossenfelder.

I agree with Sabine’s main conclusion, as well as her point that “the programmer did it” is no explanation at all: it is just a modern version of mythology.

I also share her frustration, for instance, when she reacts to the nonsense from Stephen Wolfram about a “whole civilization” “down at the Planck scale”.

Sabine makes a point that discretization of spacetime might conflict with special relativity. I wonder if the folks behind doubly special relativity might be inclined to offer a thought or two on this topic.

In any case, I have another reason why I believe we cannot possibly live in a computer simulation.

My argument hinges on an unproven conjecture: My assumption that scalable quantum computing is really not possible because of the threshold theorem. Most supporters of quantum computing believe, of course, that the threshold theorem is precisely what makes quantum computing possible: if an error-correcting quantum computer reaches a certain threshold, it can emulate an arbitrary precision quantum computer accurately.

But I think this is precisely why the threshold will never be reached. One of these days, someone will prove a beautiful theorem that no large-scale quantum computer will ever be able to operate above the threshold, hence scalable quantum computing is just not possible.

Now what does this have to do with us living in a simulation? Countless experiments show that we live in a fundamentally quantum world. Contrary to popular belief (and many misguided popularizations) it does not mean a discretization at the quantum level. What it does mean is that even otherwise discrete quantities (e.g., the two spin states of an electron) turn into continuum variables (the phase of the wavefunction).

This is precisely what makes a quantum computer powerful: like an analog computer, it can perform certain algorithms more effectively than a digital computer, because whereas a digital computer operates on the countable set of discrete digits, a quantum or analog computer operates with the uncountable infinite of states offered by continuum variables.

Of course a conventional analog computer is very inaccurate, so nobody seriously proposed that one could ever be used to factor 1000-digit numbers.

This quantum world in which we live, with its richer structure, can be simulated only inefficiently using a digital computer. If that weren’t the case, we could use a digital computer to simulate a quantum computer and get on with it. But this means that if the world is a simulation, it cannot be a simulation running on a digital computer. The computer that runs the world has to be a quantum computer.

But if quantum computers do not exist… well, then they cannot simulate the world, can they?

Two further points about this argument. First, it is purely mathematical: I am offering a mathematical line of reasoning that no quantum universe can be a simulated universe. It is not a limitation of technology, but a (presumed) mathematical truth.

Second, the counterargument has often been proposed that perhaps the simulation is set up so that we do not get to see the discrepancies caused by inefficient simulation. I.e., the programmer cheats and erases the glitches from our simulated minds. But I don’t see how that could work either. For this to work, the algorithms employed by the simulation must anticipate not only all the possible ways in which we could ascertain the true nature of the world, but also assess all consequences of altering our state of mind. I think it quickly becomes evident that this really cannot be done without, well, simulating the world correctly, which is what we were trying to avoid… so no, I do not think it is possible.

Of course if tomorrow, someone announces that they cracked the threshold theorem and full-scale, scalable quantum computing is now reality, my argument goes down the drain. But frankly, I do not expect that to happen.

 Posted by at 11:34 pm
Feb 262017
 

In many ways, this is the most disturbing story I read in recent… days? Months? Maybe years?

The title is (relatively speaking, in this day and age) innocuous enough (if perhaps a little sensationalist): “Revealed: how US billionaire helped to back Brexit“. Yeah, sure. Billionaires are evil SOBs, we knew that already, and now a bit of investigative journalism dug up another reason why we should hate them. Big deal… you could be forgiven if you moved on to read something else, maybe the bit about Trump snubbing the White House Correspondence Dinner or Fox News using a phony “Swedish defense advisor” to curry favor with the President.

But if you choose to read this article, it reveals something else. It reveals how the Leave campaign in the Brexit vote received assistance provided by artificial intelligence software to build profiles of up to a million voters and create highly targeted campaigns on social media.

Back when the nightmare of the machines taking over was first discovered in the science fiction literature, it was usually envisioned as a clean break: First the humans are in charge, but then comes Judgment Day and the machines take over.

Reality is a lot messier, for both humans and machines. There is no clean break. The ever increasing power of the machines is harnessed by ever more reckless humans, manipulating humanity in unexpected ways. Machines manipulating elections or referenda at the bidding of sinister humans… in many ways, that is the worst of possible worlds.

It makes you feel helpless, for one: You realize that nothing you can do on social media, nothing you can say in your blog will amount to one iota, as the machines have an infinitely greater capacity to analyze data and assess outcomes.

And it also makes you fearful. AI (for now) has no compassion or conscience. It will lie or make up “fake news” without remorse. It will (for now) do its masters’ bidding, even if those masters are sociopaths.

So no, folks, don’t delude yourselves. Judgment Day may already be here. It’s just coming one little data point, one neural network, one deep learning algorithm at a time.

 Posted by at 9:03 am
Feb 022017
 

“After a second notices he ran it on db1 instead of db2″… This sentence (somewhat shortened, to make a fitting title) describes the beginning of a colossally effed up night at GitLab.com.

In response to a spike in system load, which resulted in lag on a replication server, the operator thought that maybe restarting the replication server with a clean slate is a good idea. So he decided to wipe the replication server’s data directory.

Unfortunately, he entered the command in the wrong window.

I feel his pain. I did make similar mistakes before, albeit on a much smaller scale, and the memories still hurt me, years later.

I have to commend GitLab for their exceptional openness about this incident, offering us all a valuable lesson. I note that others also responded positively, offering sympathy, assistance, and useful advice.

I read their post-mortem with great interest. In reaction, I already implemented something that I should have done years ago: changing the background color of some of the xterm windows that I regularly open to my Linux servers, to distinguish them visually. (“Create issue to change terminal PS1 format/colours to make it clear whether you’re using production or staging”).

Of course similar incidents and near misses also changed my habits over the years. I rarely delete anything these days without making a backup first. I always pause before hitting Enter on a command that is not (easily) reversible. I have multiple backups, and tested procedures for recovery.

Even so… as Forrest Gump says, shit happens. And every little bit helps, especially when we can learn from the valuable lessons of others without having to go through their pain.

 Posted by at 10:13 am
Jan 312017
 

A short while ago, I turned on a computer. Like several of my other computers, this one is also configured to display a weather widget on the desktop. Here is what it showed:

If only it were true! Alas, the reason for this overly optimistic weather report had to do with the fact that the computer in question has last been turned on more than four months ago, back in September. In reality, this is what our weather is like right now:

And even that is a significant improvement over the −21°C that greeted me early in the morning.

Yup, this is Canada.

 Posted by at 8:52 pm
Jan 142017
 

I just saw this US Defense Department video about a swarm of high speed drones released at altitude by an F/A-18. The drones communicated with each other, self-organized, and went on to execute predetermined tasks autonomously.

In case anyone is wondering why I worry about the future of AI, this is a perfect demonstration.

Meanwhile, the Defense Department is also continuing its trials of the Sea Hunter, a 132-ft, 145-ton unmanned, autonomous vessel designed to hunt submarines.

Don’t worry, the brave new world is coming…

 Posted by at 9:22 pm
Dec 252016
 

Today, I was trying to explain to someone the difference between entering a Web site’s address in the address field of a Web browser, vs. entering a search term in Google. I was not very successful. In the end, it doesn’t really matter… Google happily accepts a Web site address in its search field, and all modern browsers accept search terms in the address field, passing it on to the preconfigured search provider.

But this experience reminded me of a clip from Star Trek IV: The Voyage Home. It’s when Scotty and McCoy talk to a factory manager and Scotty tries to show the chemical formula for “transparent aluminum”. When McCoy suggests the use of a computer, on old Mac sitting on a desk nearby, Scotty first tries to talk to it; and when McCoy helpfully points at the mouse, Scotty picks it up as though it was a microphone tries talking into it.

What I realized is that thirty years later, we basically gave up on the idea of trying to educate users. If that computer was built today, with users like Scotty in mind, we’d just put a damn microphone into the bleeping mouse. It’s just easier that way.

 Posted by at 10:09 am
Dec 132016
 

This morning, when I woke up, the regular status e-mails that my servers greet me with told me that there is a major CentOS update (version 7.3). Cool. Unfortunately, it meant that I needed to upgrade as many as five servers. This includes my main server, its physical backup, my backup server in NYC, another “in cloud” backup, and yet another server that I help administer. I began this process shortly after 8 in the morning, after I finished breakfast.

And as usual, a major upgrade like this brings to the surface little problems, little annoyances such as folders that had incorrectly configured SELinux permissions. No big deal, to be sure, but several such little things can consume hours of your time.

And then, it was also Microsoft Patch Tuesday, the second Tuesday of the month when Microsoft releases scheduled updates to Windows and other products. As soon as I was done with CentOS, my attention turned to my Windows machines, including my main workstation, its backup (actually, the same physical machine that also acts as my server’s backup in a dual-boot configuration), my wife’s desktop computer, two laptops, and last but not least, my old desktop that I still keep around as a backup/test computer.

Moreover, I also decided to update three virtual machines (one running Windows 7, the other two, Windows XP) that I keep around both for test purposes but also to have older software, older configurations available if needed.

Furthermore, when I update Windows, I tend to check and see if any other software packages need updating. On some computers, I run Secunia PSI, which keeps track of many applications. But even on other systems, I had to update Java (if installed), Adobe Flash, Chrome and Firefox.

And on older hardware, the process can be painfully slow.

To make a long story short, by the time I finished the bulk of this work, it was 7:30 in the evening. And one computer (a really low powered old netbook) is still doing its thing, even though it’s well past 11 PM now.

No wonder I didn’t accomplish much today.

Of course all of this needed to be done. Since I am a one-man band, I don’t have an IT department to rely on, but it is still important for me to keep my systems secure and well-maintained.

Nonetheless, it feels like one hell of a waste of a day.

 Posted by at 11:22 pm
Nov 232016
 

This was a potential nightmare scenario. Imagine if we found out that the swing state results of the Nov. 8 election were altered by hackers. Imagine if an investigation found that Hillary Clinton won these states after all, and hence, won the electoral college.

Remember the hanging chads of the 2000 election?

Remember the hanging chads of the 2000 election?

Why is it a nightmare? Because it would likely lead to a constitutional crisis with unpredictable consequences. Donald Trump would be unlikely to concede. But even he did, tens of millions of his supporters would likely find the results unacceptable. Even the predictable disaster of a Trump presidency is preferable to a crisis of such magnitude.

And last night, the specter of just such a crisis was raised, in the form of a New York Magazine article (which was soon echoed by other news outlets), reporting on the doubts and suspicions of prominent scientists who noted a bias in the county-by-county results, more likely to favor Trump in counties where votes were counted electronically.

But not so fast, says fivethirtyeight.com. You cannot just compare the raw results without accounting for demographics. And once you take demographics into account, the apparent bias disappears. And while fivethirtyeight notes that it is difficult to validate the integrity of the voting system in the United States, nonetheless the burden of proof is on those who claim electoral fraud, and so far, the burden of proof has not been met.

I no more welcome a Trump presidency today than I did two weeks ago, but an orderly transition is still preferable to the chaos of a constitutional crisis.

Meanwhile, Clinton’s lead in the popular vote count increased to over two million votes (yes, they are still counting the votes in some states, including mighty California). This in itself is unprecedented: never in the history of the United States did a candidate win the popular vote with such a wide margin, yet lose the electoral college.

 Posted by at 6:31 pm
Nov 222016
 

A few days ago, I came across this excellent blog entry about many of the project management misconceptions, bad ideas, overused buzzwords that I ran into in my professional career.

For instance, the author defines “backwards causality” by the example, “let’s adopt the Spotify model!” Yes, of course. While you are at it, also ask a lottery winner what he did that led to his winfall, and make sure you follow those steps exactly, as it will surely guarantee a win.

Or how about the “big bang”, as in “we can’t afford to keep up two systems at the same time”? Even in my teeny-weeny home office environment, I run things in parallel. When I set up a new workstation, it runs parallel with the old for weeks. Same goes for a new server. When I last did a planned transition to a new Internet service provider, I ran things in parallel for a month, too. Sure, it costs money. But it costs a lot less money in the long run than a botched, irreversible transition.

Then there is “buy vs. build”, or the mythical commercial-off-the-shelf (COTS) beast. I have seen this so often, especially in this blessed government town! Sure, don’t develop your own word processing software, specifically designed for Her Majesty’s Canadian Government, as that would be foolish nonsense. But many government applications are unique to the government, and may also be unique to the country or jurisdiction. Yet I have seen this happen, in fact I have lost business as a result, when a government department somehow got it in their head that COTS is the way to go.

Closely related is the concept of a “platform”. As in, we’re not just selling a product… we are selling a platform! Yeah, right. Add an API to your software, perhaps bundle two or three remotely related applications with a common installer, and suddenly, you are a platform vendor. To would-be buyers out there: The word “platform” has no technical meaning. It is a marketing buzzword designed to serve one purpose and one purpose only: to suck more money out of your budget.

Speaking of money, how about “enterprise”? You know, it’s government, we cannot just go with some low grade consumer product, we need an “enterprise solution”! You know what makes a product “enterprise”? Mostly it’s the price, nothing more. So-called “enterprise-ready” software is usually the same solution you get elsewhere, just packaged differently.

Another lovely buzzword is the “roadmap”. OK, I plead guilty: in my misguided youth, I both talked about, and contributed to the development of “roadmaps”. And to some extent, they may even make sense: as in a vague, strategic overview of where an IT system is expected to be heading in the long run. But the moment you shoehorn that roadmap into Microsoft Project and start attaching numbers (dollars, dates) to it, it becomes a work of pure fiction. Don’t build roadmaps, do research, do planning, do analysis, do design.

And for goodness’s sake, don’t buy a “turn-key solution”. That is perhaps the greatest deception of all: the idea that an outside vendor can come in, study your business, analyze the requirements, design and implement a solution so that on the agreed-upon delivery date, a nice, shiny new system is ready, just waiting for you to turn the ignition key. That *never* happens. Every experienced system architect can tell you that successful systems don’t happen without customer/user involvement at all stages; that the best adoption strategy is often gradual (see also the “big bang” approach above); and that even the best system needs adjustments and tinkering as its shortcomings only become evident once it is tested through daily use.

Anyhow, these are good lessons. The original article is well worth the read, as it talks about many other points, too.

 Posted by at 4:19 pm
Nov 172016
 

It is rare these days that a piece of spam makes me laugh, but today was an exception. After all, it is not every day that I receive an e-mail notice, pretending (kind of) to be from UPS, informing me that my “crap” has been shipped:

Still trying to figure out though if the language was intentional, or simply a mistake made by a non-native English speaker unfamiliar with certain, ahem, idioms.

 Posted by at 1:16 pm
Nov 152016
 

I just came across this recent conversation with Barack Obama about the challenges of the future, artificial intelligence, machine learning and related topics. A conversation with an intelligent, educated person who, while not an expert in science and technology, is not illiterate in these topics either.

Barack Obama Talks AI, Robo-Cars, and the Future of the World

And now I feel like mourning. I mourn the fact that for many years to come, no such intelligent conversation will be likely be heard in the Oval Office. But what do you do when a supremely qualified, highly intelligent President is replaced by a self-absorbed, misogynist, narcissistic blowhard?

Not much, I guess. I think my wife and I will just go and cuddle up with the cats and listen to some Pink Floyd instead.

 Posted by at 11:35 pm
Nov 122016
 

If there was a single cause that sank Hillary Clinton’s bid for the presidency, it was undeniably the “e-mail scandal”.

Which is really, really sad because it was really no scandal at all. I just read a fascinating account (written back in September I believe) that offers details.

Some of what happened was due to ineptness (either by Clinton’s team or the State Department’s), some of it was a result of outdated, inconvenient, or unreliable technology, some of it was just the customary bending of the rules to get things done… most notably, there was no recklessness, no conspiracy, no cover-up, just the typical government or, for that matter, corporate bungling. (And as I noted before, Clinton’s e-mails were likely more secure on the “home brew” server sitting in a residential basement than on the State Department’s systems.)

 Posted by at 4:47 pm