An Endless Wait For IntenseDebate

UPDATE: Soon after I wrote this article, Michael Koenig of IntenseDebate posted a comment with an offer to help me via his personal address. I appreciated the gesture, and made some modifications to the article below to reflect that. I think for the time being I will be keeping the default WordPress comments, but will not completely rule out IntenseDebate for the future.

In the beginning of April, I became aware that my blog was corrupt – no articles were visible, and the visuals weren’t right. I promptly contacted my web host pair Networks, and after an hour of trying different things – their agent (who was extremely helpful), told me it was likely a problem within WordPress. He tried repairing the database, but subsequent browser refreshes just corrupted the WordPress database further. With this knowledge, I thanked the agent for his help and prepared to restore my blog in a fresh copy of WordPress.

By the time April 10th came around, I had mostly everything working – the only problem left was the comments – a good 90% of them were not appearing in the articles. You see, I’ve always used IntenseDebate for my comments. It had a good feature set, and did exactly what I expected it to do. When I installed a fresh copy of WordPress, I naturally installed IntenseDebate very early on – and yet, it didn’t restore my comments properly… the vast majority were simply missing from their respective pages. Concerned, I contacted their support address, providing plenty of detail, and offering URLs to illustrate my point.

The general format of my e-mail to IntenseDebate. Plenty of details, and links to illustrate my point.

I decided to wait for a response before I restored my blog fully – comments were too important to me.

Two weeks passed, and I still hadn’t heard back… so I submitted a support ticket via their website, including the same information I sent via e-mail. Considering that e-mail (as a medium) isn’t flawless, I also asked whether they received my e-mail or not. I realized that it was even possible that Gmail’s spam blocker was eating their message. To cover that possibility, I started regularly checking and deleting my spam. But time passed, and my site remained down – all without the slightest word from IntenseDebate. I started to get annoyed… especially when I noticed that they were happily telling people to contact their support address on their Twitter page. Yet, no help available for me. So, as you can imagine, I logged into Twitter, and posted the following message:

A message I left on Twitter in an attempt to contact IntenseDebate

As I’m writing this, they have not replied to me. They still continue to reply to people on their Twitter page, but they have not acknowledged me in the slightest.

On May 2nd, I decided to drop IntenseDebate. I had to manually make corrections in my WordPress database, but after waiting so long, it was an attractive option.

Could it simply be an isolated incident? Perhaps… but I still consider it difficult to forgive.

UPDATE: Soon after this was posted, they replied to me. See the update at the top of this post for details.

Turning a Cat Into a Dog: Feeding Behavior

I’ve always preferred cats over dogs for one simple reason: independence. Still, I find myself wanting to enforce certain behaviors that are, well, dog-like.

The student

Whenever I grabbed the bag of food to feed my cat, he would get really excited, sometimes even blocking my ability to pour the food by sticking his head in the bowl. This eventually started to bother me, so I decided to train him how to behave when I’m giving him food. I decided he shouldn’t be sticking his head in the bowl – he should be patiently waiting until I pour the food, and also wait for my command before he begins eating. I felt this would help cover cases where I wanted to add more than one type of food to the bowl. Also, without waiting for my command – he might run to the bowl too early, potentially getting in my way again.

So, here’s the approach I take:

1) Grab the bag of food, and approach the bowl. If your cat is anything like mine, he’ll be running around in a hyperactive frenzy, meowing and sticking his head in the bowl. My cat’s bowl is on the floor, so I stand in front of it, holding the bag of cat food.

2) Lightly push the cat away from the bowl, and after doing that, say “Stay” firmly as if you’re telling him to stop doing something bad. Use a hand gesture also, telling him to stop. If the cat never encountered such a command before, you may have to do this about fifteen times. When the cat stops and sits down, quickly pet him on the head, and say “Good” in a positive tone… but watch out. He might see this as a total green light, and will try to walk towards the bowl. Because of this, I find it useful to tell him to “Stay” multiple times, even after saying “Good”. This makes him realize that he’s not out of the woods yet, he has to behave. Over time, after multiple of these feedings, you can reduce the amount of “Stay” commands, and the cat should still behave. The pushing should be the first thing you get rid of, though. The verbal command and hand gesture should be enough.

The student 

3) Now that the cat is sitting watching you (at least an arms length away), you can start bending down to pour the food in the bowl – but keep an eye out. Don’t allow the cat to come towards the bowl as you are doing this. If you need to, say “Stay” in a negative tone at intervals while you are doing this.  If the cat comes towards the bowl while you are doing this, stand up – don’t give him food. Start again at Step 2. Ideally, you want to pour the food and have the cat patiently waiting while you do so, sitting at a distance.

4) With the food in the bowl, you can now stand up – but again, keep an eye on the cat – he might see this as an opening to approach the bowl. Don’t let him do that. The cat should remain sitting patiently until you give the command to eat. I usually wait at least ten seconds to see that he’s still obeying the rules, and then I say “Come, [Name]!” in an overly positive tone (though I say the French equivalent, for some reason), while backing away from the bowl. The overly positive tone and the physical retreat are clear messages- the cat should run towards the bowl, excited. Make sure to sound excited yourself, that way he will have no doubt that he can approach.

Note: The cat will likely not obey well the first time, so you might want to give him food once you see a sign of improvement. You can just continue the next feeding, trying again to move towards this new behavior.

So, there it is – how I trained my cat to follow a specific set of rules when it is time to be fed. It works well – but if you stop enforcing the rules for a few weeks, the cat will stop obeying them – so this needs to be maintained.

The Road To Nowhere

Due to my choice of profession, I tend to spend a lot of time using computers. Consequently, I work with a lot of applications – that means I see lots of different user interfaces. Some are good, some are bad – but every now and then, I find something in between. Sometimes, it perfectly showcases the developer’s sense of humor.

For example, here’s what the “Go To” dialog looks like in Notepad++. You can access it by pressing CTRL+G.

The Notepad++ "Go To" dialog features a button that says "I'm going nowhere", which you use to close the dialog.

Not sure that’s the best design for the dialog – but I appreciated the humor.  🙂

How to Temporarily Disable System Beeps

Computers have a means of communicating without external speakers – they do so via hardware beeps. These are the main scenarios I’ve seen where a computer beeps:

  • There is a problem when the system tries to boot, so it attempts to communicate what went wrong – via a sequence of beeps.
  • Too many keys were pressed at once on the keyboard.
  • The system is configured to beep whenever an alert dialog appears.

The last one I found particularly annoying when I was developing Visual Basic 6 applications at my day job. For some reason, Visual Studio 6 likes to communicate with you via alert dialogs. Visual Studio .NET corrected this – instead of a typical alert box, they list the errors and warnings in another pane. Despite this, some of our code was still in VB6, so I had to use it. Thankfully, there is an easy way to disable the beeps.

In Windows Server 2003:

  1. Click Start > Run.
  2. When the Run dialog appears, type “cmd” and press ENTER.
  3. When the command prompt appears, type “net stop beep”, and press ENTER.

Typing "net stop beep" in the console will temporarily disable the system beep feature.

If you want to disable the beep permanently, here are some instructions.

A Chrome Extension That Does Nothing

Since it was first introduced, Google Chrome has been my browser of choice. So, when version 4 was released, I was particularly pleased to see the new extensions feature. When I went to view the extensions gallery, a particular entry stood out from the rest:

The Chrome Extensions gallery features an extension that does nothing.

Right there among the top rated extensions, I found one that did nothing(Update 2022-11-22: link removed.):

A close-up of the Nothing extension - over 2500 ratings (4.5 star average), and 464 people are "using" it.

When I viewed the details about the extension, it became obvious that many people were fueling the joke by adding supportive comments. Still, you see glimmers of confusion every now and then.

The "Nothing" extension's page - showing comments, and more.

The last comment is my favorite.

Capturing Only the Active Window with Print Screen

Print Screen takes a screenshot of the entire Windows desktop.

Ah, yes… Print Screen. I’ve been using the Prt Scr key for many years now – for a long time, it was my primary method of taking screenshots. However, when I started working as a developer, I quickly discovered the benefits of using specialized screenshot utilities. Presently, I use Snipping Tool and Jing much more than Print Screen. The problem was always that Print Screen would copy the whole desktop, which is particularly frustrating when you have multiple monitors. Soon after starting as a developer, I was told that pressing Alt + Prt Scr would copy only the active window to the clipboard. This proved convenient in the cases where I wanted exactly that – just one window.

See the screenshots in this post to get a better idea of what I mean.

Alt + Print Screen only takes a screenshot of the active window.

Task Manager Has a Tiny Footprint Mode

UPDATE: I made a video explaining this in December 2016. The article can still be read after the video, if you prefer.

If you use Windows, chances are, you know about the Task Manager.

Task Manager window showing performance data.

Windows Task Manager is a task manager application included with Microsoft Windows NT family of operating systems that provides detailed information about computer performance and running applications, processes and CPU usage, commit charge and memory information, network activity and statistics, logged-in users, and system services. The Task Manager can also be used to set process priorities, processor affinity, forcibly terminate processes, and shut down, restart, hibernate or log off from Windows.

Typically accessed via CTRL+ALT+DEL, this handy tool was never intended to be widely used. Watch below for a laugh as engineer David Bradley takes a friendly jab at Bill Gates, regarding the feature:

I use it very often, mainly to kill processes, change priorities, and monitor system performance. That’s why, a few years ago, I was surprised to find a somewhat hidden feature in there. Simply double-click anywhere in the main Task Management window, and it will switch over to Tiny Footprint mode. The menu bar and tab bar disappear, and the contents are maximized.

Task Manager window showing performance data in Tiny Footprint mode.

Apparently, some people were accidentally activating this mode, and didn’t know how to change it back. To help those people, Microsoft added a knowledge base article. All you have to do to is double-click the window contents once more.

The VMware Authorization Service is not running

When I tried to run my new Ubuntu virtual machine using the free VMware Player, I was hit with this error message:

Error while powering on: The VMware Authorization Service is not running.

The first thing I did was check to see if such a service was running, and, sure enough, it was.

The VMware Authorization service is clearly marked as "Started" in the Services screen.

Solution

After seeing this… it occurred to me: did I even launch VMware Player with administrative rights? Probably not. Sure enough, when I enabled administrative rights, the error message didn’t appear.

UPDATE January 8, 2023 – Old comments posted to my previous site can be seen here.

Changing Drive Letters In Windows

At home, I use multiple external hard drives; however, I don’t always leave them on. I usually have just one of them running at a time. Today, when my turned on my main external hard drive, it was assigned the drive letter I by Windows, whereas it usually used F. This caused some problems – some of my shortcuts expect it to be the F drive.

When I look at my drives in Windows, here is what I see:

A view of my connected drives, as seen through "My Computer".

Looking at the drives, I don’t quite understand why Windows thought I would be a good idea. I’m guessing it remembers another drive that had F, and wants to reserve it. Why it didn’t do that before, is beyond me.

To correct the shortcuts, I had to change the drive letter of the drive – which would make the paths valid again. I only had to do this once before, so I thought I’d offer the steps here, in case someone else would find it useful. The change is made using the Disk Management tool that comes with Windows.

In Windows 7, either:

  • Search for “Disk Management” in the Start menu, and select the “Create and format hard disk partitions” option.

or

  • In a “Run Command” window, enter “diskmgmt.msc”.

You’ll be presented with the Disk Management screen:

The main interface of the Disk Management dialog, which is part of Windows

Once there, simply right-click the disk you wish to change, and select “Change Drive Letter and Paths”.

You’ll be presented with the following dialog:

The "Change Drive Letter and Paths" dialog allows to modify the drive letter associated with any given drive.

Select the drive letter, and press “Change”.

When the dialog opens, select the letter you want to use. In my case, I changed the “Assign the following drive letter:” field value from I to F.

The "Change Drive Letter or Path" dialog

After that, press OK.  You’re get a warning saying:

Some programs that rely on drive letters might not run correctly. Do you want to continue?
Just press “Yes”, and you’re all done.

Copying the Contents of Windows Dialogs

As a developer, I very often see error messages – some of those originate from the products I develop, and I have to report them as bugs. Whenever I get an error message in a dialog, I typically take a screenshot, and add that to the bug base issue. That’s fine, but it means people can’t search for that error message in the bug base – in order to enable that, I’d usually just manually type out the error message, rather than take a screenshot. That was before. Today, I’d just press CTRL+C to copy the error dialog contents.

That’s right, whenever you see a dialog in Windows, like this:

You can press CTRL+C to copy, and then open up Notepad, and press CTRL+V to paste:

I had no idea this was possible until I read a Lifehacker article explaining it.  Since I’ve started using it, I’ve found it very useful in my every day work. Maybe you will too!

Just a note, though – it doesn’t seem to work everywhere. For example, JavaScript alert dialogs can’t be copied in Firefox, but they can in Internet Explorer.