11/29/06

C sharp

i am learning C sharp now. A microsoft Product.
something that i hate.

11/27/06

The Frog

A guy was walking beside a pond when a frog jumped out and told him

that she was really a beautiful princess and if he were to kiss her,

 she would make him VERY happy! He picked up the frog and put it into

 his pocket.

 A few minutes later, the frog poked her head out and said, "Didn't

 you hear me?! I'm a beautiful princess and if you kiss me I will

stay with you and do ANYTHING you want!"

The guy took the frog out and said, "Look, I understand what you are

saying, but I am a computer programmer and right now I don't have

time for a girlfriend,........but a talking FROG is REALLY, REALLY

COOL !"

11/26/06

America's 10 Best Cities To Live In And How They Stack Up For PHP Developers

I love Nashville, TN. Well, ok, I really like it. It's a great town but I'm getting a bit restless. The problem I face is that I never know what the environment for programmers will be in a given city before moving there. So when Terry Chay briefly mentioned indeed.com's salary search tool , it sparked my interest. If I, a PHP programmer, wanted to move to another city in the US, how would I fare salary wise? Since I don't want to list every city in the US, I've selected CNN/Money's Best Places to Live in America as my list of cities to compare.

I've compiled all of this into a nice 1990's looking HTML table, complete with border=1, for your viewing pleasure.

Now I don't pretend that there is anything scientific or even serious about this information. Please don't base your job hunting efforts on the fact that "Cal said I could make X in that city." At best, this should be used as a guide and at worst, it's just entertainment.


RankCity, StateAverage PHP SalaryCost of
Living Index
1Fort Collins, CO$42,00099
2Naperville, IL $64,000115.2 *
3Sugar Land, TX$61,00087.2 *
4Columbia/Ellicott City, MD$71,000 110.3 *
5Cary, NC$59,00097.2 *
6Overland Park, KS$50,00080.5 *
7Scottsdale, AZ$50,000 107.8 *
8Boise, ID$36,00089.7
9Fairfield, CT$66,000163.4 *
10Eden Prairie, MN$53,000113.9 *
* = Index from closest listed city.

Since a lot of people are hung up these days on how things look, here is the chart I generated from indeed.com. If you click on it, it will take you to the live page and you can add your city into the mix and see how you stack up. I did and let just say Nashville is no Columbia, MD.




So it's agreed then, we'll all meet in Columbia, MD. :) We all know that the cost of living varies greatly from region to region. To help adjust for that, I went to bestplaces.net and found the cost of living index for each city or at least the nearest listed city for each city in our list. The COLI uses the US average as 100.

indeed.com also has a forum for php developers where you can join in a discussion on jobs, salary and other fun stuff. Make sure you drop on by and see them.

=C=






Disclaimer: CNN, Money, indeed.com, bestplaces.net and Terry Chay have not authorized or endorsed this article. They hold their own copyrights, trademarks, patents, service marks and coffee cups. I do not pretend to usurp their power in controlling these. I only mention them as way of attribution.

source: Zend.com

Copy Right (C) -> computer ebooks

I have found a site containing ALL of Computer Ebooks From O'rielly, Wrox, Willey, Sams .....
if you want the Address leave me a comment with your email address.
I can't Post it Here.
(C) :)

How to Ask Questions The Smart way?

I suggest you to read this article
helped much for me
http://www.catb.org/~esr/faqs/smart-questions.html
Good Luck

11/19/06

Raul Gonzalez wanted to quit Madrid

Raul Gonzalez threatened to leave Real Madrid after a recent defeat. Club president Ramon Calderon said the captain told him he was "suffering a lot" and "couldn't sleep" following Madrid's 1-0 loss at Getafe on Oct. 14, the club's first league defeat of the season.


"He said if the situation continued he would leave and free the club from paying the salary of his long contract," Calderon told news agency Efe in an interview published on Tuesday. Raul, who last won a trophy with Madrid in 2003, has enjoyed an improvement since that defeat.

Four days later, he scored in Madrid's 4-1 Champions League victory over Steaua Bucharest and added another in Sunday's 2-0 win over FC Barcelona. The 29-year-old striker has had an up-and-down season.

He ended an 11-month goal drought for Madrid and established himself as the Champions League's all-time scoring leader with 54 goals, but was dropped from the Spain team for the first time in 10 years.

Calderon said Madrid would offer to host Spain's European Championship qualifier against Denmark on March 24 on one condition.

"If Raul's not there, we won't lend them the stadium," Calderon said. Madrid is fourth in the Spanish league with 14 points from seven games, two fewer than leader Barcelona.

 

11/17/06

Comments are not Ignored Within Here-doc method in PHP

Consider the following block of code:

 

<?php

echo <<< EXAMPLESTRING

 

my string contents

 

EXAMPLESTRING;

?>

 

The above code prints:

 

My string contents

 

Not consider the following block of code:

 

<?php

echo <<< EXAMPLESTRING

 

//the string contents go here

 

my string contents

 

EXAMPLESTRING;

?>

 

This example prints:

 

//the string contents go here

 

My string contents

 

So we cannot use comments in here doc method.

The amusing part is that Dreamweaver can't understand this rule and shows the comments in here doc like other comments but Zend Studio shows them like other strings in the here doc section.

11/15/06

Dean's take on Microsoft's new Zune

The Microsoft Zune is the newest portable media player on the block,
and the reason for its existence -- beyond Microsoft's envy of Apple's
iPod business -- is sharing.

But a single feature can't overcome the massive momentum behind the iPod.

Microsoft has taken a major step with the Zune, but it's no iPod
killer. Overall, Microsoft has created a good music experience, but
the Zune seems unfinished and consumers are better off waiting for
future versions.

If you buy a Zune now, you're betting that Microsoft will be
competitive with Apple for years to come, since a library of music and
video collections isn't likely to work on both devices. The irony is
that if you bet on Microsoft, you'll be upholding the cause of
competition against the near-monopoly of the Cupertino empire.

Microsoft has tried to distinguish its first model of the Zune family
from Apple's iPod with built-in wireless networking. You can't share
songs wirelessly with Apple's devices. The problem is finding other
Zune owners. For my testing purposes, Microsoft solved that problem by
sending two Zunes, a black version and a brown one.

Sharing a song is easy and it can ``spark a conversation,'' says Zune
product manager Matt Jubelirer. Within a couple minutes of charging my
two Zune players, I was sharing a song. But it's not a lasting
relationship. Each song you share lasts for only three plays or three
days on your friend's Zune.

And if you share a song with a friend, you can never share that same
song with that friend again. To me that is a lame concession to the
music studios, not the rights of users. If you think of all the things
that Microsoft could have done with wireless networking, Zune
disappoints. For instance, you can't surf the Web, or act like a DJ so
your friends can listen simultaneously to the same song you're
playing. And the Zune won't wirelessly synchronize with your PC. It
has to be connected by a USB cable.

The good display adds to the experience. When you play music, the Zune
shows the cover of the album. At $249, the Zune with a 30-gigabyte
hard disk drive (enough for 7,500 songs or 100 hours of video) goes
head-to-head with a 30-gigabyte version of the iPod, but it features a
bigger 3-inch screen (versus vs. 2.5 inches). The Zune also has an FM
radio -- a $50 accessory on the iPod -- which allows you to set the
Zune to your favorite stations.

On the downside, the Zune is heavier and larger than the equivalent
iPod. That's a consequence of Microsoft's choices. Going wireless and
using a bigger color screen adds bulk. Stick it in your pocket and its
5.6-ounces will make your shirt sag.

Microsoft says the battery life is 14 hours with the wireless
networking turned off, and about 13 hours with the wireless on.
Running video, the Zune can last for four hours.

The advantages of Apple's momentum are evident in other ways.
Microsoft's Zune Marketplace has 2 million songs versus Apple's
3.5-million song iTunes Web site. Microsoft is also playing catch-up
with iTunes in providing TV shows, movies, music videos, audio books
and podcasts. And there are only dozens of accessories for the Zune,
compared to 3,000 for the iPod.

To buy songs, you spend points that you must purchase in $5
increments, a system that is similar to the e-commerce model on the
Xbox 360 but annoying compared to the convenience of using your credit
card to buy songs on iTunes for 99 cents. Deceptively, Microsoft sells
its songs for 79 points, but it costs you 99 cents to accumulate that
many points. For unlimited songs, subscriptions cost $15 a month.

Zune represents a sharp departure in Microsoft's music strategy, which
hasn't been working. Microsoft had been cooperating with a variety of
partners with its PlaysForSure music program, where it provided
software to other companies that built music hardware and downloading
services. Microsoft isn't abandoning that program entirely, but Zune
doesn't use it.

Microsoft's Zune has a circular control pad that looks like the iPod's
click wheel. But it isn't touch-sensitive like the iPod wheel is.
Rather, it is a four-way navigation pad that requires the user to
click on the various edges of the wheel to scroll in different
directions. This kind of navigation can be just as fast as an iPod,
and it seems more accurate as well. I was able to navigate while not
even looking at the display.

You can play a slide show of your pictures. As the slide show kicks
in, you turn the Zune sideways so that you can see the show
horizontally. When you click to end the slide show, the screen
automatically shifts back to vertical presentation.

Microsoft concedes that it started work on the Zune just a year ago.
That's why it has an unfinished feel. But the Redmond, Wash., company
contends it will spend hundreds of millions of dollars on Zune over
the coming years. Apple shouldn't be complacent. Microsoft is using
the same gradual takeover game plan as it has with Windows, Office,
Internet Explorer, Windows Media Player and most recently, the Xbox.

If you're feeling charitable toward the world's largest software
company and are worried about the coming hegemony of Apple Computer,
then by all means spend your money on Zune. The rest of us can wait
until Microsoft comes out with versions 2.0 or 3.0

11/10/06

PHP and ASP.NET Go Head-to-Head

One developer's view of the pros and cons of the two most popular means of building web applications

When it comes to Web development these days, you have a lot of options. Many of these methods involve preprocessing—that is, embedding code into HTML pages with special tags that signal to a preprocessor that they contain code, and that it should do something with it. Much like a CGI, this code is then run on the server, and it returns some content, which then assumes part of the shape of the resulting HTML page sent back to the browser. Both the open source scripting language PHP and languages within Microsoft's ASP.NET framework fall into this category; Java Server Pages (JSP) and Perl/Mason operate this way as well.

In this article I'll focus on PHP, the technology Oracle has chosen to incorporate into its products, and ASP.NET. I'll overview the various strengths and weaknesses of each, discussing in particular those areas that will help you make your decision on which to go with for your development project. There are a lot of factors to consider, and different projects may appeal to a different technology. In conclusion you'll find a point-by-point comparison in terms of price, speed and efficiency, security, cross-platform support, and the advantages of an open source solution.

What is ASP.NET?

The latest incarnation of ASP, ASP.NET, is not completely backward-compatible with previous versions of ASP, as it is a complete rewrite of the software. Previous ASP technology actually has a lot more in common with PHP than with ASP.NET, which is a complete framework for building Web applications. One of the principal features of this model is the flexibility to choose your programming language. ASP.NET works with scripted languages such as VBScript, JScript, Perlscript, and Python, as well as compiled languages such as VB, C#, C, COBOL, Smalltalk, and Lisp. The new framework uses the common language runtime (CLR); your language source is compiled into Microsoft Intermediate Language code, which the CLR then executes.

The framework also provides for true object-oriented programming (OOP), and true inheritance, polymorphism, and encapsulation are supported. The .NET class library is organized into inheritable classes based around particular tasks, such as working with XML or image manipulation.

Besides the programming language and the methodology, database access is a significant concern. When you program in ASP.NET, integration with databases can be accomplished through ODBC, which provides a consistent set of calling functions to access your target database.

Strengths and Weaknesses

ASP.NET's strength lies clearly in its clean design and implementation. It is an object-oriented programmer's dream, with language flexibility, and with sophisticated object-oriented features supported. In that sense, it is truly interoperable with your programmers' existing skills.

Another strength of ASP.NET is the development environment. For instance, developers can use WebMatrix, a community-supported tool, Visual Studio .NET, or various Borland tools such as Delphi and C++ Builder. Visual Studio, for instance, allows setting of breakpoints, tracing sections of code, and reviewing the call stack. All in all, it's a sophisticated debugging environment. Plenty of other third-party IDE solutions for ASP.NET are certain to surface as well.

But what you gain in robustness, you pay for in efficiency. ASP.NET is expensive with respect to memory usage and execution time, which is due in large part to a longer code path. For Web-based applications, these limitations can be a serious problem, because on the Web, your application is likely to scale to thousands and thousands of users per second. Memory usage can also become an issue on your Web server.

What is PHP?

PHP is a scripting language based on the model of preprocessing HTML pages. When the PHP preprocessor in your Web server notices a PHP language tag like the following, the PHP engine is invoked to execute that code:

<?php

some code here

?>

PHP will be familiar to any programmers who have worked with imperative programming languages; you'll notice syntactical similarities with Perl, C, and Java. Strictly speaking, Java is an imperative programming language, but it also makes use of object-oriented constructs and concepts. PHP borrows from this structure when it is convenient, but it is not a pure OOP language.

In the discussion of ASP.NET above, I mentioned the ODBC driver, and how applications can be built with database abstraction in mind. In PHP, you can also use ODBC to talk to databases, so you already have a whole list of supported databases to choose from. There are also native drivers for MySQL, Oracle, and Postgres. Furthermore, if you are connecting to Oracle, a special OCI8 library provides more feature-rich access to Oracle, allowing you to use such features as LOB, BLOB, CLOB, and BFILE.

You might ask, at this point, "Why are database-dependent libraries being touted as features of PHP?" Database abstraction, or independence, is a feature if you seek to build an application that works with multiple databases in one application or that can easily be ported to another database—when moving from development to production, for instance. And these are indeed valid concerns and considerations.

But, as Tom Kyte points out in his latest book, Effective Oracle by Design (Oracle Press), database dependence should be your real goal because you maximize your investment in that technology. If you make generic access to Oracle, whether through ODBC or Perl's DBI library, you'll miss out on features other databases don't have. What's more, optimizing queries is different in each database.

Zend Technologies, a commercial software company that contributes significantly to PHP, has created a commercial-development environment called Zend Studio that includes a sophisticated debugger, a profiler, and other features. It has also built the free Zend Optimizer, which, in combination with the Zend Encoder, compiles PHP code to speed performance. Additional commercial products also exist, such as the Zend Performance Suite, which can cache precompiled PHP pages, further speeding overall performance tremendously.

Strengths and Weaknesses

As of beta version 4, PHP 5 still has a few shortcomings, including its lack of exceptions, event-based error-handling instances that interrupt the normal flow of a program, jumping your code to a special error-handling section. Java also provides exceptions for error handling, while C++ provides exception handling via the try, catch, and throw syntax. You can, of course, still manage errors in PHP, but the structure is not standardized, so programmers are left to their own devices on how to implement error handling, leading to less consistency and a tendency to reinvent the wheel.

Another weakness is that PHP's function names are case insensitive. Some programmers might find this feature annoying, though this isn't a serious drawback.

I do have misgivings about PHP's object model, however. PHP wasn't designed to be an object-oriented language. Some of those features were added later, although care was made to keep backward compatibility with PHP 3, so you're left with a bit of both models. In fact, many of these weaknesses are addressed in PHP 5. Keep your ears to the ground.

What PHP lacks in a few areas, it makes up for by leaps and bounds in areas in which it excels. The price is right, so you don't have to worry about licensing issues. It's open source, too, so an entire community will keep a close eye on development, identifying bugs and making sure they get fixed. And if there's a feature you don't like, you can dabble with the code. What's more, PHP works native with Apache: It can be compiled as a module or directly into the Apache binary.

But running on Apache means that, with PHP, you can take advantage of whatever server investments you've already made, because Apache runs on Windows, Linux, Solaris, and various other Unix platforms. Also, going with a web server with Apache's track record means security remains a top priority. And, finally, PHP has a smaller code path, meaning there's less server-side code executed to parse and execute your PHP page, which results in more efficient memory and usage and faster execution.

What's New in PHP 5?

The fourth beta release of PHP 5 came out at the end of December 2003, and the change log makes it obvious that many bugs are being identified and ironed out. Although it's still in beta, it's definitely worth taking a look at for all the new features and advances.

PHP 5's major new achievements come in the area of its exception handling and a new object that introduces features that bring true OOP to PHP. Exception handling was certainly one of the most noticeable missing features in PHP 4, and its addition to PHP 5 is certainly a sign of maturity. Exception handling means you have language defined and standardized ways of handling errors in your software. Just use the try, catch, and throw methods, and your PHP code becomes more robust and clean.

<?php

 

class blue {

 

  function openFile ($inFile) {

    if (file_exists ($inFile)) {

      # code to open the file here

    } else {

      throw new Exception

        ("Cannot open file: $inFile");

    }

  }

}

 

$blueObj = new blue ();

 

try {

  $blueObj->openFile ('/home/shull/file.txt');

 

} catch (Exception $myException) {

  echo $myException->getMessage ();

 

  # rest of exception handling code here

}

 

# rest of blue methods here

 

?>

The new object model has a number of positive impacts on programs written in PHP. In PHP 4, when an object was passed to a function or method, it was passed by value, unless you explicitly told PHP otherwise. This procedure meant that a copy of that object, all the data structures in memory, would have to be copied. This step used memory and made access slow and clunky. In PHP 5, however, objects are always passed by reference.

The new object-oriented features in PHP 5, including constructors and destructors, are noteworthy. As with C++ and Java, they provide a standard way to create the object, allocate memory, and do any necessary setup via a constructor method and perform cleanup with a destructor method.

PHP 5 also introduces more subtle control of methods and variables in your classes. In PHP 4, everything was public: You could access variables from your classes outside the class or in derived classes. In PHP 5, you can still make variables or methods public, but you can also make them private, so they're used only within the class itself. A third option is to make them protected, which means that methods and variables can be viewed within the class or when subclassed.

Furthermore, PHP 5 introduces type hinting, or better type checking. When you pass an object into a routine, PHP can check that it is the right type and give a type-mismatch error if the check fails.

Additional features such as static methods and variables and abstract classes exist, so be sure to check the documentation for details.

Security Comparison

ASP.NET officially requires that you use IIS. Unfortunately, IIS has a long history of vulnerabilities, which makes many administrators reluctant to deploy it to handle their web site. Whether these weaknesses are because of Microsoft's ineptness or because IIS is a real red flag to hackers is irrelevant: Those systems have a history of being hacked and compromised. PHP runs on Apache, too, which is fast and open source and has a good security track record. Also, as I mentioned, Apache runs on many platforms.

If you are considering ASP.NET but you want to use Apache for your front-door to the Internet, you are fortunate to have a few options. First, you can use Apache to relay requests to IIS running internally on another machine. Apache then handles static content and passes aspx content on to the IIS server, which isn't exposed to the internet.

However, if you want to host ASP.NET with Apache, a couple of options are available that may or may not be supported by Microsoft. As a last alternative, there is Ximian's Project Mono, which is working to build an open-source module. Check www.go-mono.com for more information.

Database Coding Examples

Connecting to a database is one of the first things you'll consider doing in PHP or ASP.NET. With ASP.NET, however, it's a little more complicated, because you have the option of any of a number of languages to choose from. Of course, these code samples would have to be embedded into an HTML page, the classes instantiated, and so on. The following information, however, will give you an idea of the coding styles for each.

PHP 5 Connecting to Oracle

Here's a PHP 5 class that provides an Oracle connect-and-disconnect routine to show one way of connecting to Oracle with PHP 5 (other drivers, such as the ODBC driver, and generic database interfaces can be used as well):

class oracle_object {

  protected $theDB;

  protected $user;

  protected $pass;

  protected $db;

 

  function __construct($u, $p, $d) {

    $this->user = $u;

    $this->pass = $p;

    $this->db = $d;

  }

 

  function db_open () {

    $theDB  =  @OCILogon($this->user,  $this->pass,  $this->db);

    db_check_errors($php_errormsg);

  }

 

  function db_close() {

    @OCILogoff($theDB);

    db_check_errors($php_errormsg);

  }

 

  function __destruct () {

    print ("so long...");

  }

 

}

ASP.NET Connecting to Oracle

If you're looking to connect to Oracle with VB.NET (Visual Basic is Microsoft's default .NET programming language), take a look at this sample from MSDN:

Imports System

Imports System.Data

Imports System.Data.OracleClient

Imports Microsoft.VisualBasic

 

Class Sample

 

  Public Shared Sub Main()

 

    Dim oraConn As OracleConnection = New OracleConnection("Data Source=MyOracleServer;Integrated Security=yes;")

 

    Dim oraCMD As OracleCommand = New OracleCommand("SELECT CUSTOMER_ID, NAME FROM DEMO.CUSTOMER", oraConn)

 

    oraConn.Open()

 

    Dim myReader As OracleDataReader = oraCMD.ExecuteReader()

 

    Do While (myReader.Read())

      Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", myReader.GetInt32(0), myReader.GetString(1))

    Loop

 

    myReader.Close()

    oraConn.Close()

  End Sub

End Class

Making the Choice

Without assuming you've already decided to go with PHP, I'll conclude that its strengths far outweigh its weaknesses. (See the summary in Table 1.) It boils down to price, speed and efficiency, security, cross-platform applicability, and open-source opportunity. Its only weakness is its lack of a pure and perfect OOP implementation; however, this is a minor drawback. Though language constructs do help, ultimately, good coding is a matter of practice, execution, good habits, and discipline.

Table 1

 

PHP 4

PHP 5

ASP.NET

Software price

free

free

free

Platform price

free

free

$$

Speed

strong

strong

weak

Efficiency

strong

strong

weak

Security

strong

strong

strong

Platform

strong

strong

weak (IIS only)

Platform

any

any

win32 (IIS only)

Source available

yes

yes

no

Exceptions

no

yes

yes

OOP

weak

strong

strong

Price. Here, we must consider not simply the price tag of the initial investment, which, in the case of PHP, is obviously free, but also the implementation, maintenance, and debugging costs. In the case of PHP, you may invest in the Zend optimization engine. With ASP, however, you're investing from the very beginning, and you're spending for add-on technologies—libraries for doing graphics manipulations, for instance. But, in the long term, PHP isn't going to press you to upgrade and collect more licensing fees. Everyone who has dealt with complex licensing also knows that companies spend time and money just ensuring they are compliant. Furthermore, you have a difference in response when getting bugs fixed. This, of course, translates to time, which translates to cost for overall development.

Speed and efficiency. As I mentioned earlier, ASP.NET is a framework allowing you to use various programming languages. In addition, it is touted as having a great object-oriented model. All this is true, but it becomes a detriment as far as speed is concerned. For all that advantage, there is a lot more code to run through to execute the same ASP page than you have to execute in the PHP engine for an equivalent PHP page. PHP is the quick-and-dirty type of solution, the one to get the job done. And though a lot of robustness has been added to it since its 2.0 and 3.0 days, it still retains that core optimized high-speed approach.

Speed is not the only consideration. Memory usage is also important.

Security. ASP.NET runs on IIS, which has been compromised innumerable times, as evidenced by IT news reports every other week. It has become such a liability, in fact, that in spite of all the marketing dollars spent on it, many IT professionals refuse to have their networks exposed with an IIS Web server. PHP, however, works with Apache, which has a proven track record of speed, reliability, and hardened security. Check www.securityfocus.com for more information.

Cross-platform applicability. ASP.NET runs on IIS and is starting to run on Apache, which can run on a whole host of platforms. PHP has been designed to work with Apache from the beginning, so you have many proven and reliable server platforms to choose from.

Open source opportunity. Open source is not just some philosophical torch idealistic programmers, or companies wanting to save a few bucks on licensing costs, are carrying. When you're dealing with bugs in the software itself, open source can be a serious godsend.

In either case, with PHP or ASP.NET, you have a large user base using the software and possibly encountering bugs. With ASP.NET, those bugs have to go through a bureaucratic process to get acknowledged, fixed, tested, and rolled out in a new patch or release. PHP fixes, however, can get fixed quickly and rereleased. Anyone who has watched open-source development knows new releases and patches often come out in days rather than in weeks or months, as with commercial software. If that's not fast enough, you can always fix a problem yourself if you have to.

 

11/7/06

Technologically Challenged

Just in case you think you are TC ("Technologically Challenged"), the following is an excerpt from an article in the Wall Street Journal:

1. Compaq is considering changing the command "Press Any Key" to Press Return Key" because of the flood of calls asking where the "Any" key is.

2. AST technical support had a caller complaining that her Mouse was hard to control with the dust cover on. The cover turned out to be the plastic bag the mouse was packaged in.

3. Another Compaq technician received a call from a man complaining that the system wouldn't read word processing files from his old diskettes. The customer had stuck labels on the diskettes, then rolled them into his typewriter to type on the labels.

4. Another customer was asked to send a copy of her defective diskettes. A few days later, a letter arrived from the customer along with photocopies of the floppies.

5. A Dell technician advised a customer to put his trouble floppy back in the drive and close the door. The customer asked the tech to hold on, and was heard putting the phone down, getting up and crossing the room to close the door to his room.

6. Another Dell customer called to say he couldn't get his computer to fax anything. After 40 minutes of trouble-shooting, the tech discovered the man was trying to fax a piece of paper by holding it in front of the monitor screen and hitting the "send" key.

7. Yet another Dell customer called to complain that his keyboard no longer worked. He had cleaned it by filling up his tub with soap and water and soaking the keyboard for a day, then removing all the keys and washing them individually.

8. A Dell technician received a call from a customer who was enraged because his computer had told him he was "bad and an invalid". The tech explained that the computer's "bad" command and "invalid" responses shouldn't be taken personally.

9. A confused caller to IBM was having troubles printing documents. He told the technician that the computer had said it "couldn't find printer". The user had tried turning the computer screen to face the printer, but that his computer still couldn't "see" the printer.

10. An exasperated caller to Dell Computer Tech Support couldn't get her new Dell computer to turn on. After ensuring the computer was plugged in, the technician asked her what happened when she pushed the power button. Her response, "I pushed and pushed on this foot pedal and nothing happened." The "foot pedal" turned out to be the computer's mouse.

11. Another customer called Compaq Tech Support to say her brand-new computer wouldn't work. She said she'd unpacked the unit, plugged it in and sat there for 20 minutes waiting for something to happen. When asked what happened when she pressed the power switch, she answered, "What Power switch?"

12. True story from a Novell NetWire SysOp: Caller: "Hello, is this Tech Support?" Tech: "Yes, it is. How may I help you? Caller: "The cup holder on my PC is broken and I am within my warranty period. How do I go about getting that fixed?" Tech: "I'm sorry, but did you say a cup holder?" Caller: "Yes, it's attached to the front of my computer." Tech: "Please excuse me if I seem a bit stumped, it's because I am. Did you receive this as part of a promotional, at a tradeshow?" Caller: "It came with my computer. I don't know anything about a promotional. It just has '4X' on it." At this point the Tech Rep had to mute the caller, because he couldn't stand it. He was laughing too hard. The caller had been using the load drawer of the CD-ROM drive as a cup holder, and snapped it off the drive!

13. Another IBM customer had trouble installing software and rang for support. "I put in the first disk, and that was OK. It said to put in the second disk, and I had some problems with that disk. When it said to put in the third disk - I couldn't even fit it in.." The user hadn't realized that "Insert Disk 2" meant to remove Disk 1 first.

4 u