
Software development is a trade - chrismealy
http://www.manifestdensity.net/2010/11/27/software-development-is-a-trade/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+manifestdensitynet+%28Manifest+Density%29
======
wccrawford
Of course it's a trade. Anything that you can have a 'career' in is a trade.

The real meat of the article is actually about the best people in a trade vs
the grunts. The best people end up with all the really interesting problems,
where grunts dream about having those problems.

Except, that's not entirely true, is it? Only the grunts who actually like the
job care about that. The rest just care about making money. They hope to never
have a new problem and just want to get through another day.

And the grunts who just dream about those problems and never seek to actually
try them... I feel bad for them. It's not that they can't. It's that they
won't make the time or don't have the willpower to try it. It's a lot easier
to work on a problem when someone is telling you to. To decide to solve a
problem on your own is a lot harder.

~~~
mattdeboard
> Anything that you can have a 'career' in is a trade.

Well, sure, but clearly he meant trades that host artisans like carpenters,
mechanics and so forth. People who make tangible things other people use, and
can employ the artful piece of their trade to distinguish their product from
the next guy.

Programming is an artisan craft. Beautiful code is distinct and a sight to
behold above and beyond code that may simply fulfill the requirements of the
task.

~~~
wccrawford
Perhaps you haven't seen the results of an excellent secretary vs a mediocre
one. There may be no physical item created from their work, but the difference
is quite noticeable.

------
codeglomeration
> Some smart people are interested in this stuff, but that doesn’t mean it’s
> about to transform the industry.

I would argue it already has. Now, has it transformed the entire industry?
Obviously no. Just like there's no silver bullet, you have to pick the
appropriate tool for the job. Having an understanding about the tools
available will aid you in making better decisions.

Are there people overexcited about scalability? Of course. Just like there are
people obsessed about premature optimization, choosing languages for a product
for the wrong reasons, or trying to push a project in the direction of their
skill set rather the most appropriate.

The skill comes with the ability to pick the right tool for the right job. And
for that you have to be aware of the options.

~~~
ryan-allen
> I would argue it already has. Now, has it transformed the entire industry?
> Obviously no. Just like there's no silver bullet, you have to pick the
> appropriate tool for the job. Having an understanding about the tools
> available will aid you in making better decisions.

I think that's a slippery slope, or at least can be. Software developers don't
just use tools, they also make them. You can't liken that to typical trades
like carpentry because carpenters don't make their tools, they just use them.

There is _always_ going to be a better tool for any job, but the criteria for
said 'right tool' I think needs to be perfectly spelled out. Is it a tool that
is the most conceptually pure? Is it the one that we can hire developers for
easily? Given that developers can also make tools is it one that we can design
ourselves?

Walking backwards and forwards across this line of building things with tools
and building tools confuses the crap out of people. I don't think it's until
developers mature that they realise this, and then they've often done 10 years
of work that probably is, well, dare I say 'wrong'!

This is the last thing I'll say. Software developers are amazingly good at
coming up with a plethora of rhetoric why they should or shouldn't do
anything. Look at their motives closely and you'll discover some interesting
driving factors...

~~~
codeglomeration
> There is _always_ going to be a better tool for any job, but the criteria
> for said 'right tool' I think needs to be perfectly spelled out.

It is difficult to perfectly spell out and continue innovating at the same
time. Just look at W3C. They're so far behind standardizing, that the industry
in the current state has moved so for ahead ahead. Like I said, there are
different motivations for people picking certain technologies, and when those
motivations fall outside of picking the right tool for the right job, it's
probably a bad idea. You can't really standardize this industry because it's
evolving so fast. just look at technology 10 years ago. It's a totally
different landscape. This couldn't have happend with standardization.

> Is it a tool that is the most conceptually pure? Is it the one that we can
> hire developers for easily?

I think it's a mistake to hire people based on a skill set and not the
capabilities or potential. Technologies come and go, and as a business, you
mind end up at a point where you realize you need to switch technologies, for
a good reason (either the one that you're using isn't appropriate or your
business model has changed and you need a different tool, or whatever reason).
If you're left with developers who only know how to do one thing and can't
switch technologies, you're probably going to have a hard time.

> Software developers are amazingly good at coming up with a plethora of
> rhetoric why they should or shouldn't do anything. Look at their motives
> closely and you'll discover some interesting driving factors...

I agree. Just like there are competent and incompetent developers, you have
developers making choices for the right or wrong reasons. That's why hiring is
a difficult process, because distinguishing between these types is not
straightforward. That's why there's a fight right now for talent. That's why
there's a huge gap between the professionals. Because it's not a standard, and
things move too fast to set things in stone.

------
collint
I think it's pretty awesome that you can fire up less than a movie ticket
worth of computer via credit card and process something you'd never have a
ghost of a chance to do on your desktop in a reasonable amount of time. And
then do it again the next day. And the next day. Repeat until you have some
useful output.

$10 gets you ~ 1000 hours on an EC2 Micro spot-instances. !!!!

Big data is a minefield of opportunity. Do go walk in it.

~~~
sbma44
>Repeat until you have some useful output.

Do you really think that's how useful work is accomplished?

The point of TFA is that there aren't as many problems in need of brute
forcing as we'd like to believe. In truth, most important problems require
intelligent and skillful analysis. Where computing power is truly the bound,
it tends to be applied pretty quickly.

