Phil 7.5.11

7:30 – 3:30VISIBILITY

  • OK, where was I? Let’s see – the server is still up and the compiler is still working. The choice is either to a) see how it runs on the actual Internet or b) start working on virtualization.
  • Looking at virtualization first.
    • Ubuntu has a script-driven system called vm-builder, but it’s at version 0.12. Here is some documentation.
    • IBM paper describing the process. It’s for Red Hat, but a good start
    • Hmmm. You need hardware support for VMs. If you run “grep -E ‘vmx|svm’ /proc/cpuinfo” and get a non-null result, you’ve got it. My server does not. fgmedev does, but it’s a vm already, so what does that mean?
  • Gave Jeff all the information I think he needs to get the paperwerk approved for his server. I gave him a followup call to verify that the information was what he needed and he seemed to think so. That being said, he was going to give the info to someone else to enter, so thay may have questions later as they get into the details
  • Started on my SF86 update

Mike 7.1.2011

  • It works!  I was able to load Visibility from fgmdev.com into WebDesk running on my local machine.  A few weird errors occur such as the minimize and maximize on the panel containing the swf loader throw security errors?  Will look at them next week.
  • Upgraded to Flex 4.5.1 and tried installing the plugin in to Eclipse 3.7.  It’s not officially supported and I got a few errors trying to make a java / flex combined project.
  • Installed Eclipse 3.6 and added the Flex plugin, no errors.  Working on migrating my workspace to the new installation and finalizing some of the server code for WebDesk.

Tom DeVito 7.1.2011

Start: 10:15

  • Found out the hard way that the arduino IDE doesn’t save automatically and, if you shutdown your computer, it will close automatically without asking if you want to save.
  • Spent most of the day getting the sketch back to where it was at the end of yesterday.  Will remember to save manually more.
  • Renamed and moved the PC side desrialization method to datadictionary::importData(char* buffer).  gets the name from the buffer, checks if the item exists,  then imports data from buffer to the local memory location.

End: 6:15

Dong Shin 06.30.11

  • Find projects that have less than goal in the first month query
    • SELECT p.uid as ‘project_id’, p.project_number, b.uid as ‘budget_center_id’, b.center_number, b.appropriation, a.year as ‘budget_year’,
      REPLACE (FORMAT(a.amount,2),’,’,”) as amount, o.uid as ‘obligation_outlay_id’,
      o.year_count,
      o.year as ‘obligation_outlay_year’,
      o.type,
      REPLACE (FORMAT(o.month_1, 2),’,’,”) as month_1,
      REPLACE (FORMAT(IF (o.type like ‘%Outlay%’, (g.outlay_month_1 * a.amount / 100), (g.obligation_month_1 * a.amount) / 100), 2),’,’,”) as goal_month_1,
      IF (o.month_1 < IF (o.type like ‘%Outlay%’, (g.outlay_month_1 * a.amount / 100), (g.obligation_month_1 * a.amount) / 100), ‘FLAG’, ‘OK’) as flag_month_1
      FROM project_portfolio.projects p, project_portfolio.budget_centers b, project_portfolio.budget_amounts a, project_portfolio.obligations_outlays o, project_portfolio.obligations_outlays_goals g
      WHERE p.uid = b.project_id AND b.uid = a.budget_center_id AND b.uid = o.funding_id AND b.appropriation = g.appropriation AND g.year = year_count AND a.year = g.year
      AND o.month_1 < IF (o.type like ‘%Outlay%’, (g.outlay_month_1 * a.amount / 100), (g.obligation_month_1 * a.amount) / 100)
      GROUP BY project_id
      ORDER BY b.uid, a.year, o.year

Tom DeVito 10.29.2011

Start: 10:00

  • Fixed a problem with PC receive method.
  • Fixed the deserialization method.
  • Single pass works both directions.
  • Found a problem with the states that was causing it not to loop properly.
  • Changing the code to receive sensor data and have the pc respond with commands to the arduino based on the data.
  • Commands will light 5 leds based on the pressure of the sensor.

End: 6:30

Tom DeVito 6.28.2011

Start: 10:30

  • Add a method to get the total size of the data element with the data so it could be loaded into the buffer easier
  • Was importing the size into the buffer which was causing the deserialization to not work correctly on the arduino side.
  • Arduino side is able to get data from the wire.
  • PC recieve doesn’t seem to be working correctly for DataElements

end: 6:30

Tom DeVito 10.24.2011

Start: 10:30

  • Continued writing test application
  • Tested it but its not working.  Wire lights light up but the data isn’t going to the right place.

End: 2:30

Left early to go on a camping trip.

Tom DeVito 6.23.2011

Start: 10:30

  • Edited the de-serialize method on the pc side so it should work with wire data.
  • Changed the size to be type char for now so that I didn’t have to worry about it being a 2 byte integer
  • Changed how receive data worked
  • Started writing a test application to send commands to the arduino and have them echoed back
  • Added states to the pc test application

End: 7:30

Mike 6.29.2011

  • Added about screen to the Application Class factories
  • Added the ability to have about screens on dynamically loaded application.  Must make sure the about screen class is compiled in to the swf in order for this to work.
  • Dealing with remotely loaded swfs trying to load configuration files
    • Initially could not find config file as it was looking for a relative URL
    • Copied the config file to the local file system so it found it but now threw weird security errors.  From the messages it’s hard to tell which crossdomain required fixing, localhost or fgmdev.  Turns out it was localhost because I was loading the visibility swf from fgmdev to localhost and running from there.  The fgmdev swf then tried loading ‘assets/setupModel.xml’ from localhost but threw an error because the orginal domain is fgmdev which doesn’t have permission to load files from localhost even though it’s running from localhost…. my brain hurts.
  • Resolved the security issue and now getting ‘an error occurred while attempting to display an error’ kind of message.  Or more specificially: “Cannot convert IOError to FaultEvent”.  So whatever method in visibilty that is responsible for handling the error is receiving the wrong object type.

Dong Shin 06.29.11

  • thought the save problem in Visibility Scripting had gone away magically…
  • found a bug in storeScript method in ScriptObject.java in VisibilityScriptingServer
    • added try – catch for Integer.parseInt
    • updated sqlStr for intervalMinutes

Dong Shin 06.28.2011

  • revisiting Scripting
  • projects_under_budget.py can now be saved…. no more errors
  • questions
    • What projects are under #% under budget?
    • What managers/Financial people have project > 10%?
    • What projects are overdue?
  • reworking project_under_budget.py to retrieve the data

    Mike 6.27.2011

    • Reworked the welcome screen so each Application has it’s own description available prior to launching the app
    • Redoing the module loading so for each IApp class a ClassFactory is passed around instead of a raw Class, this lets me attach things like titles, descriptions, and icons at run-time
    • Created a generic SWF Loader IApp that, at run-time, a user may enter the url of a swf and load it as an application
      • Was able to load WebDesk inside of itself at total of 9 times before i ran out of room (Webception)
      • Trouble with loading visibility: the config file is not found since it is a relatively URL and not absolute, quick fix is to copy config files to local deployment
    • Extended the ClassFactory implementation to allow pre-configuration of swf loaders
      • In the webdesk config file, I put a line describing a remote SWF I’d like to make available as an App
      • Once the applications starts, that app is loaded and added to the welcome screen beside all the other existing apps
      • This removes the requirement of the user entering in the URL

    Mike 6.23.2011

    • Deployed the WebDesk and SCT Document tool to FGMDev and worked out several bugs in the process.  Did NOT add pages describing it or linking to it yet.
    • Few more touches to the welcome screen.  Probably going to restructure it again to provide a description screen or each application
    • Tried debugging an issue with the JDBC connection failing every night but my fix apparently didn’t work since I still had to restart stuff this morning
    • Read some about Search Engine Optimization (SOE) for flash sites.  The most recommended way is to provide alternative html content for people without flash player and kill 2 birds with 1 stone.  For us, this could be as simple as copy / pasting the Visibilty, PPM, etc. descriptions to a couple simple HTML pages or as complicated as pulling them from a database for both the flash and html presentations.