Mike 9.8.11

  • I was able to create and deploy a flex webapp on the google app engine and access it both from the web and from my phone.  This will hopefully work as a back end for our mobile application.
  • Now I need to figure out how to do what I was doing in Flex:
    • Authenticate:
      • The suggested method is OAuth 2.0 which is a pain for the user.  You construct a URL to a google authentication site specifying your application and what services you want access to.  You then open that URL for the user who enters their username and password in to googles site.  The site then displays a token string for the user to copy back in to your application which you use to make calls.
      • The oldest, easiest method is ClientLogin which is what I was using in Flex.  The user enters their information in to you application and you use it to make requests.  However, in Flex I was doing their through HTTP Requests which is much different in java.
      • I implemented an OAuth 2.0 version in about 20 minutes.  There were several good examples of how to do this in java.
      • After many hours of trying different things I was able to implement a ClientLogin version as well.  All the existing examples of ClientLogin appear to be outdated as the gdata library has under gone major changes (multiple times) since the original release.
    • List Spreadsheets
      • Once authenticated, this was (relatively) easy.  I used the gdata spreadsheet api to connect to the spreadsheet service and list the available spreadsheets for a user.  No where does it list what other jars are required dependencies so I figured it out through trial and error.  However, we can only execute very limited queries from API.
    • Queries
      • To run any kind of decent query we need another API.
      • The one I was using in Flex was the Google Query Language in the Google Visualization API but this is only available in JavaScript or via HTTP Requests.  So I will probably have to write some function that make HTTP Requests like I did in Flex.
    • gdata-java-client vs google-api-java-client
      • gdata-java-client is the “old” version of the java implementation I have been using and will probably do everything we need and won’t be deprecated for several years.  It is not mavenized, most examples are out dated and no longer work, and development has been halted.
      • google-api-java-client is the brand new version.  It is mavenized, has examples, and more APIs, and has plans for adding more but is in beta.

Phil 9.8.11

8:00 – 5:30 (90 min off) VISIBILITY

  • Talked to Dong about the “Help” app. He’s going to add in wizards and write up a few scenarios.
  • Working out a generic scrolling widget that you pass an ArrayCollection to and that creates the appropriate scrollers – Done
  • Also added a GenericScrollerEvent that takes a data (*) object to pass the results of said scroller around
  • Customer flash player is currently 10.3.184.34. Need to retest WebDesk.

FP

  • Brought in the new hand for Tom to play with
  • Reviewed the patent application. Looks like it will be submitted on Monday.

Tom DeVito 9.6.2011

Start: 10:00

  • Worked on Controller class for the finger
  • Determined that when we use a computer based simulation the only thing that needs to be passed is if there is contact and how much force is applied
  • Pc side will recieve a string with the status of each finger module
  • I think a solution to the problem where you cannot have anything in the constructor on the arduino side can be fixed by wrapping the class in a #ifdef statement

End: 6:00

Phil 9.7.11

8:00 – 4:30 VISIBILITY

  • My 1987 Porsche passed emissions with 30% of the limit on Co2 and 15% of the limit on HC. What were they driving back then? Tanks?
  • More scroller work.
    • Added ScrollingDateChooserEvent
    • Added all the edge conditions to handle 12 and 24 hour time
    • Added military and civilian date and time formats
    • Moved code to a separate library and checked into SVN – Mobile/ScrollingChoosers
  • Mike’s gotten the Google App Engine talking to web and phone with GraniteDS. Next will be to write some methods that assemble table meta information such as unique counts that the Google Data API doesn’t cover.
  • Talked with Bill D. about getting our desks. We sent a *memo* about it!

Mike 9.6.2011

  • Continued working on library to access and query google spreadsheets
  • Methods working to list tables, list columns, and execute a simple generic query
  • Due to some limits of the google query language, we can’t execute what we need in a single query, such as list how many distinct values are in each column
  • Going to investigate Google App Engine as a possible solution

Phil 9.6.11

7:30 – 4:30 VISIBILITY

  • Need to do some clarification for Stuart WRT the patent – done
  • Need to put together a date picker and then something more general.
  • And it looks like I need to move my 401k around a bit.
  • Figured out this SQL query again for Mike:
    • select model, count(model) from cars group by model;
  • Visit with Bill D. Some paperwork and strategizing with Brian

Tom DeVito 9.6.2011

Start: 10:00

  • Continued to work on the higher level control class.  This class is also to monitor a given input pin, as well as receive/run test simulation data for a designated  finger, similar to how the original test sketch works.
  • Wired a second 1 Watt amplifier which is controlled by the second rheostat on the first IC
  • Added code to the amp class to control the second register

End: 6:00

Tom DeVito 9.2.2011

Start: 10:00

  • Finished midi class and start debugging.  This one didn’t have as many problems as the others and was relatively simple to debug.
  • Started a higher level module which controls the amp and midi controller so I can initialize both in one instance

End: 6:00

Phil 9.1.11

8:00 – 5:30 VISIBILITY

  • It’s now dark at 5:45. Time for the alarm clock. Sigh
  • Bill D. is off for the rest of the week, so I get two full days of development. Yay!
  • Adding ESRI mapping to VisMob
  • Got a scrolling time widget working. Need to do a date widget and then figure out how to generalize. Maybe. It’s not much code.

Mike 8.31.2011

  • Created a project and artifact called Log4Flex which contains the flex logging code / UI to start separating out FGMFlexUtils
  • Started on the google-services library
    • Created a general authenticator that will get a token to make authenticated http requests to any of the gdata services (tokens are service specific)
    • Added some test cases for the authenticator
    • Created a GoogleSpreadsheetService class which will handle executing queries on spreadsheets
    • While testing it, I couldn’t get it to work like the prototype code until I realized it worked within an air app but not inside a browser.  The HTTP Requests from within the browser were getting messed with and I kept getting not authenticated error messages.  So apparently the authentication method I am using will only work for AIR / Mobile apps.