June 8th, 2009

I spent the whole day working on the FTP class and was really frustrated by the end of the day. The whole client works, but I cannot establish connection to port 20 for data
transfer, as all the guides suggest to do online. I am able to see some sort of data transfer across the inbound and outbound streams, but I am not confident it is the actual
data. Unfortunately my day was cut short, as I was required to get training for Lotus Notes. Another frustrating aspect of this FTP project was that I was not given the server to
test on until lunchtime today, so I have been coding in the dark for a lack of a better term. I do have some ideas of where to go next though with the FTP client. I got to go to
the warehouse too with Jacob, which is where all the copiers are stored after their lease is up. There was an issue with the bar code reader and how it was entering the
information about a copier into the database. The problem was user error, which is nice to hear since that won't require the development team to fix the database.

Hours: 7.5

June 9th, 2009

I finished the FTP client today. I decided to not use Sockets for downloading and uploading files, but rather the URL class in Java. The functional requirements state that the
user needs to know where the file is located and where it will be going, which works fine for a direct URL connection. I wanted to get the Socket implementation to work for
downloading and uploading files, but I couldn't even get a working version from an API online to work with the FTP server I was testing on, so I suspect there might be larger
issues. An instance of Socket still exists in the final copy though on port 21 for command transfer, as the user can send commands, such as rename, remove file, make folder,
change directory, and remove folder. I sat in on another applications meetings for the whole development team where everyone gave updates on their projects. New tickets in the
project tracking system were assigned and dealt with too. I will be working on an XML Web Service application tomorrow.

Hours: 7.5

June 10th, 2009

The XML Web Service application is written in C# and outputs a string to an XML file. This file will be consumed by another application. The proof of concept is to develop an
application where someone can type in a command with arguments, much like they would type in on a Windows command line. An example would be ping localhost. The output of the
command needs to be fed to this Web Service and sent out as a string to this XML file. The end result is to use this with an application that the development team uses, which is
DataStage. I am not too familiar with the software at this point. I have zero experience with C# and what an XML Web Service is, but I was able to finish the proof of concept by
the end of the day. Tomorrow I will be adding features to this application and refining the output. I sat in on another applications meeting, which went as usual, but I also sat
in on a post job performance meeting. The developers went over various Oracle databases that need to be checked overnight and various tools that could be created to ensure that
systems are operational at all times.

Hours 7.5

June 11th, 2009

Today I added more features to the XML Web Service. I created a struct conaining various attributes about the resulting output. This will be helpful for whatever application
consumes the XML output, as now more information can be transferred about the command line session. There are a couple minor bugs that need to be resolved, but my mentor Jacob
was busy today, so I wasn't able to sit down with him to resolve the problems. The FTP client needs to be reworked, as apparently the office is using an older version of the
Blackberry JDE, which means some of the classes I used are not available. Jacob admitted that this was his fault. Unfortunately, this will make things more difficult.

Hours 7.5

June 12th, 2009

Today I researched the changes that need to be made for the FTP client. Unfortunately, there is a serious flaw in the version of the API that I am using. The flaw is that an
instance of InputStream has a method called ready(), which returns whether there is input to read, but sometimes it lies. The stream for some reason blocks itself and causes the
stream to become congested and crash. I am able to connect to the FTP server, but after the first command is sent, it will not work. Other people complain about this issue on
the Blackberry forums. Apparently there are some settings dealing with the OS and carrier that need to be specified. Some of this is over my head and beyond the scope of the
project. Jacob had to meet a deadline, so I didn't get a chance to resolve this with him. Most of the day was trying to research this issue and experiment with different classes
to see if I could create a workaround. Unfortunately, this version of the API does not include a readLine() method, so I cannot just read the response to a command all at once,
but rather one character at a time. That itself isn't hard, but the fact that it doesn't work as intended baffles me and makes the situation difficult. I am learning about FTP
clients and sockets, so something positive is coming out of this while I await help from others.

Hours 7.5

Weekly Review

This week was up and down. I finished the FTP client, but it was bad to hear that there was an error in the specification provided to me, which led to me having to redo the
whole project essentially. The people I work with are not Java developers, so I don't think they understand the implications of this. In the future, I will make sure to double
check the supported libraries. I assumed they had everything handled. It is okay though, as something like this should be discovered in an internship. It was fun to work with C#
for the first time. I am glad that I was able to pick it up quickly enough and develop an XML Web Service that will be put into production. I am starting to feel more
comfortable in my surroundings and the days went by much quicker this week. It will be interesting to see where this FTP project goes next week.

Total Hours: 37.5