One
sign that you are doing something that you love is that you
not only want to complete your projects, but you also like to
play with the technologies involved in them. I consider this
"play" to be the examination of virtually anything unfamiliar
that doesn't provide immediate results. Perhaps it is attempting
a project a second time using a different technology, or it's
doing a new project slowly with the learning curve of unfamiliar
tools, even though you could put something together at a much
faster pace with those you already know. And, as you might think,
playing can also be trying things with a new technology that
aren't meant to produce any practical result at all.
The desire
to try new things is pretty much a job requirement in the fast-changing
world of Web development. Still, it is definitely a sign that
you've chosen the right field if you find yourself making excuses
to tinker, and if you linger over some detail because you think
it would be interesting to see if you can get it just right.
Over the
years, I've learned again and again that experimenting with
technology is an important way to renew the excitement of a
job and to increase creativity. In this column, I would like
to encourage you to play, remind you why it can even be good
for the bottom line, and talk about ways to make it more satisfying
and useful.
Getting
Your Hands Dirty
You may
naturally find ways to investigate new technologies, or you
may have to work at it a little. Other people often have wonderful
ideas as to the kinds of things you could be trying. You may
meet a librarian at a conference who can't stop talking about
the wonders of shell scripting, you may see a listserv message
about the uses of XML, or you may meet a graduate student in
computer science who raves about PHP as a scripting language.
To get ideas on your own, you can check out Web pages on top
new technologies or magazine columns about new issues. Of course,
I recommend this magazine, and I also like the LITA Top
Technology Trends http://www.lita.org/committe/toptech/mainpage.htm.
My favorite way to keep in touch with what's going on is the
Web4lib electronic discussion list http://sunsite.berkeley.edu/Web4Lib.
Is
It Still Considered 'Work' If It's Fun, Too?
Remember
that the idea of work is all relative. You may find that what
is a chore to someone else is play to you. Perhaps there are
graphic buttons that need to be made, and the person who usually
makes them has done this again and again, so it is kind of boring
for him. If you've never tried making them before, this might
turn out to be a wonderful project for you. You may actually
relieve the tedium of someone else's job while simultaneously
providing yourself with a learning experience.
A part
of you may think it's obvious that we need to keep current,
but no matter how much you may want to try new things, it is
easy to get caught up in to-do lists and deadlines, and to not
make time for exploring unknowns. Isn't there always a deadline
looming or a crisis building? Often, we have to justify taking
the time to experiment with new technologies, and I think it
can be harder to justify this to ourselves than to anyone else.
We don't have to worry, though, because there are lots of good
reasons that playing makes us better at our jobs.
First,
playing re-energizes you. Imagine you're working on an important
project that will take you 8 hours to complete. Now, what if
I told you that if you took an hour to examine a new technology
before starting, the project would only take you 6 hours to
finish? Wouldn't the practical thing be to take that first hour
to try that new thing? OK, I can't make any guarantees or specify
any exact time savings, but if you put this into practice, I
think you will find that it is true. Energized people can get
things done faster and better.
Playing
is also a wonderful way to stir up creativity. There may be
times when you have problems that you're having difficulty solving.
You may have a kind of writer's block in coming up with solutions.
Trying things for the fun of it can help unblock you; it can
start to free your mind from narrow assumptions about a situation.
It's a mental coffee break that can inspire thinking of new
ways to solve your problem.
A final
justification is that the answer to your problems might be right
there in that new technology, even if you don't know it yet.
There have been many times in my career when I've explored and
played and found that doing what I wanted to do was very easy
with the new technology, though I hadn't expected this when
I started. For example, I was recently experimenting with the
files for the OPAC on our test server. I would make changes
to different files and then check the output to see what the
result was; I was just having fun exploring the system. Suddenly,
I noticed on the results screen that one of the changes I had
made did exactly the same thing as a troublesome JavaScript
I'd been trying to work with. I was able to eliminate the JavaScript
and replace it with the other method. How could I have known
this without trying it out? You need to take a technology out
for a test drive before knowing what it is good for.
A Safe
Place to Play
I highly
recommend that you develop for yourself an area to play in.
Ideally that would be a separate server where there are no production
services. Unless you can take down the whole machine without
patrons being inconvenienced, you should be cautious when you're
unsure what the outcome of your changes will be. You must have
a safe environment in which to experiment and fail, or new systems
technologies will remain outside your reach.
OK, having
your own server for a sandbox is a luxury that not all of us
get. You can still set aside accounts or directories in which
to play safely. You can set up development files specifically
for your experimentation and a separate directory for the production
files. Make sure files are backed up so that you can feel confident
that it can all be restored if problems pop up; at some point
you may discover that while you've been playing, things have
stopped working altogether.
Getting
Productive Results
It may
turn out that your tinkering produces useful results, but there
are other aspects to consider beyond whether something is working.
For something to be a production service, you will want to consider
whether your product is truly reliable. Not only does the technology
need to be working now, but it also needs to be solid enough,
and your problem-solving abilities up-to-speed enough, that
you will be able to keep the service up in the future. When
you are on the cutting edge, there are fewer resources to support
you when you do have problemsfrom documentation to
the experience of people who have been there before you.
If you
put your project into production, you will also want to make
sure that everything you've done is documented well enough that
if anything happens to make you unavailable, someone else will
be able to follow what you did. Unfortunately, this can be a
problem with a new technology, because other people may not
know anything about it. If someone else needs to take over the
project, make sure that learning that new technology is part
of his or her job description.
You also
should consider whether you feel some pressure, internal or
otherwise, to make the results a production service. Don't let
your exploration trap you into feeling as if you have to do
that. Even without the service going into production, you've
learned something; you've become more energized and creative.
These positive effects are enough to justify your time; nothing
is wasted when you've learned something.
Making
Playground Friends
Lastly,
I think it is important to encourage others to try new technologies
and to extend themselves into new areas. Whether it is a colleague,
someone who works for you, or someone you meet at a conference,
encourage him or her by talking enthusiastically about something
you've recently learned. Take the time to show him or her how
to get started. Share your sandbox. Sometimes it takes someone's
holding your hand to get you going; pass on that favor to other
people. It is to everyone's benefit to create a stimulating,
creative, and renewing work environment.
One additional
note: Though I've enjoyed writing the Building Digital Libraries
column this past year, this will be my last column. Recently
I had the unexpected opportunity to move into our Systems Department
to work on our libraries' Web catalog, and this change in direction
of my career has made me feel the need to take some time to
get up-to-speed in my new areaincluding spending a
lot of time playing with the Web OPAC technology! Of course,
I'll still be keeping an eye on this magazine for interesting
new ideas. I hope you will too.
|