Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Files from Mars:
Java™ Technology in the MER Data
Infrastructure
David Noble
Principal Consultant
Oak Grove Consulting
htt...
Goal



                  Examine challenges and tradeoffs in
                  the development of software for a
        ...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Mission Overview

       Two robotic geologists exploring Mars




       Credit: NASA/JPL/Cornell


Detail of 'Cahokia' p...
Credit: NASA/JPL/MSSS/NMMNH

MER-A (Spirit) Traverse to Sol 450
http://photojournal.jpl.nasa.gov/catalog/PIA07849
        ...
Height: 1.5m
      Width: 2.3m
      Length: 1.6m
      Mass: 174kg




                                          Credit: ...
Credit: NASA/JPL/Cornell/USGS/University of Mainz
Credit: Maas Digital LLC, NASA/JPL




                                 ...
NASA’s Science Objectives

            Long-term science goals for Mars Exploration:
       ●


                  Determin...
MER’s Science Objectives

    “          The scientific objectives of the Mars Exploration Rover mission are to:

        ...
Actors

    Scientists
●

        Evaluate images and other data
    ●


        Plan rover activities
    ●



    Engine...
Downlink Data Flow


                                        Scientist
                                                   ...
Downlink Data Composition
                              2% 3%
                                            95% Products
   ...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Deadline

            MER-A Launch Window
      ●

                 June 8, 2003–June 24, 2003
             ●



         ...
Planetary Alignment




MER Landing Press Kit, 12-1-03
http://marsrovers.jpl.nasa.gov/newsroom/merlandings.pdf
           ...
Tactical Timeline

    15 hours to create next sol’s commands
●

        Evaluate health, etc
    ●


        Evaluate sci...
Risk
Mars Missions, from 1/1/1970 to 1/1/2004

                                 Attempts                            Succes...
Budget
      Primary Mission: $820 Million USD

                                                          $75M

          ...
Visibility

           First three days after landing:
      ●

                 One billion web hits
             ●


   ...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Loose Coupling

    Benefits
●

        Component reuse
    ●


        Component pluggability
    ●


        Parallel de...
Criteria

    Usability
●


    Correctness
●


    Testability
●


    Reliability
●




                              SM...
Options

    Service Lookup
●


    Inversion of Control
●


    JavaBeans and InfoBus
●


    Message Pub/Sub
●




     ...
Options

    Service Lookup
●


    Inversion of Control
●


    JavaBeans and InfoBus
●


    Message Pub/Sub
●




     ...
Message Classes

      Message
 getType() : String

                          MessageContext
      <<interface>>
         ...
Message Classes

       Message
  getType() : String

                             MessageContext
       <<interface>>
   ...
Message Publisher
public class MyPublisher {

    private MessageContext messageContext;

    public MyPublisher(MessageCo...
Message Subscriber
public class MySubscriber implements MessageSubscriber {

    public MySubscriber(MessageContext messag...
Subscriber to Multiple Messages
messageContext.subscribe(FooMessage.TYPE,
    new BaseMessageHandler() {
        public vo...
Assembling Components
MessageContext context = new MessageContext();
context.setVerbose(verbose);

ProductInput input = ad...
Lines of Code for Message Package
Including Test Classes

                         Lines                       Percent
   ...
Would I Do It Again?

    Yes
●


    Reused for other missions
●


    Watching for creeping complexity
●




           ...
Data Product Storage

    Product files
●


    Product metadata
●


    Product part metadata
●




                     ...
Schema Design

     Product
                              ProductPart
    ID
    Filename
                   1          ID...
Database




                       SM
           2005 JavaOne Conference | Session TS-1416 |   36
Why Not?

    Procedures
●

        Installation, configuration, maintenance
    ●



    Validation tests
●

        Perf...
Product Metadata

    XML
●


    Regular line breaks
●




                                      SM
                     ...
Locations
Complete Products
products/<type>/<subtype>/<command>_<series>_<time>.dat
products/<type>/<subtype>/<command>_<s...
Would I Do It Again?

    Not exactly
●


    Add database
●

        Develop procedures off critical path
    ●



    Ke...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Product Action Triggers

    Requirement:
●

        Trigger actions on product arrival
    ●




                        ...
Product Action Triggers

    Initial requirement:
●

    “Users can register to be notified by email
    when a product ar...
Product Action Triggers

    Filter criteria
●


    Script execution
●




                                      SM
     ...
Configuration
<subscriptions>
  <script>
    <trigger complete=quot;yesquot; partial=quot;noquot;/>
    <filter>
      <al...
Multiple Uses

    Science processing
●


    Generic uncompression
●


    Text representations
●


    Multiple director...
However…

    Never did email product notification
●




                                                 SM
             ...
However…

    Never did email product notification
●


    Email reports had high-level summaries
●




                  ...
Would I Do It Again?

    Yes, but…
●


    With JMS message publishing
●




                                            ...
Product Display

    XML Data Dictionary
●

        Values
    ●


        Units
    ●


        Lookup tables
    ●


   ...
External Viewers

    Images
●


    Complex data structures
●


    Special formatting
●


    Reports
●




            ...
Hazcam Image
% mer_dp_view img_image_loco_fhl/*.dat | more

Filename:    img_image_loco_fhl/f0006-000-0000_003_0161168693-...
UHF Link Report
Filename:   products/047/010/e0105-001-0005_001_0134188770-155.dat
Type:       uhf_link_rep - UHF Link Rep...
Would I Do It Again?

    Yes, but…
●


    Add type/length/value data types
●


    Add formatting plugin (XSL, Velocity,...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Reuse Across Missions

    Cassini
●


    Deep Impact
●


    Dawn
●


    MRO
●


    MSL
●




                        ...
Package Dependencies
 report


          product


                    evr




                           sfdu
          m...
General Libraries
 report


          product


                    evr




                           sfdu
          mess...
Domain Specific Libraries
 report


          product


                    evr




                           sfdu
      ...
Application Specific Code
 report


          product


                    evr




                           sfdu
      ...
Agenda

Background
Challenges
Simplicity
Extensibility
Reuse
Summary
Q&A
                            SM
                20...
Summary

    Simplicity to handle risk, cost, schedule
●


    Extensibility to handle uncertainty
●


    Reuse to handle...
For More Information

    Science Instruments Home Page
●

        http://athena.cornell.edu/
    ●



    MER Analyst’s N...
Q&A



                  SM
      2005 JavaOne Conference | Session TS-1416 |   64
Submit Session Evaluations for Prizes!
Your opinions are important to Sun
      You can win a $75.00 gift certificate to t...
Files from Mars:
Java™ Technology in the MER Data
Infrastructure
David Noble
Principal Consultant
Oak Grove Consulting
htt...
Upcoming SlideShare
Loading in …5
×

Files From Mars

4,384 views

Published on

Challenges and trade-offs in the development of software for a ground system supporting the Mars Exploration Rovers (JavaOne 2005)

Published in: Technology

Files From Mars

  1. Files from Mars: Java™ Technology in the MER Data Infrastructure David Noble Principal Consultant Oak Grove Consulting http://marsrovers.jpl.nasa.gov/ TS-1416 SM 2005 JavaOne Conference | Session TS-1416
  2. Goal Examine challenges and tradeoffs in the development of software for a ground system supporting the Mars Exploration Rovers This work was performed at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration SM 2005 JavaOne Conference | Session TS-1416 | 2
  3. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 3
  4. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 4
  5. Mission Overview Two robotic geologists exploring Mars Credit: NASA/JPL/Cornell Detail of 'Cahokia' panorama http://photojournal.jpl.nasa.gov/feature/cahokia SM 2005 JavaOne Conference | Session TS-1416 | 5
  6. Credit: NASA/JPL/MSSS/NMMNH MER-A (Spirit) Traverse to Sol 450 http://photojournal.jpl.nasa.gov/catalog/PIA07849 SM 2005 JavaOne Conference | Session TS-1416 | 6
  7. Height: 1.5m Width: 2.3m Length: 1.6m Mass: 174kg Credit: NASA/JPL MER-A (Spirit) and Mars Pathfinder flight spare http://marsrovers.jpl.nasa.gov/gallery/spacecraft/mer2002_1106_b231.html SM 2005 JavaOne Conference | Session TS-1416 | 7
  8. Credit: NASA/JPL/Cornell/USGS/University of Mainz Credit: Maas Digital LLC, NASA/JPL Credit: NASA/JPL/Cornell/ASU Credit: NASA/JPL/Cornell/ASU http://athena.cornell.edu/ SM 2005 JavaOne Conference | Session TS-1416 | 8
  9. NASA’s Science Objectives Long-term science goals for Mars Exploration: ● Determine whether Life ever arose on Mars ● Characterize the Climate of Mars ● Characterize the Geology of Mars ● Prepare for Human Exploration ● http://marsrovers.jpl.nasa.gov/science/ SM 2005 JavaOne Conference | Session TS-1416 | 9
  10. MER’s Science Objectives “ The scientific objectives of the Mars Exploration Rover mission are to: water activity. In 1. Search for and characterize a variety of rocks and soils that hold clues to past particular, samples sought will include those that have minerals deposited by water-related processes such as precipitation, evaporation, sedimentary cementation, or hydrothermal activity. 2. Determine the distribution and composition of minerals, rocks, and soils surrounding the landing sites. 3. Determine what geologic processes have shaped the local terrain and influenced the chemistry. Such water processes could include or wind erosion, sedimentation, hydrothermal mechanisms, volcanism, and cratering. 4. Perform quot;ground truthquot;—calibration and validation—of surface observations made by Mars orbiter instruments. This will help determine the accuracy and effectiveness of various instruments that survey Martian geology from orbit. 5. Search for iron-containing minerals, identify and quantify relative amounts of specific mineral types that water water, contain or were formed in such as iron-bearing carbonates. 6. Characterize the mineralogy and textures of rocks and soils and determine the processes that created them. water was ” 7. Search for geological clues to the environmental conditions that existed when liquid present. Assess whether those environments were conducive to life. http://marsrovers.jpl.nasa.gov/science/objectives.html SM 2005 JavaOne Conference | Session TS-1416 | 10
  11. Actors Scientists ● Evaluate images and other data ● Plan rover activities ● Engineers ● Evaluate rover health, state, performance ● Build rover activity commands ● Keep everything working ● SM 2005 JavaOne Conference | Session TS-1416 | 11
  12. Downlink Data Flow Scientist PDS EVR DP MIPL TIS TDS OSS EHA TIS TDS Engineer Not to scale. Significantly simplified. SM 2005 JavaOne Conference | Session TS-1416 | 12
  13. Downlink Data Composition 2% 3% 95% Products 8% Channels Events Engineering 53% Products Engineering 33% Cameras Science MER-A (Spirit) Sols 1-400 Percentage of data volume SM 2005 JavaOne Conference | Session TS-1416 | 13
  14. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 14
  15. Deadline MER-A Launch Window ● June 8, 2003–June 24, 2003 ● MER-B Launch Window ● June 25, 2003–July 15, 2003 ● Two opportunities per day ● 10 days required between launches ● MER Landing Press Kit, 12-1-03 http://marsrovers.jpl.nasa.gov/newsroom/merlandings.pdf SM 2005 JavaOne Conference | Session TS-1416 | 15
  16. Planetary Alignment MER Landing Press Kit, 12-1-03 http://marsrovers.jpl.nasa.gov/newsroom/merlandings.pdf SM 2005 JavaOne Conference | Session TS-1416 | 16
  17. Tactical Timeline 15 hours to create next sol’s commands ● Evaluate health, etc ● Evaluate science ● Determine science goals ● Plan activities ● Build and validate commands ● SM 2005 JavaOne Conference | Session TS-1416 | 17
  18. Risk Mars Missions, from 1/1/1970 to 1/1/2004 Attempts Successes Orbiters 11 4 Landers 13 4 Rovers 1 1 MER Landing Press Kit, 12-1-03 http://marsrovers.jpl.nasa.gov/newsroom/merlandings.pdf SM 2005 JavaOne Conference | Session TS-1416 | 18
  19. Budget Primary Mission: $820 Million USD $75M $100M Spacecraft Dev $645M and Science Instruments Launch Mission Ops and Science Proc- essing MER Landing Press Kit, 12-1-03 http://marsrovers.jpl.nasa.gov/newsroom/merlandings.pdf SM 2005 JavaOne Conference | Session TS-1416 | 19
  20. Visibility First three days after landing: ● One billion web hits ● 15 Terabytes downloaded by web browsers ● http://marsrovers.jpl.nasa.gov/newsroom/pressreleases/20040106a.html SM 2005 JavaOne Conference | Session TS-1416 | 20
  21. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 21
  22. Loose Coupling Benefits ● Component reuse ● Component pluggability ● Parallel development ● Drivers: cost, risk ● SM 2005 JavaOne Conference | Session TS-1416 | 22
  23. Criteria Usability ● Correctness ● Testability ● Reliability ● SM 2005 JavaOne Conference | Session TS-1416 | 23
  24. Options Service Lookup ● Inversion of Control ● JavaBeans and InfoBus ● Message Pub/Sub ● SM 2005 JavaOne Conference | Session TS-1416 | 24
  25. Options Service Lookup ● Inversion of Control ● JavaBeans and InfoBus ● Message Pub/Sub ● SM 2005 JavaOne Conference | Session TS-1416 | 25
  26. Message Classes Message getType() : String MessageContext <<interface>> publish(Message) MessageSubscriber subscribe(type:String, Subscriber) handleMessage(Message) SM 2005 JavaOne Conference | Session TS-1416 | 26
  27. Message Classes Message getType() : String MessageContext <<interface>> publish(Message) MessageSubscriber subscribe(type:String, Subscriber) handleMessage(Message) MessageContextFactory BaseMessageHandler createMessageContext() handleMessage(Message) : MessageContext SM 2005 JavaOne Conference | Session TS-1416 | 27
  28. Message Publisher public class MyPublisher { private MessageContext messageContext; public MyPublisher(MessageContext context) { this.messageContext = context; } public void demonstratePublish() { SampleMessage message = new SampleMessage(); messageContext.publish(message); } } SM 2005 JavaOne Conference | Session TS-1416 | 28
  29. Message Subscriber public class MySubscriber implements MessageSubscriber { public MySubscriber(MessageContext messageContext) { messageContext.subscribe(SampleMessage.TYPE, this); } public void handleMessage(Message genericMessage) { SampleMessage message; message = (SampleMessage) genericMessage; // ... do something with the message } } SM 2005 JavaOne Conference | Session TS-1416 | 29
  30. Subscriber to Multiple Messages messageContext.subscribe(FooMessage.TYPE, new BaseMessageHandler() { public void handleMessage(Message genericMessage){ handleFooMessage((FooMessage) genericMessage); } } ); messageContext.subscribe(BarMessage.TYPE, new BaseMessageHandler() { public void handleMessage(Message genericMessage){ handleBarMessage((BarMessage) genericMessage); } } ); SM 2005 JavaOne Conference | Session TS-1416 | 30
  31. Assembling Components MessageContext context = new MessageContext(); context.setVerbose(verbose); ProductInput input = addProductInput(context); if (dump) { addProductDumpOutput(context); } ProductBuilder builder = addProductBuilder(context); ProductStorage storage = addProductStorage(context); addProductSummaryOutput(context); addExternalSubscribers(context); input.read(); SM 2005 JavaOne Conference | Session TS-1416 | 31
  32. Lines of Code for Message Package Including Test Classes Lines Percent Brackets 59 8.70% Whitespace 70 10.32% Comments 345 50.88% “Significant” 204 30.09% Total 678 SM 2005 JavaOne Conference | Session TS-1416 | 32
  33. Would I Do It Again? Yes ● Reused for other missions ● Watching for creeping complexity ● SM 2005 JavaOne Conference | Session TS-1416 | 33
  34. Data Product Storage Product files ● Product metadata ● Product part metadata ● SM 2005 JavaOne Conference | Session TS-1416 | 34
  35. Schema Design Product ProductPart ID Filename 1 ID Command Product Series PartNumber CreationTime 1..* DataFilename TotalParts DataOffset etc DataLength etc SM 2005 JavaOne Conference | Session TS-1416 | 35
  36. Database SM 2005 JavaOne Conference | Session TS-1416 | 36
  37. Why Not? Procedures ● Installation, configuration, maintenance ● Validation tests ● Performance, scalability, reliability ● Third party software evaluations, DBA, … ● Time ● SM 2005 JavaOne Conference | Session TS-1416 | 37
  38. Product Metadata XML ● Regular line breaks ● SM 2005 JavaOne Conference | Session TS-1416 | 38
  39. Locations Complete Products products/<type>/<subtype>/<command>_<series>_<time>.dat products/<type>/<subtype>/<command>_<series>_<time>.emd Partial Products <command>_<series>_<time>_Partial-<counter>.pdat <command>_<series>_<time>_Partial-<counter>.pemd Parts Cache products/parts/<filename>/*.dat products/parts/<filename>/*.emd Alternate Views sol/<NNN>/ssw/products/created/<typename>/<filename> sol/<NNN>/ssw/products/received/<typename>/<filename> SM 2005 JavaOne Conference | Session TS-1416 | 39
  40. Would I Do It Again? Not exactly ● Add database ● Develop procedures off critical path ● Keep files ● Accessible to scripts, people ● SM 2005 JavaOne Conference | Session TS-1416 | 40
  41. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 41
  42. Product Action Triggers Requirement: ● Trigger actions on product arrival ● SM 2005 JavaOne Conference | Session TS-1416 | 42
  43. Product Action Triggers Initial requirement: ● “Users can register to be notified by email when a product arrives” SM 2005 JavaOne Conference | Session TS-1416 | 43
  44. Product Action Triggers Filter criteria ● Script execution ● SM 2005 JavaOne Conference | Session TS-1416 | 44
  45. Configuration <subscriptions> <script> <trigger complete=quot;yesquot; partial=quot;noquot;/> <filter> <allow apid=quot;50quot; subtype=quot;78quot;/> </filter> <path>subscriptions/scripts/uncompress</path> </script> </subscriptions> SM 2005 JavaOne Conference | Session TS-1416 | 45
  46. Multiple Uses Science processing ● Generic uncompression ● Text representations ● Multiple directory hierarchies ● SM 2005 JavaOne Conference | Session TS-1416 | 46
  47. However… Never did email product notification ● SM 2005 JavaOne Conference | Session TS-1416 | 47
  48. However… Never did email product notification ● Email reports had high-level summaries ● SM 2005 JavaOne Conference | Session TS-1416 | 48
  49. Would I Do It Again? Yes, but… ● With JMS message publishing ● SM 2005 JavaOne Conference | Session TS-1416 | 49
  50. Product Display XML Data Dictionary ● Values ● Units ● Lookup tables ● Arrays of values ● Arrays of arrays ● “Opaque” blocks handled by external viewers ● SM 2005 JavaOne Conference | Session TS-1416 | 50
  51. External Viewers Images ● Complex data structures ● Special formatting ● Reports ● SM 2005 JavaOne Conference | Session TS-1416 | 51
  52. Hazcam Image % mer_dp_view img_image_loco_fhl/*.dat | more Filename: img_image_loco_fhl/f0006-000-0000_003_0161168693-127.dat Type: img_image_loco_fhl - LOCO Compressed Image, Left Front Hazcam Spacecraft: MER A (SCID=254) DVT: 2005-039T20:59:11.217 - 0161168693.127 Packetized: 2005-045T04:00:14.932 - 0161625954.245 ERT: 2005-045T06:10:23.782 APID=25 Subtype=9 Version=2 Image ID: 1000012323 Camera ID: Front Left Hazcam Filter ID: No filter/unknown Array PMA Coordinate length 3 [0] PMA Coordinate: 0.000000 [1] PMA Coordinate: 0.000000 [2] PMA Coordinate: 0.000000 PMA Pointing Argument: 0 Image Acquire Request: Acquire Image Shutter Subtraction Request: None Credit: NASA/JPL/Caltech SM 2005 JavaOne Conference | Session TS-1416 | 52
  53. UHF Link Report Filename: products/047/010/e0105-001-0005_001_0134188770-155.dat Type: uhf_link_rep - UHF Link Report Spacecraft: MER A (SCID=254) DVT: 2004-093T14:38:43.195 - 0134188770.155 Packetized: 2004-093T16:28:59.022 - 0134195386.103 ERT: 2004-093T16:55:10.744 APID=47 Subtype=10 Version=0 product_viewer: viewUhfDps products/047/010/e0105-001-0005_001_0134188770-155.dat Report for quot;UHF Link Reportquot; data product (47/10) Product Version: 0 File Name: products/047/010/e0105-001-0005_001_0134188770-155.dat Accounting --------------------------------------------------------------------------- File size: 12028 bytes Time span: 1000 seconds Number of samples: 999 Sample period: 1 second Start End --------------------------------------------------------- SCLK: 134188770.61377 134189770.50879 Osc. Temp (DN) 12633 12911 Osc. Temp Status Good Good PA Temp (DN) 0 0 PA Temp Status Good Good --Samp---------SCLK---Rx_Pwr(DN)---Word 4---Tx_State---RC_Tone---TC_Tone---Link_Qual---Bit_Sync---Car_Lock----- TAC-----RAC 1 134188771 8197 0x0094 Off No_Tone No_Tone Good No_Lock No_Lock 0 0 2 134188772 8404 0x0094 Off No_Tone No_Tone Good No_Lock No_Lock 0 0 SM 2005 JavaOne Conference | Session TS-1416 | 53 3 134188773 8409 0xf008 Off No_Tone No_Tone Bad No_Lock No_Lock 0
  54. Would I Do It Again? Yes, but… ● Add type/length/value data types ● Add formatting plugin (XSL, Velocity, etc.) ● SM 2005 JavaOne Conference | Session TS-1416 | 54
  55. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 55
  56. Reuse Across Missions Cassini ● Deep Impact ● Dawn ● MRO ● MSL ● SM 2005 JavaOne Conference | Session TS-1416 | 56
  57. Package Dependencies report product evr sfdu message app log util ecp SM 2005 JavaOne Conference | Session TS-1416 | 57
  58. General Libraries report product evr sfdu message app log util ecp SM 2005 JavaOne Conference | Session TS-1416 | 58
  59. Domain Specific Libraries report product evr sfdu message app log util ecp SM 2005 JavaOne Conference | Session TS-1416 | 59
  60. Application Specific Code report product evr sfdu message app log util ecp SM 2005 JavaOne Conference | Session TS-1416 | 60
  61. Agenda Background Challenges Simplicity Extensibility Reuse Summary Q&A SM 2005 JavaOne Conference | Session TS-1416 | 61
  62. Summary Simplicity to handle risk, cost, schedule ● Extensibility to handle uncertainty ● Reuse to handle risk, cost, schedule ● Know your users ● One size does not fit all ● Requirements documents are not enough ● Use assumptions that fit reality ● SM 2005 JavaOne Conference | Session TS-1416 | 62
  63. For More Information Science Instruments Home Page ● http://athena.cornell.edu/ ● MER Analyst’s Notebook ● http://anserver1.eprsl.wustl.edu/ ● Basics of Space Flight ● http://www.jpl.nasa.gov/basics/ ● Introduction to the AMMOS Ground System ● http://eis.jpl.nasa.gov/~betsy/mm/intro.htm ● SM 2005 JavaOne Conference | Session TS-1416 | 63
  64. Q&A SM 2005 JavaOne Conference | Session TS-1416 | 64
  65. Submit Session Evaluations for Prizes! Your opinions are important to Sun You can win a $75.00 gift certificate to the on-site Retail ● Store by telling Sun what you think! Turn in completed forms to enter the daily drawing ● Each evaluation must be turned in the same day as the ● session presentation Five winners will be chosen each day (Sun will send the ● winners email) Drop-off locations: give to the room monitors or use any ● of the three drop-off stations in the North and South Halls Note: W inners on Thursday, 6/30, will receive and can redeem certificates via email SM 2005 JavaOne Conference | Session TS-1416 | 65
  66. Files from Mars: Java™ Technology in the MER Data Infrastructure David Noble Principal Consultant Oak Grove Consulting http://marsrovers.jpl.nasa.gov/ TS-1416 SM 2005 JavaOne Conference | Session TS-1416

×