I got in late this morning because I decided I needed to get some sleep. This seemed reasonable as I worked both days last weekend. When I got in, there was an urgent request from my boss to write a script to help our test team. The requirements for this script were still a little fuzzy. So I made some phone calls and got a better idea of what they needed.
The script was due at 11:00am. I did not understand what was needed until a few minutes before that. So I figured I had better work in a rapid development mode. The first order of business was to get the shell of the script working. This took hardly any time. The result was that the script created some output. The output was not useful. But it worked.
At this point I decided to go to lunch. Some food in my stomach would help me get this thing done. When I got back, I started adding new features one at a time. The goal was to make sure that at any given moment, I had a script that worked and could be deployed. This was very fun. It was almost like Test Drive Development.
I wrote the script in Oracle PL/SQL as I am pretty familiar with the language. When I had completed the script, I did a quick run of it in our tester’s environment. Ooops. It bombed out there. Some of their data must have been different than I expected. I traced down the problems and corrected them.
Before passing the script over to the testers, I read through a flurry of email regarding the usage of the script. At that point I found there were some holes in the requirements I initially collected. This was not a big problem. I just continued to add the new features I saw were needed. Now the testers have the script and they seem pretty happy. The alternative to manually do all the stuff that the script performs is evil.
Package Access Mystery Solved - I have been playing around with the DBMS_CRYPTO package, trying to generate a lot of hashes. I want to study the distribution of hashes for different inpu...