UNIX and derivative operating system such as Solaris, HP-UX, AIX,
SCO OpenServer, SCO UNIXWare, Linux and BSDs share a lot in common. In fact
they are about 90% the same!
In my 20 plus years of experience working on UNIX, I have developed many skills
that work well in all UNIX environments.
UNIX System Administration |
I have worked as a UNIX system administrator for over 14 years and have been
responsible for systems ranging in cost from a few thousands to systems
worth hundreds of thousands of dollars.
Over that time I have been able to develop strong skills in:
-
System Performance. Most UNIX systems do not come preconfigured for
maximum performance. In fact, the opposite is often true. Systems, as
shipped by the manufacturer, are often de-tuned so that resource use is
modest, but so is performance.
It is my experience that significant tuning opportunities exist in most
commercial UNIXs. Often, simple tunes may yield a 10% through 50% increase
in performance and/or the machine's ability to handle higher loads.
In many cases, my clients were able to postpone significant system upgrades
because their existing system was re-configured to handle more work.
-
Database Performance.
It is my experience that database administrators understand databases, not
the UNIX systems the database runs on. I have seen many cases where a
database was correctly, but not optimally installed.
Like general system tuning, most UNIXs provide configuration opportunities
that have a significant impact on a database product. Correctly distributing
the database load, ensuring that sufficient semaphore, shared memory and
network resources are available,
matching block sizes, using raw volumes, and other tunes
all contribute to database performance.
-
Security. Security is a process, not a product. Your machine is
critical business tool. Failure to actively monitor security could put your
job, your data and your organization at risk. Lock your machine down and
monitor it.
I have been writing shell scripts for over 15 years. I prefer the Bourne
Again Shell or
bash.
I'm also quite comfortable with the original Bourne Shell,
sh and the Korn Shell,
ksh (ksh93 preferred).
Some of the scripts I've written for clients include:
-
Back up scripts to do master and incremental back ups. Usually includes a
verify pass and an e-mail alert or pager alert whenever things go wrong.
-
Service management scripts. I've written scripts to start/stop boot time
services such as firewalls, databases, web servers, application back end
code and more.
-
User management scripts. Usually done to simplify user maintenance tasks
such as adding a user (includes setting up mail, permissions, default files,
etc.), removing a user, etc.
-
Printer Interface Programs. System V printing can be a real headache.
I've written or modified dozens of printer interface scripts to handle
special cases including font loads, forms overlays, line conditioning,
network printing and more.
-
Utility Scripts. Usually needed to drive some application. A common
example is a script to drive a utility from
cron.
-
Common Gateway Interface (CGI) Scripts
Sometimes, when programming dynamic web content, you can get the fastest,
most direct answer with a Shell Script. I've written shell script wrappers
for search tools like
Swish Enhanced as well as simple form
mail scripts.
I started my career as a C programmer. I was fortunate enough to be
introduced to C back in 1981 (when the K&R C book was all you could buy).
I've worked on many projects, usually performing system programming or
programmer tool development.
Here's a bit more detail on some of my more substantial C programming
efforts:
-
B-Tree Indexing Tool. I wrote this for my under-graduate thesis. It
performed n-way balanced tree indexing based on key, record pairs. It was
fast, small, efficient and performed at about 2x the speed of the best
commercial software available at the time. It was sold as Open Source back
in 1982 through 1990!
-
PC-Star. This was a GUI, PC based reporting system developed by
myself and a small team of programmers for the Toronto Stock Exchange.
(STAR is Strategic Trading Analysis Reports). The system required 5
programmer years to develop. In it's first 6 months in the field only 3 bugs
were reported. (photo below).
-
WebMinder. Web site ever go down? Sure it has but your ISP won't tell
you. This was such a big problem in the late 1990's that I wrote a tool to
probe web sites looking for failures. The tool would report on any problems,
page the website administrator and provide specific details of the problem
(network error, DNS error, server error, web server software error or
content error). This helped reduce remediation time to minutes. And as a
bonus, it's reports helped my clients recover thousands of dollars in
rebades due to ISP's missing their availability targets.
-
PerfectMail Scanner. My latest project. We rate e-mail like the
motion picture industry rates movies. To accomplish this task, I wrote a
phrase scanner that is blindingly fast. It can scan an e-mail for over 6,000
spam-ish phrases in .00005 seconds on a Celeron 1000. It's part of a package
we are developing to help rid the world of the scourge of spam. Check out
www.perfectmail.net for the latest.