With over ten years experience in Perl and over twenty years
experience in Unix shell scripting I can fix your broken scripts,
add new features or design and implement new scripts.
Perl and Unix Shell Scripting
Unix Shell Scripts
The scripts I create are portable across multiple Unix and
Unix-like operating systems including AIX, HP/UX, Solaris and
Linux. I have worked with many shells including Bourne (the
most portable), Korn, C and Bash.
Having worked in Perl since the mid 90's, as well as designing
and delivering Perl training, I have a thorough grasp of the
language. My experience includes object oriented Perl, complex
data structures using references, module design, CGI (web
pages), GUI using Perl/Tk and both Unix and Windows
The lack of proper automation or inappropriate automation
can rob your team of precious time and impact your bottom
line through schedule slippage, poor quality deliverables
and rework. Let me show you how your team can be more
productive and enjoy their work more.
Cost Effective Automation
Do your software developers complain that your procedures
or tools get in their way or are too tedious? Do they
sometimes forget an important step in a "carefully
documented" procedure? Maybe the problem is that there are
just too many manual steps. Software developers are more
likely to follow procedures that are highly automated with
only a few simple steps. This also reduces the chance of
Migrations and Transitions
Do you dread the transition to that new software system
because you know how much time it will consume?
I have extensive experience in automating source code and
data migrations. The goal is to create a fully automated
system with very few steps (ideally one). This way the
migration can be tested in stages, fixes applied and
retested. Because it is automated, problems fixed in early
runs will not reoccur. User downtime is minimized because
the old system is in use until the very end where all data
is quickly and reliably transferred.
Does your staff spend hours and hours moving or
manipulating data every week or month? Are your best people
performing labor intensive, repetitive chores? Proper
automation of these tasks will reduce errors, improve
productivity and increase job satisfaction.
A well designed software build system is essential to any
software development project. I have experience in a
variety of make-based systems including traditional make,
imake and GNU make. Some of the build systems I have
designed support building on both Unix and Windows,
concurrent cross compilation for multiple CPU architectures
and flexible configuration files allowing multiple teams to
build the same code different ways to suit their needs.
Reliable Software Build Systems
A good build system should have the following
I can customize my training to your needs so that the right
material is covered and at the right pace. My teaching
style is highly interactive, which means that the student
is involved and stimulated. This also allows me to
measure, in real time, when the concepts have been
understood and when everyone is ready to move on to the
Highly automated - one click or one command does it all.
Good error reporting - the source of the problem is
easily identified from the error log.
Requires little maintenance - it is easy to
switch compilers and libraries; modifying local and global
build parameters is simple.
Test builds are the same as production builds -
if not, your developers may be missing defects that will
not be caught until QA tests the next "official" build.
Regression testing is automatic - this can save
many wasted hours by preventing defects from being "checked
in" to your version control system.