About me   Home     Content    

Web / GUI Development Experience





Web technology is a double edged sword. It has simplified the presentation of information, while at the same time it has slowed the internet search by clogging it with useless and / or redundant information.

With the web technology evolving, I find myself re-designing many of my applications that require user interfaces to use the machine independent web interface for my user presentations (menus and reports). Designing and implementing systems using web technology can reduce or eliminate the cost of porting applications to new systems.

Selecting the right technology for a system or application is a key issue when building an interface. When I designed my web site, I decided that to reach the largest audience, it was necessary to use a minimal subset of the technology available. There were cost constraints as well and adding CGI capability would more than double my cost for an ISP. So for my site, I chose to use HTML and JAVA, and keep graphic files to a minimum.

HTML Experience

Whether I use PHP, PERL, or another scripting language, the output is is HTML is most cases. The structure charts are HTML files generated by an application written in 'C' and contain the rectangles, text, connecting lines, and links that are parsed by a client side applet. My audience for the structure charts are content oriented engineers who do not want to wait around for graphics to load.

JAVA Experience

My first extensive use of JAVA was in 1997 when I was asked to convert an interactive CD application to a web application. JAVA was used to build and process the menu and dialog interfaces. The applet that parses the HTML files and displays the diagrams is written in JAVA. I based my decision to have a single applet to parse all the diagrams for efficiency and performance since most browsers will only down the applet once.

PHP Experience

When our Chief Technical Officer asked me to investigate using web technology to create a kiosk for our main office lobby, I configured a server running Linux, Apache, modphp, and mysql. Using the database allowed the kiosk (web-site) to be updated dynamically without my intervention in most cases.

HTTP Server Experience

Hypertext Transfer Protocol (HTTP) servers are the foundation for a web site. Most of my HTTP experience is with Apache and IIS. Unless a customer requires a particular operating or HTTP server, I will try to take a portable approach to creating the web pages that make up a web site.

Common Gateway Interface

Other Scripting Languages

Image Composition Engine

I designed and implemented a composite engine so that it could be executed as either a CGI application, or as a stand-alone application. As a standalone application, it would create a file that could be examined for quality, while as a CGI application, the image would be sent to the client for display. It was a challenging application that would read pairs (gray scale png and color jpg) of images (vehicles and optional accessories) and integrate them into a single image (composite).

I designed and implemented a second composite engine for gray scale images that were colorized rather than merging them with a color JPEG image.

Water Mark Image

When asked by the Chief Technical Officer to investigate adding a watermark to the images before sending them to display, my watermark research led me to the JPEG file format. There are fields in the JPEG file headers that can be used for watermarking, but if someone wanted to, they could edit the file to remove it. Instead, I was able to add the company logo to the image without it being visible to the human eye. To determine if an image was generated by the composite engine, I had to implement another application that would determine if the logo is hidden in the image and make it visible.