Before you even make the call, always verify that the problem is not on your end of the line. Is everything plugged in tightly? Cords and cables can come loose with pressure, time, and thermal stress. Do you have spare cords you can try? Sometimes just unplugging everything and plugging it back in can solve mysterious problems due to intermittent connections.
Did you change anything in your operating system? Installing patches and updates can sometimes change configuration files, causing previously working software to stop functioning properly. Do you have a live CD available, such as FreeSBIE or Knoppix? If so, boot your system with it to see if the problem goes away.
If you've experienced catastrophic hardware failure and don't know what part of the computer has gone wrong, you may want to contact a local technician to look at it if you're not comfortable replacing parts on your own. If you have spare parts or other computers to test with, use them. If you think your monitor is bad, try it with another computer to make sure it's not the video card. Narrow down the problem as best you can before you pick up the phone.
In some instances you may want to remove potentially trouble-causing variables from the equation. If you've got a router between your broadband modem and your computer, try removing it from the network and resetting the modem just to make sure that it's the service, not the router.
Calling tech support
After you've verified that the problem is not on your end, the next step is to find out who to call. If you have narrowed down a hardware problem to a specific device or component, your answer should be pretty obvious. If you have a name-brand mass-produced computer from a company like Gateway or Hewlett-Packard, call the system vendor instead of the manufacturer of the part that has malfunctioned unless you bought that part separately and installed it on your own.
If it's a service that has gone out or gone wrong, contact the service provider's tech support number. Never call hardware or software tech support for an unrelated service provider issue.
Try to find a receipt or date of purchase for your computer or part, and write down its model and serial numbers so you can repeat them on the phone if necessary. If it's a service you're calling about, have your account number handy.
What you should never reveal
Many call centers bill by the call, so they are focused on the number of calls they complete, not the number of problems solved or the degree to which customers are satisfied. In these situations, the phone support person you're calling has one duty: to get you off the phone as fast as possible without breaking the rules. There may not be as much concern for whether your problem is solved as you'd like. That means that the support person's first strategy may be to find a reason why he cannot help you. If so, your response should be to eliminate every reason that he might have to end the call.
You don't have to mess with your machine or your network, but for the duration of the call, you do not have a router, hub, or hardware firewall. You do not have any extra third-party or add-on devices installed, and everything in your computer is as it was from the factory. You are using a supported operating system (when in doubt, choose Windows 2000 or Windows XP as your faux OS) with all official updates installed.
If you're asked to perform some operating system function, like verifying that your computer is receiving an IP address from your modem, get the information you need from your actual operating system and then play along. You're clicking on the Start button, going to such-and-such a control panel option, and clicking on whatever you're told to click on. If you're asked to restart for Windows changes to take effect, wait a reasonable amount of time before telling them that the system has rebooted successfully.
In the rare case when a company supports GNU/Linux, usually only specific distributions are listed -- that means Red Hat, and sometimes SUSE and Java Desktop System. The same technique applies: you are using Red Hat Enterprise Linux 3 (or whatever is supported), not 64-bit Gentoo Linux or OpenBSD 3.7. The tech support person you're talking do does not care if White Box Linux or CentOS or Fedora Core are functionally the same as Red Hat Enterprise Linux -- all they know is, you're using an unsupported operating system. Do not attempt to reason with support personnel.
Only after jumping through these hoops and defeating the standard support scripts will you be able to get some help. Usually you'll want to get a return merchandise authorization (RMA) for defective hardware that is under warranty, or a support ticket filed with the people who actually do repairs for service providers.
Advocates ye be warned
You might be inclined to lecture your randomly chosen support representative on the benefits of using your unsupported free software operating system of choice. Rest assured, the person you are speaking with does not care about software freedom or technical superiority or your reasons for not using Windows or OS X. This is not part of his job. All he knows is that there are no "Linux" or "FreeBSD" options on the computer screen in front of him, so he cannot do anything for you.
You might think that lecturing support personnel about supporting other operating systems will somehow encourage the manufacturer to expand its support abilities. While every company's practices are different, it's doubtful that your concerns will travel from the support personnel to someone who determines company policy. If advocacy if your game, you're almost certainly better off writing a letter to someone of importance at the company than complaining to the lowest rungs on the corporate ladder.