Sunday, September 25, 2011

What was I thinking?

This morning I realized that I have exaggerated in my author biography. While it is true that I have over 30 years' experience programming computers, I would not categorize my responsibility as "multi-platform network integration and systems programming" until starting in about 1985. That would make it more like 26 years.

I apologize for the exaggeration in my author biography. I really should have said "over 25 years".

In 1985, my multi-platform network and system programming consisted of serial ports and modems, exporting mainframe database records for import to a personal computer project management system. From those simple beginnings, it wasn't until 1989 that I installed and managed my first packet-switching (more like modern) network for my workgroup. Then in 1991, I managed the most complex network of my career. Since then, multi-platform networking has become pretty much simpler.

In 1991, we had to install Ethernet cards in our computers and set a non-conflicting IRQ. And we had to add software to the Windows 3.1 operating system in order to do networking. We used either Trumpet winsock or what became our standard, the Netware client software. Each computer had to have a unique TCP/IP address manually set, and had to also speak IPX/SPX for Netware.

We also had a whole other side of the house in 1991: Apple. Those folks networked with Appletalk at the time (not even Ethertalk) and I connected both sides together using a Gaterbox. I can still remember the feeling of success I had when I printed a screen capture of my Windows 3.1 desktop on a color Apple printer through a Netware print queue (using the Netware NLM for Appletalk and the Gatorbox). I still have that printout.

From where I worked, we could share files and information world-wide, but the world-wide-web was just a rumor. I didn't know I needed it, because I had Telnet and FTP.

What was computing like for me, 30 years ago? I learned BASIC on a terminal to the mainframe in class, and had a SHARP programmable calculator that ran a simplified version of BASIC. In my last year of undergraduate college, my dad bought a Radio Shack TRS-80, Model 2 with a cassette deck for storage. I knew enough BASIC to use the TRS-80 to communicate through the serial port with a plotter and have it render my design class CAD drawings in color, from multiple perspectives (of course I calculated and entered all the points manually.)

When I got my first real job, the computing resources at work were limited to dedicated word processors (a cross between a typewriter and a computer) and punch cards which I transported to the local university to have run and have reports printed. When I got my second real job, I got access to an original IBM PC. I started doing all my work in Lotus 123. This was in 1984. Big Brother became my friend, or was that Compuserve (I spent hours using TAPCIS over a modem). I bought a Compaq portable (definitely not a laptop computer) with DOS 1 something and an AST 6-pack board, an external modem and a plus (+) drive, 10 megabytes! My software was all from a company named Ashton-Tate. I communicated with friends and played long games on Bulletin Board Systems.

If you recognize what I said in that last paragraph, then you are old!

Tuesday, September 20, 2011

Why I Wrote the Book

Beyond what I said in the front-matter of the book, Expert Oracle and Java, Programming Secure Oracle Applications in Java, I have other agendas. Perhaps one being that desire to have my skills and accomplishments recognized... it would be an illusion if I pretended that vanity didn't enter my psyche. I have a bit more altruistic goals as well. For one, I wanted to provide tools that you, my peer programmers can use, collected in one volume. Unfortunately, you will not find the book to be organized as a handy reference guide, because of my other goal. My primary goal is to teach, to have you delve down deep into application security issues and to apply some practical coding practices to address the issues. A final goal that I have is definitely selfish -- I want to learn. I am a lifelong student, and this book provided a focus not just for pulling together what I knew, but also for exploring and learning what I had not previously known.