Wednesday, April 20, 2011

Defending my Thesis

After months and months of work, I can finally see the light at the end of the tunnel. I defended my thesis Clustering Digital Ink Content to Assist with the Grading of Student Work today. The work that I have done that is based on DyKnow provided me an excellent starting point for my thesis. My open source DyKnow Panel eXtractor project, specifically the DPX Answers application was what I used for my thesis. While the majority of what I implemented for my thesis is available as part of the open source project, the exception is the clustering algorithm I designed.



I recorded my defense, but unfortunately it seems that there were a few problems and there are a few missing minutes between the clips. The majority of my presentation was recorded and the missing bits are not terribly important.



Almost there!

Friday, April 15, 2011

NAESC 2011 Council Presentation - Out in the Open: Council Transparency

Speed School Student Council presentation given by Jared Hatfield at the NAESC 2011 National Conference on the subject of council transparency.



Part 1 of 2



Part 2 of 2

NAESC 2011 Council Presentation - Getting Freshman Involved: Freshman Council

Speed School Student Council presentation given by Jared Hatfield at the NAESC 2011 National Conference on the subject of how to run an effective Freshman Council.



Part 1: The Presentation



Part 2: Question and Answers

Monday, April 4, 2011

My Fight for Transparency in Student Government


transparent (comparative more transparentsuperlative most transparent)
  1. (of a material or object) See-throughclear; having the property that light passes through it almost undisturbed, such that one can see through it clearly.
    The waters of the lake were transparent until the factory dumped wastes there.

  2. (of a system or organization) Openpublic; having the property that theories and practices are publicly visible, thereby reducing the chance of corruption.

  3. Obvious; readily apparenteasy to see or understand.
    His reasons for the decision were transparent.


http://en.wiktionary.org/wiki/transparent

Transparency is such a simple word, but its consequences can be very profound.  I was elected as Speed School Student Council Vice President in spring of 2010 and took office as an SGA senator in fall of 2010.  One of my first actions as a senator was to co-author and help pass Resolution Sunshine, a resolution whose name was inspired by the Sunlight Foundation.  The goal of this resolution was to require SGA to post their documents so that all students could have free and open access to them on the Internet.  My previous experience with SSSC had shown that this is possible, and as Director of Administration I personally scanned and posted minutes dating back all the way to 1948.

In the end, my goal to improve transparency in SGA was not as successful as I would have liked after working from inside of the system.  I believe that the apathy that everyone talks about when referring to student government arises from the fact that they do not understand how the system can benefit them personally.  The biggest problem is the separation of students that work inside of student government and the rest of the student body.  The goal of transparency is to break down that wall that separates these two groups.

I am idealist.  I believe that you should take the good with the bad. The most important thing that makes transparency succeed is that both the good and the bad are available equally.  While you may be tempted to hide the bad and promote the good, that is not part of how an effective government should work at any level.  To make real progress, you take the measure of the good against the bad and judge the net outcome of the system.

One of my latest projects is UofL SGA Transparency, a blog that I started to provide easy access to all of the SGA documentation and videos I could find.  While most of this material is already available in some form, my goal was to make it easy to browse and view.  I'm drawing from multiple sources and posting documents that are trapped behind the password protected Blackboard system.  A single source of information that will not be deleted when an administration turns over has yet to be achieved.

When I recorded the SGA 2011 Presidential Debate, I didn't expect to cause any trouble.  With resources like YouTube available, it is trivial to record and post videos online.  But after posting a link to the videos on SGA's official Facebook Page, it was taken down following a request from the SGA Supreme Court.  As the elections played out and things started to get complicated, I decided to record the March 8, 2011 Senate Meeting using a combination of my new webcamJustin.TV and YouTube.  What I did not expect was to be personally threatened during the meeting for recording this open meeting.  Continuing champion transparency, I also recorded the following SGA Senate Meeting held on March 22, 2011 and plan on recording and posting all of the remaining SGA meeting for the semester.

There is something greater than getting the outcome that you specifically want from a government, and that is the system itself.  I fight for the system, I fight for my fellow students, and I fight for my own rights.  With graduation just over a month away, I will be leaving UofL.  This situation has provided me an opportunity to fight for what I believe in without my actions appearing to be self interested or having the outcomes affect any personal aspirations for SGA that I may have.  I honestly want a better system of student government at UofL.

My parents told me you should always leave a place in a better condition than you found it.  After this semester, I hope SGA will be better for all of the students at UofL.

Sunday, March 20, 2011

DPX-Tools Version 0.3.5.0 Released

I typically would not announce a release of a new version of my DPX-Tools software, but this version is somewhat special.  This update really only includes changes to the DPX Answers application.  This application is what I used for my masters thesis.  While I have not quite finished my thesis yet, I'm definitely in the home stretch, I have finished all of the coding.  This latest release of my set of tools that are able to open and interpret files created by DyKnow Vision includes a new ability.  The application can now automatically analyze and cluster student answers.


I will preface this by saying my actual thesis is a method for clustering student answers that is not actually included in this latest release and I have not released the source code for this application.  I developed my thesis closed source and have not yet decided what I will do with the code after this semester has concluded.  To explain how this was accomplished, I'll provide some context.  When you launch DPX Answers, it searches for DLL files that include classes that implement the IClusterAlgorithm interface.  This interface along with other functionality that DPX Answers depends on is implemented in the ClusterLibraryCore.dll and GradeLibrary.dll files that are included with DPX Answers.  These files are closed source as well, but my intention was to release these files under an Apache 2.0 license.  The classes in these files provide the buffer between the open source GPL code that makes up DPX-Tools and the closed source algorithm that I wrote for my thesis.  Since I personally wrote all of the code I do not have anything to worry about with mixing open and close source code, but I still want to make sure this code is not encumbered.  This is my first attempt at a plugin architecture for a desktop application, but things seem to work as advertised.

After the application launches, if it is able to identify a clustering library this it loads into memory.  When a file is opened, after the contents of the Answer Boxes have been interpreted using handwriting recognition, the clustering algorithm will merge together what it thinks are identical or near identical answers.  The goal here is to reduce the overall amount of effort required by the person grading the student responses.

From a technical standpoint I am very proud of the design of DPX Answers.  The application is highly multi-threaded, since processing the the Answer Boxes is a CPU intensive activity.  Worker queues are used to perform handwriting recognition and the Dispatcher is used to maintain the GUI interface.  This application is the most complicated desktop application I have written to date.  While I was having problems with major memory leaks for a time because of some GUI elements, I believe I ended up with a simple, but functional application that focuses on a very specific problem.

Overall I am very pleased with where I landed with my thesis.  I will be spending the next few weeks putting the final touches on my thesis and preparing for my defense.  It is almost impossible for me to calculate how much time I have spent working on the code that makes up DPX-Tools.  The DPXReader library, which is able to open a DyKnow file and render the ink content, took me hundreds of hours to develop along with the various applications that utilize its functionality.  As I finish my degree at UofL, I will no longer be using DyKnow Vision.  I have worked very hard developing this software and hope that someone else will find this code base and the applications useful.

Powered By Blogger