90

I am a computer’s nightmare, but a programmer’s best friend.

I am both the cause of a problem and the source of its resolution.

What am I?

Stevoisiak
  • 916
  • 1
  • 6
  • 11

9 Answers9

122

How about

Stack Overflow (the error and stackoverflow.com at the same time).

I am a computer’s nightmare,

If I was a computer, I wouldn't like these errors at all. Too much data to keep track of.

but a programmer’s best friend

stackoverflow.com is one of the best places to go to if you get stuck while programming, according to this

I am both the cause of a problem

If you get a stack overflow error, you have a problem. There is not much you can do once this error happens.

and the source of its resolution.

You might be able to find help on stackoverflow.com, for example here.

Reinis Mazeiks
  • 3,012
  • 1
  • 17
  • 30
92

Coffee (or soda)

I am a computer’s nightmare,

Ruins a computer if spilled on it

but a programmer’s best friend.

Programmers love coffee to keep themselves going

I am both the cause of a problem and the source of its resolution.

Coffee causes a problem by fueling overwork, leading to fatigue - which is solved with more coffee

Beastly Gerbil
  • 58,036
  • 8
  • 166
  • 314
brichins
  • 939
  • 5
  • 8
19

The answer is

the electron framework.

I am a computer’s nightmare,

Drains major amounts of resources for simple apps.

but a programmer's best friend

Who doesn't like easy GUIs and a single language?

I am both the cause of a problem

Poor UX due to lag.

and the source of its resolution.

Better UX due to ease of development.

Glorfindel
  • 28,033
  • 9
  • 96
  • 142
jiggunjer
  • 291
  • 1
  • 3
16

I think it could be

the brain.

I am a computer’s nightmare,

Computers are incapable of processing information like a human brain - the brain is the one computer that outclasses any other computer.

but a programmer’s best friend.

A brain is a required and useful tool when writing code.

I am both the cause of a problem and the source of its resolution.

Any bug caused by "the brain" will ultimately need to be resolved by the brain as well.

JD Reese
  • 341
  • 1
  • 3
  • 9
    Unfortunately, a lot of programmers demonstrate that a brain (or, more accurately, programmer usage of the brain to think through a problem) is not essential. – Peter Dec 10 '17 at 00:13
  • 2
    I disagree with "computers are incapable of processing information like a human brain - the brain is the one computer that outclasses any other computer." I don't even see how people can feel that way tbh. – minseong Dec 10 '17 at 17:44
9

Visual Studio

I am a computer’s nightmare,

Because it takes a ton of time to compile even simple programs

but a programmer’s best friend.

It does make finding and checking errors easier

I am both the cause of a problem and the source of its resolution.

Sometimes gives idiotic errors; solution is not to use it

Peregrine Rook
  • 4,880
  • 2
  • 26
  • 40
user43146
  • 91
  • 1
  • "it takes a ton of time to compile even simple programs" - surely that just refers to the part of "loading solutions". If not, I think you misspelled MSVC :) – sehe Dec 08 '17 at 07:52
  • I was thinking Java, because it's generally known to be a resource hog (and its relationship with a computer can easily be anthropomorphized as a physically and emotionally abusive partner that spends your money and beats you every now and then), but because of its popularity it statistically employs most programmers so that's probably a thing to be happy about. – Chavez Dec 08 '17 at 12:14
7

How about:

The user

I am a computer’s nightmare,

As soon as a computer comes into contact with a user, things start going wrong. The user tries to do something that the programme wasn't designed for, does something the wrong way, ignores instructions, cannot see things, generally breaks everything.

but a programmer's best friend

The user pays your salary...

I am both the cause of a problem

The user does things wrong, changes their mind how they want to do things, doesn't think like a computer

and the source of its resolution.

The user is the most effective bug hunter you can get and either asks for, or by doing things wrong points the way to better, more user-friendly design.

Jonathan Twite
  • 261
  • 2
  • 4
6

I would say it's the;

"Stack Trace"

It's the computer's nightmare

When computers crash (application software, to be specific), they sometimes throw a truckload of textual information on the screen which nobody understands and just hangs (blue screen of death, anyone?). It's the worst thing which would happen while using the computer so it's a nightmare in the user's perspective.

But a programmer's best friend

These "stack trace" information would make sense to the application programmer. It contains a list (It's actually a stack) of instructions which were executed just before the application crashed. (Hence the name "Stack" in Stack Trace)

It's the cause of the problem

Showing this Stack Trace is actually the problem as well because, ideally the application should've given a better error message and would've shutdown gracefully or either continue to work on other parts of the application. But unfortunately the programmer wasn't too smart to predict it so there we have it.

And the source of its resolution

Although it's a show stopper, the information shown there is vital for the application programmer to trace to the root cause of the problem. (Hence the part "Trace" in Stack Trace). Because the line numbers and the instructions shown there really is an invaluable source for the programmer to fix the problem.

Stevoisiak
  • 916
  • 1
  • 6
  • 11
3

The solution is:

Programming errors Reported by the computer

I am a computer’s nightmare,

It's quite Hard to get the exact errors reported out of the computer to the programmer.

but a programmer’s best friend.

A friend in need is a friend indeed!

I am both the cause of a problem and the source of its resolution.

Errors are the cause of the program's incorrectness but once known they help in resolving themselves.

Dogg1
  • 3
  • 3
dry leaf
  • 31
  • 3
3

printf debug statements

Nightmare for the computer?

They're slow, and hence frequently the cause of problems in their own right (commonly known as Heisenbugs, because the act of observing changes the thing being observed).

Programmer's best friend?

They're the quickest and dirtiest debug method, and they're often the most expedient way to figure out what's going wrong.

Rand al'Thor
  • 116,845
  • 28
  • 322
  • 627
Graham
  • 436
  • 2
  • 5