Tuesday, September 30, 2008

NCPHI KM Web Services

I spoke with the former technical steward for the NCPHI Decision Support Framework Services to determine how difficult (or easy) it would be to move them into a lab environment so that public health can invoke them (currently, the services are only available within the CDC network).

There are three services:

  • UMLS Vocabulary Service- This connects to the socket interface at NLM and provides a web services method of access. This could be moved into the lab environment by standing up a windows server that has access to the NLM socket interface.

  • Controlled Health Thesaurus Vocabulary Service- This servcice provides access to the CDC CHT. In order to move this service into the lab it would be necessary to stand up a windows server with a copy of the CHT database (an open collection of vocabulary terms in a 5-8GB format).

  • Knowledge Gathering Service- this service provides access to content across internal and external web sites through a search appliance. It is a bit more complicated to bring into the lab as the lab has no access to CDC resources. So this service would be modified with a new configuration that only used externally available sources.

So this is good progress around how existing CDC developed web services can be accessed by the PHGrid partners.

Does anyone have use cases that require access to vocabulary such as UMLS or CHT and would benefit from having access to a web services (SOAP/WSDL) interface?

Monday, September 29, 2008

Distributed Research Network Project News

Richard Platt (Harvard) presented the collaboration project (Distributed Research Network) between Harvard, U. of Penn, MIT & NCPHI at an FDA-sponsored federal interagency working group, and reported that it was well received.

Friday, September 26, 2008

Another demo done.

We had another demo today. This time it was not rushed into a short amount of time and involved a lot more discussion of "Okay, but how do we make something we actually want to use as opposed to something that shows off what we can do?"

The next steps seem to be collecting lots of use cases and then going to NPDS (National Poison Data Service) and seeing if more filters and server-side aggregation can be had.

In the meantime, I cleaned up the demos a bit more, so now I can transfer them to different machines with fewer issues, but I am sort of along with the demo people in that I want to start morphing these things into actual products that people will want to use. It's just that a lot of it involves several discussions and typing out a lot of ideas on paper and then having people question the ideas because the way it looks in your head wasn't transferred adequately (thus you have to explain it 5 different ways until you find the one that sticks... you might also have to just repeat yourself a lot).

In other news, I have seen this pretty thing made by ESRI called Digi-Net, and it looks like I might be getting some training in how to do neat things with Digi-net. But until then it's lots of thought-cud to paper.

Multicore systems dragged down by lagging software

Virtualization fills gap while software industry struggles to catch up with Intel, AMD advances

Click here to read an interesting article about how multi-core computers do not have sufficient software to make use of the multi-core power.

Wednesday, September 24, 2008


Received this email from Ron Price with a useful grid applicaton:


I just wanted to briefly share with you gRavi. It is a tool that does the following:

Remote Application Virtualization Infrastructure (RAVI)provides GUI-based tools to guide the user through the process of identifying an application, mapping from strongly typed Web Services operations to application arguments, defining authentication and authorization requirements, and deploying a service onto an execution site.

More info can be found about it here:

Just an FYI.


Need almost coded.

So I got the PoiconDai-web piece coded... so now it is being gracious enough to put the chart above the table of data.

In Rodsadai-web, I hit a few snags service-enabling, so I will probably have to troubleshoot. Luckily, I took a snapshot of the working code and put it into a tag of SVN and just ported it back for a demo that is tomorrow.

I am really liking MVN and SVN.

Integrating caGridTransfer and RFT

I participated in a conference call with Justin Permar and Shannon Hastings to discuss the possibility of integrating caGridTransfer Service with RFT. Some interesting points came up during the meeting:

  • To date no one has suggested the integration of caGridTransfer Service with RFT but Justin will bring the topic up on some upcoming calls that he currently participates in to determine if interest exists in other domains
  • Justin will have further discussions with Shannon, Ravi (Madduri), and Rachana Ananthakrishnan to discuss feasibility of using caGridTransfer Service with RFT
  • Shannon pointed out that caGridTransfer Service persists transfer information and adding in automated restart capability for transfer would not be difficult to add
  • Justin would like an informal explanation of the drivers behind the desire to use caGridTransfer Service with RFT. I will provide him with this information by Oct. 1 at the latest
  • Justin would also like to know if there is a definitive timeline for the integration of caGridTransfer Service with RFT. I will speak with stakeholders and provide this information back to Justin.

All in all it was a good first call.

Tuesday, September 23, 2008

Code the need.

So, I am excited to say that I got the JBoss server unbound to localhost. The best guide I found for opening up the server for production and removing all of the dangerous programs was here: http://www.jayson.in/programming/how-to-configure-jboss-as-production-settings-and-tuning-tips.html

So, I managed to get JBoss unlocked, and then found out that there is a lot of location-specific stuff that is not sitting in a properties file, but is instead sitting in hard code.

This is bad.

Thus, in addition to massaging the PoiConDai server to be nicer, I am going to be massaging RODSadai and RODSAdai-web to better handle being placed on different servers... because trying to remember the immediate coding environment specifics is really annoying and should just be able to sit in the given JBoss environment.

Otherwise, more demos soon, yay.

Monday, September 22, 2008

JBoss and security

So, one of the things I noticed when I was setting up for the demo is that I cannot just connect to JBoss from any old computer.

It took me about three days of idle wanderings on the internet to figure out that JBoss makes things super-secure by default. One of the ways they do this is by locking down the server to only localhost connections (so that essentially, only the computer the server is on can ever touch the server)

Thus, I finally figured out how to disable it and this methodology... The caveat being that you have to read a large disclaimer about how you might be opening up security risks and should mitigate all of them before you can comfortably do this.

Looks like I get to sit and read a doc for a while to make sure I know how to turn off the remote administration stuff and other big-scary-nasties before I open it up completely. I miss tomcat.

Otherwise, I am working on polishing up the PoiConDai demo and documenting the next steps in RODSAdai and how they might contribute to the NCPHI toolkit. Docs to follow, excitedness here now.

caBIG and Security

Per the caGRID Wiki:

Security is an especially important component of caBIG™ both for protecting intellectual property and ensuring protection and privacy of patient related and sensitive information. caGrid 1.0 provides a complete overhaul of federated security infrastructure to satisfy caBIG™ security needs, incorporating many of the recommendations made in the caBIG™ Security White Paper, culminating in the creation of the Grid Authentication and Authorization with Reliably Distributed Services (GAARDS) infrastructure. GAARDS provides services and tools for the administration and enforcement of security policy in an enterprise Grid. caGrid 1.1 represented a major thrust to deploy GAARDS to the cancer research community, in that its release is timed and informed by the first set of policies and procedures created by the caBIG™ Security Working Group. The Security Working Group is a collaborative effort of the caBIG™ Architecture and Data Sharing and Intellectual Capital (DSIC) Workspaces that is intended to create and implement security policies to enable data sharing across the caBIG Federation. The initial policies in place for caGrid 1.1 formalize the envisioned Levels of Assurance for credentials in the grid, and detail the policies and practices of a credential provider adhering to the initial Level of Assurance (LOA1) which will govern the baseline credentials all caBIG™ participants may use. caGrid 1.2 adds support for credential delegation with the Credential Delegation Service (CDS), and provides a solution for integrating grid security with web applications, in the form of the Web Single Sign On (WebSSO) project.
GAARDS was developed on top of the Globus Toolkit and extends the Grid Security Infrastructure (GSI) to provide enterprise services and administrative tools for:

Grid user management
Identity federation
Trust management
Group/VO management
Access control policy management and enforcement
Integration between existing security domains and the grid security domain

Click here for the full page.

caGridTransfer Service - Successful Upload

I have managed to successfully upload a file from the client to the server. Globus was running without securtiy.I need to work on persisting the received data to the local file system. Unfortunately this does not seem to be part of the caGridTransfer Service API.

Saturday, September 20, 2008

We need to learn from Apple & history...

Apple seems to have learned from history:

  • The “first party” must be the Market Maker, as spokesperson, evangelizer and brand driver. No platforms succeeded when brand owners faltered.
  • Critical mass or die. 20 Million units sold has been the minimum US audience for a meaningful game machine. Pretty good start with the 3G!
  • 3rd party software provides creative breadth and energy. I believe Apple invented 3rd party “evangelism” with Guy Kawasaki several centuries ago.
  • Best “Frenemies” Forever! When their game platform takes off, console companies have historically battled their 3rd party developers for market share and profits. Apple’s early and open support of the Dev community is a veteran move, and commendable.
  • Early is usually expensive… and lame. iPhone’s development tools have successfully reduced early development costs. But it is typically the “second generation” titles which are memorable and lasting.
  • It takes “Killer apps” to attract new customers and define a platform. The App Store is definitely killer. Now it is up to developers to invent some never-seen-before game and social experiences.
Read full article here

The point to which I am driving is that in order for the PHI Research Grid to become the PHI Grid (from research to production), we should be following Apple's example.

Friday, September 19, 2008

CDC x509 Certificates

Successfully used certificates generated by the CDC to transfer data from Atlanta to Dallas. The certificates were extracted using the Portecle application in PEM format. The entire certificate chain should be used in each hash file. Remove the private key data from the file.

The command:

openssl x509 -issuer_hash -in [file_name].pem was used to determine the hash name the file should be named after.

openssl x509 -issuer -in [file_name].pem was used to determine the access_id_CA that should be used in the signing policy.

openssl x509 -subject -in [file_name].pem was used to determine the cond_subjects that should be used in the signing policy.

Topology of Grid Transfer Services

Tom asked for a quick topology of the grid transfer services we (Dan, Felicia, Peter) know about and how we understand them.

1. Globus' GridFTP

A webservice-negotiated, secured FTP transfer of files. Reasonably fast, secure, but requires extra ports to be opened between two nodes that need to use it, and has no feedback on completion.

2. CA-GRID's BulkDataTransfer

CA-Grid's version of data transfer that uses GridFTP. Can be used with performance enhancements like parallel and striped data transfer.

3. CA-GRID's Transfer service

Transfers a file completely over Webservices. This means no extra ports need to be opened, but there is a limitation in how much data you can transport but you get more information about how much data has been transferred.

4. Globus' Reliable File Transfer

Puts an extra layer on GridFTP to allow for status checking and re-initiation of transfers should a connection be lost mid-transfers

Those are the ones we can think of. If we have left any out or you know of any other cool grid transfer services, leave a comment!

Demo Results.

So, the first demo of the day on Wednesday went really well. Everything worked, everyone had their talking points ready, everyone was impressed. Then we had the second demo which no-one knew would be happening... and luckily everything worked, everyone had their talking points ready, and everyone was impressed.

One of the major developments that came from the demo has already been described by Ken: try and make minimum data set WDSLs and public health appliances. Tom, Jeremy, Ken and I had a big discussion today and we were pretty much focusing on three things:

- An instructional toolkit for web-services
- "Here is how you can use any number of these webservice tools (AXIS, .NET, Introduce, etc) to create a service, here is how you can secure them (globus, caBIG, etc)
- The ideal WSDL
- "here is the WSDL for summarized data you should use or be very-close to"
- A black-box implementation, with open code, so not actually very black box
- "here is an example service implemented completely. Just set it up to point to your databases and open up the ports"

In addition to that, I have been slowly building the ideal RODSAdai description document so that we can start coding next steps for that application and get some more focused feedback from the guys at OGSA-DAI. I imagine that OGSA-DAI and RODSAdai will form a backbone for the black-box application described above.

Thursday, September 18, 2008

Executive Summary / White Paper

A four-page executive summary has been added to the Documents section of the blog. You can also access the document here.

Public Health Grid Appliance (Future Thinking)

We are imagining a future, low-cost, downloadable, easy-to-use, plug-and-play public health grid appliance. We encourage you to go to our wiki page to add your thoughts in this early, early stage of development. Here are a few of the initial thoughts about it...

  • Downloadable
  • Graphical user interface
  • Configurable
  • Ability to connected to databases
  • Ability to easily apply x.509 certificates and join public health trust fabric

Minimum Dataset WSDL Development

We began thinking about developing a minimum dataset (MDS) WSDL (for biosurveillance) that could be downloadable for developers within potential data sources (hospitals, public health departments, universities). This WSDL would include a stub framework (or would be a framework) for development in the .NET & JAVA environments. The framework would provide the developers with an easy to use and implement framework for exposing the MDS WSDL in both a secure (user name and password) and super-secure (grid:X.509 certificate) manner. We plan to work with the biosurveillance experts within public health.

Wednesday, September 17, 2008

The Economics of Cloud Computing (Grid)

Public utility cloud services differ from traditional data center environments — and private enterprise clouds — in three fundamental ways. First, they provide true on-demand services, by multiplexing demand from numerous enterprises into a common pool of dynamically allocated resources. Second, large cloud providers operate at a scale much greater than even the largest private enterprises. Third, while enterprise data centers are naturally driven to reduce cost via consolidation and concentration, clouds — whether content, application or infrastructure — benefit from dispersion. These three key differences in turn enable the sustainable strategic competitive advantage of clouds through what I’ll call the 10 Laws of Cloudonomics. Click here to read full article.

Tuesday, September 16, 2008


So, I have a relatively pretty and relatively stable demo ready for the big lab tour tomorrow. I owe many, many thanks to Dr. Jeremy Espino for some concept help, the access to the repository, and for blazing forth with a Axis/JAXB connector set for the NPDS webservice. I also give him big props for pointing out the JQueryUI libaries and the google charts. Both made it so I could have really pretty map and graph controls.

Tomorrow I will try and dress things up a bit more and add different pages to allow for more data queries and better filtering.

x509 Issue

  • Exported CDC private key and certificates to the testing node.
  • Tested the certificates using the issuer_hash
  • Created a new usercert.pem file from a certificate that used the "strong protection" option
  • Removed the Root certificate from the TRUSTED_CA and tested using the Intermediate certificate
  • Named Intermediate certificate based on the issuer_hash


ERROR: Couldn't verify the authenticity of the user's credential to generate a proxy from.

Error verifying credential: Failed to verify credential
Could not verify credential
Can't get the local trusted CA certificate: Cannot find issuer certificate for local credential with subject: DATA-REMOVED-BY-DAN

caGridTransfer Service

The basic caGridTransfer Service was successfully deployed to the staging and dallas nodes.

Found a interesting twist with the caGridTransfer Service, when trying to undeploy the service, it breaks the Globus container. Currently investigating what is causing this problem.

Saturday, September 13, 2008

RODSAdai, PoiConDai, and NPDS-ws

Today I started off by having a productive discussion with the folks who helped me with RODSAdai: Dr. Jeremy Espino from Pitt (who brings the RODS) and Mario Antonioletti and Alastair Grant from University of Edinburgh (who bring the OGSA-DAI).

We discussed future developments, concerns about security, scalability, and automating installation and configuration as much as possible. We also talked about our availability being reduced for the next phases... But mainly we talked about the fact that one of the things that got lost in the making of RODSAdai 1.0 was a quick and descriptive design document that explained what we were all trying to do and how. Something so that Alastair, Mario, or Jeremy would be able to go "oh, well to connect it that way you should try configuring it like this..." Furthermore it is much more likely that the whole Axis/Globus conflict would have been found earlier and mitigated sooner since Alastair was already familiar with that particular limitation. Thus, the first step for the next phase of RODSAdai is to take the ideal-state and current-state diagrams of RODSAdai that I made, and more information about what they mean, how they currently work, and how I hope to get them working to focus advice and let anyone search for red flags.

But I won't be able to do that until Thursday of next week, because right now I am in demodemodemo mode to get PoiConDai in some form of pretty graphical display so we can show that yes, we are pulling Poison Center call data into the CDC.

This was greatly moved forward this morning with the help of Dr. Espino, namely because he already wrote code that used AXIS to consume the NPDS webservice a couple of weeks ago and had already incorporated all of the JAXB libraries needed for parsing the "any" response returned by the web service. The codebase is called npds-ws-client, and I am going to use it because it is pretty and is along the lines of what I was going to do, only with the properties file and return serializing I was planning on doing already implemented (and thank goodness for it).

Let me pause here to say how much I love maven again. It has extensions for generating axis stubs and jaxb code, so all you need to do is have the WSDLs handy and you don't have to worry about constantly regenerating the parsing bits and movig them about manually. How cool is that!?

Meanwhile, my next step is to incorporate a few of those unit tests I posted about earlier, and then set up a web-client front end that I am going to call PoiConDai web for showing the data in an ever-snazzier JSP. I think I am going to get something really nifty ready by Tuesday Evening.

Friday, September 12, 2008

caGridTransfer Service

Made progress I was able to build and successfully deploy the default caGridTransfer Service to my local environment today.

Next Step: Add functionality to satisfy use cases.

x509 Certificates

Deleted the namespaces file from the certificates directory. (This will be recreated later)
Modified the cond_subjects parameter of the root signing policy

The system still creates a proxy, but fails to create a proxy when the -verify switch is used.

Researching the current error message:

error: globus_ftp_client_state.c:globus_l_ftp_client_connection_error:4217:
the server responded with an error
530 530-globus_xio: Authentication Error
530-globus_gsi_callback_module: Could not verify credential
530-globus_gsi_callback_module: Error with signing policy
530-globus_gsi_callback_module: Error in OLD GAA code: CA policy violation:
530 End.

Next steps:
Try using the issuer_hash for the root and hash for the intermediate certificates.
View the CDC certificate in Portecle to make sure there are no changes in the subject lines
Test transfers between 1001 and 1003 nodes
Contact Ron Price about a possible solution. I discovered an old listserv message where he was having the same problem back in 2004.

Thursday, September 11, 2008

I can access the PoiConDai WSDL... but it's returning "any"

So, I spent most of today putting together a little program to test the webservice.

I have gotten to the point where I can get the webservice to respond... and it seems to not be throwing any errors...

But there is a problem.

The return type of the webservice is marked as "any"

As opposed to laying out the return type and defining the structure of the object (which really should be the point of any webservice)... the WSDL defines the "any" type, therefore axis makes no attempts to seriealize or deserialize the object being returned, and I am pretty much going to have to go into the big bucket of XML parsing to deserialize all the data myself.

I might be able to patch the structure back into a local WSDL and regenerate the classes...now that I can read what the format is... and get AXIS to do it for me, but we'll see.

Maybe introduce has better metadata introspection, but I doubt it. Either way... it's a whole bunch of annoying extra work.

CDC x509 Certificates

1. I created a new signing policy based on the data obtained from the following commands:

openssl x509 -subject -in [issuer_hash].0
openssl x509 -subject -in usercert.pem

2. I modified the CDC user cert based on the certs found in the staging node.

openssl x509 -text -in usercert.bak -out usercert.pem

3. I deleted the cert hash.0 and signing policy from /etc/grid-security/certificates and replaced it with [issuer_hash].0

Grid-proxy-init with no options seems to create a verifiable proxy with the CDC certificate:

forrest@Bubba-Gump:~> grid-proxy-init
Your identity: DATA REMOVED-BY-DAN
Creating proxy ........................................... Done
Your proxy is valid until: Fri Sep 12 04:22:07 2008

forrest@Bubba-Gump01:~> grid-proxy-info
type : Proxy draft (pre-RFC) compliant impersonation proxy
strength : 512 bits
path : /tmp/x509up_u1003
timeleft : 11:58:51

Testing via GridFTP, Globus seems to use the wrong cert hash and signing policy to verify user proxy.

Error checking certificate with subject DATA REMOVED-BY-DAN Against signing policy file /opt/vdt/globus/TRUSTED_CA/[wrong_hash_number].signing_policy
530 End.

I need to figure out why it is using the wrong hash file.

Center of Excellence Mailing List

coe@phgrid.net (Focused on Centers of Excellence work around the PHI Research Grid)

Wednesday, September 10, 2008

We have a WSDL

I have a WSDL, I have my marching orders (connect to the service described by the WSDL and show we can pull data from Poison Control... make the method prettier as time permits), I have contacts and invocation info....

and I have AXIS... being as persnickity as ever. It's the Webservice connection marathon, and it looks to be fun.

Tuesday, September 9, 2008


Today I have been working on the use cases for a new little demo project I am dubbing PoiConDAI.

It is basically the consumption of a service that Dr. Jeremy has already created for listing Poison Control Center call volume data. I finalized some of the rough cases (as shown in the linked document) and tomorrow I will probably start playing more with AXIS and perhaps Introduce for making a quick client in anticipation of receiving the WSDL for the service.

Otherwise, I am working on next steps for RODSADai, including scalability improvements, security improvements, and a general design and design-process review with the folks of OGSA-DAI.

EARS, EpiInfo and Grid

Had very interesting meetings with two CDC teams :

1- the EARS team (early aberration reporting system)
2- the EpiInfo team

Both groups are very interested in working with the Grid research team -and investigating potential services based on their products that could be shared on the grid, as well as ways the grid could augment the value of their existing products. Should prove to be very interesting and fruitful. Will keep you all posted.

Article: International Science Grid this week - Feature - The future of public health: The grid gains traction

Click here to read the article.

JAMIA Article today

Greetings all:

The Sept/Oct 2008 Issue of The Journal of the American Medical Informatics Association came out today.

P. 705 - 706 In Response to: What Is a Grid?

Click HERE to read the article

Monday, September 8, 2008

New Listserv/Distribution Lists Created

Four new distributions lists have been created to enhance and simplify collaboration

ncphi@phgrid.net - Core NCPHI Group
poc1@phgrid.net - Initial Proof-of-Concept Group (NCPHI, Tarrant, Dallas & U. of Pitt)
public.health@phgrid.net - Specific focus on public health issues, business cases, use cases
technical@phgrid.net - Specific focus on technical issues relative to PHI Research Grid

Each of these distributions lists may be queried and manipulated using the following email addresses:

Help address ncphi-help@phgrid.net (for example, poc1-help or technical-help)
Subscription address ncphi-subscribe@phgrid.net (for example, poc1-subscribe or technical-subscribe)
Unsubscription address ncphi-unsubscribe@phgrid.net (for example, poc1-unsubscribe or poc1-unsubscribe)

Sunday, September 7, 2008

Linutop (Potential Grid Appliance - Hardware)

Linutop is a ready-to-use small computer, designed to reduce maintenance costs.

Low maintenance

The Linutop operating system is stored on an internal flash memory and cannot be altered by virus or mishap.

Initial state can be recovered at each restart.

Low deployment costs

Linutop is delivered with free standard ready-to-use Linux software: Firefox, Open Office, VLC Media player... and can be easily customized with additional software.

Energy saving

With no moving parts, Linutop offers a completely silent (0 dB), energy-efficient operation in an extremely small package.

Open Source Collaborative Disease Surveillance Software

TriSano [pronounced "tri-SAH-no"]: http://www.trisano.org/

"Collaborative Software Initiative today announced the launch of the TriSano application and community. TriSano is an open source, citizen-focused infectious disease surveillance system that allows local, state and federal entities to collaborate for the good of public health. With TriSano, the Collaborative Software Initiative provides a forum in which subject matter experts (i.e., doctors, nurses and epidemiologists) and software developers work together to facilitate the creation of citizen-centric public health applications. This innovation ensures application features meet the specific requirements of each jurisdiction, allowing public health employees to achieve the goal of protecting lives."

"The TriSano™ Eye represents a zooming (micro/macro) view on disease detection and prevention. That is as close as I'm ever going to get to a bird of prey reference in a product. I love birds of prey. They have binoculars for eyes just like TriSano. Its true. Look it up: http://en.wikipedia.org/wiki/Bird_of_prey"

Wednesday, September 3, 2008

VBrowser Plug-in

I have been in contact with Piter De Boer, primary developer for vBrowser. Piter provided me with some direction and code for creating a custom plug-in for vBrowser. I was also added to the developer mailing for the vBrowser project. I'll begin exploring ways to add actual Grid Services to the vBrowser interface, starting with GridMedLee.

Peter's impression of the PHIN conference

Last week, I attended two Atlanta conferences, The first was the Public Health and Informatics Network (or PHIN) conference, and the second was Dragon*Con. This is why I was out Friday and yesterday: I needed to recuperate. What I learned at the PHIN conference is much more relevant to the interests of this blog.

First off, the demo of RODSAdai went okay on Monday, and blessedly it was the first event attended. That way, we showed it live and we got to answer questions about it and then we were done and I didn't have to worry about something crashing for the entire conference. It was very nice to see people talking the RODSAdai demo I did and the awesome VBrowser demonstrations Dan Washington set up, and it was inspiring to see all the philosophies amalgamated around our demos. There was a small hiccup in that the VPN timed out

The other big thing on Monday was getting to see Dr. Jeremy Espino's RODSAdai demo. His presentation was interesting because it focused on how to get people with similar intrests to contribute code to your project... and how to make your projects as friendly as possible for someone to go "Hey, I have this idea for how to .enhance your code to do this thing I need/want it to do" while still making sure said someone doesn't accidentally delete the source tree. I was actually used as a test case, because I was a developer chosen to code "how do we get information from these two unrelated RODS databases using GRID?" It was really neat because I also got some high praise for the quality of code I was contributing, and praise always makes me happy :D .

After the demonstrations. I went to dinner with a large bunch of Grid folk including Brian Lee, Jeremy Espino, Albert Lai (who is working to distribute the Natural Language Processor engine across grid), a CaBIG engineer, and a BE Architect whose names escape me. We talked a lot about the state of grid and what some of the impediments were to getting grid spread around the US and linking it up with the rest of the globe. The biggest thing I came away with is that we really need to have things in a tight little package, because going "take this box and run 'install' on this disk" is going to be the a lot easier sell to the beleaguered medical center sysadmin than "buy this box and then install these 400 programs in this order". It was lovely meeting everyone face to face.

On Tuesday, I attended the morning session while eating breakfast and heard a very good speech by a Georgia health official about why communities of practice are important... and then I went to the Enterprise Architecture Community of Practice and saw that there were a lot of things to sort out, including purpose and definition. After that I went to man the BearingPoint booth, where I sat in the paint station and asked people to complete parts of a paint-by-colors mural to be given away as a prize to a particular health center.

Finally on Tuesday, I went to the PHGrid concurrent session, where a lot of the things discussed on Monday night were reviewed again with a focus on Security and Performance.

Wednesday, I started by eating breakfast and going to the Plenary session which had a cool presentation about "PHIN 2018" which basically looked at how things were going to change slowly then rapidly over the future as goals were discussed and changed. , I attended a session for the evaluation of detection systems developed by the John Hopkins University Applied Physics Laboratory (JHU APL). The sessions were neat because they outlined the informatics and statistical analysis that went into detecting outbreaks. Basically, statistical analytical models were coded to detect outbreak conditions as they were appearing. The machines could then "learn" from mistakes (missed outbreaks, false alerts) and adjust their standards for statistical patterns accordingly. There were pretty cool examples of how the outbreaks were detected more accurately as time went on. Another speaker also went over his experiences in evaluating a new system designed for replacing the old one... complete with sitting behind the users, documenting the process, and seeing if that process would be supported or enhanced by the new system without introducing any new pain points. He did not reccommend the replacement, and it still hasn't been adopted as predicted. It was a great demonstration of a real world enterprise evaluation.

Then there was an awards lunch... and there was some conflict with people wanting to eat and talk rather than listen to the presenters. I think in the future the conference should have the "eat-and-talk" section of lunch, and then the "your food is gone, go outside if you need to keep chatting" presentation section. After that was the second section of the Enterprise Architecture CoP... and this time we made more progress for mapping our motives and definition. I think one of the best ideas was to make a "city map" for what a phin machine would be and who would be providing it.

Finally on Wednesday was the "Visualization and Analysis" panel... where I got to see all the cool Diginet work done by Carl Kincaide and Jim Tobias. They had basically done another version of a visualization and amalgamation tool that did the same sort of thing RODSAdai did, but they did it with a completely different platform. Thus, it shows a sort of convergent evolution and the ability to get the same results with different toolkits and starting environments.

On Thursday we spent the morning meeting with several different people. A lot were the coders from JHU APL, Jeremy and Albert were there, and the others were some of the Utah CaBIG coders... and we basically set up another Community of Practice that centers around "we've all met and talked about things lets keep on tabs with each other and what we are working on. The basic discussion was focusing on thing like making very easily deployable boxes and how to roll out some of these cool Proofs of Concept to production... and I sort of threw out there that one of the things that would need to be done is just to get one health department to try it, love it, rave about it, and then say "oh look, this is free and you can set it up too" and the desire for the ease the visualization or analysis will find more homes for our product and allow them to link up.

Overall the conference was very cool and I enjoyed meeting a bunch of the people I had worked with and probably will be working with well into the future.

Tuesday, September 2, 2008

Phin Conference Experience

Hi all, here's my phin conference experience. Considering the fact that I have never attended a professional conference of this size, its safe to say, I was truly impressed. At the same time, it gave a lot of perspective on where we fit in the big picture. I especially liked the format, where they kept 3 speakers per session so it never felt like its dragging. But all in all a lot of information to consume and analyze. I really liked the session about MedLEE and the application outlining the research grid services by Wayne Loschen. Also had a long chat with Ron Price about the various aspects of security evaluation of the Grid. I also enjoyed Vaugh Mcmullin's presentation about the impelementing a Data Grid leveraging Secure reliable transport, clustered node data sets using existing open source and concepts utilized by PHIN with one particular point of emphasis being making application device independent. To add further, it was a really good idea to assemble on thurday, following the conference, with all the grid collaborators and outline next steps and focussing on preventing redundancy of work. All in all, I would say an enriching experience which will lead to bigger things in terms of Grid research.