Category Archives: Phil

Phil 1.10.2011

8:00 – 4:30VISIBILITY

  • Ann made a nice big spreadsheet of + data, which I broke up into nice-sized bits and ingested. I added Matt and Anne to the role and told them that the data was up. We’ll see what happens next.
  • Writing up requirements for VIS4
  • Finally did the 312 briefing
  • Pointed Tom at programmable amplifier IC chips

Phil 1.7.2011

8:00 – 4:30 VISIBILITY

  • Pinged Katie G about a T09 demo
  • Worked on getting some + demo data with Anne.
  • Writing up some grist for VISIBILITY4 development effort. Got through intro, framework, formbuilder, and scripting.
  • Ingested some data for Brian to demo
  • Came back from the ride knowing how to put all the pieces together, so here it is:
  • That’s a java app, using the DJ framework, talking through a servlet, interacting with the host OS, all using object serialization :-). I can now have a nice weekend.

Phil 1.6.2011

7:30 – 4:30 VISIBILITY

  • Working on a simple “echo” Java GUI in SWT
  • Eclipse Labs on Google code: http://code.google.com/a/eclipselabs.org/hosting/
  • Talking to the servlet in the GUI. Switching from echo to implementing exec() in the servlet and getting the response into the GUI. For something that takes a while, like a maven build, I’ll need to do something to show progress. Also will need to handle error messages as separate entities in the message wrapper?
    • Cleaning up ExecShell() to make it work with the GUI.
    • Spent a good deal of time trying to figure out when to inform the client that the command was finished executing. Wound up looking for elements of the command prompt for now (this assumes “C:”). It’s working now. I expect I should be able to roll it in to the servlet tomorrow.
      • As an aside, it should be possible to send back intermediate data to the client, as long as the client sends a “send more output” request to the server with the same session id until the server is done.

Phil 1.5.2011

7:30 – 4:30 VISIBILITY

  • Rode the motorcycle in today – brr.
  • Working on making the binary communication classes useful.
  • Good link on how to hook up the eclipse debugger to a servlet running in tomcat: http://wikijava.org/wiki/Debugging_a_servlet_with_tomcat_and_Eclipse_tutorial
    • If you’re using the launcher in windows, add the following argument to your tomcat->config->java tab:
      • -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
  • Sending wrapped serialized objects. The “toString” method for printing works as well.
  • Starting the client IDE. I’m thinking SWT, since we’ll probably raid Eclipse for components.
  • Connected to the Eclipse CVS repo

Phil 1.4.2011

7:30 – 4:00 VISIBILITY

  • Deployed the new PPM to rave reviews! Well, not really. But no one complained either 🙂
  • Lots of activity on VISIBILITY logs today
  • Had to bounce the fgmdev tomcat server. There was a service available problem.
  • Working on Data xfer
    • Binary data wasn’t getting to the servlet as a parameter. Testing Ascii data using POST. Yep, that works.
    • Found a better example for binary communication: http://www.j-nine.com/pubs/applet2servlet/Applet2Servlet.html
    • Binary is now working. Need to expand it out to a workable library.
    • Added logging to the doGet() method, so you can go to the servlet html and see what it’s doing

Phil 1.3.2011

7:30 – 4:00 VISIBILITY

Phil 12.30.2010

7:30 – 4:00 VISIBILITY

  • Imported Anne’s spreadsheet. One column had paragraph-length descriptions, which wouldn’t fit in the DB. Not sure if this needs to be fixed or not…
  • Working with Christie to see if her mavanized air app will compile and run on my machine. Close – It compiles but the air app does not install properly. Also an issue with getting the assets directory and its contents into the project
  • Got my sandbox applet up and running. Much easier when you know what you’re doing. Next step is to upload and download binary data.

Phil 12.29.2010

7:30 – 4:30 VISIBILITY

  • Meeting with Anne this morning. We were able to pull data (via excel) from the main database into visibility. Not too many steps either. She’s going to work on putting together a good example table or tables that will let us make a particularly nice set of visualizations
  • Dong and I have a meeting with Adam and Christie at 11:00 – 1:00
    • Summary section year one is summing properly but subsequent years are not.
    • Budgets can be for only one year
    • Explicit save for financial data entry. There may need to be some rolling backup (saving to the client?) that the user may restore from if there is a problem.
    • Show the date of the last comment in the add/view comments area
    • Add commas to the invoice number entry fields
    • make login test not case sensitive
    • need to be able to enter negative amounts for the invoices
    • project name disappears from modify project screen occasionally when returning from some other task
    • Bigger invoice list view to include comments
    • Automatically add a comment if a past value has been changed. Something to the effect 12.28.2020 – Phil Feldman changed November 2010 program actuals for line item xyz from $123 to $345
    • Admin capability to add/modify/delete/merge tables produced using “add new”. Default behavior could be to present a list of projects that use the tag, and have the admin fix each manually. There could also be a global replace button.
    • Add a Financial Status page that only lets HQ see and change project info. This panel mostly shows data from the Funding Requests, but also allows the user to change the funding request by editing fields in the table. To do this several fields need to be added to the Funding Request widget:
      • Reference number in FACTS in reimbursable section (possible uniqueness test?)
      • if certified date != null, put funding amount in initiate/comment
      • Add outlay entry to reimbursable and Direct Cite
      • Add contractor name and location to Direct Cite table
      • Column that subtracts outlays from obligations
      • Roles will need year ranges
      • Program Elements and FACTS PE add to budget line item
      • Remaining to distribute – Total budget minus distributions
      • A scan of Trish’s spreadsheet is here

foo

Phil 12.28.2010

7:30 – 5:30 VISIBILITY

  • Meeting with Katie C. went well. I showed her the entire VISIBILITY suite, and she walked though what her group needs. She’s going to get together with her division chief and schedule a demo
  • Trish found a bug(?) with user data, where a phine number with an extension can’t be stored in the DB. Let Dong know about it.
  • Working my way through protocol buffers.
    • I have to say, this is getting complex. So far you need cygwin and the gcc compiler to *build* the protoc.exe compiler. Right now I’m running the config utility that is determining *how* it will make the executable….
    • And now I need make. Getting that. Done (Cygwin is pretty cool sometimes). Running.
    • Failed CommandLineInterfaceTest.WindowsOutputPath test. Seems to be that the checks don’t understand cygwin’s way of referencing the c drive (cd cygdrive/c as opposed to cd C:/). Reading the blogs, this appears to be tolerable. The install seems to work.
  • And before I go and try this, I’m going to look for some simpler binary transfer mechanism. This is OK if you’re Google, but I’d like something that doesn’t add complexity to an already complex concept.
  • Started building a war file for a test servlet project and ran into Christine’s problem. It turns out that when we’re adjusting the pom file after it’s creation but before eclipse:eclipse is run on it, the number for the flex-mojo plugin is coming from the flexVersion variable instead of the flexArchetype variable from the User Settings. Fixed that, and uploaded the new code into subversion.

Phil 12.27.2010

8:00 – 4:00 VISIBILITY

  • I hereby declare that this is the festival of Contractorious. It covers the time between Christmas and New Years at Government facilities
    • Monday – The Festival of Light Traffic: Here we revel in the ability to drive anywhere at any time, at or above the posted speed limit
    • Tuesday – The Celebration of Easy Parking: In which we park close enough to the buildings we work at so we do not freeze to death in our sojourn across the Parking Lots Most Remote
    • Wednesday – No Meeting Day: We would gather to celebrate this, but it might be misinterpreted as a meeting
    • Thursday – The Day of Just Showing Up: We celebrate by just making it in. Observing this by napping at the desk or by leaving early is acceptable.
  • Had some scary flashbacks to text flow containers. Did find a useful article: http://devgirl.wordpress.com/2010/04/26/flex-4-and-the-text-layout-framework/
  • Starting to try some test applications with the DJ_Project
    • SimpleWebBrowserExample – Too cool. Handles flash and everything
    • Walking through the code for this example.
    • Working on the HTML Editor example. I needed to go out and get the zip files for CKeditor, FCKeditor, and TinyMCE editors, and add then to the classpath so that the app could find and launch them. Not sure how it’s doing that yet. I’m gussing that it’s related to the same way that the browser is incorporated. Not sure that it matters for what we’ll be doing, which is more along the lines of raiding eclipse for components and then adding them in in a more direct (i.e. integrated to work with compiler/debugger output). We’ll see.
  • Last thing to check out is a way to communicate between the IDE and the Client. Aaron suggested that Google Protocol Buffers were cool, easy and fast. Looking into them now.

Phil 12.23.2010

8:00 – 4:30 VISIBILITY

  • Spent some more time looking at firefox plugin development.After a long talk with Mike, tentatively decided that it was better to go with the DJ Project approach and build a Java wrapper. Spent the rest of the day finding the CVS repo, reading documentation and pondering.

Phil 12.22.2010

7:30 – 4:30 VISIBILITY

  • Tentatively scheduled my Spider training for Jan 5 at 11:30
  • Looks like you use the NET command to add users, etc using the command line. There are lots of options:
  • Once the user is created, then mkGroup -l > /etc/group and mkPasswd -l > /etc/passwd have to be run to make cygwin aware of the new users. Also, new home directories need to be made. Then the new user can telnet in and everything works fine.
  • Spent a good deal of time looking at making sure that whatever framework we used could support debugging client code. I think the the choice is reall between two options. Either the debugger (and some/all of the dev environment) browser, or the browser runs in the dev environement
    • Running inside the browser means something like Firebug. They have the flashbug plugin, and my guess is that it wouldn’t be too hard to put in additional pieces if we needed too.
    • The other option is to run the browser in the IDE. The DJ Project seems to ba a framework that would support this

Phil 12.21.2010

7:00 – 4:00 VISIBILITY

  • Now that the basics of the process-based interaction work, I’m going to make it a useful member of the program family instead of the unstable CPU hog it currently is.
    • Added sleep(10) to the processing loops and made everything work with buffered inputs and outputs. CPU usage is unnoticeable, and responsiveness feels the same.
    • Added watchers for the three threads so they all shut down when the user types “exit”
    • Can navigate around through the OS, run maven and other cool things 🙂
    • Cleaned up the user input so that it is split from the thread that watches the keyboard and the method that sends the command to the process.

On a side note, went out for a lunchtime ride and averaged 18.2, including the parking lot. A nice, summery pace on a day with a 37 degree high.

Phil 12.20.2010

8:00 – 5:30 VISIBILITY

  • Ingested some new customer data that has trending! Now I can demonstrate that feature 🙂
  • Working on the ExecShell class. It looks like I should be using ProcessBuilder instead. It was introduced in Jva5 and is a bit more sophisticated. Ideally, I need to be able to use the spawned process (shell?) to run multiple commands, while keeping track of the current directory. Going to try to run the “cmd /k” option, then interact through the processes input, output and error streams.
  • Moderate flailing on the above. Made some progress. Found the following to try tomorrow:

Phil 12.17.2010

8:00 – 4:30VISIBILITY

  • Meeting with the new TD of S2F, who’s name I can’t recall. It went well. He want’s a diagram of the tables in PPM to figure out what he can do with them. He also liked the idea of being able to use the scripting engine to read and write RESTfully to a Sharepoint DB. Something that he’d like developed is PKI-enabled opening of a dashboard or slide show in VISIBILITY. More as this progresses.
  • Spent the morning getting a printout of the structure of PPM.
  • More work on the Telnet client/OS interface framework