Category Archives: Phil

Phil 1.29.13

8:00 – 4:00 ESSO

  • Worked on getting all the data in the data visualizer for Col Dukes’ presentation on Thursday. 
    • Cleaned out a lot of old code, files and cruft in general.
    • Had problems getting the ingestor to swallow alerts. Diagnosing this lead to a problem with Projects Under Budget. We’re about halfway through the fix for all that.
    • Loaded up the latest COGNOS data
    • Integrated Comitted with the rest of the FY13 data
  • Javascript
    • Chapter 6, or how to do OO when there is no such thing as a class in JavaScript.
    • JavaScript prototypes are most peculiar.

Phil 1.28.13

9:30 – 5:30 ESSO

  • Ice storm this morning. Yuck. Still, the best traffic I’ve ever seen in the region.
  • Spent most of the day with Dong working out the queries to get the FY13 presentation running from the project_portfolio database. I think it’s all working, with the exception of the data that needs to be input from COGNOS. A couple of issues:
    • Committed is not showing up in any of the plots. Need to look through this with Dong.
    • When Lenny tries to bring up the slide show, the charts do not populate. I think this is a permissions issue.
    • Need to make sure that a transition is not required when running a slide show.
  • Still need to import FY12 COGNOS data. Tomorrow.
  • Back to Javascript. Done with Chapter 5.

Phil 1.25.13

7:30 – 1:30 ESSO

  • Meeting with Lenny, Carla, Tangie and Tom(?). We walked through their list of items thatneed to be modeled. Looks pretty straightforward
  • Backups
  • JavaScript

1:30 – 3:30 FP

  • Wrote up the Synthetic User proposal for David and Samir.

Phil 1.24.13

8:00 – 10:00, 1:00 – 4:00 ESSO

  • Backed up.
  • Role problems with PA, talked to Dong, who got a fix in by this afternoon
  • Rolled out preferences. There was a DB bug, where the preferences were set up as VARCHAR and not TEXT. Fixed.

10:00 – 1:00 FP/OH

  • Meeting with David Moor about what to do with the FP. Looking at synthetic users.

Phil 1.23.13

8:00 – 4:00 ESSO

  • Backed up.
  • Rebuilt query spreadsheet for Dong
  • There may be a problem with PA, but it is more likely an older version. We’re adding in a test that checks the DB for the latest “Compiled” string and evaluates the date. If the local date is less than the DB date, the app throws up an “Update” dialog with instructions for FF and IE. If the date is greater, the app updates the string in the DB, otherwise things start normally.
  • Javascript!
  • Cool thing:
    var num = 0;
    outermost: // create a label for this for loop
    for (var i = 0; i < 10; i + +) {
        for (var j = 0; j < 10; j + +) {
            if (i == 5 && j == 5) {
                continue outermost; // go to the label
            }
            num ++;
        }
    }
    alert( num); // 95
  • Switch statements can switch on variables?
  • IMPORTANT!!! –
    • Function arguments in ECMAScript don’t behave in the same way as function arguments in most other languages. An ECMAScript function doesn’t care how many arguments are passed in, nor does it care about the data types of those arguments. Just because you define a function to accept two arguments doesn’t mean you can pass in only two arguments. You could pass in one or three or none, and the interpreter won’t complain. This happens because arguments in ECMAScript are represented as an array internally. The array is always passed to the function, but the function doesn’t care what (if anything) is in the array. If the array arrives with zero items, that’s fine; if it arrives with more, that’s okay too. In fact, there actually is an arguments object that can be accessed while inside a function to retrieve the values of each argument that was passed in.
    • Unlike in other languages, naming your arguments in ECMAScript does not create a function signature that must be matched later on; there is no validation against named arguments. The arguments object can also be used to check the number of arguments passed into the function via the length property. The following example outputs the number of arguments passed into the function each time it is called:
function howManyArgs() {
    alert( arguments.length);
}
howManyArgs(" string", 45); // 2
howManyArgs(); // 0
howManyArgs( 12); // 1
    • When a variable is declared using var, it is automatically added to the most immediate context available. In a function, the most immediate one is the function’s local context; in a with statement, the most immediate is the function context. If a variable is initialized without first being declared, it gets added to the global context automatically.
    • And in the “No Free Lunch Dept: Setting a variable to null effectively severs the connection between the variable and the value it previously referenced. The next time the garbage collector runs, these values will be deleted and the memory will be reclaimed. Even if you have garbage collection, it never hurts to help out.
    • As in other languages, ECMAScript arrays are ordered lists of data, but unlike in other languages, they can hold any type of data in each slot. This means that it’s possible to create an array that has a string in the first position, a number in the second, an object in the third, and so on.
    • Ringbuffer: ECMAScript also provides an unshift() method for arrays. As the name indicates, unshift() does the opposite of shift(): it adds any number of items to the front of an array and returns the new array length. By using unshift() in combination with pop(), it’s possible to emulate a queue in the opposite direction, where new values are added to the front of the array and values are retrieved off the back.
  • Hit the wall reading about functions. I need my ride, and it’s only 21 degrees!
  • Burned a disk with the new PA on it.

Phil 1.22.13

8:00 – 4:30 ESSO

  • Backups
  • Deployed new PA. There are some logic issues WRT Due, Overdue and Current. Wrote them all out, but Dong has them, so I can’t enter them yet.
  • Printed out the Cognos query and results so that we have something to work with to produce the charts for Col. Dukes.
  • Spent a bit of time discussing my travails and thoughts about JDeveloper and JavaScript
  • OK, this book gets ridiculously good reviews on Amazon. Getting the Kindle edition.
  • Holy crap!
    • One of the most powerful and most controversial parts of the < script > element is its ability to include JavaScript files from outside domains. Much like an < img > element, the < script > element’s src attribute may be set to a full URL that exists outside the domain on which the HTML page exists, as in this example:
  • In XHTML (and XML), CDATA sections are used to indicate areas of the document that contain free-form text not intended to be parsed.
  • Aptana Studio 3? Downloaded. Interesting.

Phil 1.18.12

8:00 – 4:00 – ESSO

Phil 1.17.13

8:00 – 4:00 ESSO

  • Meeting with Chris, Lenny, Carla and Tom(?). Started out by discussing fixes, but became a session discussing how to make the new Financial Assistant. Over the next week, the Pit Crew will put together a spreadsheet that contains everything that they need to make a new entry in a table define by a budget center. Adding a line is essentially adding a MIPR (kind of). Adding a new line, can duplicate some or all of the previous line. Adding a MIPR addendum, for example, would duplicate the entire line except for obligation, outlay, and date. This data all goes back into the existing tables in the database. 
  • One modification of the current bugs/requests – make it so contract information in the finding request dropdown maps only to the associated MIPR.
  • Updated the servers with monitoring software and also updated their listings.
  • Made sure that the VISIBILITY code works for Dimitri’s visit.
  • Dimitri came by and we walked through an FP demo,  most of the VISIBILITY data visualization piece, hitting a lot of tangents along the way. He thinks he might find it useful.
  • And I need to update my database. visibility_scripting is out of date and there is no alerts DB.

Phil 1.16.13

8:30 – 4:30 ESSO

  • Backed up (another slow login day)
  • Deployed new version of PA
  • Working on ADF.
    • Fails to load page, which is pretty much the same problem as before: javax.el.PropertyNotFoundException
    • Wow. The problem was that I changed the default java compiler from the 1.6 U24 that Jdeveloper ships with to 1.7 U11, which is the current version. Impressive how an Oracle product broke an Oracle product
  • Nonetheless, progress:

progress

OH

  • And it looks like we’re not free of our FGM entanglements yet. Self evaluations. Woo freaking hoo.
  • Sent Lynn a note about my reimbursement as well, along with my final grades. Maybe some progress?

Phil 1.15.12

8:00 – 10:00 ESSO

  • The production server wasn’t accessible for some reason today. Tomcat was running, and if I went to 127.0.0.1 on the server, things came up just fine. Fixed by restarting the server. Weird.
  • Backups
  • A really useful  blog with some tips and code snippets which you may undoubtedly need while coding in ADF.

10:00 – 2:30 OH

  • Visit with Samir Nanavati to discuss feldman project. Nice meeting. *Terrible* traffic. It took 90 minutes to get to Tysons, and about 70 minutes to get back, for an 11:00 meeting. Oh yeah, and there was no one manning the full service booth on the toll road on the way back, so being a nice little drone, I paid by calling the posted number (FastPass). $1.00 toll, $6.00 handling charge. Then, after they took my money, they forwarded me to the toll road authority so that I could complain about the absence of a worker. I was then told that I should have run the toll. Awesome.

2:30 – 5:00 ESSO

  • Tried to follow along with the ADF videos, but the components aren’t there. Well, they are kind of there, but have changed since the video was made. As a result, I made some progress, and can build things that look kind of reasonable, but they are not launchable. Don’t know why. So, I’m going to flail at something new tomorrow: ADF Hello World Tutorial

Phil 1.14.13

  • Doctor appt this morning. The leg is totally fine.

10:00 – 3:00 ESSO

  • Talked to Dong some about the Due/Overdue/Incomplete/Complete project status 
  • Installing new Java. Need to do this at home, too.
  • To change the default Java library in JDeveloper, do the following
    • Application->Default Project Properties. The “Default Project Properties” dialog opens
    • Select Libraries and Classpath in the tree navigator on the left
    • Click on the change button at the top right The “Edit Java SE Definition” dialog opens
    • Click the “”Browse”” button after the “Java SE Executable:” field on the top right.
    • Navigate to your new “java.exe” (e.g.. C:Program FilesJavajdk1.7.0_11bin)
  • Note that this only changes the settings to new projects. To change the settings to an existing project, right click on the project in Application Navigator, click on “Libraries and Classpath”, and follow the steps above.
  • Watching the next video. This one is on ADF faces
  • Programmatic ADF. And some more code snippets.

3:00 – 5:00

  • Q1 Team get together

Phil 1.11.13

7:30 – 4:30 ESSO

  • Logging in was sloooooooooooooooooooooooow today.
  • Meeting with Chris B. Lenny and Tangie weren’t there, and Carla was busy, so it was just Dong, Chris and I. The main new thing was the idea of putting in a new field into the project line item (at the bottom of the project overview screen) that would have the identifier (possibly a script?) that tells the scripting system what item to look for in its query of COGNOS.  That and a few bugs were added to the list of req’s. Also, I mentioned to Chris that we were starting on FA, and that it would not be Flash-based.
  • Backups
  • Deployed new PPM and PA
  • Onward with Step 3: Explore the Starter Application
  • Walked through FSMs with Dong. PA is getting complex in spots…
  • ADF developer YouTube channel

FP

  • Moved the Phantom over to the testbed a(new firewire cable and USB mux) and verified that the tactor project is compiling and running. Yay!

Phil 1.10.13

8:00 – 4:00 ESSO

  • Backups and meetings.
  • We need to figure out a way to get around the need to “double click” to get to a cell after filling out a form.
  • Found a better set of tutorials: Charting with ADF Data Visualization Components
    • Part 1: Validating the Model and Starting Building the UI
    • Nope, can’t get connected to the DB to make a schema, so I’m screwed. Error message from Ant is:
      • C:JDeveloperFOD_11InfrastructureDBSchemabuild.xml:28: java.sql.SQLException: Listener refused the connection with the following error:
        ORA-12505, TNS:listener does not currently know of SID given in connect descriptor. Checking the error message leads here. Going to poke at that after lunch.
      • Following the link above, I was able to determine what the SID(?) jdbc was attempting to connect to. This can be done in a couple of ways:
        • Go to C:oraclexeapporacleproduct11.2.0servernetworkADMIN and view tnsnames.ora. It’s a text file. The file contains (in my case) three “definitions” of connections. In my case, the one labeled “XE” had my machine (WHITEOAK) listed as the host and a port (1521). That appeared to be the way to connect to the DB.
        • The above can also be done by typing “lsnrctl services” at the command line. in this case, it shows an instance called “xe”. HOST is WHITEOAK, though the port is different (49170)
        • I verified that xe was visible using “tnsping xe” on the command line. That looked promising, so I adjusted the build.properties (jdbc.sid =) to reflect that. And now that I go back and read the tutorial, it does indeed say that this value can either be orcl or xe. Woohoo!
      • Part 2: Starting Using Graphic Components
      • Part 3: Adding Other Complex Graphical Presentations to the Page
      • Part 4: Using the Thematic Map Component
    • On a separate note, it might be nice to put in the Feed Tem Social plugin and bring in interesting content related to our coding tavailes. Need to talk to Dong about that tomorrow.

Phil 1.8.13

8:00 – 4:00 ESSO

FP

  • The video of Paul’s interview with me about my work.