I started by writing some simple programs that just drew some boxes in a window and rotated them, not much but it was a start. Then I looked at the digital clock program I wrote some months earlier in C++ and decided to port it to Java. To see this clock, click here
After a couple of days, I had the clock running. It was a nice multithreaded Java application, ran great except for one thing -- it didn't keep time. I quickly isolated the problem to a bug in the OS/2 implementation of the Java Virtual Machine. Turns out, the applet keeps time just fine on Win 95 and Solaris.
Since I have a few OS/2 machines here, and so do many of my friends, it was important to me to have this working on OS/2. So I set out to find a work around, that would be portable (of course).
So what I did was have the clock periodically syncronize to an external time server. I chose to use the daytime protocol (RFC867) because it was easy to use. I realize that it was perhaps not the best choice as that there are better protocols, but it suited the needs of this application. The only other difficulty was that because of Java applet security, it could only synchonize to the server that served it. In this case, this would mean an OS/2 server, but there was no daytime server available for OS/2 -- I would have to write one. So I did.
One of the problems with OS/2 is that running TELNETD is not a very good idea since it uses a single system wide password. This makes the system very vunerable to attack, but I needed to be able to telnet into my system occasionally. To fix this, I modified the OS/2 TELNETD to use a one-time password scheme. The problem with this was that I had to carry around the program that generated the password, and had to port it to many systems. This was getting old fast, and I decided that Java was the answer.
So I ported that program to Java, but since it depended on the RSA MD5 algorithm, I would have to port that too. Turns out that the MD5 algorithm comes built into Java 1.1, but I only had Java 1.02 at the time.
By June 97, I was writing Java programs for hire. My first customer was Invincible Technologies. They needed an applet to do some administarative functions on their file server.
Meanwhile, back here at rossi.com, our POP3 mail server was failing. This was a piece of software that I had purchased a few months back, and now it wasn't able to handle the load. This was a native OS/2 program (presumably) developed in C. This was very frustrating, so I decided to write one in Java.
This worked out so well, I decided to sell it.
This was the beginnings of the
J-POP Server product.. |
J-POP Server was then rated by JARS, and received the top 25% award.
|A short time later, I went and took the Sun Java Certified Program exam, and passed it. I scored 84 percent on this exam. Mike Bridwell at Sun (he runs the certification program) tells me this is an excellent score.|
|I have also sumbitted a set of chart applets to JARS, and they received the top 5% award! With that they let me use the "Javaholics Master Ceritified Developer" award logo..|