
Don't Hire Cheap Hackers – write simple programs yourself - luu
http://www.cyrusstoller.com/2011/03/24/dont-hire-cheap-hackers/
======
logn
It often takes an expert to know whether a job is simple or not. And it often
takes that expert some investigation to find out. DIY is fine, but
specialization of labor is fine too.

Also, web scraping is a great example of something that can either be simple
or complex depending on many non-obvious things.

------
fsloth
A very good advice. One thing was left out, I think. Implementing the program
one self the implementor may:

* Gain an insight into the problem he was trying to solve he would not have otherwise had

* When faced with unexpected complexity, the implementer may choose to solve a less complex version of the problem that may still provide added value, or choose to go some other route entirely.

I think this last bit cannot be overstated enough. The easy problems in
programming are usually so easy that even novices can solve them in a sensible
time, while the hard problems can be hard to get right no matter how many
years you have under your belt. Often by changing ones approach the problem
can be reformulated into an easier one.

If the work is hired, then the consultant may lack the initiative, intuition,
courage or experience to go for the possible alternative approach to solve the
given problem.

Of course, all this depends on the quality of a problem.

------
Aloha
It takes expertise and experience to know which problems are complex - on the
surface all problems are simple.

------
stuki
Thinking of "programming" as a completely separate field, to be "done" by
specialists only, is highly unfortunate.

All "programming" really is, is formulating what you want done precisely. A
compiler can take it from there. Where a specialist in "computers" comes in,
is he can optimize your algorithms to run more efficiently. But in more cases
than not, what "programmers" are tasked with, is to "just make it work", with
little more specificity than that. And then the garbage inputer gets upset
because he gets garbage back out.

SQL was originally, back when clarity of thought was still considered
fashionable in executive suites, intended to be used by decision makers.
"Specialist" IBM "programmers" provided the code that accessed and processed
the relevant records efficiently, but the person who wanted an answer, often a
C level, was the one tasked with specifying what he wanted done. With enough
precision that his question made sense.

~~~
emsy
I agree with you that programming shouldn't be done by specialists only. I
also think that's the way computers are supposed to be used (as Steve Jobs put
it, a bicycle for the brain).

However, I also experienced the problems this will cause. I was working at a
software company, where the software was started by non-specialists who then
took over the development section. It was a mess.

------
hw
It all depends on whether something is worth your time or not. A person whose
time is worth more might find it more valuable to hire someone whose $/hr is
half of his (not necessarily cheap) who can get the job done in less than
twice the # of hours he would take. There are some problems / jobs that are
just tedious that don't require a person with 10 years of experience to
complete - those are the kind that are worth hiring for.

------
annnnd
My takeaway from this article: if a client tells you he needs a hacker to do
an "easy" job, tell him to do it himself. If he thinks it is easy he won't
value your work anyway.

"I know it is easy, I mean, how hard can it be? It's just not my area, you
know, so I think you should do it... but since it's easy, I won't pay you much
and I won't appreciate your work. So when can you start?"

