[nycphp-talk] General Q; Programming Jobs & Expectations
inforequest
1j0lkq002 at sneakemail.com
Thu Aug 17 17:07:20 EDT 2006
Kenneth Downs ken-at-secdat.com |nyphp dev/internal group use| wrote:
>
>I had the exact same experience. The truth of the matter was stated very
>precisely in the above two paragraphs, greater success can be achieved
>with lower quality, by throwing out all of the time-consuming tasks from
>your higher-quality previous experience.
>
>
um...I think it's called "externalizing expenses" actually. Do your job
and don't worry about what is not specifically your job. If the rest
doesn't get done, it wasn't your fault. Sometimes it seems to me 95% of
the profit in a project is gained from externalizing hidden costs, not
from the project itself.
>This is often hard for programmers to understand, because we are idealists
>and think everything should be perfect. But Bill Gates did not become the
>richest man in the world by delivering quality, he rushed garbage to
>market because people will gladly choose garbage that's available today
>over the promise of perfection tomorrow.
>
>
Define "garbage". Are you selling what you know to be good, or what the
customers know is good? The former will bankrupt you; the latter may
disappoint you.
>There are also complex political issues that serve to insulate decision
>makers from the consequences of bad decisions. An CTO cannot complain
>that the vendor is handing him garbage because he'll lose his job for
>picking the vendor. The vendor has to protect the CTO by at very least
>taking care of whatever issue may get him fired that day, and screw the
>rest of it. It works great if you are at a VP level or higher, but for everyone else
>its hell.
>
>
Well said. And that came about not by design, but via evolution. In
order to survive, those managers developed that system of insulating
decisions and spreading accountability. What have the programmers
evolved in order to survive? Sometimes it seems like dark rooms, and
poor social habits to keep the managers out of their caves.
Unfortunately that only increases the pressure to keep up, and further
helps commoditize the programmer's job (we never see him ayway, so why
not outsource overseas?).
Do your job and do it well and make sure you stay involved outside (like
NYPHP) and move alot and eventually you earn your rep and can choose
where to work. That seems to be the way. I definitely have not seen any
success evangelizing within the profitable corporation you describe, as
all you will be doing in the eyes of non-programmers is making waves and
increasing costs. Make sure that when there is an attack, it wasn't on
your code, and when they audit, your code comes clean. Anytime you find
you cannot do a proper job (time constraints, etc) find a way to
externalize the decision to leave it insecure... commonly known as
passing the buck/creating a paper trail. There's nothing wrong with
allowing the organization to make a decision that is not optimal from
any one perspective -- I think that is the definition of a compromise.
-=john
--
-------------------------------------------------------------
"If you think this stuff is confusing, you should try optimizing websites for search engine exposure." john andrews SEO http://www.johnon.com
More information about the talk
mailing list