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
Oct 302016
 

And the most maligned game of the year award for 2016 goes to… undoubtedly, No Man’s Sky. This game was much hyped by its creator in the months leading up to its release, hugely disappointing its fans when the released version lacked many of the features that they anticipated.

I was not part of this lot, though. I have not even heard of No Man’s Sky until I was asked to review it by a customer.

I spent a bit of time playing with it. I actually found the game quite enjoyable, albeit a bit monotonous after a while. Game play, in the end, boils down to landing on a planet, collecting resources, upgrading your ship, suit, or weapon, and moving on. There is a very thin storyline about some perpetual conflict between the three alien races that you meet, the mysterious “sentinels”, and the even more mysterious Atlas that ultimately reveals that the galaxy which you explore is just a simulation (d’oh!) but I found it uncompelling. Still, I found the game strangely attractive. Perhaps because it is the ultimate sandbox environment: You are not confined to a building, a cave, a city, a country, or even to a whole planet: you have an entire universe to explore!

Still, I’d love to have seen more races, signs of civilization, alien cities covering entire continents… or for that matter, just continents and more variety in the landscape within a planet, differences between mountains and plains, polar and equatorial regions and the like.

In short, I have to agree with those reviewers that No Man’s Sky feels a little unfinished; it would make an excellent indie game, but it is a bit of a letdown when it is released at a premium price under a major label (SONY).

Like all other games, No Man’s Sky has its glitches. I certainly ran into a few of them. The most annoying is when the game slows down unexpectedly, for which the only remedy is to restart the game and reload the last save. Fortunately, the remaining glitches were much easier to overcome. Like, when I managed to land my spaceship on top of a freaking plant.

I also managed to land once on top of a tower, with my spaceship precariously balanced on one end, making it quite a challenge to get back on board.

Or how about my starship, which I swear I previously left on the ground, ending up high, way high up in the sky? Thankfully, by this time I knew how to call my spaceship back.

I once managed to fall out of the world. It is a bit disconcerting, but easy to solve by reloading my last save.

And once I happened upon a building that was mostly floating in the air. As it turns out, building floors are transparent from below. I was hoping to be able to enter areas that were previously inaccessible to me (I have not yet obtained the appropriate Atlas pass), but alas, the transparency did not go that far.

Speaking of spaceships, here is the cutest-looking ship that I managed to acquire during my travels:

Unfortunately I had to trade it away when a spaceship with a bigger cargo capacity became available. Maybe one day I’ll find another one like this, with more cargo space.

In the end, it seems to me that No Man’s Sky will not appeal to everyone, but to those who like it, it can be quite enjoyable with decent replay value. I still fire it up from time to time.

 Posted by at 2:24 pm
Aug 252016
 

It was 25 years ago today that a Finnish chap by the name of Linus Torvalds made an announcement about a new operating system that he developed in the preceding few months. Nothing big and professional, he assured us, just a hobby project basically… but here it was, and he already got a command shell and the GNU C compiler working.

I have been using Linux for 23 of those 25 years. I became familiar with Linux when I took over sysop duties of the UNIX forum of the long defunct NVN (National Videotex Network).

I no longer have the original SLS (SoftLanding Linux) floppy images, though I am pretty sure even without checking they can be found in several archives online.

But I do have the announcement that I posted on the NVN UNIX forum page almost exactly 23 years ago, on September 1, 1993:

Welcome to the LINUX distribution on NVN!

The UNIX Forum data library now contains the complete set of files
making up the Softlanding Software (SLS) distribution of LINUX, the
popular *FREE* UNIX operating system clone.

The files are the most recent (version 0.99 patchlevel 12) as of
today, August 28, 1993.

The files were used by the UNIX SysOp to install a complete LINUX on
an 80386SX20 PC, with 4 Mb of RAM, a 68 Mb and a 42 Mb MFM hard disk
drive, an ATI VGAWonder super-VGA card with 512 kb video RAM, a
Microsoft mouse, a 5.25" high density floppy drive, and a 3.5" high
density drive, and an ATI2400etc/i internal modem. Brief assessment:
it works like a charm. So well, in fact, that I decided to keep it
and permanently convert my old 386SX to a LINUX host. I am already
using it as a dial-in system for my friends and business associates.

The files in this distribution are:

readme.sls this file
sls_info.zip miscellaneous text information files
rawrite.zip needed to create the A1 bootable LINUX disk
sls_a1_3.zip bootable floppy image for 3.5" 1.44 Mb drives
sls_a1_5.zip bootable floppy image for 5.25" 1.2 Mb drives
sls_a2.zip Minimum base system
sls_a3.zip
sls_a4.zip
sls_b1.zip Base system extras
sls_b2.zip
sls_b3.zip
sls_b4.zip
sls_b5.zip
sls_b6.zip
sls_b7.zip
sls_c1.zip Compilers
sls_c2.zip
sls_c3.zip
sls_d1.zip Documentation
sls_d2.zip
sls_s1.zip Essential component source
sls_t1.zip TeX
sls_t2.zip
sls_t3.zip
sls_x1.zip X-Windows
sls_x2.zip
sls_x3.zip
sls_x4.zip
sls_x5.zip
sls_x6.zip
sls_x7.zip
sls_x8.zip
sls_x9.zip
sls_x10.zip

All the files named sls_Sn.zip must be uncompressed under DOS and
copied onto separate floppies. The bootable LINUX floppy (disk A1)
can be created from sls_a1_3.zip or sls_a1_5.zip using the RAWRITE
program, supplied in RAWRITE.EXE.

It is suggested that you download sls_info.zip first, for additional
information. The files in this archive are text files readable under
DOS (lines end with CR/LF instead of LF only as they do under UNIX).


Please note that while the NVN UNIX does not (indeed, cannot) provide
support for LINUX, I will be glad to answer any of your questions. 
Also, if you are interested in a specific program, application, or
information file that is not included in the present distribution,
please let me know and I will see if I can obtain and upload it. If
you would like to run OSF/Motif on your LINUX system, you may not
have to wait too long; I am planning to try and obtain Motif in the
near future.

Good luck with your installation and I hope that the next time you
call, it will be with your LINUX system!

UNIX SysOp

Before making this announcement, I already set Linux up on an old 386SX desktop computer that I was no longer using. Within a few months, this computer began to play a permanent role as my Internet server. Although it went through several hardware and software iterations, its basic identity remains the same: it’s the very same server on which these words appear.

 Posted by at 10:20 pm
Aug 062016
 

I have never been to the ghost city of Pripyat, evacuated in the wake of the Chernobyl nuclear disaster.

However, in recent days, I spent some of my free time fighting mutants, mercenaries, bandits and fanatics in and around a virtual version of Pripyat, in the game S.T.A.L.K.E.R. – Call of Pripyat.

This game is the third installment in the S.T.A.L.K.E.R. series, made by Ukrainian game developer GSC Game World.

And it is a damn good game (available without crippling DRM, courtesy of GOG.com; which is the only reason I purchased the game, as I do not buy DRM-protected crippleware.) The other two games are pretty darn good, too.

The games combine an iconic science fiction novella by Arkady and Boris Strugatsky with the realities of the Chernobyl Exclusion Zone (officially the Chernobyl Nuclear Power Plant Zone of Alienation.)

The novella, Roadside Picnic, is inspired by a vision of some careless visitors near a forest, who, after a brief stop, leave behind everything from trash to discarded spark plugs, perhaps a pocket knife or a forgotten transistor radio, or maybe even a pool of used motor oil. What do these strange, sometimes dangerous artifacts and anomalies mean to the forest’s animals? Now imagine a visit to the Earth by some equally careless members of an extraterrestrial supercivilization, with us playing the role of the forest’s fauna. What would we make of the often deadly, totally incomprehensible anomalies and artifacts? As such, the Visitation Zones become places of interest to all, including “stalkers”, freelancers who defy government restrictions and risk life and limb as they enter the Zone illegally to retrieve precious artifacts and substances from the Zone.

The novella was written 15 years before the Chernobyl disaster and its setting is a fictitious town in Canada. Nonetheless, the parallels between the novella’s fiction and Chernobyl’s reality are eerily striking: abandoned buildings, abandoned military equipment, locations with a dangerous buildup of radiation, not to mention what remained a still operating nuclear power plant for many years at the very center of the Exclusion Zone.

This, then, is the setting of the S.T.A.L.K.E.R. series of games: The Zone, its abandoned industrial facilities, farms, vehicles and equipment, the town of Pripyat, even the nuclear plant itself, complete with its sarcophagus. In the fictitious storyline of the games, the 1986 disaster was followed by another man-made disaster some 20 years later, as the Zone, now largely uninhabited, was used as a place to conduct secret, often unsanctioned research.

Near the end of the third game, the player is presented with a choice of being part of an evacuation (which ends the game) or staying in Pripyat. I opted to stay. (OK, I had a saved game, so of course I could explore both scenarios.) After the helicopters left, I still had to dispatch a few enemies… but after that, there I was, standing in the middle of a square in Pripyat in the dead of night, with no friends, not even enemies, just silence occasionally broken by the howl of mutants in the distance. My safe house was gone, all I had was the equipment I carried… and I was alone.

I was honestly surprised by the intensity of this feeling of loneliness coming from a computer game.

Anyhow, I survived, morning came, and I was able to explore parts of Pripyat that I did not visit during the more intense game playing earlier. And thus, I happened upon a famous Pripyat landmark, the town’s never used Ferris wheel:

The Ferris wheel, along with the rest of Pripyat’s brand new amusement park, was set to open on May 1, 1986; unfortunately, the power plant disaster on April 26 scuttled those plans.

Sadly, I was unable to explore the Ferris wheel up close; it is located outside the region of Pripyat that is accessible to the player. But the area that can be explored is huge and terrifyingly gloomy, looking a little bit like pictures from North Korea:

As to the abandoned Soviet-era facilities, here is a splendid example:

Hey, when I took that screen shot, the Sun was almost shining!

The Sun was not shining, though, when I visited the Chernobyl nuclear plant in one of the earlier installments of the game:

But what a place it was. Mostly quiet deadly, even with the best equipment my game persona could muster.

Oh well, it was fun to play these games. Time to get back to work, though.

 Posted by at 1:33 pm
Jul 132016
 

Today, I took the plunge. I deemed my brand new server (actually, more than a month old already) ready for action. So I made the last few remaining changes, shut down the old server, and rebooted the new with the proper settings… and, ladies and gentlemen, we are now live.

Expect glitches, of course. I already found a few.

The old server, of which I was very fond, had to go. It was really old, the hardware about 7 years. Its video card fan failed, and its CPU fan was also making noises. It was ultra-reliable though. I never tried to make this a record, but it lasted almost three years without a reboot:

$ uptime
 12:28:09 up 1033 days, 17:30, 4 users, load average: 0.64, 0.67, 0.77

(Yes, I kept it regularly updated with patches. But the kernel never received a security patch, so no reboot was necessary. And it has been on a UPS.)

This switcharoo was a Big Deal, in part, because I decided to abandon the Slackware ship in favor of CentOS, due to its improved security and, well, systemd. I know systemd is a very polarizing thing among Linux fans, but my views are entirely pragmatic: in the end, it actually makes my life easier, so there.

Anyhow, the new server has already been up 13 minutes, so… And it is a heck of a lot quieter, which I most welcome.

 Posted by at 12:45 pm
Jun 232016
 

Ever since I first laid my hands on INFOCOM’s legendary titles like Zork, A Mind Forever Voyaging, and The Hitchhiker’s Guide to the Galaxy, I’ve been a sucker for high quality computer adventure games.

Over the years, the genre evolved from text-based games to point-and-click graphical adventures, often set in freely explorable worlds. Myst remains a perfect example.

And then came The Longest Journey, one of the most epic adventure games ever created. Sure, its graphics and user interface are somewhat primitive by present-day standards, but the game was exciting, interesting, and—not unlike the best science fiction stories out there—it also served as a cautionary tale.

Then came its sequel, Dreamfall; a strangely flawed game with a moving storyline but stupid quirks like ill-designed action sequences that were more frustrating than enjoyable. Still, it was a great game because its story was great. But it was also unfinished.

Finally, after a successful crowdfunding campaign, came Dreamfall Chapters. Among other things its title reflects the fact that the game was released in five installments, or Books. The latest, Book Five: Redux, came out just a few days ago.

I now played this game to the end, and I remain deeply moved by its ending.

Yet I am also creeped out by the extent to which elements of the game—elements first released almost two years ago!—resemble present-day politics. Most notably, a political election campaign fought between a xenophobic populist whose party promises a new dawn, and a female center-left politician whose campaign turns out to be rather more corrupt than many thought. Sounds familiar? I emphasize, this part of the story was written in 2014 or before. Life imitating art? A mere coincidence? Or prophetic vision?

Cautionary tales are the best that the science fiction genre can offer. Dreamfall Chapters certainly did not disappoint.

 Posted by at 10:07 pm
Jun 092016
 

Dictatorships can be wonderful places, so long as they are led by competent dictators.

The problem with dictatorships is that when the dictators go bonkers, there are no corrective mechanisms. No process to replace them or make them change their ways.

And now I wonder if the same fate may be in the future of Singapore, described by some as the “wealthiest non-democracy”.

The Ministry of Information and the Arts

To be sure, Singapore is formally democratic, with a multi-party legislature. But really, it is a one-party state that has enacted repressive legislation that require citizens engaging in political discussion to register with the government, and forbids the assembly of four or more people without police permission.

Nonetheless, Singapore’s government enjoyed widespread public support for decades because they were competent. Competence is the best way for a government, democratic or otherwise, to earn the consent of the governed, and Singapore’s government certainly excelled on this front.

But I am beginning to wonder if this golden era is coming to an end, now that it has been announced that Singapore’s government plans to take all government computers off the Internet in an attempt to improve security.

The boneheaded stupidity of this announcement is mind-boggling.

For starters, you don’t just take a computer “off the Internet”. So long as it is connected to something that is connected to something else… just because you cannot use Google or visit Facebook does not mean that the bad guys cannot access your machine.

It will also undoubtedly make the Singapore government a lot less efficient. Knowledge workers (and government workers overwhelmingly qualify as knowledge workers) these days use the Internet as an essential resource. It could be something as simple as someone checking proper usage of a rare English expression, or something as complex as a government scientist accessing relevant literature in manuscript repositories or open access journals. Depriving government workers of these resources in order to improve security is just beyond stupid.

In the past, Singapore’s government was not known to make stupid decisions. But what happens when they start going down that road? In a true democracy, stupid governments tend to end up being replaced (which does not automatically guarantee an improvement, to be sure, but over time, natural selection tends to work.) Here, the government may dig in and protect its right to be stupid by invoking national security.

Time will tell. I root for sanity to prevail.

 Posted by at 1:45 pm
May 182016
 

A question on Quora made me reminisce about old computer games that make me feel somewhat nostalgic.

I’ve been involved with computer games both as a player and in a professional capacity for a very long time.

Long before I laid my hands on a personal computer, I was an avid player of Trek on a PDP/11. This was a game written for text terminals, simulating the mission of the Starship Enterprise through Klingon-infested space:

Another game of similar vintage, which I used to play on a peer-to-peer QNX network, is Hack:

Then there was the Commodore-64. Here are two Commodore-64 games that I remember fondly. Impossible Mission:

And Jumpman:

After the Commodore-64 came the Amiga. One of the first games I played on the Amiga 500 was the absolutely surrealist Mind Walker:

Very weird game. Memorable, algorithm-generated music. Ahead of its time.

Moving on to the PC (actually, I first played these on the Atari ST), there are the classic INFOCOM games. (Yes, I am taking the liberty of classifying pure text adventure games as “video games”.) Best known perhaps is Zork:

But there was also the unforgettable apocalyptic story of Trinity:

The equally unforgettable A Mind Forever Voyaging in which you get to play a disembodied artificial intelligence:

And the hilarious Hitchhiker’s Guide to the Galaxy with its fiendishly impossible puzzles:

Still on the text game front, back in 1991 I began playing what was for me the first multiplayer online game, British Legends, aka. MUD (Multi-User Dungeon):

Meanwhile, on my PC, I was busy playing Duke Nukem, its platform versions first, eventually moving on to Duke Nukem 3D (which exists to this day in a community supported 32-bit high-resolution version, complete with NSFW imagery):

And then came Myst, the “killer app” for CD-ROMs:

Last but not least, a game that gave me tremendous amounts of joy, Lands of Lore: Guardians of Destiny (with none other than Patrick Stewart lending his voice acting skills to the CD version):

I remember all these games very fondly. And they are all still eminently playable, and very enjoyable, to this day.

 Posted by at 3:42 pm
May 112016
 

No, I am not using expletives.

Or rather, I’ve been using some expletives, but *#0808# is not code for one of them.

It is an actual code that I can enter into my Samsung phone to get to a service menu that allows me to re-enable USB functions that somehow got turned off.

Although it took only about 15 minutes to find this particular code, it marked the end of a rather frustrating 24 hours. Last night, as it was just about to complete installing 24 Microsoft updates, my workstation locked up. The incomplete installation of updates managed to mess up my Microsoft Office setup, and made it impossible to install some still missing updates. Which meant that I had to use System Restore to get back to a known-good state first, and then redo the updates.

As a result, much of my day was consumed (and it’s not like I slept much last night either.) And as if that wasn’t enough, my phone also suddenly decided that it didn’t want to connect to my workstation anymore… hence my need for the aforementioned code.

All is well that ends well, though, and in the end I managed to install everything. It’s just that those hours of my life that I lost, I’ll never get them back.

It also reinforced my conviction that I made the right decision when, a few days ago, I decided to invest some money and purchase parts for a new workstation and server. It’s about bleeping time… this machine served me well for over seven (!) years, and seven years in this profession is almost an eternity.

Still waiting for some of the parts though. Although I ordered everything from the same supplier, NewEgg.ca, the shipments come from at least four different locations in North America.

 Posted by at 8:47 pm
Apr 152016
 

Not for the first time, one of my Joomla! sites was attacked by a script kiddie using a botnet.

The attack is a primitive brute force attack, trying to guess the administrator password of the site.

The frustrating thing is that the kiddie uses a botnet, accessing the site from several hundred remote computers at once.

A standard, run-of-the-mill defense mechanism that I installed works, as it counts failed password attempts and blocks the offending IP address after a predetermined number of consecutive failures.

Unfortunately, it all consumes significant resources. The Joomla! system wakes up, consults the MySQL database, renders the login page and then later, the rejection page from PHP… when several hundred such requests arrive simultaneously, they bring my little server to its knees.

I tried as a solution a network-level block on the offending IP addresses, but there were just too many: the requests kept coming, and I became concerned that I’d have an excessively large kernel table that might break the server in other ways.

So now I implemented something I’ve been meaning to do for some time: ensuring that administrative content is only accessible from my internal network. Anyone accessing it from the outside just gets a static error page, which can be sent with minimal resource consumption.

Now my server is happy. If only I didn’t need to waste several hours of an otherwise fine morning because of this nonsense. I swear, one of these days I’ll find one of these script kiddies in person and break his nose or something.

 Posted by at 11:50 am
Apr 102016
 

I’ve been encountering an increasing number of Web sites lately that asked me to disable my ad blocker. They promise, in return, fewer ads.

And with that promise, they demonstrate that they completely and utterly miss the point.

I don’t want fewer ads. I don’t mind ads. I understand that for news Web sites, ads are an essential source of revenue. I don’t resent that. I even click on ads that I find interesting or relevant.

So why do I use an ad blocker, then?

In one word: security.

Malicious ads showed up even on some of the most respectable Web sites. Ad networks have no incentive to vet ads for security, so all too often, they only remove them after the fact, after someone complained. And like a whack-a-mole game, the malicious advertiser is back in no time under another name, with another ad.

And then there are those ads that pop up with an autostart video, with blaring sound in the middle of the night, with the poor user (that would be me) scrambling to find which browser tab, which animation is responsible for the late night cacophony.

Indeed, it was one of these incidents that prompted me to call it quits on ads and install an ad blocker.

So sorry folks, if you are preventing me from accessing your content because of my ad blocker, I just go elsewhere.

That is, until and unless you can offer credible assurance that the ads on your site are safe. I don’t care how many there are. It’s self-limiting anyway: advertisers won’t pay top dollar for an ad on a site that is saturated with ads. What I need to know is that the ads on your site won’t ruin my day one way or another.

 Posted by at 9:19 am
Feb 202016
 

OK, my Linux friends… try not to make the mistake that I made earlier tonight.

I was trying to stop a process in the gentlest way possible, buy sending it a hangup signal to its numerical process ID, e.g., 12345. The syntax was supposed to be this:

kill -1 12345

Unfortunately this is not what I typed. Because it was an afterthought that I’d use a hangup signal (instead of the default kill signal) I entered the option after the process ID, like this:

kill 12345 -1

A second or two later, I lost my xterm session. In fact, I lost all my xterm sessions. My mail client disconnected. I could not even telnet into the server anymore. For all practical intents and purposes, it seemed dead as a doorknob.

OK, not completely dead. I was able to log back in through its physical keyboard, only to find out that apart from core processes, nothing was running. No SQL server. No Web server. No SSH demon. No name server. And so on.

What the !#@@#@!& have I done?

I looked at the command long and saw the last command that I typed. I quickly checked the man page of kill and indeed… what I typed instructed kill to terminate process 12345 (using the default kill signal) and then, using the same default kill signal, terminate all processes with a pid greater than 1.

Bravo. What a clever boy. I promise I’ll try not to do that again anytime soon.

Still, I was able to bring everything back to life without rebooting the server. I hate reboots.

 Posted by at 10:49 pm
Jan 202016
 

One of the blessings of being self-employed is that I don’t need to read IT job advertisements on a regular basis.

But for those friends of mine who do, I just came across this gem that helps translate the common buzzwords and catch phrases that appear in these ads:

Don’t let any of this deter you from going after that position… just tamper your expectations.

 Posted by at 6:22 pm
Nov 272015
 

Fourteen years ago, I embarked on a small hobby project: A compiler for an ultra-simple programming language I called W, a language specifically designed to produce short 16-bit DOS programs. It has the distinguishing characteristic of having neither keywords nor types. The only data type on which it operates is a 16-bit machine word (hence the name, W).

I then wrote a few pages about this language that are still featured on my Web site.

Today (not for the first time) my project was rediscovered. Apparently not everyone realized that this was an old project (I now changed the configuration of the project page to make sure its creation date is visible.) The link went a little viral, as it was featured on both Reddit and Y Combinator. Which explains why, when I woke up this morning, I saw my server under a far heavier load than usual.

It was interesting to look at the comments on these two sites. Some liked what I have done. Others were critical, not sure why; it was a hobby project, after all, I wasn’t trying to win any accolades. But there was one particular comment on Reddit, by user MarshallBanana, that I really liked:

“What a bastard, making something for himself for fun. He sure deserves some shit for that.”

 Posted by at 7:18 pm
Nov 272015
 

Today, I tried to reach the Microsoft Developer Network support line to sort out an issue with my MSDN subscription.

After I made the appropriate touchtone selections, however, I was greeted with what sounded like an old Walkman on a nearly dead battery. Quite incomprehensible but certainly entertaining.

It went on like this for a couple of minutes, but then the call was disconnected.

I then tried to call the main Microsoft number, where a helpful lady tried to sort things out for me. She apologized and put me on hold several times while she talked to her supervisor; unfortunately, the last time she tried to put me on hold, she managed to disconnect the call instead.

So I called the MSDN number again (1-800-759-5474) and this time, I recorded the call. When I sped it up, suddenly it all made sense:

Technical difficulties indeed.

 Posted by at 3:18 pm
Nov 022015
 

Today, someone sent me a link to a YouTube video of an old Hungarian language television program that featured one of our Commodore 64 computer games, Save Me Brave Knight.

Except that the program featured a lot more than just the game: It also featured Viktor Zámbó and myself talking about the game. (I am second from the right; Viktor Zámbó is on the right.)

I remembered this program vaguely, but I couldn’t even recall its title. My past attempts to search for it were in vain; in fact, I doubted that it even made it online.

But here it is, the two of us, being interviewed at length (starting at 16:48) about the art and craft of game programming.

Wow.

I’m saving a copy of this video on the odd chance that it is removed or muted by YouTube for copyright reasons.

 Posted by at 11:37 am