Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: [tlug] [OT] Good IT Resume
- Date: Mon, 30 Jul 2007 14:55:12 +0900 (JST)
- From: Curt Sampson <cjs@example.com>
- Subject: Re: [tlug] [OT] Good IT Resume
- References: <8572e260707182339i5ca059c4l1be1f51559c16f54@mail.gmail.com> <d8fcc0800707230647j31bc776dje3e18d57b04352e7@mail.gmail.com> <Pine.NEB.4.64.0707241211330.8162@homeric.cynic.net> <d8fcc0800707240550o691c99f9n4524a2fe71c847e8@mail.gmail.com> <Pine.NEB.4.64.0707251409590.8162@homeric.cynic.net> <20070725072147.GD23731@soto.kasei.com> <d8fcc0800707260050v50c889eawb6a0d426f3dd301b@mail.gmail.com> <46A8A4E4.6040009@dcook.org> <d8fcc0800707271708s2218888fva77fcc32285ab5b1@mail.gmail.com> <Pine.NEB.4.64.0707281426400.21837@homeric.cynic.net> <d8fcc0800707280008h30fe3a5fx1a1ec2e7a0527269@mail.gmail.com>
On Sat, 28 Jul 2007, Josh Glover wrote:
Ah, but you elided one important entry from that list, didn't you?
3. You work for a company that employs 4000 developers who are not you, but must interact with your code. Furthermore, you have many more constraints placed on you.
Hm. Well, let's try to summarize my impression of this whole thing, here.
My original understanding of your argument was, "I always do a prose specification, usually around ten pages long, for every project I do, and I don't feel that any project will succeed as well without this."
My argument is that there are many projects that can succeed better without this (though not by doing everything else the same, less that one document). In particular, I think that:
1. A specification that can be interpreted by a computer is better than one that can't, since it allows you to automate more of the process of determining whether you're meeting the spec.
2. The actual code is form of specification (the one the computer uses), it's better to have just one spec than two, and in most cases if we're going to drop one, we should drop the prose rather than the code.
Now, I can certainly think of very strong reasons to write a ten page prose specification, and when I encounter those, I write one. (The usual reason is not that it makes the project work better, but that the customer feels happier, regardless of the value to the project itself.) But the time I spend producing that is time I can't spend on something else, and I'm pretty ruthless about trying to do only the things that produce the most business value, and many customers, if they can get over their discomfort with not having a ten page prose specification maintained for the life of the project, can get more business value through producing other types of artifacts.
Outsourcing the coding of something, by the way, is another area where you need to produce a detailed specification. That is why I often question the value of outsourcing; producing and validating the spec is often the vast majority of the work, so making that easier and doing the coding yourself may very well be cheaper than spending more time on the spec. so you can spend less time on the code. A lot of this depends on what languages you use, of course: if you're coding in C, you probably spend ten percent of your time dealing with things directly relevant to the problem itself (the "essential complexity"), and ninety percent of your time dealing with what Fred Brooks calls "incidental complexity": checking error codes, tracking pointers, avoiding buffer overflows, etc. In situations like this, my preference is to try to fix the language if at all practical.
In fact, Paul Graham's article "Great Hackers" touches on this in the "More than Money" section:
Business types prefer the most popular languages because they view languages as standards. They don't want to bet the company on Betamax. The thing about languages, though, is that they're not just standards. If you have to move bits over a network, by all means use TCP/IP. But a programming language isn't just a format. A programming language is a medium of expression.
I've read that Java has just overtaken Cobol as the most popular language. As a standard, you couldn't wish for more. But as a medium of expression, you could do a lot better.
No hard feelings, mate; at least on this end.
No, of course not. E-mail between techies often sounds far more like a flame war than it really is, so I don't generally take very seriously any personal impliciations I might interpret from an e-mail exchange. (Even "you're a moron" is more often a criticism of an idea, rather than a person.)
cjs -- Curt Sampson <cjs@example.com> +81 90 7737 2974 Mobile sites and software consulting: http://www.starling-software.com
- Follow-Ups:
- Re: [tlug] [OT] Good IT Resume
- From: Keith Bawden
- References:
- [tlug] [OT] Good IT Resume
- From: Pietro Zuco
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: [tlug] [OT] Good IT Resume
- From: Karen Pauley
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Darren Cook
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
Home | Main Index | Thread Index
- Prev by Date: Re: [tlug] Re: Post my article on tlug.jp?
- Next by Date: Re: [tlug] [OT] Good IT Resume
- Previous by thread: Re: [tlug] [OT] Good IT Resume
- Next by thread: Re: [tlug] [OT] Good IT Resume
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links