I have now entered the information age and actually have a working computer of my own again. I bought a surplus lab machine from the CS lab which was absolute top of the line 3-4 years ago, so right now it’s at least acceptably powerful. Especially since the most intensive task I have for it is running The Orange Box. And compiling. I got some upgrades, plugged everything together and hit the power switch Read the rest of this entry »
I’ve been watching through “Fullmetal Alchemist” (FMA), an Anime series set in a steampunk-like environment with so many plot twists that I have needed to consult wikipedia on occasion to make sense of things. It’s a great series and I would highly recommend it. Without dropping major spoilers I must say that the recurring villains are among the most diverse I’ve ever seen and are quite well written. Read the rest of this entry »
My last project for this quarter was to write a Graphical User Interface which would allow users to generate an XML based quiz, as opposed to manually creating one with a text editor. Though relatively simple, this task was a bit of a departure from my previous experiences which largely centered around command line programs. The goal was to support generation of a quiz which could have multiple questions, each of which could have multiple responses. The UI allows users to enter in a question text and solution. Once that is written, it is possible to add responses which have a response text field and a checkbox to indicate the correctness of the response. It is possible to have multiple correct responses in a single question. There are buttons to add and delete questions and responses. Updates to existing fields happen automatically when focus leaves the field, so there is not need for an explicit update widget. The greatest challenge here is that with a GUI, the user can do lots of things at different times, which necessitated that I make the interface robust even when odd input is given, such as attempting to remove a question when there are no questions to remove. Pressing cancel at a save file dialogue box also triggered an exception which needed to be caught. We’ll be updating our tools next quarter. Visual studio 2005 will be upgraded to the 2008 version, and we’ll toss Visual Source Safe in favor of a flavor of subversion designed for the .net environment.
I spent some more time developing the equipment and work order report. Apparently some of my problems stemmed from the fact that the meaning of some rows changed over time, and that there were many nulls in fields in which there should not be nulls. There were also some serious normalization issues. After seeing the depths of my problem one of the other programmers spent some time and developed a query which eliminated all duplication that I could detect. Now armed with a proper query, I was able to generate a report with Discoverer Plus. I also added the ability to allow the user select two dates and only display records falling between them. This report was put onto one of our testing servers. I showed it to the customer who could view it using discoverer viewer, a web-browser based front end to an Oracle database. This project is mostly done now. I’m mostly waiting on some user input and for some help with some optional features from the oracle programers. My primary correspondent at Cleanwater does not work on Fridays, and the next quarter is starting soon, so he had to find some project in which we could work together but asynchronously. There is a application that generates XML based quizzes which needs a UI. We are going to develop the application together using Test Driven Design, otherwise known as Extreme Programming. Most of the API was already in place, so he set up a few sample tests for me, and I had to code the remaining tests for the API. After that I will be working on a GUI for the quiz generator.
Work continued on the reporting project. I learned a bit about how the report would be deployed to end users. Apparently there is a component of Oracle Discoverer which allows a report to be exported into html format so that anyone can read it, even without the discoverer program installed locally.
I had was able to arrange taking off early on Friday so that I could continue work on the Operating Systems shell. The project was near completion by the time I left.
I continued my work with the report generation project. I am now able to generate some meaningful results with the Oracle Discoverer Plus software. The only column that I am having trouble with at this point is of long data type. This is similar to a blob in that it cannot be sorted, but it differs in that a long contains characters instead of binary data. Longs can store up to 2 GB of characters per record under this version of Oracle SQL server.
I encountered some trouble with displaying float typed data in the Administrator Plus. After seeking advice from a coworker, we discovered that the data were simply displayed incorrectly. Adjusting the display type to floating point fixed that problem.
There was a meeting on Friday with our Customer. It went well overall and we were able to better define the project, avoiding several expensive pitfalls. He was planning to change certain aspects of the database in the near future, so it was best that we knew about it and did not generate reports for those parts of the database. The customer also had a request for another column to add into the report. I’ll need to research how to derive that one when I come in next time.