|
|
Free Stuff for Programmers
It's hard to get something for nothing,
but here's the next to best thing: in exchange for information about
you and your job, I'll give you some valuable tools for managing your boss, coping
with job stress, keeping up with technology, and other aspects of managing
your career.
Please click on the
button below and use the popup form to tell me a little about yourself
and how you found the CoachingProgrammers website. Then feel free to
download as much material as you like, and distribute it freely to
friends and colleagues.
|
Why
Program Adaptability Is So Important
|
One software characteristic, “adaptability” has
become so important in recent years that it should be considered
specially, and it should be optimized, even at the expense of other
characteristics. If a system is not designed with this sort of
adaptation in mind, it can only degrade to chaos in the face of
ever-changing requirements.
|
|
"Boss,
I Want a Coach"
|
If you want to achieve a big, complex goal in your
professional life, it’s very likely that a professional coach
can be a great help in getting there. If it’s important enough
to you, you can simply hire a coach yourself, but many companies
are willing to underwrite all or part of the cost of coaching if
you can show that it’s in their interest as well as yours.
So, to get your boss to pay for your coaching, you need a plan.
|
Culture
is Important in Software Productivity |
Changing the culture of a working organization
is not only possible – it’s fairly straightforward.
The difficult part is to decide what kind of culture you want to
create, and how that culture will effect your productivity and
profitability. This paper came out of my conviction that a respectful,
open, supportive working environment dramatically improves programmers’ productivity
and can dramatically improve the quantity and quality of the software
the produce.
|
|
(Paper)
Documentation Considered Harmful
|
It’s been part of programmers’ training
since the earliest days: “Documentation is part of the product!” But
our current ways of documenting requirements, architecture, design,
and code are vestiges of earlier eras, when word processors and
virtual paper were the only choice for communicating ideas. But
there are disadvantages to paper-based documentation.
And yet, the need to describe the purpose and structure of the software
to people than the developers remains, so how can we get the benefits
of documentation without the drawbacks of paper?
|
|
Effective,
Efficient Meetings
|
Most professionals report spending between 15%
and 30% of their time in meetings. How about yourself - do you
know the inside of the conference rooms better than you know your
office? And of the time that you spend in the meetings, how much
of it is really valuable to you, and how much does it cost?
|
|
Keep
Track of Your Stress
|
I know that you’ve seen them: the magazines
are full of questionnaires that claim to measure your stress level.
Some of them are useful because they make you think about your
stress, but most of them seem sort of silly. First of all, they
don’t tell you how much you’re stressed, and they don’t
give you any clue what to do about it. But here’s a different
approach: I’ve shown a very short stress test that you can
take in three minutes or less.
|
|
Knowledge
Management for Software Projects
|
What is the most important product of your software
development project, after the working software itself? If you’ll
reflect for a moment, you’ll realize that the knowledge produced
during the project is precious, because it provides guidance for
maintaining and extending the product, and for planning follow-on
projects. But in most organizations, this knowledge is discarded,
or lives on only in organizational tradition and folklore. How
can you effectively capture, organize, and retain this information?
|
|
Shopping
for a Coach
|
Imagine a best friend who wants nothing more than
your complete success, who always listens with interest to what
you have to say, and who gives you the feedback you need to make
tough choices and changes. This is the essential job of a coach,
to help you state the problem clearly and understand it, to plan
an approach to solving it, and to execute that plan. Coaches believe
that you already have the knowledge and skills you need for its
solution, and that their job is to help you bring out the skills
and use them effectively.
|
|
Clear
Thinking About Stress
|
There seems to be a lot of confusion and loose
thinking about stress in popular journals and books. How else can
you explain terms like “good stress” and concepts like “A
certain amount of stress is good for you,“ or advice like “Stress
is unavoidable.” Once you understand the meaning of stress
you’ll realize that stress is always harmful, that there
is no “safe” level of stress, and that you can deflect
stress if you know how.
|
|