*
Web Development (HTML, Java, etc.)
Visual Basic
Lotus Notes and Domino
MOO
xBase DBMS (FoxPro, dbxL/Quicksilver, etc.)
Server Administration
Ancient Stuff (RBase, Lotus 1-2-3)
Technical Writing
*

Software Portfolio
for Joan Schraith Cole

 
Web Development
  • For general demonstration of my skills with HTML, explore this website. I've created most of it from scratch with Notepad. I've used several formatting techniques, including tables to work with bordered backgrounds. The pages are browser-agnostic, and images are sized and tagged so that viewers who have graphics turned off (or slow connections) can use the pages. I've been "coding" in HTML since 1994. There are approximately 40 pages on this site.
  • I've put up a page describing my web design philosophy, so I won't go into that here. In addition to the design guidelines I set for myself, this page also organizes online resources available on the topic with a large number of annotated links.
  • I've helped others put their web pages up. For both the Regional Science Association International and the Champaign County Fair Association, I enhanced existing applications to generate HTML pages from their FoxPro databases, ready to upload onto their site. I also trained the staff at these organizations so they could not only do the uploading, but make modifications to the other pages on their sites. In order that existing staff, who are not computer experts, be able to update the pages themselves, these two sites are very simply structured and are very bare-bones from a graphics standpoint.
  • I've done this sort of page generation, live, in-MOO. For example, the web page for the room Hellenic Hillside is produced from the verb http_request which is interpreted when the room is accessed from the web. The syntax is different, but philosophically, this is the same sort of thing that's going on with many Perl solutions, or in the Microsoft World, with Active Server Pages.
  • I've set up and tested creating web sites with Lotus Notes, both with the original IWP (InterNotes Web Publisher) and the newer Domino server. IWP generated static HTML pages on a scheduled basis from your Notes Server. It required having the HTTP daemon provided by some other software (in my case I set up the Netscape Server). Until recently, I still had IWP running on a laptop to generate the part of the AISS site which shows which consultant is assigned to which department. Domino is novel because it includes the HTTPdaemon within the Notes Server, and a small change to the server configuration file exposes the server to the web so that it can take requests directly. While some functions are unavailable, to a great degree what you see on the web is what you see through a Notes client. I wrote an article about this in TIC last year.
  • I'm currently working to improve my skills in graphic arts web design and page layout techniques, as well as site navigation features.
  • I've done some reading on topics like SSI (Server Side Includes), CSS (Cascading Style Sheets), XML (Extensible Markup Language), but nothing in practice. In preparation for the certification for Internet Explorer Administration Kit, I took a look at ASP (Active Server Pages), VBScript and ActiveX.

*

Visual Basic
  • I was fortunate in the transition from (MS-DOS) character-based programming in that I had already been writing primitive event loop programs in FoxPro, and stayed with the product when it went into its pseudo object oriented menu, report, and screen generators. With these pieces of the FoxPro 2.5 IDE, you could attach "snippets" of code to screen objects, though as I recall they may not have been called events at the time.
  • I learned LotusScript before I learned Visual Basic. It was quite a struggle to learn from the online help files. I used several LotusScript routines in the prototype I helped WordLink develop for the Office of Capital Programs (see below, Lotus Notes section).
  • In 1997, I took a week-long course in Visual Basic Programming (version 4.0).
  • Last spring, I led a team of three developers in creating "Easy Travel Voucher", in Visual Basic for Applications, within Excel97.
  • Last winter, I created a Visual Basic for Applications for Word97 applet which automates the process of a mail merge, and overcomes the dubious Word "feature" of losing the contents of text form fields when document protection is toggled or a mail merge is performed.
    • FTP Site to get a copy to look at (has been removed from ftp://public.aiss.uiuc.edu/WordApp/). The application is the file "PropTran.doc". The VBA code is not password protected.
  • To assist other VBA programmers in accessing the AISS Information Warehouse, I wrote a sample Access VBA procedure and created a tutorial on the ODBCDirect object model.

*

Lotus Notes, Domino
  • When I was in college, I was one of those who played in the PLATO labs at the University of Illinois (in the CERL, Computer Engineering Research Lab). There was some sort of online dungeon-type game that I only vaguely remember, and Notes. This was back around 1984. Notes was a PLATO-based equivalent of what I would see when I found USENET in a few years, except, of course, that it was mostly local to the U of I campus. I should also, I suppose, gloat in that I managed to find this addictive form of communication and still pull good grades in my coursework.
  • It turns out that just a few years before I found PLATO, Ray Ozzie and his cronies were working for that CERL. As the years turned, I would again encounter Notes.
  • After I left USA-CERL (US Army Construction Engineering Research Lab) and came to AISS, I arrived at a scene in which a preexisting application which partially satisfied the needs existed, had been written in Lotus Notes, and no longer had any available developer who could make the needed changes. AISS enabled me to get training in Application Development in Lotus Notes, and in the next few months, I rewrote the application, which tracked client contacts by the Client Support Services groups.
  • AISS was an early partner with Lotus Notes, in the academic consortium. During this time, I was able to attend the LotusSphere of January 1995, in which the Internotes Web Publisher was unveiled.
  • In October of 1995, a Software License Agreement was signed. A few months later, I was in class of about a dozen "project participants" learning the first four courses of Lotus Application Development and System Administration, compressed into a week's time. I was part of the planning for the UI deployment strategy, and in the Spring of 1996, partnered with a CCSO representative to give a presentation to the CCSP (Campus Computer Support Professionals) group on Lotus Notes.
  • Over the course of the spring of 1996, I was a co-developer (with WordLink) of a prototype Lotus Notes application for the Office of Capital Programs (described in an article in the AISS TIC newletter). This application used many of the features that were new to Lotus Notes 4.0, including Navigators, LotusScript, and web publishing features.
  • I did the set up the Office of Capital Programs Notes Server and Netscape Server, and most of the workstation support related to Lotus Notes for several months.
  • With a member of the AISS network adminstration group (ICON), I co-led the migration of the AISS Lotus Notes server from version 3.3 to 4.51, simultaneously moving to a new address book and certification scheme.
  • The University Administration selected Microsoft Exchange/Outlook for messaging, so in the last couple of years I have not been actively involved in new Lotus Notes technology developments.

*

MOO
  • Although today, MOO has mostly gone the way of the BBS, at one time it was pretty cutting edge technology.
  • I became involved in the Metaverse MOO in late 1994. I was especially captivated by the shared design of the environment by the user community, provided by the MOO's building features. As I mastered tailoring existing objects, I was receiving a painless introduction to object-orientation.
  • When Metaverse was taken down, in mid-1995, I moved to RiverMOO, and at the end of that year, for the second time watched another online community forced to shutdown due to database bloat. RiverMOO's administration decided to rebuild with a new core, and I coordinated the group of players who designed and put the aesthetics of the new core in place, in time for 1996.
  • It was around this time that I wrote the Well-Designed Room Tutorial.
  • By mid-1996, I had been given a "wizard bit" and made part of the administration of the RiverMOO online community, responsible for maintenance of the virtual geography.
  • As a wizard, I am also responsible for helping people learn programming in the online environment. I am currently working on a documentation project showing some of the coding possibilities for building interactivity into the environment, and for interfacing with the web.
  • While I am still a wizard there, the use of the MOO has changed in the intervening years, and I now spend only a few hours a week on this hobby. MOO has been eclipsed by the growth of the web as a creative outlet, and by the development of more graphically intense expectations from the online population.

*

xBase (FoxPro, dbxL/Quicksilver)
  • In 1986, while I was working at CCSO, I wrote my first dbaseIII+ application, which was basically a DSS application presenting summary statistics and graphs of the types and quantities of client contacts performed by the Microconsulting staff.
  • In 1988, I learned dbXL and Quicksilver, one of the favored clone/compiler platforms. On this platform I built:
    • MSDS - chemical tracking software for a small hospital
    • Staff Education - an education, credentialing and licensure tracking system for a small hospital's employees
    • Winning Hand - a construction contractor's estimation package
    • Journal Management - Regional Science Association Internation - conversion from Rbase
    • Membership Tracking - Regional Science Association International, conversion from Rbase
    • Base Closure and Realignment - a knowledge-base application
  • Somewhere in the very early 1990's I switched to FoxBase, then to FoxPro, which I continued to develop in from version 1.0 until 2.6 (after Fox Software had been bought by Microsoft).
  • When I began programming in FoxPro, I was using the standard ultra-procedural style. By 1994, I had switched to using the tools available by then which made a DOS-Based windowing GUI, which was somewhat event driven, at least in the windowing and forms portion of the interface. In the Fox family of products I developed applications which ranged from about 10,000 to 65,000 lines of code.
    • 486 Home Health - eform
    • Nursing Home Tests - Scheduling and tracking of lab tests required as a result of prescribed medications.
    • Caroline's - income/expense tracking, inventory, checkbook, payroll turnkey application.
    • Regional Science Journal upgrade
    • Regional Science Membership upgrade
    • Exposition - written for the Champaign County Fair Association - automates all the office tasks which occur during the week of the fair (collecting entries and creating receipts for fees collected, assigning livestock pens, judging, generating and printing checks based on judging results, producing reports for the state, producing press releases and HTML of judging results
    • Legacy Manager - track grant proposals and produce reports
    • Integrated Building Inventory System (IBIS) - collect information and produce Historic American Building Survey (HABS) reports.
    • Cultural Resources Information System - essentially a user-friendly front end to the FoxPro database engine, which allowed users to input data, create queries, create some simple reports, and import and export data. I later created an upgrade to this which made an interface to the screen and report generators, allowing less technical users to generate their own custom application.

*

Server Administration
  • I have set up and installed several server products in experimental settings, and taken quite a few courses, but for the most part, I do not have administration experience in a production environment.
  • The one partial exception to this would be the case of Lotus Notes at AISS. As I had training no one in the network administration group had been given, I co-led the server migration project (as described above), and have often been called for consultation when server problems arose.
  • As my husband is a network administrator, I am well aware of the wide scope of activities encompassed in that profession. I have never had responsibility for disaster prevention or recovery programs, backup procedures, print management, server scripts, or security. Nor have I had much need to take a screwdriver to my own workstation. I have only an intellectual understanding of these matters.
  • On the other hand, I have a far better than normal intellectual understanding of these matters than most developer types.
  • Back in 1991-1992, I took some courses at Parkland (the local community college) in Local Area Network Theory and Novell Netware. In the Novell Netware class we had hands-on practice with many of the administration responsibilities in a lab environment (creating user IDs and login scripts, permissions, print management, and so forth). This would have been somewhere around version 3 if I recall correctly.
  • In 1996, I set up test Lotus Notes servers in the process of evaluating Notes 4. I also set up the Netscape web server in order to test the Internotes Web Publisher. When I got involved in the Office of Capital Programs project, I also set up their Lotus Notes and Netscape servers, and helped them when they had problems with the server, as they periods without a local network administrator.
  • Beginning in 1995 I began pursuing Microsoft certifications, as a condition of employment at AISS. At some point in 1997, I began to focus on completing MCSE (Microsoft Certified Systems Engineer) status. I completed my NT 3.51 track of that certification in November 1998. In the process of acquiring this certification, I have set up NT Server and Workstation (both 3.51 and 4.0) and acquired the book-learning for the administration techniques in an NT environment.

*

Really Ancient Stuff (RBase, Lotus 1-2-3)
  • Back in 1981, my family purchased an IBM-PC and I was happy for several years just using WordStar, VisiCalc and MS-DOS. (Things didn't change on a 6-month generation cycle in those days.)
  • I didn't realize I had an aptitude in programming until I got a temp job at Humko products where I was supposed to be doing data entry for their budget cycle in Lotus 1-2-3. The way the spreadsheets were set up it required a great deal of repeated work, and it was a good motivation to take the manuals home and figure out how to automate things. I was also fortunate in that the Production Manager who had hired me was amenable to making changes to save work. When I restructured the spreadsheet files and wrote file consolidation macros, I was able to work on other more interesting projects with the time that was saved.
  • For my cost accounting coursework, I created several models to automate the different types of problems, including things like statistics, matrix algebra, and problems which required iterative solutions. I also learned Lindo, a little DOS program for solving linear programming problems.
  • In the late 80's Rbase System V was a contender database engine. I used it in my coursework to develop problem solutions for problems that didn't fit as well into Lotus 1-2-3. I also developed a little application for a Decision Support Systems class in the product.
  • The Regional Science Association International hired me in 1987 to complete an Rbase System V journal management system started by a student employee. As requirements analysis had never occurred, we started over with that in making that application work. This was the first "production" accounting application I wrote. It kept track of the different types of subscriptions, generated invoices (and printed them on a daisy wheel printer), and produce receivables reports. In the early 90's the application was converted to dbxL and then a few years later to FoxPro.
  • I took several computer science and MIS courses at the University of Illinois in the process of acquiring my degrees there.
    • Pattern Recognition and Artificial Intelligence (1986)
    • Pascal (C.S. 103) (1986)
    • Intro to Management Information Systems (1987)
    • Special Problems - Decision Support Systems (1989)
    • COBOL (1989)
    • Accounting Systems Design (1990)

*

Technical Writing
  • Technical writing, by its very nature, results in a product equally as ephemeral as the fruits of the programmer's labor. While I have been producing documentation pieces since approximately 1986, most of the material has been lost to time.
  • It has always been at least a small part of my job, and a part I have enjoyed.
  • While at CCSO, in the late 80's, I wrote several articles for the newsletter there, Offline, on topics like "Tips and Tricks for using WordPerfect". I also produced a number of handouts, primarily on topics of communications: dialing into the campus network using Kermit or Procomm, keyboard mapping charts, and so forth.
  • For my independent business, Byte by Byte, and at USA-CERL, I produced user manuals for the database software that I programmed.
  • At AISS, I have written (or co-written) several articles for its newsletter, The Integrated Circuit, some of which are available online (and therefore still in existence). I also created most of the content available online at the AISS Client Support Services web site, including the Network Administrator's Guide to the Client-Server Applications, and most of the documents available on the Information Warehouse Client Connectivity site.
  • The Integrated Circuit, May/June 1995
    • Joan Cole, Panit Lisy, and Chris Kirsanoff. The Internet: It's Not Just For Geeks Anymore.
    • Joan Cole. HOT LINES: Understanding the 3270 Emulator's Status Line.
  • The Integrated Circuit, July/August 1995.
    • Jonathan Budil and Joan Cole. HOT LINES: Fine-Tuning Web Browsers.
  • The Integrated Circuit, Winter 1997.
    • Joan Cole. Graduate Record Audit and Display System.
    • Joan Cole and Terry Wilson. Web Support Initiative: A Collaborative Effort.
    • Joan Cole. Databases on the Web: Internotes Web Publisher and Domino.
    • Joan Cole. Traveling Down the Work Processes / Technology Trail.
  • For sample tutorial pieces, see

bar

E-Mail Home Personal Back to Resume

Copyright © 1994-1999 Joan Schraith Cole.
Updated April 23, 1999

Ann-S-Thesia Graphics