SlideShare a Scribd company logo
1 of 19
studioSLstudioSL
A Modular ApplicationA Modular Application
AlcunidirittiriservatiaChris-HåvardBerge
Some rights reserved Enrico Scantamburlo
Who Am I ?Who Am I ?
Enrico Scantambu
Java Developer @ Streamsim
Oracle Certified Master, Java SE 6 Developer
Sun Certified Specialist Netbeans
Sun Certified Web Component Developer
LPIC-1
….....
http://it.linkedin.com/in/enricoscantamburlo
● Currently Based on NetBeans 6.5, 6.9 coming out shortly
● Modular Application (we sells separated modules)
● Most of the interfaces are OpenSource
● 2D/3D Plots
● Import/export from multiple sources
“A graphical user interface to Pre/Post
process simulation models of oil, gas,
and water flow in the subsurface”
“All problems in computer science can be solved by
another level of indirection... Except for the problem
of too many layers of indirection.”
David Wheeler
PE Commons API 1/3PE Commons API 1/3
Problems:
● Support several simulators
● Information scattered in VERY big files ( > 20 Gb/Go)
● Same actions on all Simulations
● Some data may be missing
3DSL(R) ECLIPSE(R) OTHERS
PE Commons API
LOOKUP
2D/3D Projects Simulations
PE Commons API 2/3PE Commons API 2/3
PE Commons API 3/3PE Commons API 3/3
They read only what we need
They cache data using Java SoftReferences
They share data between simulations
They are replaced when the files change
We use “Providers”
TimeStepsDataProvider to provide the time information
WellDataProvider to provide the list of well
WellSequencesDataProvider to provider the sequences for each Well
WellTypeDataProvider to provider the type for each Well
StrucutredGridDataProvider to provider the grid Information
….
NBPlatform: A lifesaverNBPlatform: A lifesaver
We use almost every feature of NetBeans Platform (6.5)
● FileChangeListeners
● Branding
● Syntax Highlighting
● CodeCompletion
● ContextAwareAction
● Lookup
● Nodes
● TopComponents and Modes
● OutputWindows
● Update Center
● Exception Handling
● Schliemann
● Preferences
● Multiview
● XMLMultiView
● ExplorerManagers
● TreeTableView
● RequestProcessor
● Matisse
● Projects
● Ant
● Layer
● Option Windows
●….
3D View 1/23D View 1/2
3D View 2/23D View 2/2
Currently using Java3D 1.5.2 (sigh!)
Not very performing but easy to use and it does its job.
Unsupported (community managed program)
Java3D must be installed manually
An NBM for every platform (Windows/Linux 32/64bit)
Bundle the whole JRE
Also tested
● JOGL
● VTK
But too much work to replace it!
2D View 1/22D View 1/2
2D View 2/22D View 2/2
We use JClass to visualize 2D plots, it is 100% Swing,
fully integrated with Matisse and the pallette. It is a
commercial software.
Allows tons of customizations thru its own customizer
Some performance issues due to Java when you have
millions of points.
Test JFreeChart and JavaFX but same issues
The only solution was using JOGL.
ExportingExporting
studioSL
OpenOffice.org
Calc
OpenOffice.org
Impress PowerPoint
Excel
CSV
PNG, JPG, BMP
Deck BuilderDeck Builder
XML MultiviewXML Multiview
User FeedBackUser FeedBack
It is hard to get some good feedback from the users.
If the program crashes, has problems, too slow they get angry but
they do not tell you.
Using The NetBeans Platform we can catch every exception that
occurs during the program.
ImagefromReidRosenberg
The crash information is sent to
our Bug Tracker with all the logs
and the information to contact the
user.
There is also a “Submit a
suggestion” menu.
Future ImprovementsFuture Improvements
Remote Job LauncherRemote Job Launcher:
Allows to executes Files on Remote machines
(SSH Based, Linux Server Only).
Taken from the C++ support from NetBeans.
LinksLinks
Streamsim
http://www.streamsim.com/
PE Commons
http://www.javaforge.com/project/streamsim
studioSL article @ Dzone by Matteo di Giovinazzo
http://netbeans.dzone.com/nb-reservoir-engineering-studiosl
My article on Guarded Sections
http://netbeans.dzone.com/nb-guarded-sections
My Email
scanti.rulla@gmail.com
Q&AQ&A
Fin

More Related Content

Viewers also liked

LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica Davis
LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica DavisLA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica Davis
LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica DavisEric Blue
 
сварка
сваркасварка
сваркаnovikova1
 
فقه حلف اليمين عرض تقديمي1
فقه حلف اليمين عرض تقديمي1فقه حلف اليمين عرض تقديمي1
فقه حلف اليمين عرض تقديمي1fatmah school
 
Madariaga dorretxeko lana leiore eginda
Madariaga dorretxeko lana leiore egindaMadariaga dorretxeko lana leiore eginda
Madariaga dorretxeko lana leiore egindakontakatiluak6a17
 
Ponte Itaparica e o Sistema Viário
Ponte Itaparica e o Sistema ViárioPonte Itaparica e o Sistema Viário
Ponte Itaparica e o Sistema ViárioRomeu Temporal
 
Valvular heart disease
Valvular heart diseaseValvular heart disease
Valvular heart diseasehamid-miyanaji
 
Semana 13 – administración de proyectos
Semana 13 – administración de proyectosSemana 13 – administración de proyectos
Semana 13 – administración de proyectosJosephgranja
 
Coleta seletiva consciente
Coleta seletiva conscienteColeta seletiva consciente
Coleta seletiva conscienteSuely Silva
 
Presentación conferencia agronegocios
Presentación conferencia agronegociosPresentación conferencia agronegocios
Presentación conferencia agronegociosfacs_ort
 
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenek
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenekUgalketa funtzinoko pasapalabra eginda leiorek eta lukenek
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenekkontakatiluak6a17
 
Software de gestión propio
Software de gestión propioSoftware de gestión propio
Software de gestión propioOskar Bañuelos
 

Viewers also liked (17)

LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica Davis
LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica DavisLA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica Davis
LA Quantified Self Meetup (6/13) - Mood tracking with Senti.us by Erica Davis
 
сварка
сваркасварка
сварка
 
3ºano B - 2012
3ºano B - 20123ºano B - 2012
3ºano B - 2012
 
فقه حلف اليمين عرض تقديمي1
فقه حلف اليمين عرض تقديمي1فقه حلف اليمين عرض تقديمي1
فقه حلف اليمين عرض تقديمي1
 
Madariaga dorretxeko lana leiore eginda
Madariaga dorretxeko lana leiore egindaMadariaga dorretxeko lana leiore eginda
Madariaga dorretxeko lana leiore eginda
 
Ponte Itaparica e o Sistema Viário
Ponte Itaparica e o Sistema ViárioPonte Itaparica e o Sistema Viário
Ponte Itaparica e o Sistema Viário
 
Iugalketa funtzinoa oier
Iugalketa funtzinoa oierIugalketa funtzinoa oier
Iugalketa funtzinoa oier
 
Onu y Mercosur
Onu y MercosurOnu y Mercosur
Onu y Mercosur
 
Valvular heart disease
Valvular heart diseaseValvular heart disease
Valvular heart disease
 
Semana 13 – administración de proyectos
Semana 13 – administración de proyectosSemana 13 – administración de proyectos
Semana 13 – administración de proyectos
 
Coleta seletiva consciente
Coleta seletiva conscienteColeta seletiva consciente
Coleta seletiva consciente
 
Presentación conferencia agronegocios
Presentación conferencia agronegociosPresentación conferencia agronegocios
Presentación conferencia agronegocios
 
Intervencion psicologica-emergencias-menores
Intervencion psicologica-emergencias-menoresIntervencion psicologica-emergencias-menores
Intervencion psicologica-emergencias-menores
 
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenek
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenekUgalketa funtzinoko pasapalabra eginda leiorek eta lukenek
Ugalketa funtzinoko pasapalabra eginda leiorek eta lukenek
 
Bardintasuna ibon
Bardintasuna ibonBardintasuna ibon
Bardintasuna ibon
 
Software de gestión propio
Software de gestión propioSoftware de gestión propio
Software de gestión propio
 
3ºano A - 2012
3ºano A - 20123ºano A - 2012
3ºano A - 2012
 

Similar to StudioSL Presentation in Grenoble 2011

Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.UA Mobile
 
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...Mickael Istria
 
Profiling Android Applications
Profiling Android ApplicationsProfiling Android Applications
Profiling Android Applicationshubx
 
2015 - a static site generator odyssey
2015  - a static site generator odyssey2015  - a static site generator odyssey
2015 - a static site generator odysseyUnic
 
Porting the Source Engine to Linux: Valve's Lessons Learned
Porting the Source Engine to Linux: Valve's Lessons LearnedPorting the Source Engine to Linux: Valve's Lessons Learned
Porting the Source Engine to Linux: Valve's Lessons Learnedbasisspace
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux HeritageOpersys inc.
 
Michal Havryluk: How To Speed Up Android Gradle Builds
Michal Havryluk: How To Speed Up Android Gradle BuildsMichal Havryluk: How To Speed Up Android Gradle Builds
Michal Havryluk: How To Speed Up Android Gradle Buildsmdevtalk
 
Andreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartAndreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartNokiaAppForum
 
Scale Big With Docker — Moboom 2014
Scale Big With Docker — Moboom 2014Scale Big With Docker — Moboom 2014
Scale Big With Docker — Moboom 2014Jérôme Petazzoni
 
Why kernelspace sucks?
Why kernelspace sucks?Why kernelspace sucks?
Why kernelspace sucks?OpenFest team
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTManuel Carrasco Moñino
 
Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Opersys inc.
 
Gatling Tool in Action at Devoxx 2012
Gatling Tool in Action at Devoxx 2012Gatling Tool in Action at Devoxx 2012
Gatling Tool in Action at Devoxx 2012slandelle
 
Continuous integration for androids
Continuous integration for androidsContinuous integration for androids
Continuous integration for androidsKirill Zotin
 
Joomla!Day Poland 2013 - Joomla Architecture (Ofer Cohen)
Joomla!Day Poland 2013 - Joomla Architecture  (Ofer Cohen)Joomla!Day Poland 2013 - Joomla Architecture  (Ofer Cohen)
Joomla!Day Poland 2013 - Joomla Architecture (Ofer Cohen)Ofer Cohen
 
Newbie’s guide to_the_gpgpu_universe
Newbie’s guide to_the_gpgpu_universeNewbie’s guide to_the_gpgpu_universe
Newbie’s guide to_the_gpgpu_universeOfer Rosenberg
 

Similar to StudioSL Presentation in Grenoble 2011 (20)

Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
Критика "библиотечного" подхода в разработке под Android. UA Mobile 2016.
 
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
 
Profiling Android Applications
Profiling Android ApplicationsProfiling Android Applications
Profiling Android Applications
 
Retour JavaOne 2009
Retour JavaOne 2009Retour JavaOne 2009
Retour JavaOne 2009
 
2015 - a static site generator odyssey
2015  - a static site generator odyssey2015  - a static site generator odyssey
2015 - a static site generator odyssey
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
Porting the Source Engine to Linux: Valve's Lessons Learned
Porting the Source Engine to Linux: Valve's Lessons LearnedPorting the Source Engine to Linux: Valve's Lessons Learned
Porting the Source Engine to Linux: Valve's Lessons Learned
 
Leveraging Android's Linux Heritage
Leveraging Android's Linux HeritageLeveraging Android's Linux Heritage
Leveraging Android's Linux Heritage
 
Michal Havryluk: How To Speed Up Android Gradle Builds
Michal Havryluk: How To Speed Up Android Gradle BuildsMichal Havryluk: How To Speed Up Android Gradle Builds
Michal Havryluk: How To Speed Up Android Gradle Builds
 
Andreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartAndreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo Quickstart
 
Scale Big With Docker — Moboom 2014
Scale Big With Docker — Moboom 2014Scale Big With Docker — Moboom 2014
Scale Big With Docker — Moboom 2014
 
Why kernelspace sucks?
Why kernelspace sucks?Why kernelspace sucks?
Why kernelspace sucks?
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
 
Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011Leveraging Android's Linux Heritage at ELC-E 2011
Leveraging Android's Linux Heritage at ELC-E 2011
 
Gatling Tool in Action at Devoxx 2012
Gatling Tool in Action at Devoxx 2012Gatling Tool in Action at Devoxx 2012
Gatling Tool in Action at Devoxx 2012
 
Why Gradle?
Why Gradle?Why Gradle?
Why Gradle?
 
Continuous integration for androids
Continuous integration for androidsContinuous integration for androids
Continuous integration for androids
 
Android Platform Debugging & Development
Android Platform Debugging & Development Android Platform Debugging & Development
Android Platform Debugging & Development
 
Joomla!Day Poland 2013 - Joomla Architecture (Ofer Cohen)
Joomla!Day Poland 2013 - Joomla Architecture  (Ofer Cohen)Joomla!Day Poland 2013 - Joomla Architecture  (Ofer Cohen)
Joomla!Day Poland 2013 - Joomla Architecture (Ofer Cohen)
 
Newbie’s guide to_the_gpgpu_universe
Newbie’s guide to_the_gpgpu_universeNewbie’s guide to_the_gpgpu_universe
Newbie’s guide to_the_gpgpu_universe
 

Recently uploaded

Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

StudioSL Presentation in Grenoble 2011

  • 1. studioSLstudioSL A Modular ApplicationA Modular Application AlcunidirittiriservatiaChris-HåvardBerge Some rights reserved Enrico Scantamburlo
  • 2. Who Am I ?Who Am I ? Enrico Scantambu Java Developer @ Streamsim Oracle Certified Master, Java SE 6 Developer Sun Certified Specialist Netbeans Sun Certified Web Component Developer LPIC-1 …..... http://it.linkedin.com/in/enricoscantamburlo
  • 3. ● Currently Based on NetBeans 6.5, 6.9 coming out shortly ● Modular Application (we sells separated modules) ● Most of the interfaces are OpenSource ● 2D/3D Plots ● Import/export from multiple sources “A graphical user interface to Pre/Post process simulation models of oil, gas, and water flow in the subsurface”
  • 4. “All problems in computer science can be solved by another level of indirection... Except for the problem of too many layers of indirection.” David Wheeler PE Commons API 1/3PE Commons API 1/3 Problems: ● Support several simulators ● Information scattered in VERY big files ( > 20 Gb/Go) ● Same actions on all Simulations ● Some data may be missing
  • 5. 3DSL(R) ECLIPSE(R) OTHERS PE Commons API LOOKUP 2D/3D Projects Simulations PE Commons API 2/3PE Commons API 2/3
  • 6. PE Commons API 3/3PE Commons API 3/3 They read only what we need They cache data using Java SoftReferences They share data between simulations They are replaced when the files change We use “Providers” TimeStepsDataProvider to provide the time information WellDataProvider to provide the list of well WellSequencesDataProvider to provider the sequences for each Well WellTypeDataProvider to provider the type for each Well StrucutredGridDataProvider to provider the grid Information ….
  • 7. NBPlatform: A lifesaverNBPlatform: A lifesaver We use almost every feature of NetBeans Platform (6.5) ● FileChangeListeners ● Branding ● Syntax Highlighting ● CodeCompletion ● ContextAwareAction ● Lookup ● Nodes ● TopComponents and Modes ● OutputWindows ● Update Center ● Exception Handling ● Schliemann ● Preferences ● Multiview ● XMLMultiView ● ExplorerManagers ● TreeTableView ● RequestProcessor ● Matisse ● Projects ● Ant ● Layer ● Option Windows ●….
  • 8. 3D View 1/23D View 1/2
  • 9. 3D View 2/23D View 2/2 Currently using Java3D 1.5.2 (sigh!) Not very performing but easy to use and it does its job. Unsupported (community managed program) Java3D must be installed manually An NBM for every platform (Windows/Linux 32/64bit) Bundle the whole JRE Also tested ● JOGL ● VTK But too much work to replace it!
  • 10. 2D View 1/22D View 1/2
  • 11. 2D View 2/22D View 2/2 We use JClass to visualize 2D plots, it is 100% Swing, fully integrated with Matisse and the pallette. It is a commercial software. Allows tons of customizations thru its own customizer Some performance issues due to Java when you have millions of points. Test JFreeChart and JavaFX but same issues The only solution was using JOGL.
  • 15. User FeedBackUser FeedBack It is hard to get some good feedback from the users. If the program crashes, has problems, too slow they get angry but they do not tell you. Using The NetBeans Platform we can catch every exception that occurs during the program. ImagefromReidRosenberg The crash information is sent to our Bug Tracker with all the logs and the information to contact the user. There is also a “Submit a suggestion” menu.
  • 16. Future ImprovementsFuture Improvements Remote Job LauncherRemote Job Launcher: Allows to executes Files on Remote machines (SSH Based, Linux Server Only). Taken from the C++ support from NetBeans.
  • 17. LinksLinks Streamsim http://www.streamsim.com/ PE Commons http://www.javaforge.com/project/streamsim studioSL article @ Dzone by Matteo di Giovinazzo http://netbeans.dzone.com/nb-reservoir-engineering-studiosl My article on Guarded Sections http://netbeans.dzone.com/nb-guarded-sections My Email scanti.rulla@gmail.com
  • 19. Fin

Editor's Notes

  1. Tell something about Streamsim Where is located How we works
  2. Problems updating software We have to go to the clients and install it (Modular) NetBeans makes this easy PECommons later Java3D Jclass OFFICE, OPENOFFICE, PNG
  3. We are paid to do that, companies have their simulator (usually written in Fortran) they want some support Data is in server and must be trasmitted on network drives We do not want to write an action for every simulation Data is redundatly written in files
  4. We extract data from the lookup Completely DATA independent
  5. User can be on network driver VERY Slow Linux 50x Windows Java Reference naive methods, there are better choices Several simulation with same data or we merge two simulation We have a lookup event
  6. Only in java7 we have FileChangeListeners OutputWindow “Del porco non si butta via niente” Not the pallette And there are more in 7.0 Like annotations
  7. JOGL does not handle the scene VTK used for medical images
  8. Give explanation of Scattergram must create millions of Point.Double to plot
  9. Tell about Schliemann
  10. Talk about Schema2Beans and XAML Ask geertjan about schema2Beans page